]> git.eshelyaron.com Git - emacs.git/log
emacs.git
6 years ago--find feature
Tom Tromey [Tue, 17 Oct 2017 20:10:38 +0000 (14:10 -0600)]
--find feature

6 years agomake etags -u work in etags mode
Tom Tromey [Tue, 17 Oct 2017 03:23:46 +0000 (21:23 -0600)]
make etags -u work in etags mode

6 years agoconstify some things
Tom Tromey [Wed, 18 Oct 2017 22:05:22 +0000 (16:05 -0600)]
constify some things

6 years agoetags.c indentation fix
Tom Tromey [Tue, 17 Oct 2017 00:21:12 +0000 (18:21 -0600)]
etags.c indentation fix

6 years ago; Adapt a unit test to a recent change
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.

6 years agoRemove incorrect use of AUTO_STRING
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.

6 years agocl-loop: Calculate the array length just once
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).

6 years agoImprove error message for old-style backquotes
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.

6 years agoAdd new variable to force new-style backquote interpretation.
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.

6 years agoRevert "Prevent name clashes between CL structures and builtin types"
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.

6 years agoIgnore escape characters for context-sensitive quotes (Bug#29812)
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.

6 years agoFix a small bug in electric quoting.
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.

6 years agoPrevent name clashes between CL structures and builtin types
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.

6 years ago* fns.c (base64-decode-region): Add signal_after_change call for insertion.
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.

6 years agoRevert "Fix command repetition with lexical-binding (Bug#29334)"
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.

6 years agoAllow setting tooltip colors in NS port
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.

6 years agoMake transpose-regions invoke before-change-functions only once.
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.

6 years agoMinor tramp-gvfs.el cleanup
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.

6 years agoAdd new Tramp connection method "owncloud"
Michael Albinus [Fri, 5 Jan 2018 20:04:39 +0000 (21:04 +0100)]
Add new Tramp connection method "owncloud"

* doc/misc/tramp.texi (all): Use @acronym{GNOME} thoroughly.
(Using GNOME Online Accounts based methods): Rename from
"Using Google Drive".  Add `owncloud'.
(GVFS based methods): Add `owncloud'.

* etc/NEWS: Add Tramp connection method "owncloud".

* lisp/net/tramp-gvfs.el (tramp-gvfs-methods): Add "owncloud".
Remove goa methods if not supported.
(tramp-goa-methods, tramp-goa-service, tramp-goa-path)
(tramp-goa-path-accounts, tramp-goa-interface-documents)
(tramp-goa-interface-printers, tramp-goa-interface-files)
(tramp-goa-interface-contacts, tramp-goa-interface-calendar)
(tramp-goa-interface-oauth2based)
(tramp-goa-interface-account, tramp-goa-identity-regexp)
(tramp-goa-interface-mail, tramp-goa-interface-chat)
(tramp-goa-interface-photos, tramp-goa-path-manager)
(tramp-goa-interface-documents)
(tramp-gvfs-owncloud-default-prefix)
(tramp-gvfs-owncloud-default-prefix-regexp): New defconst.
(tramp-goa-name): New defstruct.
(tramp-gvfs-stringify-dbus-message): Handle all consp messages.
(tramp-dbus-function, tramp-gvfs-get-remote-prefix)
(tramp-get-goa-accounts): New defun.
(with-tramp-dbus-call-method): Use it.
(with-tramp-dbus-get-all-properties): New defmacro.
(tramp-gvfs-url-file-name)
(tramp-gvfs-handler-mounted-unmounted)
(tramp-gvfs-connection-mounted-p, tramp-gvfs-mount-spec):
Map between "owncloud" and "davs".
(tramp-gvfs-maybe-open-connection): Set "vector" connection property.

* test/lisp/net/tramp-tests.el (tramp-gvfs-handler-askquestion):
Suppress run in tests.
(tramp--test-owncloud-p): New defun.
(tramp-test11-copy-file, tramp-test12-rename-file): Use it.

6 years agoMake eshell history expansion more like bash (Bug#29821)
Jay Kamat [Fri, 22 Dec 2017 23:34:44 +0000 (15:34 -0800)]
Make eshell history expansion more like bash (Bug#29821)

- Prevent expansion of quick substitutions when the initial "^" is not
  at start of line (Bug#29157).
- Allow spaces inside substitutions, so "^foo bar^baz" works.
- Allow trailing characters after substitution, so "^foo^bar^trailing"
  works.
- Throw an error when substitution does not match.

* lisp/eshell/em-hist.el (eshell-expand-history-references): Expand
history substitution before other types of expansions, and expand them
with the whole line.
(eshell-history-substitution): New function to expand only
substitutions, taking in the entire typed line rather than individual
arguments.

6 years agoImprove backward compatibility in tramp-archive
Michael Albinus [Thu, 4 Jan 2018 11:58:42 +0000 (12:58 +0100)]
Improve backward compatibility in tramp-archive

* lisp/net/tramp-archive.el
(tramp-archive-handle-temporary-file-directory):
Use `tramp-compat-temporary-file-directory'.

* test/lisp/net/tramp-archive-tests.el
(tramp-archive-test37-make-nearby-temp-file):
Wrap `temporary-file-directory' call with `with-no-warnings'.

6 years agoWrite proper `write-region' message in Tramp backends
Michael Albinus [Thu, 4 Jan 2018 11:48:07 +0000 (12:48 +0100)]
Write proper `write-region' message in Tramp backends

* lisp/net/tramp-adb.el (tramp-adb-handle-write-region):
* lisp/net/tramp-gvfs.el (tramp-gvfs-handle-write-region):
* lisp/net/tramp-sh.el (tramp-sh-handle-write-region):
* lisp/net/tramp-smb.el (tramp-smb-handle-write-region):
Write proper message.

* lisp/net/tramp.el (tramp-message-show-message): Change default.

* test/lisp/net/tramp-tests.el (ert-x): Require it.
(tramp-test10-write-region): Extend test.

6 years agoFix command repetition with lexical-binding (Bug#29334)
Noam Postavsky [Fri, 24 Nov 2017 02:57:09 +0000 (21:57 -0500)]
Fix command repetition with lexical-binding (Bug#29334)

`call-interactively' relies on analyzing the source of `interactive'
forms in order to preserve arguments like (region-end) in the command
history, rather than just storing the resulting position.  However,
the byte-compiler does not preserve the source of the interactive form
when lexical-binding is in effect, because `call-interactively' would
evaluate the form with dynamic binding in that case.

To fix this, change `call-interactively' so that it checks compiled
functions for lexical-binding as well.  Then the byte-compiler can
preserve the source of interactive forms regardless of the value of
lexical-binding.

* src/callint.c (Fcall_interactively): Functions compiled with
lexical-binding have their arglist encoded as an integer, use this to
choose the right kind of binding for compiled functions too.
* lisp/emacs-lisp/bytecomp.el (byte-compile-lambda): Preserve the
uncompiled form of the interactive form when lexical-binding is
enabled too.

6 years agoFix .gdbinit to work with Lisp_Word
Paul Eggert [Wed, 3 Jan 2018 06:38:01 +0000 (22:38 -0800)]
Fix .gdbinit to work with Lisp_Word

Problem reported by Stefan Monnier (Bug#29957).
* src/.gdbinit (xgetptr, xgetint, xgettype):
Cast Lisp_Word value to EMACS_INT, since it might be a pointer now.

6 years agoFix description of 'struct' generic function specializer
Stephen Leake [Tue, 2 Jan 2018 13:28:06 +0000 (07:28 -0600)]
Fix description of 'struct' generic function specializer

* doc/lispref/functions.texi (Generic Functions): Fix description of
'struct' specializer; it must be the named struct or a child, not a
parent.

6 years agoRemove superfluous test data for Tramp
Michael Albinus [Tue, 2 Jan 2018 10:25:21 +0000 (11:25 +0100)]
Remove superfluous test data for Tramp

6 years ago; Auto-commit of loaddefs files.
Glenn Morris [Mon, 1 Jan 2018 12:29:05 +0000 (07:29 -0500)]
; Auto-commit of loaddefs files.

6 years ago* etc/NEWS: Improve -fcheck-pointer-bounds wording.
Paul Eggert [Mon, 1 Jan 2018 09:44:58 +0000 (01:44 -0800)]
* etc/NEWS: Improve -fcheck-pointer-bounds wording.

6 years agoMerge from gnulib, mostly to fix copyright years
Paul Eggert [Mon, 1 Jan 2018 09:24:45 +0000 (01:24 -0800)]
Merge from gnulib, mostly to fix copyright years

6 years agoUpdate copyright year to 2018
Paul Eggert [Mon, 1 Jan 2018 09:15:39 +0000 (01:15 -0800)]
Update copyright year to 2018

Run admin/update-copyright.

6 years agoMerge from origin/emacs-26
Paul Eggert [Mon, 1 Jan 2018 09:13:04 +0000 (01:13 -0800)]
Merge from origin/emacs-26

63b04c11d5 Fix copyright years by hand
5c7dd8a783 Update copyright year to 2018
220a9ecba1 Merge from Gnulib
312c565566 Don't add empty keyboard macro to macro ring (Bug#24992)
39ca289a7a Allow customization of decoding of "man" command
f8240815ea * etc/NEWS: Add security consideration note on passphrase ...
0c78822c70 Fix subtle problem with scroll-down when scroll-margin is ...
acd289c5a4 Fix problems with indexing in User manual
b240c7846b * lisp/help.el (describe-key): Only (copy-sequence elt) wh...
e879a5444a * src/buffer.c (Frestore_buffer_modified_p): Fix bug#29846
81b1028b63 Improve documentation of 'inhibit-modification-hooks' and ...
7175496d7a Fix doc string of 'enable-recursive-minibuffers'
5b38406491 Fix documentation of delsel and of killing text

# Conflicts:
# etc/NEWS
# etc/refcards/ru-refcard.tex

6 years agoFix copyright years by hand
Paul Eggert [Mon, 1 Jan 2018 09:02:09 +0000 (01:02 -0800)]
Fix copyright years by hand

These are dates that admin/update-copyright did not update, or
updated incorrectly.

6 years agoUpdate copyright year to 2018
Paul Eggert [Mon, 1 Jan 2018 08:21:42 +0000 (00:21 -0800)]
Update copyright year to 2018

Run admin/update-copyright.

6 years agoMerge from Gnulib
Paul Eggert [Mon, 1 Jan 2018 01:19:57 +0000 (01:19 +0000)]
Merge from Gnulib

This incorporates:
2018-01-01 maint: Run 'make update-copyright'
2017-12-29 Add cross-compilation results for GNU/Hurd.
2017-12-12 explicit_bzero: port to macOS + Clang 9.0.0

6 years agoDon't add empty keyboard macro to macro ring (Bug#24992)
Gemini Lasswell [Mon, 18 Dec 2017 18:08:59 +0000 (10:08 -0800)]
Don't add empty keyboard macro to macro ring (Bug#24992)

* lisp/kmacro.el (kmacro-end-call-mouse): Don't save a newly defined
macro if it is empty.

* test/lisp/kmacro-tests.el (kmacro-tests-end-and-call-macro-mouse):
Remove expected failure tag.

6 years agoAllow customization of decoding of "man" command
Eli Zaretskii [Sun, 31 Dec 2017 16:20:12 +0000 (18:20 +0200)]
Allow customization of decoding of "man" command

* lisp/man.el (Man-coding-system): New defcustom.
(Man-start-calling): Use it, and also pay attention to user
overriding coding-system-for-read.  (Bug#29872)

6 years ago* etc/NEWS: Add security consideration note on passphrase input
Daiki Ueno [Sun, 31 Dec 2017 04:37:17 +0000 (05:37 +0100)]
* etc/NEWS: Add security consideration note on passphrase input

6 years agoImprove error reporting when serializing non-Unicode strings to JSON
Philipp Stephani [Sat, 23 Dec 2017 16:56:36 +0000 (17:56 +0100)]
Improve error reporting when serializing non-Unicode strings to JSON

* src/coding.c (utf8_string_p): New helper function.
(syms_of_coding) <utf-8-unix>: Move from json.c.

* src/json.c (json_check_utf8): New helper function.
(lisp_to_json_toplevel_1, lisp_to_json): Use it.  To save a bit of
time, check for invalid UTF-8 strings only after encountering an
error, since Jansson already rejects them.

* test/src/json-tests.el (json-serialize/invalid-unicode): Adapt
expected error symbol.

6 years agoFix regex stack overflow in gdb-mi.el when parsing complex locals
David McFarland [Sat, 30 Dec 2017 11:14:32 +0000 (13:14 +0200)]
Fix regex stack overflow in gdb-mi.el when parsing complex locals

* lisp/progmodes/gdb-mi.el (gdb-jsonify-buffer): Skip string
literals with (forward-sexp) instead of matching with regex.
(Bug#29868)

Copyright-paperwork-exempt: yes

6 years agoFix output alignment in 'find-dired' for "ls -h"
Sebastian Reuße [Sat, 30 Dec 2017 10:41:23 +0000 (12:41 +0200)]
Fix output alignment in 'find-dired' for "ls -h"

* lisp/find-dired.el (find-dired-filter): Fix alignment of
the file size column when the -h ls option is used in
'find-ls-option'.  (Bug#29803)

Copyright-paperwork-exempt: yes

6 years agoFix subtle problem with scroll-down when scroll-margin is nonzero
Eli Zaretskii [Fri, 29 Dec 2017 21:41:20 +0000 (23:41 +0200)]
Fix subtle problem with scroll-down when scroll-margin is nonzero

* src/window.c (window_scroll_pixel_based): Account for
scroll-margin when scrolling down, i.e. moving window-start
towards the beginning of the buffer.  Reported by zhang cc
<ccsmile2008@outlook.com> in
http://lists.gnu.org/archive/html/emacs-devel/2017-12/msg00894.html.

6 years agoFix problems with indexing in User manual
Eli Zaretskii [Fri, 29 Dec 2017 16:04:57 +0000 (18:04 +0200)]
Fix problems with indexing in User manual

* doc/emacs/basic.texi (Continuation Lines, Inserting Text)
(Moving Point):
* doc/emacs/help.texi (Help Echo, Package Keywords, Help Mode):
* doc/emacs/trouble.texi (Quitting):
* doc/emacs/mark.texi (Setting Mark, Disabled Transient Mark):
* doc/emacs/custom.texi (Modifier Keys, Init Examples)
(Creating Custom Themes):
* doc/emacs/programs.texi (Program Modes, Expressions, Hideshow)
(Basic Indent, Info Lookup, Symbol Completion):
* doc/emacs/screen.texi (Echo Area):
* doc/emacs/xresources.texi (Table of Resources, GTK Names in Emacs):
* doc/emacs/display.texi (Line Truncation, Cursor Display):
* doc/emacs/files.texi (File Names, Backup, File Archives):
* doc/emacs/dired.texi (Operating on Files, Dired Enter):
* doc/emacs/commands.texi (User Input):
* doc/emacs/mule.texi (International, Unibyte Mode)
(International Chars):
* doc/emacs/vc1-xtra.texi (RCS and SCCS, Version Headers)
(CVS Options):
* doc/emacs/modes.texi (Major Modes, Minor Modes):
* doc/emacs/indent.texi (Just Spaces):
* doc/emacs/frames.texi (Mouse Avoidance, Mode Line Mouse)
(Frame Commands):
* doc/emacs/cmdargs.texi (Initial Options):
* doc/emacs/abbrevs.texi (Dabbrev Customization):
* doc/emacs/mini.texi (Completion Example, Completion Commands):
* doc/emacs/calendar.texi (Writing Calendar Files, Calendar Unit Motion)
(From Other Calendar):
* doc/emacs/regs.texi (Text Registers, Bookmarks):
* doc/emacs/buffers.texi (Several Buffers, Select Buffer):
* doc/emacs/maintaining.texi (Xref Commands):
* doc/emacs/windows.texi (Pop Up Window):
* doc/emacs/text.texi (Text, Org Mode):
* doc/emacs/killing.texi (Other Kill Commands):
* doc/emacs/misc.texi (Document View, Gnus Group Buffer)
(Gnus Summary Buffer, Shell Mode):
* doc/emacs/cal-xtra.texi (Sexp Diary Entries): Remove or reword
redundant identical index entries.
* doc/emacs/custom.texi (Mouse Buttons)
* doc/emacs/files.texi (Reverting): Fix hyphenation.
* doc/emacs/emacs.texi (Top): Improve wording of Index menu items.
* doc/emacs/files.texi (File Conveniences):
* doc/emacs/programs.texi (MixedCase Words): Make entries that
belong to Concept Index be indexed with @cindex.  (Bug#29888)

6 years ago* lisp/help.el (describe-key): Only (copy-sequence elt) when elt is a list.
Alan Mackenzie [Fri, 29 Dec 2017 09:54:03 +0000 (09:54 +0000)]
* lisp/help.el (describe-key): Only (copy-sequence elt) when elt is a list.

6 years agoMake gnus-alter-articles-to-read-function a constant lambda
Eric Abrahamsen [Thu, 28 Dec 2017 20:04:13 +0000 (12:04 -0800)]
Make gnus-alter-articles-to-read-function a constant lambda

* lisp/gnus/gnus-sum.el (gnus-alter-articles-to-read-function):
  Default to a no-op lambda form, mention the use of `add-function' in
  the docstring.
* lisp/gnus/gnus-sum.el (gnus-articles-to-read): Check if the option
  value is callable.

6 years ago* lisp/net/ange-ftp.el: Use lexical-binding
Stefan Monnier [Thu, 28 Dec 2017 19:13:10 +0000 (14:13 -0500)]
* lisp/net/ange-ftp.el: Use lexical-binding

6 years ago* src/buffer.c (Frestore_buffer_modified_p): Fix bug#29846
Stefan Monnier [Thu, 28 Dec 2017 19:03:07 +0000 (14:03 -0500)]
* src/buffer.c (Frestore_buffer_modified_p): Fix bug#29846

Don't mess with the lock file when inhibit_modification_hooks is set,
just like we do in prepare_to_modify_buffer_1.

6 years agoImprove documentation of 'inhibit-modification-hooks' and friends
Eli Zaretskii [Thu, 28 Dec 2017 17:23:34 +0000 (19:23 +0200)]
Improve documentation of 'inhibit-modification-hooks' and friends

* src/buffer.c (Fset_buffer_modified_p)
(Frestore_buffer_modified_p): Doc fixes.
* src/insdel.c (syms_of_insdel) <inhibit-modification-hooks>:
Document in the doc string that this variable also inhibits file
locks and active region handling.  (Bug#29846)

6 years agoFix doc string of 'enable-recursive-minibuffers'
David Pathakjee [Thu, 28 Dec 2017 16:59:42 +0000 (18:59 +0200)]
Fix doc string of 'enable-recursive-minibuffers'

* src/minibuf.c (syms_of_minibuf) <enable-recursive-minibuffers>:
Doc fix.  (Bug#29873)

Copyright-paperwork-exempt: yes

6 years agoFix Bug#29874
Michael Albinus [Thu, 28 Dec 2017 10:26:28 +0000 (11:26 +0100)]
Fix Bug#29874

* lisp/net/ange-ftp.el (ange-ftp-file-accessible-directory-p)
(ange-ftp-real-file-accessible-directory-p): New defuns.
(ange-ftp-nslookup-host, ange-ftp-start-process):
Use `ange-ftp-real-file-accessible-directory-p'.
(file-accessible-directory-p): Put `ange-ftp' property.  (Bug#29874)

6 years agoRemove uses of `cl` from test/ subdirectory
Stefan Monnier [Wed, 27 Dec 2017 23:42:01 +0000 (18:42 -0500)]
Remove uses of `cl` from test/ subdirectory

* test/lisp/gnus/gnus-tests.el: Remove unneeded (require 'cl).

* test/lisp/net/gnutls-tests.el: Use cl-lib and pcase.

6 years ago(delayed-after-hook-functions): Tighten the code a bit
Stefan Monnier [Wed, 27 Dec 2017 22:49:39 +0000 (17:49 -0500)]
(delayed-after-hook-functions): Tighten the code a bit

* lisp/subr.el (delayed-mode-hooks, delayed-after-hook-functions):
Use defvar-local.
(run-mode-hooks): Reset delayed-after-hook-functions before running
those functions, in case an error is signaled.

* lisp/emacs-lisp/derived.el (define-derived-mode): Don't duplicate code.

6 years agoFix recent rfc2231 avoidance of cl
Glenn Morris [Wed, 27 Dec 2017 18:50:45 +0000 (10:50 -0800)]
Fix recent rfc2231 avoidance of cl

* lisp/mail/rfc2231.el (rfc2231-parse-string)
(rfc2231-encode-string): Replace cl forms with cl-lib versions.

6 years agoFix documentation of delsel and of killing text
Eli Zaretskii [Wed, 27 Dec 2017 18:23:10 +0000 (20:23 +0200)]
Fix documentation of delsel and of killing text

* doc/emacs/killing.texi (Appending Kills): Make sure the text
with 2 spaces is not broken between 2 lines.
* doc/emacs/mark.texi (Using Region): Remove the sentence about
delsel mode that describes behavior which exists even without
delsel mode turned on.  Suggested by Petteri Hintsanen
<petterih@iki.fi> in emacs-manual-bugs@gnu.org.

* lisp/delsel.el (delete-selection-mode): Doc fix.

6 years agoMerge from origin/emacs-26
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

# Conflicts:
# doc/emacs/text.texi

6 years ago* doc/lispref/strings.texi (Case Conversion):
Glenn Morris [Wed, 27 Dec 2017 17:55:35 +0000 (09:55 -0800)]
* doc/lispref/strings.texi (Case Conversion):
Use a TeX font that support ligatures.

6 years ago* doc/misc/speedbar.texi (Top): Fix grammar.
Charles A. Roelli [Wed, 27 Dec 2017 17:25:30 +0000 (18:25 +0100)]
* doc/misc/speedbar.texi (Top): Fix grammar.

6 years ago* lisp/subr.el (with-silent-modifications): Doc fixes.
Charles A. Roelli [Wed, 27 Dec 2017 14:53:34 +0000 (15:53 +0100)]
* lisp/subr.el (with-silent-modifications): Doc fixes.

6 years agoEliminate last uses of 'cl' in lisp/mail/
Stefan Monnier [Tue, 26 Dec 2017 21:08:21 +0000 (16:08 -0500)]
Eliminate last uses of 'cl' in lisp/mail/

* lisp/mail/binhex.el: Use lexical-binding and avoid cl.
(binhex-push-char): Remove unused arg 'count'.
(binhex-decode-region-external): Remove unused var 'status'.

* lisp/mail/flow-fill.el: Use lexical-binding and avoid cl.

* lisp/mail/footnote.el: Reduce redundancy.
(footnote-roman-lower-regexp, footnote-roman-upper-regexp)
(footnote-roman-upper-list): Auto-generate from footnote-roman-lower-list.
(footnote-hebrew-numeric-regex): Auto-generate from footnote-hebrew-numeric.
(footnote--hebrew-numeric): Simplify.
(footnote-hebrew-symbolic-regex): Generate from footnote-hebrew-symbolic.

* lisp/mail/hashcash.el: Use lexical-binding and avoid cl.
(hashcash-verify-payment): Use pcase.

* lisp/mail/ietf-drums.el: Use lexical-binding and avoid cl.
(ietf-drums-token-to-list): Remove unused var 'e'.

* lisp/mail/rfc2231.el: Use lexical-binding and avoid cl.

* lisp/mail/uudecode.el: Use lexical-binding and avoid cl.
(uudecode-char-int): Remove unused 'eval-and-compile' wrapper.
(uudecode-decode-region-external): Remove unused 'status' var.
(uudecode-string-to-multibyte): Remove.
(uudecode-decode-region-internal): Use decode-coding-string instead.

* lisp/mail/yenc.el: Use lexical-binding and avoid cl.

6 years agoFix curved quotes in printed manual
Eli Zaretskii [Tue, 26 Dec 2017 20:43:32 +0000 (22:43 +0200)]
Fix curved quotes in printed manual

* doc/emacs/text.texi (Quotation Marks): Fix curved quote
characters in the printed version of the manual.

6 years agoFix highlighting in query-replace with non-nil replace-char-fold
Charles A. Roelli [Tue, 26 Dec 2017 11:46:39 +0000 (12:46 +0100)]
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)

6 years ago* lisp/mail/footnote.el: Reduce redundancy in roman&hebrew defs
Stefan Monnier [Tue, 26 Dec 2017 05:08:48 +0000 (00:08 -0500)]
* lisp/mail/footnote.el: Reduce redundancy in roman&hebrew defs

(footnote-roman-lower-regexp, footnote-roman-upper-regexp)
(footnote-roman-upper-list): Auto-generate from footnote-roman-lower-list.
(footnote-hebrew-numeric-regex): Auto-generate from footnote-hebrew-numeric.
(footnote--hebrew-numeric): Simplify.
(footnote-hebrew-symbolic-regex): Generate from footnote-hebrew-symbolic.

6 years ago* lisp/mail/footnote.el: Use lexical-binding
Stefan Monnier [Tue, 26 Dec 2017 04:32:24 +0000 (23:32 -0500)]
* lisp/mail/footnote.el: Use lexical-binding

(footnote--renumber): Mark arg 'from' as unused.
(footnote-add-footnote, footnote-renumber-footnotes)
(footnote-back-to-message): Remove unused argument 'arg'.

6 years ago* lisp/mail/footnote.el: Replace "Footnote-" prefix with "footnote--"
Boruch Baum [Tue, 26 Dec 2017 04:27:26 +0000 (23:27 -0500)]
* lisp/mail/footnote.el: Replace "Footnote-" prefix with "footnote--"

(footnote-section-tag): Remove trailing space.

6 years ago* lisp/register.el: Use cl-generic
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.

6 years agoSay that "gnus-cloud" is a parody name
Paul Eggert [Mon, 25 Dec 2017 22:19:37 +0000 (14:19 -0800)]
Say that "gnus-cloud" is a parody name

6 years agoMore improvements for text.texi
Eli Zaretskii [Mon, 25 Dec 2017 19:49:37 +0000 (21:49 +0200)]
More improvements for text.texi

* doc/emacs/text.texi (Outline Motion): Avoid unneeded
repetition.  Suggested by Petteri Hintsanen <petterih@iki.fi> in
emacs-manual-bugs@gnu.org.

6 years agoFix MS-Windows build broken by recent changes in json.c
Chris Zheng [Mon, 25 Dec 2017 17:21:58 +0000 (19:21 +0200)]
Fix MS-Windows build broken by recent changes in json.c

* src/json.c [WINDOWSNT] (fn_json_object_get): Define.
(init_json_functions) [WINDOWSNT]: Load json_object_get from DLL.
(Bug#29848)

Copyright-paperwork-exempt: yes

6 years ago* lisp/rtree.el: Use lexical-binding and not 'cl'.
Stefan Monnier [Mon, 25 Dec 2017 17:12:17 +0000 (12:12 -0500)]
* lisp/rtree.el: Use lexical-binding and not 'cl'.

6 years agolisp/net/mailcap.el (mailcap-file-name-to-mime-type): New function.
Lars Ingebrigtsen [Mon, 25 Dec 2017 10:29:41 +0000 (11:29 +0100)]
lisp/net/mailcap.el (mailcap-file-name-to-mime-type): New function.

* lisp/net/mailcap.el (mailcap-file-name-to-mime-type): New function.

6 years agoFix Bug#29822
Michael Albinus [Mon, 25 Dec 2017 11:27:06 +0000 (12:27 +0100)]
Fix Bug#29822

* lisp/net/tramp-sh.el (tramp-maybe-open-connection):
Fix handling of restricted shells.  (Bug#29822)

6 years agoMake main_thread_id private
Paul Eggert [Sun, 24 Dec 2017 19:29:36 +0000 (11:29 -0800)]
Make main_thread_id private

* src/sysdep.c (main_thread_id) [FORWARD_SIGNAL_TO_MAIN_THREAD]:
Now static.

6 years agoOn non-MS-Windows, omit unnecessary polling functions
Paul Eggert [Sun, 24 Dec 2017 19:25:11 +0000 (11:25 -0800)]
On non-MS-Windows, omit unnecessary polling functions

* src/keyboard.c (poll_for_input_1) [!CYGWIN && !DOS_NT]: Remove.
(input_polling_used) [!DOS_NT]: Remove.

6 years agoAdjudicate review comments for the "Text" chapter of user manual
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.

6 years ago* lisp/url/url-http.el
Andreas Schwab [Sun, 24 Dec 2017 11:15:55 +0000 (12:15 +0100)]
* lisp/url/url-http.el
(url-http-wait-for-headers-change-function): Change message to
url-http-debug.

6 years agoAdd more Unicode test cases for JSON conversion
Philipp Stephani [Sun, 24 Dec 2017 13:12:19 +0000 (14:12 +0100)]
Add more Unicode test cases for JSON conversion

* test/src/json-tests.el (json-parse-string/string)
(json-serialize/string, json-serialize/invalid-unicode)
(json-parse-string/invalid-unicode): Add more Unicode test cases.

6 years agoAccept alists when serializing JSON
Philipp Stephani [Wed, 13 Dec 2017 21:41:28 +0000 (22:41 +0100)]
Accept alists when serializing JSON

* src/json.c (lisp_to_json_toplevel_1): Also accept alists
representing objects.

* src/json.c (Fjson_serialize): Update docstring.

* test/src/json-tests.el (json-serialize/object): Add unit tests for
serializing alists.

* doc/lispref/text.texi (Parsing JSON): Document that serialization
functions accept alists.

6 years agoJSON serialization: reject duplicate keys in hashtables
Philipp Stephani [Mon, 18 Dec 2017 23:04:29 +0000 (00:04 +0100)]
JSON serialization: reject duplicate keys in hashtables

* src/json.c (lisp_to_json_toplevel_1): Reject duplicate keys in
hashtables.

* test/src/json-tests.el (json-serialize/object-with-duplicate-keys):
Add unit tests.

6 years agoIn C-h k <mouse-n>, alert user to existence of any matching down-mouse-event
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.

6 years ago* net/eww.el (eww): Handle URLs without host part.
Andreas Schwab [Sat, 23 Dec 2017 20:38:36 +0000 (21:38 +0100)]
* net/eww.el (eww): Handle URLs without host part.

6 years agoMake C-h c/k S-mouse-1 display message for mouse-appearance-menu, etc.
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.

6 years agoAvoid crashes when ':eval' deletes our frame
Eli Zaretskii [Sat, 23 Dec 2017 11:59:07 +0000 (13:59 +0200)]
Avoid crashes when ':eval' deletes our frame

* src/xdisp.c (display_mode_element): Signal an error if
':eval' somehow deletes the frame whose window we are
redisplaying. (Bug#29726)

6 years agoFix scrolling up in pixel-scroll.el
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)

6 years agoFix problems with ligatures in PDF version of ELisp manual
Eli Zaretskii [Sat, 23 Dec 2017 08:34:42 +0000 (10:34 +0200)]
Fix problems with ligatures in PDF version of ELisp manual

* doc/lispref/strings.texi (Case Conversion): Avoid problems with
ligatures in printed versions of the manual.  (Bug#29818)

6 years ago* lisp/mail/footnote.el (footnote-align-to-fn-text): New config var
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.

6 years ago* lisp/textmodes/fill.el (adaptive-fill-function): Change default
Stefan Monnier [Sat, 23 Dec 2017 03:34:15 +0000 (22:34 -0500)]
* lisp/textmodes/fill.el (adaptive-fill-function): Change default

Use 'ignore' rather than nil since they behave identically, except that
'ignore' interacts correctly with add/remove-function.

6 years ago* lisp/mail/footnote.el: Misc changes in preparation for more
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.

6 years ago(elisp-flymake-byte-compile): Handle killed buffer in sentinel
Stefan Monnier [Fri, 22 Dec 2017 21:00:07 +0000 (16:00 -0500)]
(elisp-flymake-byte-compile): Handle killed buffer in sentinel

* lisp/progmodes/elisp-mode.el (elisp-flymake-byte-compile):
Don't burp if the source-buffer has been killed.

6 years agoAvoid some overfull lines in PDF lispref
Glenn Morris [Fri, 22 Dec 2017 21:26:08 +0000 (16:26 -0500)]
Avoid some overfull lines in PDF lispref

* doc/lispref/commands.texi (Reading One Event):
* doc/lispref/display.texi (SVG Images):
* doc/lispref/frames.texi (Size Parameters):
* doc/lispref/syntax.texi (Categories):
* doc/lispref/windows.texi (Frame Layouts with Side Windows):
Avoid overfull lines.

6 years agoAvoid some overfull lines in PDF manual
Glenn Morris [Fri, 22 Dec 2017 21:24:24 +0000 (16:24 -0500)]
Avoid some overfull lines in PDF manual

* doc/emacs/display.texi (Display Custom):
* doc/emacs/search.texi (Other Repeating Search):
* doc/emacs/text.texi (Quotation Marks): Avoid overfull lines.

6 years ago* doc/emacs/arevert-xtra.texi (Auto Reverting the Buffer Menu):
Glenn Morris [Fri, 22 Dec 2017 21:22:13 +0000 (16:22 -0500)]
* doc/emacs/arevert-xtra.texi (Auto Reverting the Buffer Menu):
Fix ref.

6 years ago; lispref nil/t markup fixes
Glenn Morris [Fri, 22 Dec 2017 18:45:46 +0000 (13:45 -0500)]
; lispref nil/t markup fixes

6 years agoMerge from origin/emacs-26
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...

# Conflicts:
# etc/NEWS
# lisp/mail/footnote.el

6 years ago; Merge from origin/emacs-26
Glenn Morris [Fri, 22 Dec 2017 18:18:06 +0000 (13:18 -0500)]
; Merge from origin/emacs-26

The following commit was skipped:

8a73b70 Remove pinentry.el

6 years ago* lisp/progmodes/cperl-mode.el: Split table for electric kwd abbrevs
Stefan Monnier [Fri, 22 Dec 2017 15:29:20 +0000 (10:29 -0500)]
* lisp/progmodes/cperl-mode.el: Split table for electric kwd abbrevs

(cperl-mode-electric-keywords-abbrev-table): New abbrev table.
(cperl-mode-abbrev-table): Use it.

6 years ago* lisp/progmodes/cperl-mode.el: Use cl-lib. Fix comment convention
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.

6 years agoSupport Hebrew-style footnotes in footnote.el
Boruch Baum [Fri, 22 Dec 2017 14:39:44 +0000 (16:39 +0200)]
Support Hebrew-style footnotes in footnote.el

* lisp/mail/footnote.el (footnote-hebrew-numeric-regex)
(footnote-hebrew-symbolic-regex): New defconsts.
(Footnote-hebrew-numeric, Footnote-hebrew-symbolic): New functions.
(footnote-style-alist): Add new Hebrew styles.  Doc fix.
(footnote-style): Add new Hebrew styles.  (Bug#29759)

6 years agoSupport French password prompts in shell
Ian Johnson [Fri, 22 Dec 2017 14:11:00 +0000 (16:11 +0200)]
Support French password prompts in shell

French punctuation rules require a space (preferably non-breaking)
before the colon.

* lisp/comint.el (comint-password-prompt-regexp): Support
spaces (including non-breaking spaces) before and after password
prompt colon.  (Bug#29729)

Copyright-paperwork-exempt: yes

6 years agoMerge branch 'master' of git.savannah.gnu.org:/srv/git/emacs
Eli Zaretskii [Fri, 22 Dec 2017 13:49:57 +0000 (15:49 +0200)]
Merge branch 'master' of git.savannah.gnu.org:/srv/git/emacs

6 years ago* lisp/registry.el (registry-collect-prune-candidates): Skip invalid entries
Ted Zlatanov [Fri, 22 Dec 2017 13:49:21 +0000 (08:49 -0500)]
* lisp/registry.el (registry-collect-prune-candidates): Skip invalid entries

6 years agoImprove Rmail Subject normalization when replying
Francesco Potortì [Fri, 22 Dec 2017 13:48:19 +0000 (15:48 +0200)]
Improve Rmail Subject normalization when replying

* lisp/mail/rmail.el (rmail-simplified-subject): A more thorough
implementation which removes more prefixes from Subject.
(Bug#29659)