]> git.eshelyaron.com Git - emacs.git/log
emacs.git
6 years agoFix recording keyboard macros when input method is active
Eli Zaretskii [Sat, 21 Jul 2018 09:10:20 +0000 (12:10 +0300)]
Fix recording keyboard macros when input method is active

* lisp/international/quail.el (quail-start-translation)
(quail-start-conversion): Bind inhibit--record-char to t for
the first character of a translated sequence.

* src/keyboard.c (record_char): Don't record events from
macros to dribble file, per documentation.
(Fopen_dribble_file): Doc fix.
(syms_of_keyboard) <inhibit--record-char>: New variable.
(record_char): Don't record input event if
inhibit--record-char is non-nil.  (Bug#32108)

6 years agoReport base of out-of-range input fixnums
Paul Eggert [Sat, 21 Jul 2018 07:25:27 +0000 (00:25 -0700)]
Report base of out-of-range input fixnums

* src/lread.c (string_to_number): Report the base of an
out-of-range fixnum.  Problem reported by Andy Moreton in:
https://lists.gnu.org/r/emacs-devel/2018-07/msg00696.html

6 years ago* src/fns.c (Feql, Fequal): Improve floating-point doc.
Paul Eggert [Fri, 20 Jul 2018 20:55:12 +0000 (13:55 -0700)]
* src/fns.c (Feql, Fequal): Improve floating-point doc.

6 years ago; Merge from origin/emacs-26
Glenn Morris [Fri, 20 Jul 2018 17:00:32 +0000 (10:00 -0700)]
; Merge from origin/emacs-26

The following commit was skipped:

61de292 (origin/emacs-26) Fix (Bug#32218).  Do not merge with master

6 years agoMerge from origin/emacs-26
Glenn Morris [Fri, 20 Jul 2018 17:00:32 +0000 (10:00 -0700)]
Merge from origin/emacs-26

3e72298 Improve documentation of 'pcase-defmacro rx'
ba9b9bb Fix TTY colors breakage by 'clear-face-cache'
f56ad42 * admin/MAINTAINERS: Add files maintained by me (Michael Albi...
7a258fa Adapt shadowfile.el for Tramp  (Bug#4526, Bug#4846)
cb50077 Fix auth-source-delete (Bug#26184)
a4767a6 Avoid assertion violations in gnutls.c
90110f8 Don't use a literal "C-u" in ispell.el  help message text
f4e7f6d Improve documentation of 'seqp'
ed13639 Clarify usage and dependencies between several Flyspell features

Conflicts:
etc/NEWS
test/lisp/auth-source-tests.el

6 years agoSimplify w32cygwinx.c and pacify GCC (Bug#32189)
Paul Eggert [Thu, 19 Jul 2018 23:12:17 +0000 (16:12 -0700)]
Simplify w32cygwinx.c and pacify GCC (Bug#32189)

* src/w32cygwinx.c (format_string): New function.
(Fw32_battery_status): Use it.

6 years ago* lisp/net/trampver.el (customize-package-emacs-version-alist):
Michael Albinus [Fri, 20 Jul 2018 09:30:04 +0000 (11:30 +0200)]
* lisp/net/trampver.el (customize-package-emacs-version-alist):

Add Tramp version integrated in Emacs 26.2.

6 years agoFix (Bug#32218). Do not merge with master
Michael Albinus [Fri, 20 Jul 2018 08:56:41 +0000 (10:56 +0200)]
Fix (Bug#32218).  Do not merge with master

* doc/misc/trampver.texi:
* lisp/net/trampver.el: Change version to "2.3.4.26.2".
(customize-package-emacs-version-alist): Add Tramp version
integrated in Emacs 26.2.

* lisp/net/tramp.el (tramp-handle-file-truename):
* lisp/net/tramp-adb.el (tramp-adb-handle-file-truename):
* lisp/net/tramp-sh.el (tramp-sh-handle-file-truename): Fix problem
with trailing slash.  (Bug#32218)

* test/lisp/net/tramp-tests.el (tramp-test21-file-links):
Remove `tramp--test-emacs27-p' check.

6 years agoImprove documentation of 'pcase-defmacro rx'
Eli Zaretskii [Fri, 20 Jul 2018 08:44:36 +0000 (11:44 +0300)]
Improve documentation of 'pcase-defmacro rx'

* lisp/emacs-lisp/rx.el (rx): Clarify and improve the doc string.
For the details, see the discussion starting at
http://lists.gnu.org/archive/html/emacs-devel/2018-06/msg00399.html.

6 years agoPrefer NILP (x) to EQ (x, Qnil)
Paul Eggert [Fri, 20 Jul 2018 05:03:34 +0000 (22:03 -0700)]
Prefer NILP (x) to EQ (x, Qnil)

This simplifies the code a bit, and also simplifies some
potential future changes slightly (e.g., altering eq vs eql).
* src/alloc.c (mark_object):
* src/callint.c (fix_command):
* src/chartab.c (Fchar_table_range, Fset_char_table_range):
* src/dbusbind.c (XD_OBJECT_TO_DBUS_TYPE, xd_signature):
* src/dired.c (Fsystem_users):
* src/fileio.c (Fdo_auto_save):
* src/fns.c (concat):
* src/frame.c (get_frame_param, frame_inhibit_resize)
(store_in_alist, store_frame_param, x_set_autoraise)
(x_set_autolower, x_get_arg):
* src/image.c (Fclear_image_cache):
* src/intervals.c (intervals_equal):
* src/intervals.h (DEFAULT_INTERVAL_P):
* src/lread.c (substitute_object_recurse):
* src/menu.c (digest_single_submenu)
(find_and_call_menu_selection)
(find_and_return_menu_selection):
* src/nsfns.m (x_set_icon_name, Fx_create_frame):
* src/nsmenu.m (ns_menu_show):
* src/nsselect.m (ns_string_to_pasteboard_internal)
(Fns_selection_exists_p, Fns_selection_owner_p):
* src/process.c (Faccept_process_output)
(wait_reading_process_output):
* src/terminal.c (store_terminal_param):
* src/textprop.c (verify_interval_modification):
* src/xdisp.c (next_element_from_buffer):
* src/xfaces.c (Finternal_set_lisp_face_attribute):
* src/xfns.c (x_set_icon_type, Fx_synchronize):
* src/xmenu.c (x_menu_show):
* src/xselect.c (Fx_selection_owner_p)
(Fx_selection_exists_p):
* src/xwidget.c (xwidget_view_lookup):
Prefer NILP (x) to EQ (x, Qnil).

6 years agoImprove doc for floating point ‘=’ vs ‘eql’
Paul Eggert [Thu, 19 Jul 2018 20:29:28 +0000 (13:29 -0700)]
Improve doc for floating point ‘=’ vs ‘eql’

* doc/lispref/numbers.texi (Float Basics, Comparison of Numbers):
Improve documentation of ‘=’ vs ‘eq’, ‘eql’ and ‘equal’
when NaNs and signed zeros are involved.

6 years ago; * etc/NEWS: Fix confused documentation markers.
Charles A. Roelli [Thu, 19 Jul 2018 20:17:24 +0000 (22:17 +0200)]
; * etc/NEWS: Fix confused documentation markers.

The options.el marker was accidentally moved in 2018-07-16
"Improve description of window configs in 'register-val-describe'".

6 years agoAdd 'font-lock-maximum-decoration' levels for Python
Charles A. Roelli [Thu, 19 Jul 2018 20:06:07 +0000 (22:06 +0200)]
Add 'font-lock-maximum-decoration' levels for Python

* etc/NEWS: New entry under Python mode.

* lisp/progmodes/python.el (python-font-lock-keywords-level-1)
(python-font-lock-keywords-level-2)
(python-font-lock-keywords-maximum-decoration): New variables
based off the incumbent 'python-font-lock-keywords'.
(python-font-lock-keywords): Change it to a list of the new
symbols, for use in the 'car' of 'font-lock-defaults'.
(python-mode): Set the 'car' of 'font-lock-defaults' to the
value of 'python-font-lock-keywords', instead of the symbol
'python-font-lock-keywords'.

6 years agoFix TTY colors breakage by 'clear-face-cache'
Eli Zaretskii [Thu, 19 Jul 2018 17:44:32 +0000 (20:44 +0300)]
Fix TTY colors breakage by 'clear-face-cache'

Without examining the right frame, 'tty-color-24bit' was erroneously
treating a GUI frame as a 24-bit TTY frame.
* lisp/term/tty-colors.el (tty-color-24bit): Accept optional
argument DISPLAY and pass it to display-color-cells.  Doc fix.
(tty-color-define, tty-color-desc): Pass the FRAME argument to
tty-color-24bit.  (Bug#32072)

6 years ago* etc/NEWS: Fix eql typo in previous change.
Paul Eggert [Wed, 18 Jul 2018 18:27:06 +0000 (11:27 -0700)]
* etc/NEWS: Fix eql typo in previous change.

6 years ago* admin/MAINTAINERS: Add files maintained by me (Michael Albinus).
Michael Albinus [Wed, 18 Jul 2018 14:52:12 +0000 (16:52 +0200)]
* admin/MAINTAINERS: Add files maintained by me (Michael Albinus).

6 years agoAdapt shadowfile.el for Tramp (Bug#4526, Bug#4846)
Michael Albinus [Wed, 18 Jul 2018 14:51:56 +0000 (16:51 +0200)]
Adapt shadowfile.el for Tramp  (Bug#4526, Bug#4846)

* etc/NEWS: Mention changes in shadowfile.el.

* lisp/shadowfile.el (top): Require 'tramp instead of 'ange-ftp.
(shadow-cluster): New defstruct.
(shadow-make-cluster, shadow-cluster-name, shadow-cluster-primary)
(shadow-cluster-regexp, shadow-get-user)
(shadow-parse-fullname): Remove.
(shadow-info-file, shadow-todo-file, shadow-system-name)
(shadow-homedir, shadow-regexp-superquote, shadow-suffix)
(shadow-set-cluster, shadow-get-cluster, shadow-site-name)
(shadow-name-site, shadow-site-primary, shadow-site-cluster)
(shadow-read-site, shadow-parse-name, shadow-make-fullname)
(shadow-replace-name-component, shadow-local-file)
(shadow-expand-cluster-in-file-name, shadow-contract-file-name)
(shadow-same-site, shadow-file-match, shadow-define-cluster)
(shadow-define-literal-group, shadow-define-regexp-group)
(shadow-make-group, shadow-shadows-of-1, shadow-read-files)
(shadow-write-info-file, shadow-write-todo-file)
(shadow-initialize): Adapt variables and functions.

* test/lisp/shadowfile-tests.el: New file.

6 years ago* lisp/comint.el: Clean up namespace
Stefan Monnier [Wed, 18 Jul 2018 14:23:20 +0000 (10:23 -0400)]
* lisp/comint.el: Clean up namespace

(shell-strip-ctrl-m): Mark as obsolete.
(comint-send-invisible): Rename from `send-invisible`.
(send-invisible): Make it an obsolete alias.
* lisp/net/rlogin.el: Adjust accordingly; Use lexical-binding.
* lisp/shell.el: Adjust accordingly.

6 years agoFix imenu--generic-function after fix for Bug#32024.
Filipp Gunbin [Wed, 18 Jul 2018 13:11:47 +0000 (16:11 +0300)]
Fix imenu--generic-function after fix for Bug#32024.

* lisp/imenu.el (imenu--generic-function): Restore returning of nconc
  result from the function.  Move filtering out empty menus so it is
  done before removing dummy element and splicing main element into
  index-alist.

6 years ago* etc/NEWS: Mention eql etc. NaN fix.
Paul Eggert [Wed, 18 Jul 2018 11:55:34 +0000 (04:55 -0700)]
* etc/NEWS: Mention eql etc. NaN fix.

6 years agoFix bug with eql etc. on NaNs
Paul Eggert [Wed, 18 Jul 2018 10:16:54 +0000 (03:16 -0700)]
Fix bug with eql etc. on NaNs

Fix a bug where eql, sxhash-eql, memql, and make-hash-table
were not consistent on NaNs.  Likewise for equal,
sxhash-equal, member, and make-hash-table.  Some of these
functions ignored NaN significands, whereas others treated
them as significant.  It's more logical to treat significands
as significant, and this typically makes eql a bit more
efficient on floats, with just one integer comparison instead
of one to three floating-point comparisons.
* doc/lispref/numbers.texi (Float Basics): Document that
NaNs are never numerically equal, but might be eql.
* src/fns.c (WORDS_PER_DOUBLE): Move to top level of this file.
(union double_and_words): Now named, and at the top level of this file.
(same_float): New function.
(Fmemql, Feql, internal_equal, cmpfn_eql): Use it, so that
the corresponding functions treat NaNs consistently.
(sxhash_float): Simplify based on above-mentioned changes.

* test/src/fns-tests.el (fns-tests-equality-nan): New test.

6 years ago* lisp/net/soap-client.el (soap-type-of): Optimize for Emacs≥26
Stefan Monnier [Wed, 18 Jul 2018 02:22:15 +0000 (22:22 -0400)]
* lisp/net/soap-client.el (soap-type-of): Optimize for Emacs≥26

6 years agoRemove menu name from emacs-lisp-mode-map (Bug#27114)
Alex [Wed, 9 Aug 2017 23:07:57 +0000 (17:07 -0600)]
Remove menu name from emacs-lisp-mode-map (Bug#27114)

* lisp/progmodes/elisp-mode.el (emacs-lisp-mode-map): Don't give a
menu name to the top-level map, the menu name is only useful for the
menu-map.

6 years agoFix auth-source-delete (Bug#26184)
Noam Postavsky [Wed, 18 Jul 2018 01:00:27 +0000 (21:00 -0400)]
Fix auth-source-delete (Bug#26184)

* lisp/auth-source.el (auth-source-delete): Fix `auth-source-search'
call.
* test/lisp/auth-source-tests.el (auth-source-delete): New test.

6 years agoUpdate from gnulib
Paul Eggert [Tue, 17 Jul 2018 22:45:27 +0000 (15:45 -0700)]
Update from gnulib

This incorporates:
2018-07-17 gnulib-tool: limit line length for git send-email
* lib/gnulib.mk.in: Regenerate.

6 years agoAvoid assertion violations in gnutls.c
Eli Zaretskii [Tue, 17 Jul 2018 16:58:27 +0000 (19:58 +0300)]
Avoid assertion violations in gnutls.c

* src/gnutls.c (Fgnutls_hash_digest, gnutls_symmetric)
(Fgnutls_hash_mac): Check CONSP before invoking XCDR.  (Bug#32187)
Report values of invalid arguments when signaling an error.

6 years agoUpdate from Gnulib
Paul Eggert [Tue, 17 Jul 2018 16:26:39 +0000 (09:26 -0700)]
Update from Gnulib

This causes config.guess to assume support for shell functions,
a safe assumption nowadays.
* build-aux/config.guess, build-aux/config.sub: Copy from Gnulib.

6 years ago; * etc/NEWS: Mention 'main-thread'. (Bug#32169)
Eli Zaretskii [Tue, 17 Jul 2018 15:46:02 +0000 (18:46 +0300)]
; * etc/NEWS: Mention 'main-thread'.  (Bug#32169)

6 years agoAdd variable main-thread, fix Bug#32169
Michael Albinus [Tue, 17 Jul 2018 10:03:43 +0000 (12:03 +0200)]
Add variable main-thread, fix Bug#32169

* doc/lispref/threads.texi (Basic Thread Functions): Add example,
how to propagate signals to the main thread.  Describe variable
`main-thread'.  Document optional argument CLEANUP of
`thread-last-error'.

* src/thread.c (Fthread_last_error): Add optional argument
CLEANUP.  (Bug#32169)
(main-thread): New defvar.

* test/src/thread-tests.el (thread-last-error): Adapt declaration.
(main-thread): Declare.
(threads-main-thread): New test.
(threads-errors): Extend test.

6 years agoImprove description of window configs in 'register-val-describe'
Charles A. Roelli [Mon, 16 Jul 2018 18:57:06 +0000 (20:57 +0200)]
Improve description of window configs in 'register-val-describe'

* etc/NEWS: Describe the change.
* lisp/register.el (register-val-describe)
[(window-configuration-p (car val))]: Include the shown
buffers in the return value to make
'register-read-with-preview' more useful.  (Bug#30863)

6 years ago* configure.ac [$HAVE_NS]: Correct build instructions.
Charles A. Roelli [Mon, 16 Jul 2018 18:36:31 +0000 (20:36 +0200)]
* configure.ac [$HAVE_NS]: Correct build instructions.

Running 'make install' to test a repo build on macOS used to
be required, but is no longer needed.

6 years ago; Remove tracing for epg-tests (Bug#23561)
Noam Postavsky [Mon, 16 Jul 2018 11:10:14 +0000 (07:10 -0400)]
; Remove tracing for epg-tests (Bug#23561)

6 years agoReject gpg 2.0 for epg configs by default (Bug#23561)
Noam Postavsky [Mon, 16 Jul 2018 01:40:05 +0000 (21:40 -0400)]
Reject gpg 2.0 for epg configs by default (Bug#23561)

Previously, gpg2 2.0 would be rejected, but the same version installed
as "gpg" would be accepted.

* lisp/epg-config.el (epg-gpg2-minimum-version): New constant.
(epg-config--program-alist) <OpenPGP>: Require a version in 1.4.3..2.0
or 2.1.6+., not just anything above 1.4.3.
(epg-check-configuration): Accept a list of required version
intervals, in addtion to just a single minimum.

6 years ago* lisp/format.el (format-proper-list-p): New alias.
Paul Eggert [Mon, 16 Jul 2018 01:28:35 +0000 (18:28 -0700)]
* lisp/format.el (format-proper-list-p): New alias.

6 years ago; Trace epg-tests (Bug#23561)
Noam Postavsky [Sat, 14 Jul 2018 12:58:26 +0000 (08:58 -0400)]
; Trace epg-tests (Bug#23561)

6 years agoDon't test symmetric operations on gpg 2.0 (Bug#23561)
Noam Postavsky [Sun, 15 Jul 2018 13:37:59 +0000 (09:37 -0400)]
Don't test symmetric operations on gpg 2.0 (Bug#23561)

On the Hydra test machines, which have gpg 2.0, the symmetric tests
fail.
* test/lisp/epg-tests.el (with-epg-tests): Pass REQUIRE-PUBLIC-KEY to
`epg-tests-find-usable-gpg-configuration' and call it before
`epg-make-context' so that the latter uses the resulting cached
config.
(epg-tests-find-usable-gpg-configuration): Only allow gpg 2.0 for
symmetric operations.  Clear `epg--configurations' and don't pass
NO-CACHE to `epg-find-configuration'.
(epg-tests--config-program-alist): Use copy-tree to avoid modifying
the epg-config--program-alist cons values.
* test/lisp/emacs-lisp/package-tests.el (package-test-signed): Allow
running with gpg 2.0.

6 years agoPrecise dav/davs in Tramp manual
Michael Albinus [Sun, 15 Jul 2018 07:47:47 +0000 (09:47 +0200)]
Precise dav/davs in Tramp manual

* doc/misc/tramp.texi (GVFS based methods): Mention `owncloud'
method for special `dav'/`davs' file names.

6 years agoFix Bug#32147
Michael Albinus [Sun, 15 Jul 2018 07:47:08 +0000 (09:47 +0200)]
Fix Bug#32147

* test/lisp/net/secrets-tests.el (secrets-test02-collections)
(secrets-test03-items): Test for both "Login" or "login"
collection.  (Bug#32147)

6 years agoUpdate package.el test for message format changes
Noam Postavsky [Sun, 15 Jul 2018 04:06:29 +0000 (00:06 -0400)]
Update package.el test for message format changes

* test/lisp/emacs-lisp/package-tests.el (package-test-signed): Update
the expected message.  The message was changed in 2018-06-25 "Reformat
package.el message strings for future l10n".
(with-package-test, with-fake-help-buffer): Add debug declarations.

6 years agoFix gpg detection for tests (Bug#23561)
Noam Postavsky [Sun, 15 Jul 2018 03:45:27 +0000 (23:45 -0400)]
Fix gpg detection for tests (Bug#23561)

* test/lisp/emacs-lisp/package-tests.el (package-test-signed): Stop
using epg-check-configuration and ignore-errors, they're redundant
because epg-find-configuration already does all that.
* test/lisp/epg-tests.el (epg-tests-find-usable-gpg-configuration):
Remove tracing.
(with-epg-tests): Skip test if no gpg config is found.
(epg-decrypt-1 epg-roundtrip-1, epg-sign-verify-1, epg-sign-verify-2)
(epg-import-1): Don't check gpg configuration at top-level, rely on
`with-epg-tests' instead.  Checking the gpg configuration requires a
valid HOME (or GNUPGHOME), which is provided by `with-epg-tests'.

6 years ago; Trace gpg stderr config output during epg-tests (Bug#23561)
Noam Postavsky [Sun, 15 Jul 2018 00:04:25 +0000 (20:04 -0400)]
; Trace gpg stderr config output during epg-tests (Bug#23561)

6 years ago; Further tracing of epg-tests gpg config (Bug#23561)
Noam Postavsky [Sat, 14 Jul 2018 22:31:49 +0000 (18:31 -0400)]
; Further tracing of epg-tests gpg config (Bug#23561)

6 years agoDon't use a literal "C-u" in ispell.el help message text
Eli Zaretskii [Sat, 14 Jul 2018 15:53:40 +0000 (18:53 +0300)]
Don't use a literal "C-u" in ispell.el  help message text

* lisp/textmodes/ispell.el (ispell-command-loop): Use
"\\[universal-argument]" instead of a literal "C-u".  (Bug#32142)

6 years agoAdd to documentation of 'jump-to-register'
Charles A. Roelli [Sat, 14 Jul 2018 13:12:36 +0000 (15:12 +0200)]
Add to documentation of 'jump-to-register'

* lisp/register.el (jump-to-register):
* doc/emacs/regs.texi (Position Registers): Document that
jumping to a register can push the mark.

6 years ago; Trace epg-tests gpg config finding (Bug#23561)
Noam Postavsky [Sat, 14 Jul 2018 12:58:26 +0000 (08:58 -0400)]
; Trace epg-tests gpg config finding (Bug#23561)

6 years agoAvoid infloop in redisplay due to faulty mode-line properties
Jonathan Kyle Mitchell [Thu, 5 Jul 2018 03:38:29 +0000 (22:38 -0500)]
Avoid infloop in redisplay due to faulty mode-line properties

* xdisp.c (safe_set_text_properties): New function.
(display_mode_element): Call Fset_text_properties through
internal_condition_case_n, using safe_set_text_properties as a
wrapper.  (Bug#32038)

6 years agoImprove documentation of 'seqp'
Eli Zaretskii [Sat, 14 Jul 2018 08:18:04 +0000 (11:18 +0300)]
Improve documentation of 'seqp'

* doc/lispref/sequences.texi (Sequence Functions): Add text to
explain the relation between 'seqp' and 'sequencep'.  (Bug#32125)

6 years agoClarify usage and dependencies between several Flyspell features
Eli Zaretskii [Sat, 14 Jul 2018 07:43:32 +0000 (10:43 +0300)]
Clarify usage and dependencies between several Flyspell features

* lisp/textmodes/flyspell.el (flyspell-region)
(flyspell-small-region, flyspell-persistent-highlight):
Documentation improvements.  (Bug#32142)

6 years ago* lisp/vc/diff-mode.el (diff-font-lock-prettify): New var
Stefan Monnier [Fri, 13 Jul 2018 16:34:50 +0000 (12:34 -0400)]
* lisp/vc/diff-mode.el (diff-font-lock-prettify): New var

(diff--font-lock-prettify): New function.
(diff-font-lock-keywords): Use it.

6 years agoMerge from origin/emacs-26
Glenn Morris [Fri, 13 Jul 2018 16:28:15 +0000 (09:28 -0700)]
Merge from origin/emacs-26

17ebb6e (origin/emacs-26) Use consistent function names in thread-tes...
1c86229 Fix format error in Faccept_process_output
b38b91a Lessen stack consumption in recursive read1
3eb4603 Match w32 paths in grep sans --null hits (Bug#32051)
5cc7c4b Fix previous make-network-process change
d6a1b69 Another documentation improvement in flyspell.el
9b49a8e Improve documentation of Flyspell
3744fda Provide feature 'threads
ef9025f Save the server alias on reconnect (Bug#29657)
db3874b Refer to "proper lists" instead of "true lists"
35e0305 Avoid turning on the global-minor-mode recursively
51bf4e4 Fix Bug#32085

6 years agoTweak subr-x.el substring functions
Basil L. Contovounesios [Fri, 1 Jun 2018 20:58:10 +0000 (21:58 +0100)]
Tweak subr-x.el substring functions

* lisp/emacs-lisp/subr-x.el (string-join): #'-quote function symbol.
(string-trim-left, string-trim-right):
Make better use of substring for minor speedup.
* test/lisp/emacs-lisp/subr-x-tests.el
(subr-x-test-string-trim-left, subr-x-test-string-trim-right)
(subr-x-test-string-remove-prefix)
(subr-x-test-string-remove-suffix): New tests.

6 years agoMinor cus-theme.el simplifications
Basil L. Contovounesios [Thu, 10 May 2018 02:08:10 +0000 (03:08 +0100)]
Minor cus-theme.el simplifications

* lisp/cus-theme.el (custom-new-theme-mode, customize-themes)
(custom-theme-choose-mode): Use setq-local.
(customize-create-theme): Ditto.  Use delete-all-overlays.
(describe-theme-1, custom-theme-summary): Simplify logic.

6 years agoMinor custom.el simplifications
Basil L. Contovounesios [Thu, 31 May 2018 17:37:02 +0000 (18:37 +0100)]
Minor custom.el simplifications

* lisp/custom.el (custom-quote): Duplicate macroexp-quote.
(custom-load-symbol, customize-mark-to-save, customize-mark-as-set)
(custom-theme-name-valid-p, enable-theme, custom-enabled-themes)
(disable-theme): Simplify logic.

6 years ago* lisp/cus-theme.el: Use lexical-binding
Basil L. Contovounesios [Fri, 11 May 2018 14:35:09 +0000 (15:35 +0100)]
* lisp/cus-theme.el: Use lexical-binding

6 years ago* lisp/custom.el: Use lexical-binding
Basil L. Contovounesios [Fri, 11 May 2018 15:09:57 +0000 (16:09 +0100)]
* lisp/custom.el: Use lexical-binding

Remove duplicate 'Custom Themes' comment heading.
(deftheme, custom-declare-theme): Fix advertised calling convention.
(custom-enabled-themes): Fix message grammar.

6 years agoFix custom-available-themes file expansion
Basil L. Contovounesios [Mon, 4 Jun 2018 01:12:33 +0000 (02:12 +0100)]
Fix custom-available-themes file expansion

For discussion, see thread starting at
https://lists.gnu.org/archive/html/emacs-devel/2018-05/msg00222.html.
* lisp/custom.el: (custom-available-themes): Use directory-files
instead of performing arbitrary wildcard expansion in file names.
(custom-theme--load-path): Document return value.
* test/lisp/custom-tests.el: New file.
(custom-theme--load-path): New test.

6 years agoDisable no-byte-compile in built-in themes
Basil L. Contovounesios [Wed, 9 May 2018 21:30:48 +0000 (22:30 +0100)]
Disable no-byte-compile in built-in themes

* etc/themes/adwaita-theme.el:
* etc/themes/deeper-blue-theme.el:
* etc/themes/dichromacy-theme.el:
* etc/themes/leuven-theme.el:
* etc/themes/light-blue-theme.el:
* etc/themes/manoj-dark-theme.el:
* etc/themes/misterioso-theme.el:
* etc/themes/tango-dark-theme.el:
* etc/themes/tango-theme.el:
* etc/themes/tsdh-dark-theme.el:
* etc/themes/tsdh-light-theme.el:
* etc/themes/wheatgrass-theme.el:
* etc/themes/whiteboard-theme.el:
* etc/themes/wombat-theme.el: Disable no-byte-compile.

https://lists.gnu.org/archive/html/emacs-devel/2018-01/msg00614.html
https://lists.gnu.org/archive/html/emacs-devel/2018-02/msg00060.html

6 years agoImprove loading of byte-compiled custom themes
Basil L. Contovounesios [Wed, 9 May 2018 21:20:47 +0000 (22:20 +0100)]
Improve loading of byte-compiled custom themes

* lisp/custom.el (load-theme):
Load byte-compiled file of safe themes when available.

https://lists.gnu.org/archive/html/emacs-devel/2018-01/msg00614.html
https://lists.gnu.org/archive/html/emacs-devel/2018-02/msg00060.html

6 years agoUse consistent function names in thread-tests.el
Michael Albinus [Fri, 13 Jul 2018 12:28:12 +0000 (14:28 +0200)]
Use consistent function names in thread-tests.el

* test/src/thread-tests.el (threads-call-error, threads-custom)
(threads-errors, threads-sticky-point, threads-signal-early):
Rename, using naming convention to prefix with "threads-".

6 years agoFix format error in Faccept_process_output
Michael Albinus [Fri, 13 Jul 2018 12:27:33 +0000 (14:27 +0200)]
Fix format error in Faccept_process_output

* src/process.c (Faccept_process_output): Do not use format spec
"%p", it isn't valid for error().

6 years agoLessen stack consumption in recursive read1
Paul Eggert [Fri, 13 Jul 2018 03:23:07 +0000 (20:23 -0700)]
Lessen stack consumption in recursive read1

* src/lread.c (read1): Shrink local buffer size from
MAX_ALLOCA to 128 (Bug#31995).

6 years agoMatch w32 paths in grep sans --null hits (Bug#32051)
Noam Postavsky [Mon, 9 Jul 2018 20:56:47 +0000 (16:56 -0400)]
Match w32 paths in grep sans --null hits (Bug#32051)

* lisp/progmodes/grep.el (grep-regexp-alist): Add an optional part to
match paths starting with C: (other drive letters).
* test/lisp/progmodes/compile-tests.el
(compile-tests--grep-regexp-testcases)
(compile-tests--grep-regexp-tricky-testcases)
(compile-test-grep-regexps): New tests.
(compile--test-error-line): Return `compilation-message'.

6 years agoSpeed up smerge-refine-regions by avoiding fsync
Noam Postavsky [Thu, 12 Jul 2018 00:13:25 +0000 (20:13 -0400)]
Speed up smerge-refine-regions by avoiding fsync

* lisp/vc/smerge-mode.el (smerge-refine-regions): Bind
write-region-inhibit-fsync to t.  This was reported in
https://github.com/magit/magit/pull/2834 to give a noticable speedup.

6 years agoDon't skip epg-tests even with gpg 2.0 (Bug#23561)
Noam Postavsky [Thu, 12 Jul 2018 00:01:11 +0000 (20:01 -0400)]
Don't skip epg-tests even with gpg 2.0 (Bug#23561)

* test/lisp/epg-tests.el (epg-tests--config-program-alist): New
constant, which allows gpg2 version 2.0+.
(epg-tests-find-usable-gpg-configuration): Pass it to
epg-find-configuration.

6 years agoFix previous make-network-process change
Noam Postavsky [Thu, 12 Jul 2018 23:41:03 +0000 (19:41 -0400)]
Fix previous make-network-process change

* src/process.c (Fmake_network_process): On 2018-07-09 "Explicitly
reject :server and :nowait (Bug#31903)", the sense of the SERVER check
was accidentally reversed so that we ended up looking for the wrong
ADDRESS.  Reported by T.V Raman in
<https://lists.gnu.org/archive/html/emacs-devel/2018-07/msg00437.html>.

6 years agoAnother documentation improvement in flyspell.el
Eli Zaretskii [Thu, 12 Jul 2018 16:24:06 +0000 (19:24 +0300)]
Another documentation improvement in flyspell.el

* lisp/textmodes/flyspell.el (flyspell-persistent-highlight): Doc
fix.

6 years agoImprove documentation of Flyspell
Eli Zaretskii [Thu, 12 Jul 2018 15:59:18 +0000 (18:59 +0300)]
Improve documentation of Flyspell

For the background, see
http://lists.gnu.org/archive/html/help-gnu-emacs/2018-07/msg00099.html.

* doc/emacs/fixit.texi (Spelling): Add a couple of caveats.
* lisp/textmodes/flyspell.el: Update commentary.

6 years agoFix the bootstrap differently, so zerop can be where it belongs
Stefan Monnier [Thu, 12 Jul 2018 14:29:28 +0000 (10:29 -0400)]
Fix the bootstrap differently, so zerop can be where it belongs

Suggested by Robert Pluim <rpluim@gmail.com>.

* lisp/emacs-lisp/byte-run.el (defun-declarations-alist): Avoid cadr/cddr.
* lisp/subr.el (zerop): Un-revert 2018-07-10T23:08:58-07:00!contovob@tcd.ie.

6 years agoProvide feature 'threads
Michael Albinus [Thu, 12 Jul 2018 08:49:06 +0000 (10:49 +0200)]
Provide feature 'threads

* src/thread.c (syms_of_threads): Provide feature "threads".

* test/src/thread-tests.el (top): Declare the functions.
(all): Use (featurep 'threads) check.

6 years ago; Add commentary on location of zerop
Basil L. Contovounesios [Wed, 11 Jul 2018 17:11:55 +0000 (20:11 +0300)]
; Add commentary on location of zerop

* lisp/subr.el (zerop): Add commentary explaining why moving the
function's location within the file broke bootstrap in
2018-07-10T23:08:58-07:00!contovob@tcd.ie.

6 years agoUnbreak bootstrap
Glenn Morris [Wed, 11 Jul 2018 15:27:14 +0000 (08:27 -0700)]
Unbreak bootstrap

* lisp/subr.el (zerop): Revert previous change, which caused
bootstrap to fail with void function cadr.

6 years ago; Rearrange definition of zerop in subr.el
Basil L. Contovounesios [Wed, 11 Jul 2018 06:08:58 +0000 (23:08 -0700)]
; Rearrange definition of zerop in subr.el

* lisp/subr.el (zerop): Move from under 'List functions' heading to
under 'Basic Lisp functions' heading.

6 years agoSave the server alias on reconnect (Bug#29657)
Miciah Masters [Mon, 11 Dec 2017 01:14:09 +0000 (20:14 -0500)]
Save the server alias on reconnect (Bug#29657)

rcirc does not retain the server alias on reconnect.  As a result, rcirc
fails to re-use server and channel buffers when an alias is used.  Further
problems may ensue when aliases are used to differentiate multiple
connections to the same host, for example when using a single IRC bouncer
or proxy to connect to multiple IRC networks.

Save the server alias when connecting to a server so that reconnect will
retain the alias.
* lisp/net/rcirc.el (rcirc-connect): Include server-alias when setting
rcirc-connection-info.

Copyright-paperwork-exempt: yes

6 years agoRefer to "proper lists" instead of "true lists"
Basil L. Contovounesios [Wed, 11 Jul 2018 02:51:28 +0000 (19:51 -0700)]
Refer to "proper lists" instead of "true lists"

* doc/lispref/lists.texi (Cons Cells, Building Lists):
* doc/lispref/sequences.texi (Vector Functions): Use the more
popular term "proper", rather than "true", to qualify nil-terminated
lists.

For discussion, see the following emacs-devel subthreads:
https://lists.gnu.org/archive/html/emacs-devel/2018-06/msg00112.html
https://lists.gnu.org/archive/html/emacs-devel/2018-06/msg00138.html

6 years ago* lisp/vc/diff-mode.el: Perform hunk refinement from font-lock
Stefan Monnier [Wed, 11 Jul 2018 02:52:21 +0000 (22:52 -0400)]
* lisp/vc/diff-mode.el: Perform hunk refinement from font-lock

Remove redundant :group arguments.
(diff-font-lock-refine): New var.
(diff--refine-hunk): New function, extracted from diff-refine-hunk.
(diff-refine-hunk): Use it.
(diff--font-lock-refine--refresh): New function.
(diff--font-lock-refined): New function.
(diff-font-lock-keywords): Use it.

6 years agoFix Bug#32107
Filipp Gunbin [Wed, 11 Jul 2018 02:28:21 +0000 (05:28 +0300)]
Fix Bug#32107

* lisp/progmodes/sql.el (sql-buffer-live-p): Fix handling of optional
  connection argument.  (Bug#32107)

6 years agoFix infinite recursion in eshell/clear (Bug#31326)
Jonathan Kyle Mitchell [Thu, 3 May 2018 04:09:55 +0000 (23:09 -0500)]
Fix infinite recursion in eshell/clear (Bug#31326)

* lisp/eshell/esh-mode.el (eshell/clear): Bind
eshell-input-filter-functions to nil to prevent entries like
eshell-smart-display-setup from causing infinite recursion.

6 years ago* lisp/indent.el (indent-line-to): Fix dedenting of tabs.
Noam Postavsky [Tue, 10 Jul 2018 16:07:01 +0000 (12:07 -0400)]
* lisp/indent.el (indent-line-to): Fix dedenting of tabs.

6 years agoAvoid turning on the global-minor-mode recursively
John Shahid [Sat, 23 Jun 2018 15:12:44 +0000 (11:12 -0400)]
Avoid turning on the global-minor-mode recursively

* lisp/emacs-lisp/easy-mmode.el (define-globalized-minor-mode): Clear
the buffer-list inside MODE-enable-in-buffers to avoid enabling the
mode recursively.  (Bug#31793)

6 years agoFix Bug#32085
Michael Albinus [Tue, 10 Jul 2018 07:49:49 +0000 (09:49 +0200)]
Fix Bug#32085

* doc/misc/tramp.texi (GVFS based methods): `dav' and `davs' do
not support paths in the volume name.  (Bug#32085)

6 years ago* lisp/format.el (format-annotate-single-property-change): Simplify.
Paul Eggert [Tue, 10 Jul 2018 01:59:58 +0000 (18:59 -0700)]
* lisp/format.el (format-annotate-single-property-change): Simplify.

6 years agoAdd predicate proper-list-p
Basil L. Contovounesios [Tue, 10 Jul 2018 01:46:33 +0000 (18:46 -0700)]
Add predicate proper-list-p

For discussion, see emacs-devel thread starting at
https://lists.gnu.org/archive/html/emacs-devel/2018-04/msg00460.html.

* lisp/subr.el (proper-list-p): New function.
Implementation suggested by Paul Eggert <eggert@cs.ucla.edu> in
https://lists.gnu.org/archive/html/emacs-devel/2018-06/msg00138.html.
* doc/lispref/lists.texi (List Elements):
* etc/NEWS: Document proper-list-p.
* lisp/org/ob-core.el (org-babel-insert-result):
* lisp/emacs-lisp/byte-opt.el (byte-optimize-if):
* lisp/emacs-lisp/cl-macs.el (cl--make-usage-args): Use proper-list-p.
* lisp/emacs-lisp/ert.el (ert--proper-list-p): Remove.
Replaced by proper-list-p in lisp/subr.el.
(ert--explain-equal-rec): Use proper-list-length.
* lisp/format.el (format-proper-list-p): Remove.
Replaced by proper-list-p in lisp/subr.el.
(format-annotate-single-property-change): Use proper-list-p.
* test/lisp/emacs-lisp/ert-tests.el (ert-test-proper-list-p):
Move from here...
* test/lisp/subr-tests.el (subr-tests--proper-list-length):
...to here, mutatis mutandis.

6 years agoRespect field boundaries in indent-line-to (Bug#32014)
Noam Postavsky [Sat, 30 Jun 2018 13:14:22 +0000 (09:14 -0400)]
Respect field boundaries in indent-line-to (Bug#32014)

* lisp/indent.el (indent-line-to): Use the back-to-indentation point
as the end-point of whitespace removal, rather than
backward-to-indentation which doesn't respect field boundaries.
* test/lisp/emacs-lisp/lisp-mode-tests.el
(lisp-indent-with-read-only-field): Don't expect to fail.

6 years ago; Merge from emacs-26
Noam Postavsky [Tue, 10 Jul 2018 00:06:29 +0000 (20:06 -0400)]
; Merge from emacs-26

The following commit was skipped:

8f7d35cabd Stop using indent-line-to in lisp-indent-line (Bug#32014)

6 years agoMerge from emacs-26
Noam Postavsky [Tue, 10 Jul 2018 00:06:27 +0000 (20:06 -0400)]
Merge from emacs-26

db3f779780 ; Test for Bug#32014
90d95b000c Explicitly reject :server and :nowait (Bug#31903)
917158f8c9 Fix Bug#32090

# Conflicts:
# src/process.c

6 years ago; Merge from emacs-26
Noam Postavsky [Tue, 10 Jul 2018 00:03:30 +0000 (20:03 -0400)]
; Merge from emacs-26

The following commit was skipped:

848f0f73e9 Fix floating point exceptions on Alpha (Bug#32086)

6 years agoMerge from emacs-26
Noam Postavsky [Tue, 10 Jul 2018 00:03:30 +0000 (20:03 -0400)]
Merge from emacs-26

65889a6d12 Fix bootstrap infloop in GNU/Linux alpha
48efd1c98b Minor fix of a recent documentation change
3302b7cd7f Mention the NSM in the gnutls variable doc strings
40c2ce743b Remove test code from last commit
e02d8e29c6 Fix Bug#32084
da5d6dbe39 Fix (length NON-SEQUENCE) documentation

6 years agoStop using indent-line-to in lisp-indent-line (Bug#32014)
Noam Postavsky [Fri, 29 Jun 2018 23:58:58 +0000 (19:58 -0400)]
Stop using indent-line-to in lisp-indent-line (Bug#32014)

This is partial revert of "Remove ignored argument from
lisp-indent-line", because `indent-line-to' doesn't respect field
boundaries.
* lisp/emacs-lisp/lisp-mode.el (lisp-indent-line): Use delete-region
and indent-to instead of `indent-line-to'.
* test/lisp/emacs-lisp/lisp-mode-tests.el
(lisp-indent-with-read-only-field): Expect to pass.

Don't merge to master, we will fix indent-line-to there instead.

6 years ago; Test for Bug#32014
Noam Postavsky [Sat, 30 Jun 2018 00:15:10 +0000 (20:15 -0400)]
; Test for Bug#32014

* test/lisp/emacs-lisp/lisp-mode-tests.el
(lisp-indent-with-read-only-field): New test.

6 years agoExplicitly reject :server and :nowait (Bug#31903)
Noam Postavsky [Thu, 5 Jul 2018 23:37:28 +0000 (19:37 -0400)]
Explicitly reject :server and :nowait (Bug#31903)

* src/process.c (Fmake_network_process): Explicitly check for and
signal an error when passed both :server and :nowait non-nil.  In
Emacs 25, :nowait would be ignored in this case, but as of Emacs 26.1
this gives an error, albeit an unclear one.  Also remove obsolete
comment regarding configurations lacking non-blocking mode, the
corresponding code was removed in 2012-11-17 "Assume POSIX 1003.1-1988
or later for fcntl.h."

6 years agoFix Bug#32090
Michael Albinus [Mon, 9 Jul 2018 14:03:49 +0000 (16:03 +0200)]
Fix Bug#32090

* lisp/files-x.el (connection-local-normalize-criteria): Do not
use PROPERTIES anymore.
(connection-local-get-profiles): Rewrite, in order to accept any
property as optional.  (Bug#32090)
(connection-local-set-profiles):
Adapt ´connection-local-normalize-criteria' call.

* test/lisp/files-x-tests.el
(files-x-test-connection-local-set-profiles)
(files-x-test-hack-connection-local-variables-apply): Extend tests.

6 years agodired-do-find-regexp: Use rgrep-find-ignored-directories.
Sam Steingold [Mon, 9 Jul 2018 13:29:09 +0000 (09:29 -0400)]
dired-do-find-regexp: Use rgrep-find-ignored-directories.

6 years agoFix floating point exceptions on Alpha (Bug#32086)
Paul Eggert [Sun, 8 Jul 2018 17:51:00 +0000 (10:51 -0700)]
Fix floating point exceptions on Alpha (Bug#32086)

Backport from master.
* admin/merge-gnulib (GNULIB_MODULES): Add fpieee.
* m4/fpieee.m4: New file, copied from Gnulib.
* m4/gnulib-comp.m4: Regenerate.

6 years agoFix etc/HELLO searching in grep.el
Paul Eggert [Sun, 8 Jul 2018 17:00:17 +0000 (10:00 -0700)]
Fix etc/HELLO searching in grep.el

* lisp/progmodes/grep.el (grep-compute-defaults):
Search for "^Copyright", not "^English", as the latter is no
longer present in etc/HELLO and the former is more likely to
survive future changes to etc/HELLO (Bug#32093).

6 years agoFix floating point exceptions on Alpha (Bug#32086)
Paul Eggert [Sun, 8 Jul 2018 16:24:10 +0000 (09:24 -0700)]
Fix floating point exceptions on Alpha (Bug#32086)

* admin/merge-gnulib (GNULIB_MODULES): Add fpieee.
* m4/fpieee.m4: New file, copied from Gnulib.
* m4/gnulib-comp.m4: Regenerate.

6 years agoFix bootstrap infloop in GNU/Linux alpha
Paul Eggert [Sun, 8 Jul 2018 16:04:02 +0000 (09:04 -0700)]
Fix bootstrap infloop in GNU/Linux alpha

* src/emacs.c (main): Do not re-exec if EMACS_HEAP_EXEC
is already set (Bug#32083).

6 years agoMinor fix of a recent documentation change
Eli Zaretskii [Sun, 8 Jul 2018 15:22:51 +0000 (18:22 +0300)]
Minor fix of a recent documentation change

* lisp/net/gnutls.el (gnutls-algorithm-priority): Clarify the doc
string.

6 years agoMinor improvements in recent NSM documentation changes
Eli Zaretskii [Sun, 8 Jul 2018 14:46:32 +0000 (17:46 +0300)]
Minor improvements in recent NSM documentation changes

* doc/emacs/misc.texi (Network Security): Improve wording and
markup of last change.

* src/gnutls.c (Fgnutls_peer_status): Doc fix.

* etc/NEWS: Improve wording of last change.

6 years agoFix typo in sha1-intermediate check
Lars Ingebrigtsen [Sun, 8 Jul 2018 14:14:06 +0000 (16:14 +0200)]
Fix typo in sha1-intermediate check

* lisp/net/nsm.el (nsm-protocol-check--intermediate-sha1): Allow
storing the exception with a correct name.

6 years agoMention the NSM in the gnutls variable doc strings
Lars Ingebrigtsen [Sun, 24 Jun 2018 12:48:30 +0000 (14:48 +0200)]
Mention the NSM in the gnutls variable doc strings

* gnutls.el (gnutls-algorithm-priority): Mention the Network
Security Manager here since this variable is an obvious place
for people concerned about network security to look.
(gnutls-verify-error): Ditto.
(gnutls-min-prime-bits): Ditto.