Glenn Morris [Wed, 27 Dec 2017 18:00:16 +0000 (10:00 -0800)]
Merge from origin/emacs-26
fd35804971 (origin/emacs-26) * doc/lispref/strings.texi (Case Convers... 89e257d71b * doc/misc/speedbar.texi (Top): Fix grammar. a31ab5ffb5 * lisp/subr.el (with-silent-modifications): Doc fixes. 2ebc8dc3b6 Fix curved quotes in printed manual e4a881b5cf Say that "gnus-cloud" is a parody name 13c59d0a83 More improvements for text.texi 7850b7620e Adjudicate review comments for the "Text" chapter of user ... d7d3b14a99 * lisp/url/url-http.el (url-http-wait-for-headers-change-f... f3819ad13e In C-h k <mouse-n>, alert user to existence of any matchin... 99054fbef9 * net/eww.el (eww): Handle URLs without host part. de89c0b641 Make C-h c/k S-mouse-1 display message for mouse-appearanc... 720ed0b533 Avoid crashes when ':eval' deletes our frame 9105c9aa34 Fix scrolling up in pixel-scroll.el b882d4ef11 Fix problems with ligatures in PDF version of ELisp manual 289dd53bb3 (elisp-flymake-byte-compile): Handle killed buffer in sent... cf36c82127 Avoid some overfull lines in PDF lispref b07b56a351 Avoid some overfull lines in PDF manual 6b3118f025 * doc/emacs/arevert-xtra.texi (Auto Reverting the Buffer M... 7ffb7b1e01 ; lispref nil/t markup fixes
Fix highlighting in query-replace with non-nil replace-char-fold
* lisp/replace.el (replace-highlight): Bind
'isearch-regexp-function' in the same way that function
'replace-search' does, so as to respect the value of
'replace-char-fold'. (Bug#24356)
Stefan Monnier [Tue, 26 Dec 2017 03:51:23 +0000 (22:51 -0500)]
* lisp/register.el: Use cl-generic
(registerv): Make it a "normal"struct.
(registerv-make): Declare obsolete.
(register-val-jump-to, register-val-describe, register-val-insert):
New generic functions.
(jump-to-register, describe-register-1, insert-register): Use them.
* lisp/emacs-lisp/cl-generic.el: Prefill a combination of struct+typeof.
(cl--generic-prefill-dispatchers): Allow a list of specializers.
Eli Zaretskii [Sun, 24 Dec 2017 18:47:06 +0000 (20:47 +0200)]
Adjudicate review comments for the "Text" chapter of user manual
* doc/emacs/text.texi (Text): Rearrange text for clarity. Add
cross-reference to the Org manual. Make the cross-reference to
Outline Mode appear in online manuals as well (the conditional was
a forgotten remnant from time immemoriam).
(Paragraphs): Add a note that 'paragraph-start' and
'paragraph-separate' should not be anchored.
(Auto Fill): Remove redundant text. Suggested by Petteri
Hintsanen <petterih@iki.fi> in emacs-manual-bugs@gnu.org.
Alan Mackenzie [Sun, 24 Dec 2017 10:29:52 +0000 (10:29 +0000)]
In C-h k <mouse-n>, alert user to existence of any matching down-mouse-event
, and instruct her to hold the mouse button to display its documentation.
* lisp/help.el (help-downify-mouse-event-type): New function.
(help-read-key-sequence, describe-key): handle double-click-time being nil or
t.
(describe-key): Print out instructions for displaying documentation of
matching mouse down key sequence command when such exists.
Alan Mackenzie [Sat, 23 Dec 2017 18:00:10 +0000 (18:00 +0000)]
Make C-h c/k S-mouse-1 display message for mouse-appearance-menu, etc.
Currently, C-h c/k for S-mouse-1 reports that S-mouse-1 is unbound, ignoring
that S-down-mouse-1 is bound. We fix this by reporting on the "latest" mouse
event of a sequence which is bound.
* lisp/help.el (help-read-key-sequence): Save all encountered mouse events in
a list. Return the latest one which has a binding.
Tak Kunihiro [Sat, 23 Dec 2017 09:16:40 +0000 (11:16 +0200)]
Fix scrolling up in pixel-scroll.el
* lisp/pixel-scroll.el (pixel-scroll-up): Do not try to move cursor
down when EOB is shown at the top. This function is reverted to
commit 1bda71ec3b11eeb4d06c3da094a3cb21bac18d5c. (bug#29737)
Boruch Baum [Sat, 23 Dec 2017 04:06:22 +0000 (23:06 -0500)]
* lisp/mail/footnote.el (footnote-align-to-fn-text): New config var
(footnote-mode): Declare.
(Footnote--get-area-point-min): Fix last change to use 'car` instead of
the undefined 'first'.
(Footnote--calc-fn-alignment-column, Footnote--fill-prefix-string)
(Footnote--adaptive-fill-function): New functions.
(footnote-mode): Use them.
Boruch Baum [Sat, 23 Dec 2017 02:44:52 +0000 (21:44 -0500)]
* lisp/mail/footnote.el: Misc changes in preparation for more
(footnote-section-tag-regexp): Don't require the trailing space.
(Footnote--point-in-body-p, Footnote--get-area-point-min)
(Footnote--get-area-point-max): New functions.
(Footnote-narrow-to-footnotes, Footnote-text-under-cursor): Use them.
Glenn Morris [Fri, 22 Dec 2017 18:23:16 +0000 (13:23 -0500)]
Merge from origin/emacs-26
34fcfc5 (origin/emacs-26, emacs-26) * lisp/emacs-lisp/inline.el (defi... f7a62c2 Fix doc string of 'footnote-style-alist' c3b6742 Improve documentation of selecting windows 861d110 Improve documentation of records 22b3075 * etc/NEWS: Mention the removal of pinentry.el. (Bug#27445) 689526b Fix interactive spec of 'semantic-ia-show-variants' 90ca37f Fix documentation of 'mouse-drag-and-drop-region' and friends d60faf3 Improve detection of speller version in ispell.el a0e3b06 Document 'mouse-drag-and-drop-region' options and mention the... 164e84c Fix uses of 'nil' and 'non-nil' in manuals and a few more min... 798f07f Document that mode commands should be idempotent. ad2a47c ; * src/xdisp.c (extend_face_to_end_of_line): Fix last change. 88ddf53 Fontify a CPP construct correctly when a comment follows with... de7de9c Prevent infloop in redisplay on TTY frames 293720e Fix loss of documentation face in certain CC Mode doc comment...
Stefan Monnier [Fri, 22 Dec 2017 15:06:49 +0000 (10:06 -0500)]
* lisp/progmodes/cperl-mode.el: Use cl-lib. Fix comment convention
(defgroup, defcustom, defface, x-color-defined-p, uncomment-region)
(ps-extend-face-list, eval-after-load, turn-on-font-lock):
Assume defined.
(cperl-calculate-indent): Use 'functionp' to test if a value is a function.
Eli Zaretskii [Fri, 22 Dec 2017 10:18:12 +0000 (12:18 +0200)]
Improve documentation of selecting windows
* doc/lispref/windows.texi (Basic Windows, Selecting Windows):
Clarify what selecting a window means for keyboard input, and that
input focus may need to be considered when selecting windows on
other frames. See
http://lists.gnu.org/archive/html/emacs-devel/2017-12/msg00372.html
for more details.
Eli Zaretskii [Fri, 22 Dec 2017 10:04:23 +0000 (12:04 +0200)]
Improve documentation of records
* doc/lispref/Makefile.in (srcs): Add the forgotten records.texi.
* doc/lispref/records.texi (Records): Recommend that record type
names use package-naming conventions.
* etc/NEWS: Add the naming convention recommendation for record
types.
Eli Zaretskii [Fri, 22 Dec 2017 09:19:56 +0000 (11:19 +0200)]
Fix documentation of 'mouse-drag-and-drop-region' and friends
* doc/emacs/frames.texi (Drag and Drop): Index
'mouse-drag-and-drop-region-cut-when-buffers-differ',
'mouse-drag-and-drop-region-show-tooltip', and
'mouse-drag-and-drop-region-show-cursor'.
* etc/NEWS: Fix the format of the related entries.
Eli Zaretskii [Fri, 22 Dec 2017 09:11:29 +0000 (11:11 +0200)]
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)
Stefan Monnier [Fri, 22 Dec 2017 06:12:26 +0000 (01:12 -0500)]
* lisp/progmodes/cperl-mode.el: Use lexical-binding
Drop some support code for Emacs-19. Remove unused args and vars.
(cperl-mark-active): Remove, use region-active-p.
(cperl-use-region-p): Remove, use use-region-p.
(cperl-can-font-lock, cperl-enable-font-lock, cperl-emacs-can-parse):
Remove, obsolete.
(cperl-mode-map): Move initialization into declaration.
Stefan Monnier [Fri, 22 Dec 2017 04:22:59 +0000 (23:22 -0500)]
* lisp/progmodes/cperl-mode.el: Merge from Jonathan Rockway's version
(cperl-indent-subs-specially): New var.
(cperl-mode-abbrev-table): Add '=begin'. Obey cperl-electric-keywords.
(cperl-sub-keywords, cperl-sub-regexp): New vars.
(cperl-char-ends-sub-keyword-p): New function.
(cperl-mode): Use them.
(cperl-db): Pass `-d` arg to perl.
(cperl-electric-keyword, cperl-linefeed): Accept also '=end'.
(cperl-sniff-for-indent): Obey cperl-indent-parens-as-block and
cperl-indent-subs-specially.
(cperl-calculate-indent): Fix handling of numbers in
cperl-indent-rules-alist, and add a case for functions.
(cperl-find-pods-heres): Use cperl-sub-regexp and allow =begin/=end.
Also recognize 'say'.
(cperl-block-p): Use cperl-sub-regexp
(cperl-after-block-p): Use cperl-char-ends-sub-keyword-p and
cperl-sub-regexp.
(cperl-after-block-and-statement-beg): Accept 'say'.
(cperl-indent-exp): Accept 'state'.
(cperl-fix-line-spacing): Accept 'state'.
(cperl-init-faces): Add 'given', 'when', 'default', 'break', 'try',
'catch', 'finally', 'evalbytes', 'state', '__SUB__', 'fc', 'sysseek'.
Use cperl-sub-regexp.
(cperl-etags): Use cperl-sub-regexp.
(cperl-not-bad-style-regexp): Add '//'.
(cperl-short-docs): Add ~~, UNITCHECK, 'break', 'default', 'evalbytes',
'given', 'say', 'state', //, 'fc', 'prototype', =begin', and '=end'.
Philipp Stephani [Fri, 22 Dec 2017 00:56:38 +0000 (01:56 +0100)]
Fix bugs in JSON test
* test/src/json-tests.el (json-serialize/invalid-unicode): Fix two
bugs that canceled each other out. "a\xCCb" is actually a valid
Unicode string because the hexadecimal character escape isn't
terminated by the "b". But this was masked by an incorrect
closing parentheses, causing an unrelated error.
Alan Mackenzie [Thu, 21 Dec 2017 17:49:14 +0000 (17:49 +0000)]
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-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.
Alan Mackenzie [Thu, 21 Dec 2017 17:18:40 +0000 (17:18 +0000)]
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.
Glenn Morris [Thu, 21 Dec 2017 02:15:43 +0000 (21:15 -0500)]
Merge from origin/emacs-26
b3f4a3a (origin/emacs-26) Special-case %DUMBFW for GnuTLS between 3.2... c2ae057 Work around GnuTLS version issues with %DUMBFW (tiny change) 2f9d9ef ; Remove the mention of "plain C code" in the docstring as well aca827b Merge branch 'widen-less' into emacs-26 87548f5 ; Rephrase NEWS entry a bit da0d773 (emacs-26) ; * lisp/erc/erc.el: Update URL. 3a60515 * lisp/erc/erc.el (erc-shorten-server-name): Silence compiler... 471b6c1 ; Replace non-ascii quote characters in doc strings etc 7af7f5e Fix some more aliases to user options 79fb4b5 Fix some flymake aliases b9fbc03 (origin/widen-less) Widen in indent-for-tab-command in the no... 446faf3 Replace the mention of c-indent-defun with js-indent-line 7e9eef0 Consolidate 'widen' calls
Glenn Morris [Thu, 21 Dec 2017 02:14:19 +0000 (21:14 -0500)]
Merge from origin/emacs-26
4122d54 Fix updating scrollbar sizes when scaling is in effect 21a212f Collect GnuTLS extensions and use them to set %DUMBFW if supp... 936136e * test/lisp/emacs-lisp/derived-tests.el: Fix copy&paste lefto... 07b7fb9 * lisp/subr.el (delayed-after-hook-functions): Rename from ..... a5b0a4e * lisp/net/shr.el (shr-string-pixel-width): Return pixel-widt... c51e797 python.el doc fixes c62ced5 Make 'mouse-drag-and-drop-region' more robust and customizable
Glenn Morris [Thu, 21 Dec 2017 02:14:19 +0000 (21:14 -0500)]
Merge from origin/emacs-26
89cfdbf Don't mess up syntax-ppss cache in electric-pair (Bug#29710) c5061d8 * etc/emacs.appdata.xml: Update file format. 080f227 Use utf-8-hfs-unix on macOS (Bug#29712) 28e0261 * lisp/progmodes/cc-defs.el (c-version): Update to 5.33.1. ac53084 Improve fix for Bug#29712 ffd4771 * doc/lispref/sequences.texi (Sequence Functions): Improve in... f274cbd Avoid reordering of output in 'shr-insert-document' 7890864 Improve documentation of 'invisible-p' a1327bb Remove one more check that Vframe_list is non-nil 63b6281 Fix off-by-one error in 'css--hex-color' 804b37c Save and restore text-pixel height and width of frames (Bug#2... 777fe94 Partially revert "Mention new strictness for &optional, &rest... ad17db7 * lisp/vc/smerge-mode.el (smerge-refine): Respect font-lock-m... 5a7d009 * lisp/vc/smerge-mode.el (smerge-refine): Replace obsolete al... e019c35 FOR_EACH_FRAME no longer assumes frame-list d64b88d * src/font.c (Ffont_info): Doc fix. (Bug#29682) 92b2604 Modernise message.el face spec syntax b1efbe6 Update message.el obsolete face aliases 2494c14 ; * lisp/comint.el (comint-terminfo-terminal): Add a :version... 12ad276 Improve documentation of TERM environment variable 8ed529f Add option to configure comint TERM 889f07c Better support utf-8-with-signature and utf-8-hfs in XML/HTML a2697fa * lisp/menu-bar.el (menu-bar-mode): Doc fix. ffb50ea ; * etc/NEWS: Fix last change. 95606af Fix Bug#29712 in tramp-tests.el 9bf66c6 Don't run FOR_EACH_FRAME when there's no frame left (Bug#29961) c2a88ec * lisp/textmodes/tex-mode.el: Ensure uncompiled file is loada... b178870 Remember password change for IMAP in Gnus (Bug#29692) a21dac1 Add %DUMBFW to the default GnuTLS priority strings 780407c Small fixes prompted by make check-declare 541a601 Fix some custom groups e220d6e Fix fontification of first declaration within a C++ lambda form. aa66da2 * src/data.c (Fadd_variable_watcher): Doc fix. f838210 Fix misfontification of C++ member initialization list after ... 232c646 Fix doc-string of Fbuffer_list 3f9aac6 Don't raise an extraneous frame (bug#29696) e7b1111 Mention new strictness for &optional, &rest in arglists (Bug#... 4cb8696 Don't misfontify "foo ()" inside C++ initialization parenthes... ce31e72 Fixes for defcustoms, prompted by cus-test-opts aacd1e1 * lisp/net/newst-backend.el (newsticker--raw-url-list-default... 7e2f4d3 * lisp/htmlfontify.el (hfy-which-etags): Fix it. 52d2a69 Add missing :version tags revealed by cusver-check f5d0360 Escape column-zero doc parens 45099bb Remove ObjC blocks (Bug#23753) b0369d0 Import the latest IVD_Sequences.txt cd53b63 Fix dired-do-compress when tar doesn't default to stdin (Bug#... 51911da Suppress warnings during elisp completion macroexpansion a36a090 * lisp/progmodes/verilog-mode.el (verilog-mode): Fix typo (Bu... 6a6e8e6 Make tramp-interrupt-process more robust 5bcd468 Make quail-input-method work when inhibit-read-only is non-ni... 87baf12 Fix 'fontset-name-p' d231587 Fix fontset documentation inconsistencies for bug#29630 a829cb8 Remove sentence from child frames section in Elisp manual ad491c8 Avoid crashes in 'font-at' after 'set-fontset-font' c73d2cd * lisp/files-x.el (connection-local-set-profile-variables): F... cefca2b Add /etc/ssl/cert.pem to gnutls-trustfiles for macOS 122e726 Fix tool-tip display when display margins are non-zero by def... e1cc203 Handle hash tables and vectors when reading/writing EIEIO obj... cda219c Improve interactive debugging commands in xdisp.c 1056b3c Fix calculation of continuation_pixel_width in display engine 90e2080 Improve documentation of 'save-abbrevs'. 14f0230 Improve documentation of Dired 161b0e5 * lisp/bookmark.el (bookmark-alist): Doc fix. (Bug#29551) 7eea314 Minor Tramp fixes c0a670a * lisp/help-mode.el (help-function-def): Allow help-make-xref... 0572016 Fix doc-string of 'display-buffer-in-side-window' a1bbc49 Fix Bug#29579 cb3d979 ; NEWS: Update Org version number 445eefd Backport: Update Org to v9.1.4 5381c70 In windows.texi mention special splitting behavior of side an... 46d62b9 * lisp/gnus/gnus-group.el (gnus-group-mode-map): Bind [follow... 1ef1dbd Avoid compilation warning in xterm.c 5cf3c26 * README: Document all the top-level directories. (Bug#29558) e9ea206 Don't enable erc modules on simply loading erc.el 4b06af0 Allow shr to use data: URLs without encoding 1fdac2d Don't add newlines in minibuffer history de68f33 modhelp.py: Support Python 3 (Bug#24954) afb04f7 Use forward slashes for python w32 config example (Bug#21656) 04e5b28 Fix bug in i18n/l10n optimization 8227087 Let autoload-compute-prefix be set file-locally (Bug#29471) 98ca7d5 Improve edit-kbd-macro prompting in case of remapped keys (Bu... c02c1f6 Add tests on electric-indentation and Python multiline string... 946bb6d Disable electric indent for python strings (Bug#29305) 35f1ed1 ; ChangeLog.2: Fix bug reference. ac31663 Fix buffer overflow in fontname conversion (Bug#29523) bf9b972 Fix byte compilation of files with leading directories ac144dc * lisp/files.el (make-backup-file-name-1): Fix scoping error. 1b351c8 Revert Tramp commit from 2017-11-20 77cf972 Improve documentation of buffer-list commands and features 66ec92a Fix backing up remote files in local directories on MS-Windows 7e61e74 * doc/emacs/mule.texi (Output Coding): Clarify sendmail coding. 1e25cd7 Revert "Fix backing up remote files in local directories on M... f52d795 Fix a typo in ELisp manual bf26fc3 * lisp/composite.el (find-composition): Fix a typo in the doc... 34a21c3 ; Auto-commit of loaddefs files. 8c8b673 Fix backing up remote files in local directories on MS-Windows 8eb6870 Fix vertical cursor motion in pixel-scroll.el 625e84f Fix typos in doc strings of message.el 9292276 Fix a typo in the Emacs manual 42509c0 Improve the documentation of 'table-insert-sequence' 93dc7ae Port better to QNX ad99550 Make tramp-test42-auto-load more robust af0ce33 ; * lisp/composite.el (find-composition): Fix a typo in last ... bdbcdba Avoid assertions in find-composition 408862f ; * lisp/emacs-lisp/bytecomp.el: Tweak message formatting in ... 9964db4 Restore obsolete method of changing byte-compile-dest-file 3dd25ae Some minor Tramp corrections d670a15 * doc/misc/url.texi (http/https): Fix typo 99d07e8 Remove some bogus definition-prefixes from loaddefs
Andy Moreton [Thu, 21 Dec 2017 01:07:54 +0000 (20:07 -0500)]
Work around GnuTLS version issues with %DUMBFW (tiny change)
* src/gnutls.c: Introduce HAVE_GNUTLS_EXT_GET_NAME and use it.
(init_gnutls_functions): Use it.
(Fgnutls_available_p): Use it (Bug#25061). Fix Vlibrary_cache bug.
Glenn Morris [Wed, 20 Dec 2017 21:05:46 +0000 (16:05 -0500)]
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.
Ensure current buffer is version-controlled in vc-region-history
* lisp/vc/vc.el (vc-region-history): Ensure buffer is
version-controlled. Otherwise if a user runs it in a
non-version-controlled buffer, they get the error:
Cannot open load file: No such file or directory, vc-nil
Glenn Morris [Wed, 20 Dec 2017 19:31:03 +0000 (14:31 -0500)]
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.
Glenn Morris [Wed, 20 Dec 2017 19:28:04 +0000 (14:28 -0500)]
Unbreak a fileio test on non-Mac OS X systems
* test/src/fileio-tests.el (fileio-tests--symlink-failure):
Don't use an undefined coding system.
; No need to merge to master, since breaking commit wasn't merged.
Robert Pluim [Wed, 20 Dec 2017 08:24:17 +0000 (09:24 +0100)]
Fix updating scrollbar sizes when scaling is in effect
* src/gtkutil.c (xg_update_scrollbar_pos): Update width of
scrollbar when scaling is in effect.
(xg_update_horizontal_scrollbar_pos): Update scrollbar size
when scaling is in effect.
Ted Zlatanov [Tue, 19 Dec 2017 17:43:56 +0000 (12:43 -0500)]
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.
Philipp Stephani [Wed, 13 Dec 2017 22:35:07 +0000 (23:35 +0100)]
Allow JSON parser functions to return alists
* src/json.c (Fjson_parse_string, Fjson_parse_buffer): Give these
functions a keyword argument to specify the return type for JSON
objects.
(json_to_lisp): Convert objects to alists if requested.
(json_parse_object_type): New helper function to parse keyword
arguments.
* test/src/json-tests.el (json-parse-string/object): Add a unit test.
* doc/lispref/text.texi (Parsing JSON): Document new functionality.