Commit graph

70480 commits

Author SHA1 Message Date
Eli Zaretskii
689526b714 Fix interactive spec of 'semantic-ia-show-variants'
* lisp/cedet/semantic/ia.el (semantic-ia-show-variants): Fix the
interactive spec to match the function's expectations.  (Bug#29770)
2017-12-22 11:32:38 +02:00
Eli Zaretskii
d60faf3275 Improve detection of speller version in ispell.el
* lisp/textmodes/ispell.el (ispell-check-version): Accept more
general forms of version numbers for Aspell, Hunspell, and
Enchant, to include various beta and prereleases.  (Bug#29801)
2017-12-22 11:11:29 +02:00
Alan Mackenzie
88ddf53ef0 Fontify a CPP construct correctly when a comment follows without spaces
Do this by removing a broken optimization in the state cache which put
category text properties on a character between the end of the CPP construct
and the beginning of the comment.  This can't work when there's no such
character.

* lisp/progmodes/cc-defs.el (c-cpp-delimiter, c-set-cpp-delimiters)
(c-clear-cpp-delimiters, c-comment-out-cpps, c-with-cpps-commented-out)
(c-with-all-but-one-cpps-commented-out): Remove.

* lisp/progmodes/cc-engine.el (c-no-comment-end-of-macro): Return the comment
start position rather than one character before it.
(c-invalidate-state-cache, c-parse-state): Remove the invocations of
c-with-all-but-one-cpps-commented-out and c-with-cpps-commented-out.

* lisp/progmodes/cc-mode.el (c-neutralize-syntax-in-and-mark-CPP): Rename to
c-neutralize-syntax-in-CPP and remove the bits which applied category
properties.

* lisp/progmodes/cc-langs.el (c-before-font-lock-functions): Incorporate the
new name of the function c-neutralize-syntax-in-CPP.
2017-12-21 17:55:59 +00:00
Alan Mackenzie
293720e930 Fix loss of documentation face in certain CC Mode doc comment situations
* lisp/progmodes/cc-fonts.el (c-font-lock-doc-comments): Take into account
the possibility of font-lock-comment-delimiter-face.  Test rigorously for
"/**" (etc.) being itself inside a literal, rather than just depending on the
face of the previous character.
2017-12-21 17:18:40 +00:00
Daiki Ueno
8a73b7003e Remove pinentry.el
* lisp/epg.el (epg--start): Remove the use of pinentry.el.
* lisp/net/pinentry.el: Remove (bug#27445).
2017-12-21 10:23:07 +01:00
Dmitry Gutov
2f9d9efd08 ; Remove the mention of "plain C code" in the docstring as well 2017-12-21 00:38:36 +02:00
Dmitry Gutov
aca827b0d0 Merge branch 'widen-less' into emacs-26 2017-12-21 00:34:07 +02:00
Glenn Morris
da0d7730b5 ; * lisp/erc/erc.el: Update URL. 2017-12-20 16:31:00 -05:00
Glenn Morris
3a6051578b * lisp/erc/erc.el (erc-shorten-server-name): Silence compiler warning. 2017-12-20 16:29:40 -05:00
Glenn Morris
471b6c163f ; Replace non-ascii quote characters in doc strings etc 2017-12-20 16:23:11 -05:00
Glenn Morris
7af7f5e155 Fix some more aliases to user options
* lisp/cus-edit.el (custom-mode-hook):
* lisp/erc/erc.el (erc-default-coding-system):
* lisp/progmodes/python.el (python-indent, python-guess-indent)
(python-shell-virtualenv-path)
(python-shell-completion-module-string-code)
(python-shell-completion-pdb-string-code, python-use-skeletons):
Define aliases to user options before the options are defined.
2017-12-20 16:05:46 -05:00
Glenn Morris
79fb4b5438 Fix some flymake aliases
* lisp/progmodes/flymake-proc.el (flymake-xml-program)
(flymake-compilation-prevents-syntax-check, flymake-master-file-dirs)
(flymake-master-file-count-limit, flymake-allowed-file-name-masks):
* lisp/progmodes/flymake.el (flymake-start-syntax-check-on-find-file):
Define aliases to user options before the options are defined.
2017-12-20 14:31:03 -05:00
Dmitry Gutov
b9fbc03b86 Widen in indent-for-tab-command in the normal case, too
Fixing this obvious omission.
* lisp/indent.el (indent--funcall-widened): New function.
(indent-for-tab-command): Use it.
2017-12-20 01:42:49 +02:00
Ted Zlatanov
21a212f9e2
Collect GnuTLS extensions and use them to set %DUMBFW if supported
* lisp/net/gnutls.el (gnutls-boot-parameters): Use it to set %DUMBFW
only when it's supported as "ClientHello Padding" (Bug#25061).

* src/gnutls.c (Fgnutls_available_p): Get extension names and
put them in the GnuTLS capabilities, using a hard-coded limit
of 100 since GnuTLS MAX_EXT_TYPES is not exported.
2017-12-19 12:43:56 -05:00
Stefan Monnier
07b7fb98e6 * lisp/subr.el (delayed-after-hook-functions): Rename from ...-forms
(run-mode-hooks): `funcall` the functions instead of `eval`ing the forms.
* lisp/emacs-lisp/derived.el (define-derived-mode): Push functions
rather than forms (bug#29679).
2017-12-18 11:39:17 -05:00
Katsumi Yamaoka
a5b0a4e292 * lisp/net/shr.el (shr-string-pixel-width): Return pixel-width,
not position (bug#29734).
2017-12-18 02:53:26 +00:00
Charles A. Roelli
c51e797bba python.el doc fixes
* lisp/progmodes/python.el (python-shell-accept-process-output):
(python-shell-comint-end-of-output-p):
(python-shell-first-prompt-hook):
(python-info-beginning-of-backslash): Doc fixes.
2017-12-17 17:09:55 +01:00
Tak Kunihiro
c62ced5b4d Make 'mouse-drag-and-drop-region' more robust and customizable
* lisp/mouse.el
(mouse-drag-and-drop-region-cut-when-buffers-differ): New option
to permit 'mouse-drag-and-drop-region' to cut text also when source
and destination buffers differ.
(mouse-drag-and-drop-region-show-tooltip): New option to toggle
display of tooltip during mouse dragging on graphic displays.
(mouse-drag-and-drop-region-show-cursor): New option to toggle
moving point with mouse cursor during mouse dragging of region.
(mouse-drag-and-drop-region): New face to highlight original
text while dragging.
(mouse-drag-and-drop-region): Make use of new options and face.
Ignore errors during tracking.
2017-12-17 11:19:19 +01:00
Oscar Fuentes
2e9eba2013 Backport: Don't compare arguments that can be nil (Bug#28039)
copy-region-as-kill can be called passing nil as `beg' and
`end'. Magit does that, which caused an error when this advice was in
effect.

* lisp/ses.el (ses--advice-copy-region-as-kill): avoid comparison
  unless `beg' and `end' are non-nil.
2017-12-17 05:48:13 +01:00
Noam Postavsky
89cfdbf729 Don't mess up syntax-ppss cache in electric-pair (Bug#29710)
In Emacs 25 and above, calling `scan-sexps', `parse-partial-sexp', or
similar may update the syntax-ppss cache if
`parse-sexp-lookup-properties' is non-nil.  Therefore, when calling
any of these functions with a different than normal syntax-table, the
cache must be cleaned afterwards.
* lisp/elec-pair.el (electric-pair--with-uncached-syntax): New macro.
(electric-pair--syntax-ppss, electric-pair--balance-info): Use it.
2017-12-16 21:02:38 -05:00
Alan Mackenzie
28e0261890 * lisp/progmodes/cc-defs.el (c-version): Update to 5.33.1. 2017-12-16 16:01:49 +00:00
Eli Zaretskii
f274cbd185 Avoid reordering of output in 'shr-insert-document'
* lisp/net/shr.el (shr-string-pixel-width): Preserve point across
shr-pixel-column invocations.  (Bug#29734)
2017-12-16 16:09:41 +02:00
Simen Heggestøyl
63b6281fdd Fix off-by-one error in 'css--hex-color'
* lisp/textmodes/css-mode.el (css--hex-color): Fix off-by-one error.

* test/lisp/textmodes/css-mode-tests.el (css-test-hex-color): New test
for 'css--hex-color'.
2017-12-16 09:46:54 +01:00
Aaron Jensen
804b37ca63 Save and restore text-pixel height and width of frames (Bug#28442)
* lisp/frameset.el (frameset--record-relationships): Record
text-pixel-height and text-pixel-width of frame.
(frameset--restore-frame): Restore text-pixel-height and
text-pixel-width of frame if available.  (Bug#28442)
2017-12-16 09:36:35 +01:00
Noam Postavsky
777fe94661 Partially revert "Mention new strictness for &optional, &rest..."
The changes to cl argument parsing are not backwards compatible, and
cause inconvenience when writing macros (e.g., instead of doing '&aux
,@auxargs', some more complicated conditionals would be required).
The `cl-defstruct' macro makes use of this convenience when defining
empty structs (Bug#29728).
* lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
(cl--do-&aux, cl--do-arglist): Undo strict checking of &rest, &key,
and &aux.
* test/lisp/emacs-lisp/cl-macs-tests.el (cl-macs-bad-arglist): Remove
test.
2017-12-15 23:41:20 -05:00
Glenn Morris
ad17db7964 * lisp/vc/smerge-mode.el (smerge-refine): Respect font-lock-mode. 2017-12-15 13:40:06 -05:00
Glenn Morris
5a7d0095a4 * lisp/vc/smerge-mode.el (smerge-refine): Replace obsolete alias. 2017-12-15 13:35:42 -05:00
Basil L. Contovounesios
92b2604a7f Modernise message.el face spec syntax
* lisp/gnus/message.el (message-header-to, message-header-cc)
(message-header-subject, message-header-newsgroups)
(message-header-other, message-header-name, message-header-xheader)
(message-separator, message-cited-text, message-mml):
Use (DISPLAY . PLIST) face spec syntax as recommended in
`(elisp) Defining Faces'.  (Bug#29405)
2017-12-15 12:20:38 +02:00
Basil L. Contovounesios
b1efbe6564 Update message.el obsolete face aliases
* lisp/gnus/message.el: (message-header-to, message-header-cc)
(message-header-subject, message-header-newsgroups)
(message-header-other, message-header-name, message-header-xheader)
(message-separator, message-cited-text, message-mml):
Use define-obsolete-face-alias.  (Bug#29405)
2017-12-15 12:18:43 +02:00
Eli Zaretskii
2494c14e76 ; * lisp/comint.el (comint-terminfo-terminal): Add a :version tag. 2017-12-15 11:50:11 +02:00
Allen Li
8ed529f0f3 Add option to configure comint TERM
* lisp/comint.el (comint-terminfo-terminal): New defcustom.
(comint-term-environment): New function for setting terminal options
(comint-exec-1): Use comint-term-environment.  (Bug#29583)
* lisp/progmodes/compile.el (compilation-start): Use comint-term-environment.

* etc/NEWS:
* doc/emacs/misc.texi (Shell Options): Document the new option.
2017-12-15 11:30:25 +02:00
Eli Zaretskii
889f07c352 Better support utf-8-with-signature and utf-8-hfs in XML/HTML
* lisp/international/mule.el (sgml-xml-auto-coding-function):
Support UTF-8 with BOM and utf-8-hfs as variants of UTF-8, and
obey the buffer's encoding if it is one of these variants, instead
of re-encoding in UTF-8 proper.  (Bug#20623)
2017-12-15 11:06:07 +02:00
Eli Zaretskii
a2697fac0e * lisp/menu-bar.el (menu-bar-mode): Doc fix. 2017-12-15 10:59:33 +02:00
Glenn Morris
c2a88ec8e8 * lisp/textmodes/tex-mode.el: Ensure uncompiled file is loadable. 2017-12-14 22:01:32 -08:00
Ted Zlatanov
b178870528
Remember password change for IMAP in Gnus (Bug#29692)
Reported by Trey Jackson <trey_jackson@mentor.com>.

* lisp/gnus/mail-source.el (mail-source-fetch-imap): Check
`mail-source-password-cache' for password.
2017-12-15 00:17:46 -05:00
Ted Zlatanov
a21dac18bb
Add %DUMBFW to the default GnuTLS priority strings
* lisp/net/gnutls.el (gnutls-boot-parameters): Add %DUMBFW to
the default priority strings (Bug#25061).

* etc/NEWS: Mention it.

* doc/misc/emacs-gnutls.texi (Help For Users): Point to the
GnuTLS priority string documentation URL.
2017-12-14 23:16:38 -05:00
Glenn Morris
780407cff1 Small fixes prompted by make check-declare
* lisp/frame.el (x-focus-frame): Update declaration.
(ns-mouse-absolute-pixel-position): Fix declaration.
* lisp/vc/diff-mode.el (diff-refine-hunk):
Use smerge-refine-regions rather than obsolete alias.
(smerge-refine-subst): Remove declaration, no longer relevant.
2017-12-14 21:31:28 -05:00
Glenn Morris
541a60108d Fix some custom groups
* lisp/vc/vc-hooks.el (vc-faces): Rename from vc-state-faces.
* lisp/vc/cvs-status.el (cvs-status): Unused, remove.
2017-12-14 21:01:08 -05:00
Alan Mackenzie
e220d6e112 Fix fontification of first declaration within a C++ lambda form.
* lisp/progmodes/cc-engine.el (c-looking-at-or-maybe-in-bracelist): Cease
spuriously recognizing the braces of a lambda form as a brace list when there
is an "=" preceding the introductory brackets.
2017-12-14 21:04:39 +00:00
Alan Mackenzie
f838210b01 Fix misfontification of C++ member initialization list after "throw"
* lisp/progmodes/cc-engine.el (c-forward-type): Stop recognizing a "type"
starting with "throw", by using c-opt-type-modifier-prefix-key.

* lisp/progmodes/cc-langs.el (c-type-modifier-prefix-kwds): New lang const
which, in C++, doesn't contain "throw", otherwise like c-type-modifier-kwds.
(c-opt-type-modifier-prefix-key): New lang const and var, a regexp matching
any keyword in the previous lang const.
2017-12-14 17:55:59 +00:00
Dmitry Gutov
7e9eef0ffd Consolidate 'widen' calls
* lisp/progmodes/prog-mode.el (prog-indentation-context):
Un-document all elements but the first.
(prog-widen): Remove.
(http://lists.gnu.org/archive/html/emacs-devel/2017-12/msg00321.html)

* doc/lispref/text.texi (Mode-Specific Indent): Update.

* lisp/progmodes/ruby-mode.el (ruby-calculate-indent):
Don't call widen.

* lisp/progmodes/python.el
(python-indent-guess-indent-offset)
(python-info-current-defun): Replace prog-widen with widen;
these functions are not called during indentation.
(python-indent-context)
(python-indent--calculate-indentation)
(python-info-dedenter-opening-block-message)
(python-info-line-ends-backslash-p)
(python-info-beginning-of-backslash)
(python-info-continuation-line-p)
(python-info-current-defun): Remove 'widen' calls.

* lisp/indent.el (indent-according-to-mode)
(indent-for-tab-command, indent-region): Move them here.

* lisp/textmodes/mhtml-mode.el (mhtml-indent-line):
Bind prog-indentation-context to one-element list.
2017-12-14 11:18:51 +02:00
Basil L. Contovounesios
3f9aac68d7 Don't raise an extraneous frame (bug#29696)
* lisp/gnus/gnus-art.el (gnus-article-read-summary-keys): Lookup
summary buffer keys from article buffer without affecting window
configuration (bug#29696).
2017-12-14 04:45:21 +00:00
Noam Postavsky
e7b1111155 Mention new strictness for &optional, &rest in arglists (Bug#29165)
* etc/NEWS: Explain that '&optional' not followed by a variable is now
an error.
* lisp/emacs-lisp/cl-macs.el (cl--transform-lambda, cl--do-&aux)
(cl--do-arglist): Also reject '&optional', '&rest', or '&aux' not
followed by a variable for consistency.
* test/lisp/emacs-lisp/cl-macs-tests.el (cl-macs-bad-arglist): New
test.
2017-12-13 17:31:27 -05:00
Alan Mackenzie
4cb8696e47 Don't misfontify "foo ()" inside C++ initialization parentheses as a type
Also recognize and handle function names introduced by "extern" inside a
function.

* lisp/progmodes/cc-engine.el (c-forward-decl-or-cast-1): Add a new element to
the result list which is t when our declaration is, or is to be treated as,
being at top level.

* lisp/progmodes/cc-fonts.el (c-get-fontification-context): Detect being
inside a C++ uniform initialization and return (not-decl nil) for this case.
(c-font-lock-declarations): Use the new element 4 of the result of
c-forward-decl-or-cast-1.

* lisp/progmodes/cc-langs.el (c-make-top-level-kwds, c-make-top-level-key):
New lang consts/vars.
2017-12-13 20:55:03 +00:00
Glenn Morris
ce31e726ad Fixes for defcustoms, prompted by cus-test-opts
* lisp/files.el (save-some-buffers-default-predicate):
* lisp/time.el (display-time-world-list):
* lisp/gnus/gnus-art.el (gnus-article-show-cursor):
* lisp/progmodes/cc-vars.el (c-noise-macro-with-parens-names):
* lisp/progmodes/verilog-mode.el (verilog-auto-wire-type):
* lisp/textmodes/less-css-mode.el (less-css-output-directory)
(less-css-output-file-name, less-css-input-file-name):
* lisp/vc/emerge.el (emerge-metachars):
* lisp/vc/vc-hg.el (vc-hg-symbolic-revision-styles):
Fix :types.
* lisp/net/newst-backend.el (newsticker-url-list-defaults): Fix url.
2017-12-13 15:29:24 -05:00
Glenn Morris
aacd1e14fc * lisp/net/newst-backend.el (newsticker--raw-url-list-defaults):
Update.
2017-12-13 15:25:56 -05:00
Glenn Morris
7e2f4d3d41 * lisp/htmlfontify.el (hfy-which-etags): Fix it. 2017-12-13 13:55:29 -05:00
Glenn Morris
52d2a690f6 Add missing :version tags revealed by cusver-check
* lisp/comint.el (comint-move-point-for-matching-input):
* lisp/epa.el (epa-replace-original-text):
* lisp/image-dired.el (image-dired-cmd-optipng-program)
(image-dired-cmd-optipng-options):
* lisp/emacs-lisp/bytecomp.el (byte-compile-cond-use-jump-table):
* lisp/gnus/gnus-cloud.el (gnus-cloud-storage-method)
(gnus-cloud-interactive):
* lisp/net/mailcap.el (mailcap-user-mime-data):
* lisp/progmodes/cc-vars.el (c-asymmetry-fontification-flag)
(c-noise-macro-names, c-noise-macro-with-parens-names):
* lisp/progmodes/flymake.el (flymake-start-on-flymake-mode)
(flymake-wrap-around):
* lisp/progmodes/grep.el (grep-use-null-filename-separator):
* lisp/progmodes/js.el (js-indent-align-list-continuation):
* lisp/progmodes/perl-mode.el (perl-flymake-command):
* lisp/progmodes/python.el (python-flymake-command)
(python-flymake-command-output-pattern, python-flymake-msg-alist):
* lisp/progmodes/ruby-mode.el (ruby-flymake-use-rubocop-if-available)
(ruby-rubocop-config):
* lisp/textmodes/less-css-mode.el (less-css):
* lisp/textmodes/tex-mode.el (tex-chktex-program)
(tex-chktex-extra-flags): Add missing :version tags.
2017-12-12 23:21:24 -08:00
Glenn Morris
f5d0360234 Escape column-zero doc parens
* lisp/htmlfontify.el (hfy-display-class):
* lisp/calendar/icalendar.el (icalendar--do-create-ical-alarm):
* lisp/net/shr.el (shr-external-rendering-functions):
* lisp/progmodes/cc-vars.el (c-asymmetry-fontification-flag):
* lisp/textmodes/tildify.el (tildify-tildify):
Escape column-zero doc parens.  A shame bug#21871 remains unfixed.
2017-12-12 23:18:35 -08:00
Max
cd53b6399b Fix dired-do-compress when tar doesn't default to stdin (Bug#29094)
* lisp/dired-aux.el (dired-compress-file-suffixes): Use argument '-f-'
to write to stdout rather than relying on the default (the choice of
default is decided when compiling tar, BSD systems usually set it to a
tape drive).  Drop '-v', since the output is not used anywhere.

Copyright-paperwork-exempt: yes
2017-12-11 17:38:28 -05:00