Glenn Morris [Mon, 15 Jan 2018 21:53:40 +0000 (13:53 -0800)]
Merge from origin/emacs-26
c9c1add6a4 * doc/lispref/variables.texi (File Local Variables): Fix l...
752fba992b (tag: emacs-26.0.91) ; * Update ldefs-boot.el
4f46a5098d * ChangeLog.3: Update
8f705ba44d Update etc/AUTHORS
6c63204b8c Fix an entry in authors-aliases
5dd0e5c54d Mention trace.el facilities in the ELisp manual
97b0e41c5d Improve documentation of safe values of variables
a502ee9dc4 ; * doc/emacs/misc.texi (Amusements): Really add "games" t...
106bf8adc3 Improve the Emacs manual's "Misc" node
47aa85c7ec In nsterm.m use FRAME_NS_P instead of FRAME_X_P (Bug#30019)
e9e32d3475 ; * Update ldefs-boot.el
Glenn Morris [Mon, 15 Jan 2018 21:53:40 +0000 (13:53 -0800)]
; Merge from origin/emacs-26
The following commit was skipped:
64b9d0df9e Bump Emacs version to 26.0.91
Glenn Morris [Mon, 15 Jan 2018 21:53:40 +0000 (13:53 -0800)]
Merge from origin/emacs-26
2c0cfa6455 * ChangeLog.3: Update
4387bb44ae Update authors
bce51bd6f7 * lisp/gnus/message.el (message-do-auto-fill): Prevent do-...
bd2a2a1e84 Improve documentation of etags
7ba75b9637 Teach etags new interpreters for some languages
1f7f03742d * lisp/emacs-lisp/generator.el (iter-defun): Add 'doc-stri...
dbb4aac212 * lisp/emacs-lisp/syntax.el (syntax-propertize): Fix bug#2...
80463a43da Improve documentation of fill-separate-heterogeneous-words...
4bd2416d55 Fix documentation of some x-* functions
9c2b11484f Inherit query-on-exit flag to stderr process (Bug#30031)
3efb1e7def Fix Bug#30057
a9b884c60f Tag some unstable tests, and skip by default (bug#24503)
# Conflicts:
# test/lisp/emacs-lisp/eieio-tests/eieio-tests.el
Nicolas Petton [Wed, 11 Oct 2017 13:11:14 +0000 (15:11 +0200)]
* admin/authors.el (authors-aliases): Additions.
Nicolas Petton [Wed, 11 Oct 2017 13:12:09 +0000 (15:12 +0200)]
Update authors.el
* admin/authors.el (authors-valid-file-names)
(authors-renamed-files-alist): Additions.
Glenn Morris [Mon, 15 Jan 2018 20:43:16 +0000 (12:43 -0800)]
Small improvement for noninteractive gitmerge
* admin/gitmerge.el (gitmerge-resolve-unmerged):
In batch mode, report conflicted files.
Glenn Morris [Mon, 15 Jan 2018 20:28:50 +0000 (12:28 -0800)]
Small gitmerge-skip-regexp fix
* admin/gitmerge.el (gitmerge-skip-regexp): Update for new format
of "bump version" message that seems to have appeared.
Stefan Monnier [Mon, 15 Jan 2018 18:42:51 +0000 (13:42 -0500)]
* src/print.c (syms_of_print) <print_quoted>: Set default to true
Stefan Monnier [Mon, 15 Jan 2018 18:15:12 +0000 (13:15 -0500)]
* lisp/mail/smtpmail.el (smtpmail-send-data-1): No string-as-multibyte
This is not needed any more since unibyte strings will be sent as-is
anyway by process-send-string.
(smtpmail-via-smtp): Avoid set-buffer-process-coding-system.
Stefan Monnier [Mon, 15 Jan 2018 18:14:37 +0000 (13:14 -0500)]
(set-buffer-process-coding-system): Mark as interactive-only.
* lisp/international/mule.el (set-buffer-process-coding-system):
Mark as interactive-only.
Eli Zaretskii [Mon, 15 Jan 2018 12:15:53 +0000 (14:15 +0200)]
; * src/coding.h (surrogates_to_codepoint): Add prototype.
Jeremie Courreges-Anglas [Mon, 15 Jan 2018 08:12:44 +0000 (09:12 +0100)]
Use fcntl.h in kqueue.c
* src/kqueue.c: Use fcntl.h (specified by POSIX) instead of
non-standard sys/file.h to access O_* open(2) flags.
Stefan Monnier [Sat, 13 Jan 2018 22:02:50 +0000 (17:02 -0500)]
* doc/lispref/variables.texi (File Local Variables): Fix last change
Nicolas Petton [Sat, 13 Jan 2018 21:07:12 +0000 (22:07 +0100)]
; * Update ldefs-boot.el
Nicolas Petton [Sat, 13 Jan 2018 20:49:52 +0000 (21:49 +0100)]
* ChangeLog.3: Update
Nicolas Petton [Sat, 13 Jan 2018 20:49:13 +0000 (21:49 +0100)]
Update etc/AUTHORS
Nicolas Petton [Sat, 13 Jan 2018 20:45:31 +0000 (21:45 +0100)]
Fix an entry in authors-aliases
* admin/authors.el (authors-aliases): Replace regexp from "Max", which
is too broad, to an email address ("mu@magi.net.ru").
Ken Brown [Fri, 12 Jan 2018 13:51:16 +0000 (08:51 -0500)]
Add battery support to all Cygwin builds
It already exists in the Cygwin-w32 build.
* src/w32fns.c (Fw32_battery_status): Move to...
* src/w32cygwinx: New file, to be used for functions common to
the MS Windows and Cygwin builds.
(syms_of_w32cygwinx): New function.
* src/lisp.h: Add prototype of syms_of_w32cygwinx.
* src/emacs.c (main) [HAVE_NTGUI or CYGWIN]: Call syms_of_w32cygwinx.
* src/Makefile.in (SOME_MACHINE_OBJECTS):
* configure.ac (W32_OBJ) [HAVE_W32]: Add w32cygwinx.o.
(W32_LIBS) [CYGWIN]: Set equal to "-lkernel32" in non-w32 build.
(W32_OBJ) [CYGWIN]: Set equal to "w32cygwinx.o" in non-w32 build.
* etc/NEWS: Document the new battery support.
Shuguang Sun [Sat, 13 Jan 2018 16:52:04 +0000 (17:52 +0100)]
Fix Bug#29149 in dired-aux.el
* lisp/dired-aux.el (dired-shell-stuff-it): Handle remote
commands on w32 properly. (Bug#29149)
Michael Albinus [Sat, 13 Jan 2018 16:48:10 +0000 (17:48 +0100)]
Fix Bug#29149 in shell.el
* lisp/shell.el (shell): Change order of `file-local-name' and
`expand-file-name' calls. Otherwise, the local file name
would be extended by a drive letter, even when it is a remote
file, seen from w32. (Bug#29149)
Eli Zaretskii [Sat, 13 Jan 2018 11:53:47 +0000 (13:53 +0200)]
Mention trace.el facilities in the ELisp manual
* doc/lispref/debugging.texi (Debugging): Mention the trace.el
library.
Michael Albinus [Sat, 13 Jan 2018 11:07:28 +0000 (12:07 +0100)]
Improve Tramp robustness
* lisp/net/tramp.el (tramp-message, tramp-process-actions)
(tramp-read-passwd, tramp-interrupt-process):
* lisp/net/tramp-adb.el (tramp-adb-maybe-open-connection):
* lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-notify-add-watch)
(tramp-gvfs-maybe-open-connection):
* lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band)
(tramp-process-sentinel)
(tramp-sh-handle-file-notify-add-watch)
(tramp-barf-if-no-shell-prompt, tramp-maybe-open-connection)
* lisp/net/tramp-smb.el (tramp-smb-handle-copy-directory)
(tramp-smb-handle-file-acl, tramp-smb-handle-set-file-acl)
(tramp-smb-maybe-open-connection): Use process property rather
than connection property "vector".
* lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-notify-add-watch):
Fix scoping error. Let error traces use process buffer.
* lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
Move "inotifywait" up. GVFS based monitoring is not stable.
Let error traces use process buffer.
(tramp-sh-gvfs-monitor-dir-process-filter): Check more error
messages.
(tramp-get-remote-gvfs-monitor-dir): Search also for "gio".
* lisp/net/tramp.el (tramp-get-debug-buffer):
Use `special-mode-map' as parent map in debug buffer.
(tramp-message): Ensure, that proper process buffer is dumped
in error case.
Eli Zaretskii [Sat, 13 Jan 2018 10:48:07 +0000 (12:48 +0200)]
Improve documentation of safe values of variables
* doc/lispref/variables.texi (File Local Variables): Mention the
autoload cookie as a means of defining safe values for variables.
See http://lists.gnu.org/archive/html/emacs-devel/2018-01/msg00261.html
for the details.
* doc/lispref/compile.texi (Compiler Errors): Document
'byte-compile-error-on-warn'.
Eli Zaretskii [Sat, 13 Jan 2018 09:47:17 +0000 (11:47 +0200)]
; * doc/emacs/misc.texi (Amusements): Really add "games" to the section name.
Eli Zaretskii [Sat, 13 Jan 2018 09:45:04 +0000 (11:45 +0200)]
Improve the Emacs manual's "Misc" node
* doc/emacs/misc.texi (Gnus): A more descriptive section name.
(Invoking emacsclient): Mention how to avoid errors when there's
no Emacs server.
(EWW, Embedded WebKit Widgets): Now subsections under
"Hyperlinking and Web Navigation Features".
(Amusements): Add "games" to the section name. Suggested by Alex
Branham <alex.branham@gmail.com> in emacs-manual-bugs@gnu.org.
* doc/emacs/emacs.texi (Top): Adjust the top-level menus to the
above changes.
* doc/lispref/os.texi (Security Considerations): Fix typos.
Eli Zaretskii [Sat, 13 Jan 2018 08:58:36 +0000 (10:58 +0200)]
; * etc/NEWS: Fix entry about 'electric-quote-replace-double'.
Martin Rudalics [Sat, 13 Jan 2018 07:59:31 +0000 (08:59 +0100)]
In nsterm.m use FRAME_NS_P instead of FRAME_X_P (Bug#30019)
* src/nsterm.m (x_set_parent_frame): Call FRAME_NS_P instead
of FRAME_X_P (Bug#30019).
Stefan Monnier [Sat, 13 Jan 2018 04:37:06 +0000 (23:37 -0500)]
* src/keyboard.c: Consolidate code into make_lispy_event
(clear_event): Change arg type. Adjust callers.
(kbd_buffer_get_event): Move most special event handling to
make_lispy_event.
(make_lispy_event): Add missing cases, taken from kbd_buffer_get_event.
<SAVE_SESSION_EVENT>: Change return value to match what used to be built
in kbd_buffer_get_event.
Stefan Monnier [Fri, 12 Jan 2018 03:20:05 +0000 (22:20 -0500)]
* src/keyboard.c (kbd_buffer_get_event): Use 'switch' ...
...rather than a sequence of else-if.
Nicolas Petton [Fri, 12 Jan 2018 21:53:44 +0000 (22:53 +0100)]
; * Update ldefs-boot.el
Nicolas Petton [Fri, 12 Jan 2018 21:01:55 +0000 (22:01 +0100)]
Bump Emacs version to 26.0.91
* README:
* configure.ac:
* msdos/sed2v2.inp:
* nt/README.W32: Bump Emacs version.
Nicolas Petton [Fri, 12 Jan 2018 21:01:44 +0000 (22:01 +0100)]
* ChangeLog.3: Update
Nicolas Petton [Fri, 12 Jan 2018 20:58:43 +0000 (21:58 +0100)]
Update authors
* admin/authors.el (authors-aliases, authors-valid-file-names): Additions.
* etc/AUTHORS: Update AUTHORS file.
Alan Mackenzie [Fri, 12 Jan 2018 16:31:35 +0000 (16:31 +0000)]
Make Fzlib_decompress_region always call the change hooks in a balanced way.
This means there will be exactly one call of each of before- and
after-change-functions, regardless of whether or not the decompression
succeeds, and these calls will refer to corresponding buffer regions.
src/decompress.c (struct decompress_unwind_data): add a new field, orig.
(unwind_decompress): Use del_range_2 and update_compositions in place of
del_range, to avoid unwanted change hook calls. Call signal_after_change for
the failed case.
(Fzlib_decompress_region): Call modify_txt for a before-change-functions. Set
the new field orig of unwind_data to the region's start. Use del_range_2 and
update_compositions in place of del_range to avoid unwanted change hook
calls. Call signal_after_change for the successful case.
Katsumi Yamaoka [Fri, 12 Jan 2018 03:54:07 +0000 (03:54 +0000)]
* lisp/gnus/message.el (message-do-auto-fill): Prevent do-auto-fill from
adding extra citation mark (bug#29767, but it is a different bug).
Juri Linkov [Thu, 11 Jan 2018 22:14:35 +0000 (00:14 +0200)]
* lisp/frame.el (toggle-frame-maximized/fullscreen): Add frame arg.
(Bug#29986)
Juri Linkov [Thu, 11 Jan 2018 22:10:39 +0000 (00:10 +0200)]
* lisp/windmove.el (windmove-default-keybindings): Allow list of modifiers.
(Bug#29985)
Eli Zaretskii [Thu, 11 Jan 2018 17:44:29 +0000 (19:44 +0200)]
Improve documentation of etags
* doc/emacs/maintaining.texi (Tag Syntax, Create Tags Table):
Improve documentation of etags options and of source language
detection.
Ken Brown [Thu, 11 Jan 2018 16:40:37 +0000 (11:40 -0500)]
Unbreak the Cygwin-w32 build
* src/keyboard.c (input_polling_used) [CYGWIN]: Restore. This was
removed on Cygwin in the commit "On non-MS-Windows, omit unnecessary
polling functions". But it is used in w32fns.c:x_make_frame_visible
in the Cygwin-w32 build.
Stefan Monnier [Thu, 11 Jan 2018 16:56:43 +0000 (11:56 -0500)]
* lisp/mail/smtpmail.el: Use lexical-binding and cl-generic
(smtpmail-auth-supported): Mark it as non-constant.
(smtpmail-try-auth-methods): Remove unused var 'ret'.
Test non-nullness of mech user and password before calling
smtpmail-try-auth-method.
(smtpmail-try-auth-method): Make it into a generic function.
(smtpmail-via-smtp): Remove unused var 'response-code'.
Eli Zaretskii [Thu, 11 Jan 2018 16:35:12 +0000 (18:35 +0200)]
Teach etags new interpreters for some languages
* lib-src/etags.c (Erlang_interpreters, Lua_interpreters)
(Prolog_interpreters, Python_interpreters, Ruby_interpreters): New
static variables.
(lang_names): Use them to set interpreters for Erlang, Lua,
Prolog, Python, and Ruby.
(find_entries): Support "/usr/bin/env FOO" form of specifying an
interpreter.
* test/manual/etags/perl-src/htlmify-cystic: Modify the has-bang
line to test the "env FOO" interpreter spec. (Bug#30075)
* test/manual/etags/ETAGS.good_1:
* test/manual/etags/ETAGS.good_2:
* test/manual/etags/ETAGS.good_3:
* test/manual/etags/ETAGS.good_4:
* test/manual/etags/ETAGS.good_5:
* test/manual/etags/ETAGS.good_6: Adapt to latest changes in test
files.
Stefan Monnier [Thu, 11 Jan 2018 16:33:03 +0000 (11:33 -0500)]
* lisp/org/org-element.el: Add comment about use of internal functions
Stefan Monnier [Thu, 11 Jan 2018 16:24:38 +0000 (11:24 -0500)]
* lisp/emacs-lisp/generator.el (iter-defun): Add 'doc-string' prop.
Stefan Monnier [Thu, 11 Jan 2018 15:11:39 +0000 (10:11 -0500)]
* lisp/emacs-lisp/syntax.el (syntax-propertize): Fix bug#29767
Glenn Morris [Wed, 10 Jan 2018 20:47:33 +0000 (15:47 -0500)]
Remove some more face aliases obsolete since 22.1
* lisp/generic-x.el (show-tabs-tab-face, show-tabs-space-face):
* lisp/eshell/em-prompt.el (eshell-prompt-face):
* lisp/vc/smerge-mode.el (smerge-base-face, smerge-markers-face):
Remove face "-face" aliases, obsolete since 22.1.
Glenn Morris [Wed, 10 Jan 2018 20:45:55 +0000 (15:45 -0500)]
Remove message.el face aliases obsolete since 22.1
* lisp/gnus/message.el: Remove face "-face" aliases,
obsolete since 22.1.
Glenn Morris [Wed, 10 Jan 2018 20:39:06 +0000 (15:39 -0500)]
Remove Gnus face aliases obsolete since 22.1
* lisp/gnus/gnus-art.el, lisp/gnus/gnus-cite.el:
* lisp/gnus/gnus-srvr.el, lisp/gnus/gnus.el:
* lisp/gnus/spam.el: Remove face "-face" aliases, obsolete since 22.1.
Charles A. Roelli [Wed, 10 Jan 2018 20:30:43 +0000 (21:30 +0100)]
Improve documentation of fill-separate-heterogeneous-words-with-space
* lisp/textmodes/fill.el
(fill-separate-heterogeneous-words-with-space): Fix grammar.
Eli Zaretskii [Wed, 10 Jan 2018 19:24:58 +0000 (21:24 +0200)]
Fix documentation of some x-* functions
* lisp/term/pc-win.el (x-display-pixel-width)
(x-display-pixel-height, x-display-planes)
(x-display-color-cells, x-server-max-request-size)
(x-server-vendor, x-server-version, x-display-screens)
(x-display-mm-height, x-display-mm-width)
(x-display-backing-store, x-display-visual-class): Provide doc
strings, so that 'makedoc' produces non-empty documentation in
etc/DOC for these functions. (Bug#30068)
Glenn Morris [Wed, 10 Jan 2018 18:48:20 +0000 (13:48 -0500)]
; lisp/progmodes/cc-cmds.el: Comment.
Glenn Morris [Wed, 10 Jan 2018 18:47:42 +0000 (13:47 -0500)]
Remove obsolete variable sun-raw-prefix-hooks
* lisp/term/sun.el (sun-raw-prefix-hooks): Remove, obsolete since 21.1.
(terminal-init-sun): No longer consult sun-raw-prefix-hooks.
Stefan Monnier [Wed, 10 Jan 2018 16:45:33 +0000 (11:45 -0500)]
* lisp/calendar/appt.el: Use lexical-binding
(appt-display-message): Remove unused variable 'err'.
(appt-check): Fix typo in search for a function on a hook.
(number, original-date): Move declaration into 'appt-make-list'.
Stefan Monnier [Wed, 10 Jan 2018 16:40:21 +0000 (11:40 -0500)]
* lisp/calendar/diary-lib.el: Fix bug#30051
(diary-list-entries): Dynamically bind 'number' and 'original-date' around
diary-hook as documented in the docstring.
Philipp Stephani [Mon, 8 Jan 2018 20:51:44 +0000 (21:51 +0100)]
Inherit query-on-exit flag to stderr process (Bug#30031)
* src/process.c (Fmake_process): Have the pipe process honor the
parent's query-on-exit flag.
* test/src/process-tests.el (make-process/noquery-stderr): New test.
Michael Albinus [Wed, 10 Jan 2018 12:39:17 +0000 (13:39 +0100)]
Fix Bug#30057
* test/lisp/filenotify-tests.el (file-notify--test-tmpdir): New defvar.
(file-notify--test-cleanup, file-notify--test-make-temp-name)
(file-notify-test01-add-watch, file-notify-test03-events)
(file-notify-test05-file-validity)
(file-notify-test09-watched-file-in-watched-dir)
(file-notify-test10-sufficient-resources): Use it. (Bug#30057)
Glenn Morris [Wed, 10 Jan 2018 07:01:24 +0000 (23:01 -0800)]
Remove some obsolete calendar functions and variables
* lisp/calendar/cal-tex.el (cal-tex-list-holidays):
Remove alias, obsolete since 24.4.
* lisp/calendar/calendar.el (calendar-mode):
No longer use calendar-font-lock-keywords.
(calendar-font-lock-keywords): Delete variable, obsolete since 24.4.
; * lisp/calendar/holidays.el: Comment.
Glenn Morris [Wed, 10 Jan 2018 06:58:08 +0000 (22:58 -0800)]
Remove some obsolete compat code in supercite.el
* lisp/mail/supercite.el (sc-ask, sc-cite-original):
Remove obsolete compat code. This file uses modern features.
Glenn Morris [Wed, 10 Jan 2018 06:56:31 +0000 (22:56 -0800)]
Remove some obsolete compat code in f90.el
* lisp/progmodes/f90.el (f90-mark-subprogram, f90-indent-region)
(f90-fill-region): Remove obsolete compat code.
This file uses modern features.
Glenn Morris [Wed, 10 Jan 2018 06:54:46 +0000 (22:54 -0800)]
Remove some obsolete compat code in fortran.el
* lisp/progmodes/fortran.el (fortran-abbrev-start):
Remove obsolete compat code. This file uses modern features.
Glenn Morris [Wed, 10 Jan 2018 03:59:04 +0000 (19:59 -0800)]
Tag some unstable tests, and skip by default (bug#24503)
* Makefile.in (check-all): New phony target.
* test/Makefile.in (SELECTOR_DEFAULT, SELECTOR_EXPENSIVE):
Also skip unstable tests.
(SELECTOR_ALL): New variable.
(check-all): New phony target.
* test/lisp/emacs-lisp/eieio-tests/eieio-test-methodinvoke.el
(eieio-test-method-order-list-6):
* test/lisp/emacs-lisp/eieio-tests/eieio-tests.el
(eieio-test-37-obsolete-name-in-constructor):
Mark as unstable rather than skipping on hydra.nixos.org.
Paul Eggert [Tue, 9 Jan 2018 23:29:25 +0000 (15:29 -0800)]
Merge from origin/emacs-26
7668717d6f Merge from Gnulib
9e4d523427 * lisp/epg.el (epg-start-sign): Replace obsolete functions.
26c58f31a8 Small fix for erc-logging-enabled
34b41e3bc6 Quieten semantic normal usage
e25f961e37 Avoid irrelevant hyperlink in doc string of 'epa-pinentry-...
ec2636513c * doc/misc/tramp.texi (Remote processes): Mention gdb rest...
918a052a42 Query background for gnome terminal version 3.22 (Bug#29716)
1dfc27576a Make pixel-wise scrolling less laggy
f92264fc2a Fix child frame placement issues (bug#29953)
a5f718c4c5 ; * doc/lispref/text.texi (Change Hooks): Fix last change.
e876f5f9fb Describe the precise interaction of complex primitives wit...
3a22097cf6 Fix valgrind report in call-interactively
d5f1c87bfe * src/editfns.c (Fsave_excursion): Doc fix. (Bug#30001)
b8d74c4578 Fix mark-defun when there's no spaces between successive d...
a377c652b5 Fix Dired display and operations on file names with raw bytes
d9d6e8a04c ; Comments related to src/termcap.c
f8a07fa6b1 Improve documentation of 'gdb-many-windows'
f82400798e Fix failures in smerge-mode on MS-Windows
Paul Eggert [Tue, 9 Jan 2018 23:29:25 +0000 (15:29 -0800)]
; Merge from origin/emacs-26
The following commit was skipped:
c967ba1861 Fix description of 'struct' generic function specializer B...
Paul Eggert [Tue, 9 Jan 2018 23:29:25 +0000 (15:29 -0800)]
Merge from origin/emacs-26
d382d2bfc5 * etc/DEBUG (Getting control to the debugger): Fix grammar.
687af4c8e8 * lisp/vc/vc.el (vc-region-history): log-view-vc-fileset h...
43e2aafae3 Don't bind dframe events on load (Bug#29599)
ab31bf3c5f * lisp/textmodes/picture.el (picture-mode-exit): Doc fix. ...
ed44d92fa6 * lisp/textmodes/picture.el (picture-open-line): Doc fix. ...
b87a772612 Fix description of 'emacs-internal'
a5256da588 Update PROBLEMS with selection-related issues
c59ecb005e New customization variable for python-mode indentation (Bu...
4e20c8f220 Fix menu keyboard shortcuts on macOS (Bug#29595)
# Conflicts:
# etc/NEWS
Paul Eggert [Tue, 9 Jan 2018 23:29:20 +0000 (15:29 -0800)]
; Merge from origin/emacs-26
The following commit was skipped:
30d6c31301 ; Auto-commit of loaddefs files.
Paul Eggert [Tue, 9 Jan 2018 23:21:44 +0000 (15:21 -0800)]
Merge from Gnulib
This incorporates:
2018-01-05 maint: Add encoding marker for Emacs to non-ASCII sources
2018-01-04 update-copyright: Handle use of ©
2018-01-04 pthread_sigmask: Avoid compilation error on mingw
2018-01-02 stat-time: silence -Wunused-parameter regression
* build-aux/config.guess, build-aux/config.sub:
* build-aux/update-copyright, doc/misc/texinfo.tex, lib/gnulib.mk.in:
* lib/md5.c, lib/md5.h, lib/sha1.c, lib/sha1.h, lib/sha256.c:
* lib/sha256.h, lib/sha512.c, lib/sha512.h, lib/signal.in.h:
* lib/stat-time.h: Copy from Gnulib, or regenerate.
Glenn Morris [Tue, 9 Jan 2018 20:10:43 +0000 (15:10 -0500)]
* lisp/epg.el (epg-start-sign): Replace obsolete functions.
Glenn Morris [Tue, 9 Jan 2018 19:48:29 +0000 (14:48 -0500)]
Small fix for erc-logging-enabled
* lisp/erc/erc-log.el (erc-logging-enabled):
Respect buffer-locality of erc-enable-logging variable.
Glenn Morris [Tue, 9 Jan 2018 18:54:11 +0000 (13:54 -0500)]
Quieten semantic normal usage
* lisp/cedet/semantic/lex.el (semantic-flex): Mark obsolete at
compile time in the normal way, not at run-time. (Bug#30035)
Michael Albinus [Tue, 9 Jan 2018 08:46:28 +0000 (09:46 +0100)]
Fix Bug#30038
* lisp/net/tramp.el (tramp-make-tramp-file-name): Check, that
method is not empty. (Bug#30038)
Eli Zaretskii [Mon, 8 Jan 2018 21:26:11 +0000 (23:26 +0200)]
Avoid irrelevant hyperlink in doc string of 'epa-pinentry-mode'
* lisp/epa.el (epa-pinentry-mode): Doc fix. (Bug#30025)
Michael Albinus [Mon, 8 Jan 2018 15:43:46 +0000 (16:43 +0100)]
* doc/misc/tramp.texi (Remote processes): Mention gdb restrictions with I/O.
Tino Calancha [Mon, 8 Jan 2018 10:11:20 +0000 (19:11 +0900)]
cl-loop: Add missing guard condition
Consider the expansion of `cl-loop' with a `for' clause and more
than one internal variables, X, Y, processed in parallel.
Each step updates X and Y right after update the loop variable, K; if
either X or Y depend on K, then some forms of the body are
evaluated with the wrong K (Bug#29799).
For instance, consider the following code:
(cl-loop for k below 2
for x = (progn (message "k = %d" k) 1)
and y = 1)
This code should show in *Messages*:
k = 0
k = 1
Instead, the code shows:
k = 0
k = 1
k = 2
To prevent this we must ensure that the loop condition is still
satisfied right after update the loop variable.
In the macro expansion of the example above, right after:
(setq k (+ k 1))
evaluate the rest of the body forms iif the condition
(< k 2)
is still valid.
* lisp/emacs-lisp/cl-macs.el (cl--loop-guard-cond): New variable.
(cl--parse-loop-clause): Set it non-nil if the loop contains
a for/as clause.
(cl-loop): After update the loop variable, evaluate the remaining of
the body forms just if the loop condition is still valid (Bug#29799).
* test/lisp/emacs-lisp/cl-macs-tests.el (cl-macs-loop-for-as-equals-and):
New test.
Noam Postavsky [Fri, 15 Dec 2017 02:42:56 +0000 (21:42 -0500)]
Query background for gnome terminal version 3.22 (Bug#29716)
* lisp/term/xterm.el (xterm--version-handler): Use
xterm--report-background-handler for terminals reporting minor version
4000 and above.
Alan Third [Sun, 24 Dec 2017 15:40:03 +0000 (15:40 +0000)]
Add macOS character-palette (bug#29837)
* lisp/ns-win.el (ns-do-show-character-palette): New function.
* src/nsfns.m (Sns_show_character_palette): New function.
* src/nsterm.m (EmacsView::insertText): Handle NSAttributedString.
Alan Third [Mon, 1 Jan 2018 15:44:24 +0000 (15:44 +0000)]
Fix build issues on macOS (bug#29931)
* configure.ac: On darwin add check for Homebrew texinfo install, and
fix incorrect quoting of libxml2 includes.
Philipp Stephani [Mon, 25 Dec 2017 21:00:00 +0000 (22:00 +0100)]
Allow inserting non-BMP characters
* src/coding.h (UTF_16_HIGH_SURROGATE_P, UTF_16_LOW_SURROGATE_P): Move
from coding.c and document.
(surrogates_to_codepoint): New function.
* src/nsterm.m (insertText:): Properly handle surrogate pairs.
Michael Albinus [Sun, 7 Jan 2018 17:50:06 +0000 (18:50 +0100)]
Make tramp-tests.el more robust on w32
* test/lisp/net/tramp-tests.el (tramp-test21-file-links):
Do not call `make-symbolic-link' on w32.
(tramp-test36-find-backup-file-name): Call also
`convert-standard-filename' due to w32.
(tramp--test-windows-nt): New defun.
(tramp-test42-auto-load, tramp-test42-delay-load)
(tramp-test42-recursive-load, tramp-test42-remote-load-path):
Quote command due to w32.
Philipp Stephani [Sun, 7 Jan 2018 15:47:17 +0000 (16:47 +0100)]
; Adapt a unit test to a recent change
* test/lisp/emacs-lisp/bytecomp-tests.el
(bytecomp-tests--old-style-backquotes): Fix expected error message.
Philipp Stephani [Sun, 7 Jan 2018 15:44:45 +0000 (16:44 +0100)]
Remove incorrect use of AUTO_STRING
* src/lread.c (load_error_old_style_backquotes): Remove incorrect use
of AUTO_STRING.
Tino Calancha [Sun, 7 Jan 2018 15:33:13 +0000 (00:33 +0900)]
cl-loop: Calculate the array length just once
* lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause):
Dont calculate the array length on each iteration (Bug#29866).
Philipp Stephani [Fri, 29 Dec 2017 20:58:07 +0000 (21:58 +0100)]
Improve error message for old-style backquotes
* src/lread.c (load_error_old_style_backquotes): Improve error message
if no file is being loaded.
* test/src/lread-tests.el (lread-tests--force-new-style-backquotes):
Adapt test.
Philipp Stephani [Fri, 29 Dec 2017 20:50:55 +0000 (21:50 +0100)]
Add new variable to force new-style backquote interpretation.
* src/lread.c (syms_of_lread): Add new variable
'force-new-style-backquotes'.
(read_internal_start): Use it.
* test/src/lread-tests.el (lread-tests--force-new-style-backquotes):
New test.
* etc/NEWS: Document new variable.
Philipp Stephani [Sun, 7 Jan 2018 13:14:38 +0000 (14:14 +0100)]
Revert "Prevent name clashes between CL structures and builtin types"
This reverts commit
151496a4b96430924bc148f85b9c8471d1e132b1.
That commit breaks bootstrap builds due to a cyclic dependency.
Philipp Stephani [Sun, 31 Dec 2017 16:43:43 +0000 (17:43 +0100)]
Ignore escape characters for context-sensitive quotes (Bug#29812)
* lisp/electric.el (electric-quote-post-self-insert-function): Skip
over escape characters when determining whether a context-sensitive
quote should be opening or closing.
* test/lisp/electric-tests.el
(electric-quote-replace-double-escaped-open)
(electric-quote-replace-double-escaped-close): New unit tests.
Philipp Stephani [Sun, 31 Dec 2017 17:05:03 +0000 (18:05 +0100)]
Fix a small bug in electric quoting.
Before this commit, if 'electric-quote-replace-double' is non-nil,
typing " '" turned into " ‘" even if
'electric-quote-context-sensitive' was nil.
* lisp/electric.el (electric-quote-post-self-insert-function): Insert
context-sensitive double quote only if the last character is actually
a double quote character.
* test/lisp/electric-tests.el
(electric-quote-replace-double-no-context-single): New unit test.
Philipp Stephani [Thu, 21 Dec 2017 17:25:49 +0000 (18:25 +0100)]
Prevent name clashes between CL structures and builtin types
* lisp/emacs-lisp/cl-preloaded.el (cl-struct-define): Don't allow
structures with the same names as builtin types.
(cl--struct-name-p): New helper function.
* lisp/emacs-lisp/cl-macs.el (cl-defstruct): Don't allow structures
with the same names as builtin types.
* test/lisp/emacs-lisp/cl-macs-tests.el (cl-defstruct/builtin-type):
* test/lisp/emacs-lisp/cl-preloaded-tests.el
(cl-struct-define/builtin-type): New unit tests.
* etc/NEWS: Document changed behavior.
Alan Mackenzie [Sun, 7 Jan 2018 11:16:52 +0000 (11:16 +0000)]
* fns.c (base64-decode-region): Add signal_after_change call for insertion.
Tak Kunihiro [Sun, 7 Jan 2018 07:17:09 +0000 (09:17 +0200)]
Make pixel-wise scrolling less laggy
* lisp/pixel-scroll.el (pixel-dead-time, pixel-last-scroll-time):
New variables.
(pixel-scroll-up, pixel-scroll-down): Invoke 'scroll-up' or
'scroll-down' when called within 'pixel-dead-time'. (Bug#29737)
Noam Postavsky [Sun, 7 Jan 2018 02:16:33 +0000 (21:16 -0500)]
Revert "Fix command repetition with lexical-binding (Bug#29334)"
It does not work with more complicated interactive forms, because
byte-compile-lambda actually receives an intermediate form of code
rather than valid lisp source (Bug#29988).
* src/callint.c (Fcall_interactively):
* lisp/emacs-lisp/bytecomp.el (byte-compile-lambda): Revert previous
change, and update commentary.
Alan Third [Wed, 3 Jan 2018 13:45:03 +0000 (13:45 +0000)]
Fix child frame placement issues (bug#29953)
* src/nsterm.h (NS_PARENT_WINDOW_LEFT_POS):
(NS_PARENT_WINDOW_TOP_POS): Get the parent frame through the frame
struct as invisible child windows are detached from their parents in
NS.
* src/nsterm.m (x_set_offset): Offscreen frames have `nil' screen
value, so handle that gracefully. Child frames with negative left and
top should be positioned relative to the bottom right of the parent
frame.
Alan Third [Sat, 23 Dec 2017 11:00:35 +0000 (11:00 +0000)]
Allow setting tooltip colors in NS port
* src/nsfns.m (Fx_show_tip): Get face colors and apply them to the
tooltip.
* src/nsmenu.m (EmacsTooltip::setBackgroundColor):
(EmacsTooltip::setForegroundColor): New functions.
* src/nsterm.h (EmacsTooltip::setBackgroundColor):
(EmacsTooltip::setForegroundColor): New function prototypes.
Alan Mackenzie [Sat, 6 Jan 2018 20:15:04 +0000 (20:15 +0000)]
Make transpose-regions invoke before-change-functions only once.
In the case of two non-contiguous regions the same size, transpose-regions has
been calling before-change-functions twice, once for each region. It now
calls it just once, for the minimal region spanning both single regions.
* src/editfns.c (Ftranspose_regions): Combine two calls of modify_text into
one.
Eli Zaretskii [Sat, 6 Jan 2018 19:43:04 +0000 (21:43 +0200)]
; * doc/lispref/text.texi (Change Hooks): Fix last change.
Alan Mackenzie [Sat, 6 Jan 2018 18:55:08 +0000 (18:55 +0000)]
Describe the precise interaction of complex primitives with the change hooks
* doc/lispref/text.texi (Change Hooks): Document that most buffer changing
primitives call before- and after-change-functions in balanced pairs, but that
some complex primitives call b-c-f once, and a-c-f zero, one, or several
times.
Michael Albinus [Sat, 6 Jan 2018 18:36:22 +0000 (19:36 +0100)]
Minor tramp-gvfs.el cleanup
* lisp/net/tramp-gvfs.el (tramp-gvfs-enabled): Move up.
(top): Delete goa methods only when `tramp-gvfs-enabled' is not nil.
Eli Zaretskii [Sat, 6 Jan 2018 16:23:52 +0000 (18:23 +0200)]
Fix valgrind report in call-interactively
* src/callint.c (Fcall_interactively): Don't try to access more
bytes than are available in the interactive spec. (Bug#30004)
Eli Zaretskii [Sat, 6 Jan 2018 15:14:41 +0000 (17:14 +0200)]
* src/editfns.c (Fsave_excursion): Doc fix. (Bug#30001)
Alan Mackenzie [Sat, 6 Jan 2018 11:48:32 +0000 (11:48 +0000)]
Fix mark-defun when there's no spaces between successive defuns.
The problem was a parse-partial-sexp call which tried to use the STOPBEFORE
argument to detect non-syntactic WS. This fails on a "}", which does not
begin a sexp.
* lisp/emacs-lisp/lisp.h (beginning-of-defun--in-emptyish-line-p): Enhance to
handle BOL being in a string.
(beginning-of-defun-comments): Call the above function in place of the call
to parse-partial-sexp.
Eli Zaretskii [Sat, 6 Jan 2018 08:56:21 +0000 (10:56 +0200)]
Fix Dired display and operations on file names with raw bytes
* src/coding.c (decode_coding): When flushing remaining raw bytes
from multibyte text, copy 2-byte forms of eight-bit-*
characters as single characters, not as 2 raw bytes. (Bug#29189)
Glenn Morris [Sat, 6 Jan 2018 02:50:31 +0000 (18:50 -0800)]
; Comments related to src/termcap.c