Eli Zaretskii [Sat, 28 Apr 2018 07:41:27 +0000 (10:41 +0300)]
* src/fns.c (Fstring_distance): Minor code reformatting.
Eli Zaretskii [Sat, 28 Apr 2018 07:27:53 +0000 (10:27 +0300)]
Fix documentation and tests for 'string-distance'
* src/fns.c (Fstring_distance): Doc fix.
* doc/lispref/strings.texi (Text Comparison): Document
'string-distance'.
* etc/NEWS: Fix wording and mark as documented in the manuals.
* test/src/fns-tests.el (test-string-distance): Move from
subr-tests.el and rename.
Chen Bin [Thu, 19 Apr 2018 14:38:29 +0000 (00:38 +1000)]
New function 'string-distance'
* src/fns.c (Fstring_distance): New primitive.
(syms_of_fns): Defsubr it.
* test/lisp/subr-tests.el (subr-tests--string-distance): New test.
* etc/NEWS: Mention 'string-distance'.
Michael Albinus [Fri, 27 Apr 2018 13:01:17 +0000 (15:01 +0200)]
; Copyedits in etc/NEWS
Michael Albinus [Fri, 27 Apr 2018 12:43:01 +0000 (14:43 +0200)]
Manual update for Tramp
* doc/misc/tramp.texi (Password handling): Explain, how passwords
are saved permanently.
* etc/NEWS: auth-source Secret Service backend supports :create.
Tramp saves validated passwords.
Noam Postavsky [Fri, 27 Apr 2018 11:27:59 +0000 (07:27 -0400)]
* lisp/epa.el (epa-decrypt-file): Apply epa-pinentry-mode (Bug#30363).
Lars Ingebrigtsen [Thu, 26 Apr 2018 17:45:53 +0000 (19:45 +0200)]
Strip most headers when forwarding messages
* lisp/gnus/message.el (message-forward-included-headers): Change
the default to exclude most messages.
(message-remove-ignored-headers): Make
message-forward-included-headers actually work -- it's a list of
regexps, not a list of strings.
Paul Eggert [Thu, 26 Apr 2018 16:07:28 +0000 (09:07 -0700)]
* etc/NEWS: Fix minor quoting and spacing bugs.
Noam Postavsky [Thu, 26 Apr 2018 11:36:50 +0000 (07:36 -0400)]
Add missing calendar-dlet* (Bug#31267)
* lisp/calendar/calendar.el (calendar-generate-month): Use
calendar-dlet* around evaluation of calendar-date-echo-text.
Ivan Shmakov [Fri, 23 Mar 2018 03:24:17 +0000 (03:24 +0000)]
Ensure woman2-roff-buffer restores functions on error (Bug#30908)
* lisp/woman.el (woman2-roff-buffer): Put the fallback paragraph
processing inside the protected part of the unwind-protect form,
rather than the cleanup forms. Attempting to format paragraphs again
after an error has been signaled is unlikely to be helpful. The
fallback processing should be triggered only in case the loop
terminated normally, but did not reach the end of the buffer for some
reason.
Noam Postavsky [Sat, 14 Apr 2018 05:02:25 +0000 (01:02 -0400)]
Fix cl-print for circular sublists (Bug#31146)
* lisp/emacs-lisp/cl-print.el (cl-print-object) <cons>: Push each
element of list being printed onto cl-print--currently-printing.
* test/lisp/emacs-lisp/cl-print-tests.el (cl-print-circle-2): New
test.
Paul Eggert [Wed, 25 Apr 2018 19:20:04 +0000 (12:20 -0700)]
Don’t set print-escape-newlines in the minibuffer
This appears to be an unnecessary and possibly-confusing
revenant from ancient code (Bug#31251). See thread containing:
https://lists.gnu.org/r/emacs-devel/2018-04/msg00654.html
* src/minibuf.c (read_minibuf): Do not set print-escape-newlines.
* src/print.c (syms_of_print): Do not defsym print-escape-newlines
or print-escape-control-characters, as these symbols are not used
in C code.
Glenn Morris [Wed, 25 Apr 2018 18:45:30 +0000 (14:45 -0400)]
* lisp/foldout.el (outline-minor-mode): Remove pointless check.
Glenn Morris [Wed, 25 Apr 2018 18:43:18 +0000 (14:43 -0400)]
speedbar: remove support for missing custom.el
* lisp/speedbar.el (speedbar-file-regexp)
(speedbar-ignored-directory-regexp): Remove support for no custom.el.
Glenn Morris [Wed, 25 Apr 2018 18:41:41 +0000 (14:41 -0400)]
* lisp/progmodes/sql.el (comint-line-beginning-position):
Remove pre-21 fallback definition.
Glenn Morris [Wed, 25 Apr 2018 18:40:28 +0000 (14:40 -0400)]
* lisp/net/eudc.el (split-string): Remove pre-21 fallback definition.
Basil L. Contovounesios [Thu, 12 Apr 2018 16:46:37 +0000 (17:46 +0100)]
Do not call interprogram-paste-function repeatedly
* lisp/simple.el (current-kill): Disable interprogram-paste-function
so that kill-new doesn't call it repeatedly when
save-interprogram-paste-before-kill is enabled. (bug#31209)
Glenn Morris [Wed, 25 Apr 2018 01:13:00 +0000 (21:13 -0400)]
socks.el: remove pre-21 compatibility code
* lisp/net/socks.el (socks-split-string): Remove.
(socks-nslookup-host): Just use split-string.
Paul Eggert [Tue, 24 Apr 2018 21:25:55 +0000 (14:25 -0700)]
* src/minibuf.c (read_minibuf): Add a FIXME comment.
Glenn Morris [Tue, 24 Apr 2018 17:32:49 +0000 (13:32 -0400)]
; * etc/NEWS: Fix typo.
Lars Ingebrigtsen [Tue, 24 Apr 2018 15:23:53 +0000 (17:23 +0200)]
(add-to-invisibility-spec): Further doc tweak
* lisp/subr.el (add-to-invisibility-spec): Tweak doc fix from
previous patch.
Lars Ingebrigtsen [Tue, 24 Apr 2018 15:20:15 +0000 (17:20 +0200)]
Doc fix for `*-*-invisibility-spec'
* lisp/subr.el (add-to-invisibility-spec)
(remove-from-invisibility-spec): Make the doc string say what
happens if `buffer-invisibility-spec' is an atom (bug#30171).
Lars Ingebrigtsen [Tue, 24 Apr 2018 14:46:42 +0000 (16:46 +0200)]
libxml-parse-*-region calling convention fix
* lisp/subr.el (libxml-parse-xml-region)
(libxml-parse-html-region): Adjust the calling convention to note
that the final parameter is optional.
Lars Ingebrigtsen [Tue, 24 Apr 2018 12:09:41 +0000 (14:09 +0200)]
Make url-http-create-request work with non-ASCII data again
* lisp/url/url-http.el (url-http-create-request): Ensure that the
entire request string is unibyte (bug#31248).
Eli Zaretskii [Mon, 23 Apr 2018 17:48:12 +0000 (20:48 +0300)]
Fix recent change in lread.c
* src/lread.c (openp): Avoid assertion violations in XCDR when
PATH is nil. (Bug#31229)
Paul Eggert [Mon, 23 Apr 2018 17:44:24 +0000 (10:44 -0700)]
Backspace is not a paragraph separator in Texinfo files
* lisp/textmodes/texinfo.el (texinfo-mode): Omit backspace from
paragraph separator and start. Perhaps there was some confusion
about .texi vs .info files long ago?
Eli Zaretskii [Mon, 23 Apr 2018 16:40:44 +0000 (19:40 +0300)]
* etc/NEWS: Improve wording of next-error entries.
Michael Albinus [Mon, 23 Apr 2018 08:16:06 +0000 (10:16 +0200)]
Let Tramp save passwords
* lisp/auth-source.el (auth-source-secrets-saver): New defun.
(auth-source-secrets-create): Use it.
* lisp/net/secrets.el (secrets-struct-secret-content-type):
(secrets-create-item): Do not hard-code :xdg:schema.
* lisp/net/tramp.el (tramp-password-save-function): New defvar.
(tramp-read-passwd): Set it properly.
(tramp-process-actions):
* lisp/net/tramp-gvfs.el (tramp-gvfs-maybe-open-connection):
Save password.
* lisp/net/tramp-cmds.el (tramp-bug): Don't report
`tramp-password-save-function'.
* test/lisp/net/secrets-tests.el (secrets-test03-items):
Extend test with another :xdg:schema.
Michael Albinus [Mon, 23 Apr 2018 08:01:27 +0000 (10:01 +0200)]
Ensure proper EOL handling for Tramp on macOS
* lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
Ensure proper EOL handling for Darwin.
Juri Linkov [Sun, 22 Apr 2018 22:10:49 +0000 (01:10 +0300)]
Improve Isearch error handling
* lisp/isearch.el (isearch--momentary-message): Propertize message
suffix with minibuffer-prompt face.
(isearch--describe-regexp-mode): Do not omit description in case
of error in default non-literal search.
(isearch-message-prefix): Display “case-sensitive” in case of error.
(isearch-message-suffix): Propertize message suffix with
minibuffer-prompt face.
(isearch-search-fun-default): Remove unused error handling.
* lisp/vc/add-log.el (change-log-next-buffer): Better handle
errors during wrapping.
Lars Ingebrigtsen [Sun, 22 Apr 2018 18:34:40 +0000 (20:34 +0200)]
(text-property-search-forward): Copy edits in doc string
* lisp/emacs-lisp/text-property-search.el
(text-property-search-forward): Copy edits in doc string.
Eli Zaretskii [Sun, 22 Apr 2018 17:39:46 +0000 (20:39 +0300)]
Minor improvements of next-error docs
* lisp/simple.el (next-error-find-buffer-function)
(previous-error, next-error-select-buffer): Doc fixes.
* doc/emacs/maintaining.texi (Change Log Commands):
* doc/emacs/building.texi (Compilation Mode): Index the new
commands and variables. Improve wording.
(Bug#20493)
Lars Ingebrigtsen [Sun, 22 Apr 2018 15:05:04 +0000 (17:05 +0200)]
(text-property-search-forward): Doc string tweak
* lisp/emacs-lisp/text-property-search.el
(text-property-search-forward): Doc string tweak.
Lars Ingebrigtsen [Sun, 22 Apr 2018 14:58:10 +0000 (16:58 +0200)]
(text-property-search-forward): Fix search at the end
* lisp/emacs-lisp/text-property-search.el
(text-property-search-forward): Fix search at the end of the
buffer with no text properties.
Lars Ingebrigtsen [Sun, 22 Apr 2018 14:57:16 +0000 (16:57 +0200)]
Add a test suite for text-property-search
Juri Linkov [Sat, 21 Apr 2018 19:52:47 +0000 (22:52 +0300)]
Update documentation for more next-error features
* doc/emacs/maintaining.texi (Change Log Commands): Mention
change-log-goto-source.
* doc/emacs/building.texi (Compilation Mode): Document
next-error-find-buffer-function and next-error-select-buffer.
* doc/emacs/building.texi (Grep Searching):
* doc/emacs/files.texi (Diff Mode):
* doc/emacs/search.texi (Other Repeating Search):
* doc/emacs/windows.texi (Displaying Buffers):
Prefer ‘M-g M-n’ over ‘C-x `’.
* lisp/simple.el (next-error-find-buffer-function, next-error)
(next-error-select-buffer): Elaborate docstrings. (Bug#20493)
Glenn Morris [Fri, 20 Apr 2018 23:02:16 +0000 (19:02 -0400)]
Tweak recent bytecomp defvaralias change
* lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-defvar-function):
Respect with-no-warnings.
Glenn Morris [Fri, 20 Apr 2018 22:55:04 +0000 (18:55 -0400)]
More alias-related tedium
* lisp/comint.el (comint-scroll-to-bottom-on-output):
* lisp/completion.el (cmpl-syntax-table):
* lisp/erc/erc-button.el (erc-button-google-url):
* lisp/font-lock.el (font-lock-reference-face):
* lisp/hfy-cmap.el (hfy-fallback-colour-map, hfy-rgb-txt-colour-map):
* lisp/isearch.el (isearch-regexp-function, isearch-new-word):
* lisp/startup.el (argv):
* lisp/version.el (emacs-bzr-version):
* lisp/org/org.el (org-CUA-compatible)
(org-popup-calendar-for-date-prompt):
Move aliases before targets, to silence new compiler warning.
Glenn Morris [Fri, 20 Apr 2018 22:34:39 +0000 (18:34 -0400)]
The tedious game of whack-a-mole with compiler warnings continues
* lisp/abbrev.el (edit-abbrevs-map):
* lisp/emacs-lock.el (emacs-lock-from-exiting):
* lisp/htmlfontify.el (hfy-optimisations):
* lisp/ielm.el (inferior-emacs-lisp-mode-hook)
(inferior-emacs-lisp-mode-map):
* lisp/isearch.el (isearch-lazy-highlight-word):
* lisp/select.el (x-select-enable-clipboard, x-select-enable-primary):
* lisp/shell.el (shell-dirtrack-mode):
* lisp/skeleton.el (skeleton-transformation, skeleton-filter):
* lisp/startup.el (inhibit-splash-screen, inhibit-startup-message):
* lisp/window.el (even-window-heights):
* lisp/calendar/timeclock.el (timeclock-modeline-display):
* lisp/cedet/semantic/db-mode.el (semanticdb-mode-hook)
(semanticdb-global-mode):
* lisp/emacs-lisp/edebug.el (gud-inhibit-global-bindings):
* lisp/emacs-lisp/warnings.el (display-warning-minimum-level)
(log-warning-minimum-level):
* lisp/erc/erc-dcc.el (erc-dcc-chat-filter-hook):
* lisp/gnus/nnspool.el (news-path):
* lisp/org/org-agenda.el (org-agenda-search-view-search-words-only)
(org-agenda-remove-tags-when-in-prefix)
(org-agenda-align-tags-to-column, org-agenda-keymap):
* lisp/org/org.el (org-special-ctrl-a)
(org-log-state-notes-into-drawer)
(org-agenda-multi-occur-extra-files):
* lisp/progmodes/flymake-proc.el (flymake-err-line-patterns)
(flymake-check-file-limit):
* lisp/progmodes/make-mode.el (makefile-query-one-target-method):
* lisp/progmodes/octave.el (inferior-octave-startup-hook):
* lisp/progmodes/python.el (python-buffer)
(python-preoutput-result):
* lisp/progmodes/sql.el (sql-dialect):
* lisp/textmodes/artist.el (artist-text-renderer):
* lisp/textmodes/bibtex.el (bibtex-autokey-name-case-convert)
(bibtex-autokey-titleword-case-convert):
* lisp/textmodes/flyspell.el (flyspell-generic-check-word-p):
* lisp/textmodes/ispell.el (ispell-format-word):
* lisp/textmodes/rst.el (rst-preferred-decorations):
* lisp/textmodes/sgml-mode.el (sgml-transformation):
Move aliases before targets, to silence new compiler warning.
* lisp/term/ns-win.el (ns-option-modifier, ns-right-option-modifier):
Silence warning.
Stefan Monnier [Fri, 20 Apr 2018 21:22:47 +0000 (17:22 -0400)]
* lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-defvar-function):
Warn about defvaralias that follows instead of precedes its var.
Stefan Monnier [Fri, 20 Apr 2018 20:56:53 +0000 (16:56 -0400)]
* lisp/url/url-file.el: Use lexical-binding.
Glenn Morris [Fri, 20 Apr 2018 17:46:45 +0000 (13:46 -0400)]
* lisp/net/newst-backend.el (newsticker--sentinel-work):
Replace obsolete form of libxml-parse-xml-region.
Glenn Morris [Fri, 20 Apr 2018 17:35:20 +0000 (13:35 -0400)]
* lisp/replace.el (query-replace-descr): Silence compiler.
Michael Albinus [Fri, 20 Apr 2018 17:32:52 +0000 (19:32 +0200)]
Revert "* etc/HELLO: Add langugae Emoji. Use utf-8 coding."
This reverts commit
c4cfb5d20487f9912f5896b3f1d291fe7ccc9804.
Michael Albinus [Fri, 20 Apr 2018 17:32:28 +0000 (19:32 +0200)]
Revert "* admin/notes/unicode: HELLO is now UTF-8."
This reverts commit
0585bd643dae2592214e77998b875347e6e59bab.
Paul Eggert [Fri, 20 Apr 2018 16:43:01 +0000 (09:43 -0700)]
* admin/notes/unicode: HELLO is now UTF-8.
Glenn Morris [Fri, 20 Apr 2018 15:07:43 +0000 (08:07 -0700)]
Merge from origin/emacs-26
5de608f (origin/emacs-26) Update the documentation of 'perform-replace'
06245b6 * etc/NEWS: Another fix for the last change (noted by Juri Li...
8f6293c Fix use of @key in Texinfo manuals
f4c9894 Improve documentation of actual arglist
ce0e253 ; * etc/NEWS: Improve last change as proposed by Phil Sainty
b89ff0e Don't assume term-current-row cache is valid (Bug#31193)
326a296 ; * etc/NEWS: Mention 'display-buffer-in-major-side-window' c...
3bdc9a1 Fix flyspell-auto-correct-previous-word broken by recent change
a539eb5 * test/src/lread-tests.el (lread-test-bug-31186): New test.
3fa472b Fix undefined behaviour while looking for lexical-binding fil...
4341aac Minor wording improvement in "Bookmarks"
Conflicts:
test/src/lread-tests.el
Stefan Monnier [Fri, 20 Apr 2018 13:16:55 +0000 (09:16 -0400)]
* lisp/international/mule-cmds.el (view-hello-file): Avoid duplicate
Don't hardcode the coding-system, now that it's specified with a "coding:" tag
Michael Albinus [Fri, 20 Apr 2018 12:25:51 +0000 (14:25 +0200)]
* lisp/international/mule-cmds.el (view-hello-file): Use utf-8 coding.
Michael Albinus [Fri, 20 Apr 2018 12:16:33 +0000 (14:16 +0200)]
* etc/HELLO: Add langugae Emoji. Use utf-8 coding.
Eli Zaretskii [Fri, 20 Apr 2018 07:50:10 +0000 (10:50 +0300)]
; * etc/NEWS: Minor reformatting of a recent entry.
Eli Zaretskii [Fri, 20 Apr 2018 07:18:06 +0000 (10:18 +0300)]
Update the documentation of 'perform-replace'
* doc/lispref/searching.texi (Search and Replace): Update the
documentation of 'perform-replace'.
Martin Rudalics [Fri, 20 Apr 2018 06:12:10 +0000 (08:12 +0200)]
* etc/NEWS: Another fix for the last change (noted by Juri Linkov)
Glenn Morris [Fri, 20 Apr 2018 01:18:24 +0000 (21:18 -0400)]
* lisp/url/url-util.el (puny-encode-domain): Autoload it.
Juri Linkov [Thu, 19 Apr 2018 21:11:55 +0000 (00:11 +0300)]
Mention next-error-select-buffer in etc/NEWS
Alan Mackenzie [Thu, 19 Apr 2018 20:42:17 +0000 (20:42 +0000)]
Amend c-colon-type-list-re also to handle compound identifiers
* lisp/progmodes/cc-langs.el (c-colon-type-list-re): Amend to recognize and
skip over "::" in C++ and "." in Java.
Juri Linkov [Thu, 19 Apr 2018 20:30:46 +0000 (23:30 +0300)]
Use text properties to save search parameters. (Bug#22479)
* lisp/isearch.el (isearch-update-ring): Call isearch-string-propertize.
Delete duplicates with possibly different text properties.
(isearch-string-propertize)
(isearch-update-from-string-properties): New functions.
(with-isearch-suspended, isearch-ring-adjust1):
Call isearch-update-from-string-properties.
(isearch-edit-string): Let-bind minibuffer-allow-text-properties to t.
(isearch-query-replace): Use propertized isearch-string.
(isearch--lax-regexp-function-p): Simplify.
* lisp/replace.el (query-replace-descr): Rewrite to keep text properties
non-destructively in the replacement string.
(query-replace--split-string): Don't remove text properties
by substring-no-properties.
(query-replace-read-args): Try to get isearch-regexp-function
from text-properties.
(perform-replace): Display parameters in the replacement message.
* lisp/desktop.el (desktop--v2s): Check if text properties are unreadable.
(Bug#30786)
Juri Linkov [Thu, 19 Apr 2018 19:45:08 +0000 (22:45 +0300)]
* lisp/isearch.el (isearch-mode-map): Restore advertised bindings.
Remove obsolete comments and code.
* lisp/replace.el (occur-find-match): Use user-error instead of error.
(Bug#14912)
Drew Adams [Thu, 19 Apr 2018 19:36:23 +0000 (22:36 +0300)]
Add REGION-NONCONTIGUOUS-P arg to other replace.el commands
* lisp/replace.el (query-replace, query-replace-regexp): Doc fix.
(query-replace-regexp-eval, map-query-replace-regexp)
(replace-string, replace-regexp): Add REGION-NONCONTIGUOUS-P arg.
(perform-replace): Doc fix. (Bug#27897)
Glenn Morris [Thu, 19 Apr 2018 17:09:24 +0000 (13:09 -0400)]
* lisp/emacs-lisp/autoload.el (autoload--make-defs-autoload):
Sort definition-prefixes, for stability.
Eli Zaretskii [Thu, 19 Apr 2018 09:21:06 +0000 (12:21 +0300)]
Fix use of @key in Texinfo manuals
* doc/misc/efaq-w32.texi (Location of init file):
* doc/misc/org.texi (Editing source code, Export settings)
(Closing items, Drawers, Structure editing):
* doc/misc/gnus.texi (Spam and Ham Processors, Terminology):
* doc/misc/calc.texi (Keypad Functions Menu, Keypad Binary Menu)
(Keypad Vectors Menu, Keypad Main Menu, Basic Arithmetic)
(Symbolic Mode):
* doc/misc/sc.texi (Electric References):
* doc/misc/info.texi (Help-^L):
* doc/misc/reftex.texi (Reference Styles):
* doc/misc/idlwave.texi (Troubleshooting, Examining Variables)
(Lesson III---User Catalog, Using the Shell):
* doc/misc/eshell.texi (Bugs and ideas):
* doc/misc/ada-mode.texi (Automatic Casing):
* doc/misc/ediff.texi (Selective Browsing):
* doc/misc/vip.texi (Customizing Constants):
* doc/misc/pcl-cvs.texi (Selected files):
* doc/misc/efaq.texi (Replying to the sender of a message)
(Basic keys, No Meta key, Matching parentheses)
(Origin of the term Emacs, Installing Texinfo documentation)
(Learning how to do something, Emacs manual, Extended commands):
* doc/misc/viper.texi (Rudimentary Changes):
* doc/misc/tramp.texi (Frequently Asked Questions):
* doc/emacs/kmacro.texi (Basic Keyboard Macro):
* doc/emacs/frames.texi (Frame Commands):
* doc/emacs/msdos.texi (Windows Keyboard):
* doc/emacs/search.texi (Query Replace):
* doc/lispintro/emacs-lisp-intro.texi (Keybindings)
(Note for Novices):
* doc/lispref/tips.texi (Key Binding Conventions): Fix use of
@key. For the details, see
http://lists.gnu.org/archive/html/emacs-devel/2018-04/msg00390.html.
Michael Albinus [Thu, 19 Apr 2018 09:04:01 +0000 (11:04 +0200)]
Handle chrooted environments in Tramp
* doc/misc/tramp.texi (Frequently Asked Questions): New item, chrooted
environments.
* lisp/net/tramp.el (tramp-local-host-regexp): Make it a defcustom.
Allow nil.
(tramp-local-host-p):
* lisp/net/tramp-sh.el (tramp-compute-multi-hops): Handle this.
Eli Zaretskii [Thu, 19 Apr 2018 08:29:50 +0000 (11:29 +0300)]
Improve documentation of actual arglist
* doc/lispref/functions.texi (Function Documentation): Advise
against using '(fn ARGLIST)' method of advertising a calling
convention when the old calling convention is deprecated.
(Bug#31191)
Glenn Morris [Thu, 19 Apr 2018 00:18:33 +0000 (20:18 -0400)]
* test/src/process-tests.el (make-process/mix-stderr): Use bash.
Not all shells support ">&2".
Paul Eggert [Thu, 19 Apr 2018 00:12:56 +0000 (17:12 -0700)]
Fix botched merge of FQDNs in PROBLEMS
This text was originally removed in
2014-12-30T04:42:26Z!eggert@cs.ucla.edu but then was
mistakenly re-added in the merge in
2015-03-23T17:30:30Z!eggert@cs.ucla.edu.
* etc/PROBLEMS: Omit obsolete mention of FQDNs.
Paul Eggert [Wed, 18 Apr 2018 20:08:36 +0000 (13:08 -0700)]
Tweak mark_object to avoid a conditional branch
* src/alloc.c (LAST_MARKED_SIZE): Now an enum. Make it a power of 2.
(mark_object): Take advantage of the power of 2.
Stefan Monnier [Wed, 18 Apr 2018 19:56:15 +0000 (15:56 -0400)]
* lisp/emacs-lisp/gv.el (gv-define-setter): Silence compiler warning
Code placed in the `gv-expander` property will presumably only be used
when gv is loaded (bug#14529).
Paul Eggert [Wed, 18 Apr 2018 19:38:19 +0000 (12:38 -0700)]
Tell user about read-integer-overflow-as-float
* src/lread.c (string_to_number): Suggest
read-integer-overflow-as-float in signal message.
Suggested by Stefan Monnier (Bug#31118#58).
Martin Rudalics [Wed, 18 Apr 2018 12:19:21 +0000 (14:19 +0200)]
; * etc/NEWS: Improve last change as proposed by Phil Sainty
Noam Postavsky [Tue, 17 Apr 2018 23:17:18 +0000 (19:17 -0400)]
Don't assume term-current-row cache is valid (Bug#31193)
* lisp/term.el (term-down): Call `term-current-row' instead of
directly accessing the variable `term-current-row. Following a resize
of the terminal's window, `term-current-row' is reset to nil, so it is
not safe to assume it is a number.
Martin Rudalics [Wed, 18 Apr 2018 07:10:03 +0000 (09:10 +0200)]
; * etc/NEWS: Mention 'display-buffer-in-major-side-window' change (Bug#31194)
Paul Eggert [Tue, 17 Apr 2018 23:23:16 +0000 (16:23 -0700)]
Fix signal for large integers with valid syntax
* src/lread.c (read_integer): If a radixed integer has valid syntax
but is waayyy too large, signal overflow instead of invalid syntax.
* test/src/lread-tests.el (lread-long-hex-integer): New test.
Lars Ingebrigtsen [Tue, 17 Apr 2018 23:22:49 +0000 (01:22 +0200)]
(sql-stop): Don't bug out if the SQL buffer is killed
* lisp/progmodes/sql.el (sql-stop): Don't bug out if the SQL
buffer is killed (bug#30244).
David Beswick [Tue, 17 Apr 2018 21:53:55 +0000 (23:53 +0200)]
Don't display an initial-buffer-choice buffer twice
* lisp/startup.el (command-line-1): Don't display an
initial-buffer-choice buffer twice if the user is also explicitly
specifying it on the mode line, but shift it to the initial place
(bug#29999).
Copyright-paperwork-exempt: yes
Lars Ingebrigtsen [Tue, 17 Apr 2018 21:26:11 +0000 (23:26 +0200)]
Revert hunk mistakenly applied in last patch
Lars Ingebrigtsen [Tue, 17 Apr 2018 21:14:55 +0000 (23:14 +0200)]
Fix problem in `g' in Info with strings like "(foo)"
* lisp/info.el (Info-find-file): Add a new parameter to avoid
jumping to the directory if the user looks for a filename on the
form "(foo)" that doesn't exist.
(Info-read-node-name-1): Use it to allow completing over strings
like "(foo)" without losing focus (bug#30091).
Basil L. Contovounesios [Tue, 17 Apr 2018 19:46:26 +0000 (21:46 +0200)]
Set :version of shr faces
* lisp/net/shr.el (shr-strike-through, shr-link, shr-selected-link):
Set :version tag (bug#31200).
Lars Ingebrigtsen [Tue, 17 Apr 2018 19:43:34 +0000 (21:43 +0200)]
shr doc string fix
* lisp/net/shr.el (shr-strike-through, shr-link)
(shr-selected-link): Doc string fix.
Basil L. Contovounesios [Tue, 17 Apr 2018 19:42:04 +0000 (21:42 +0200)]
Modernise face specs and set version tags in eww/shr
* lisp/net/shr.el (shr-strike-through, shr-link, shr-selected-link):
Set :version tag (bug#31200).
* lisp/net/eww.el (eww-form-text, eww-form-textarea):
* lisp/net/shr.el (shr-strike-through, shr-link, shr-selected-link):
Use (DISPLAY . PLIST) face spec syntax as recommended in
'(elisp) Defining Faces'.
Lars Ingebrigtsen [Tue, 17 Apr 2018 18:52:14 +0000 (20:52 +0200)]
When undoing a mark-as-read, display the group if it isn't
* lisp/gnus/gnus-group.el (gnus-group-jump-to-group): Return
whether we found the group.
(gnus-info-clear-data): Make the group visible if it wasn't.
* lisp/gnus/gnus-sum.el (gnus-group-make-articles-read): Ditto.
(gnus-update-read-articles): Ditto.
Juri Linkov [Tue, 17 Apr 2018 19:27:48 +0000 (22:27 +0300)]
Use next-error-found to set next-error-last-buffer.
https://lists.gnu.org/archive/html/emacs-devel/2018-04/msg00207.html
* lisp/simple.el (next-error-buffer): New buffer-local variable
instead of making buffer-local next-error-last-buffer. (Bug#20489)
(next-error-found-function): New defcustom.
(next-error-buffer-on-selected-frame): Use t for avoid-current arg
of next-error-buffer-p.
(next-error-find-buffer): Add second rule for using the current
next-error-buffer if it's not visited by other navigation.
(next-error, next-error-internal): Call next-error-found.
(next-error-found): New function with body extracted mostly from
next-error.
* lisp/vc/add-log.el (change-log-goto-source-internal): New function
with body from change-log-goto-source.
(change-log-goto-source): Call change-log-goto-source-internal and
next-error-found.
(change-log-next-error): Call change-log-goto-source-internal
instead of change-log-goto-source.
(change-log-mode): Don't set next-error-last-buffer. (Bug#28864)
* lisp/vc/diff-mode.el (diff-goto-source): Call next-error-found.
* lisp/progmodes/xref.el (xref-goto-xref): Call next-error-found.
* lisp/replace.el (occur-mode-goto-occurrence)
(occur-mode-goto-occurrence-other-window)
(occur-mode-display-occurrence): Call next-error-found.
(occur-next-error): Remove unnecessary with-current-buffer.
(Bug#27362, bug#30646)
Lars Ingebrigtsen [Tue, 17 Apr 2018 18:34:12 +0000 (20:34 +0200)]
Tweak shr window width computation
* lisp/net/shr.el (shr-insert-document): The computation of the
window width is apparently one pixel too wide for the shr line
folding algorithm (bug#31196).
Lars Ingebrigtsen [Tue, 17 Apr 2018 18:09:28 +0000 (20:09 +0200)]
(gnus-summary-select-article-buffer): Further point placing tweak
* lisp/gnus/gnus-sum.el (gnus-summary-select-article-buffer):
Further tweak for the previous point-placing tweak.
Lars Ingebrigtsen [Tue, 17 Apr 2018 18:02:26 +0000 (20:02 +0200)]
Tweak point placement in gnus-summary-select-article-buffer
* lisp/gnus/gnus-sum.el (gnus-summary-select-article-buffer):
Ensure that point is where it's supposed to be after switching to
the article buffer.
Eli Zaretskii [Tue, 17 Apr 2018 17:45:51 +0000 (20:45 +0300)]
Fix flyspell-auto-correct-previous-word broken by recent change
* lisp/textmodes/flyspell.el (flyspell-auto-correct-word): Keep
flyspell-auto-correct-region also when repeatedly invoking
flyspell-auto-correct-previous-word. (Bug#31188)
Lars Ingebrigtsen [Tue, 17 Apr 2018 17:34:40 +0000 (19:34 +0200)]
Make the `c' command work in a single-article Gnus view
* lisp/gnus/gnus-art.el (gnus-article-read-summary-keys): Make `c'
work from the article buffer (bug#31195) when no summary buffer is
shown.
Lars Ingebrigtsen [Tue, 17 Apr 2018 17:21:42 +0000 (19:21 +0200)]
Place point consistently in the Gnus group buffer on exit
* lisp/gnus/gnus-sum.el (gnus-summary-exit): Place point correctly
when exiting with `q' (and the like) from the article buffer when
only the article buffer is displayed (bug#31195). This is
apparently yet another fall-out from the "preserve-visible-point-
in-windows" patches of yesteryear...
Lars Ingebrigtsen [Tue, 17 Apr 2018 16:53:09 +0000 (18:53 +0200)]
Reimplement `shr-next-link' and `shr-previous-link'
* lisp/net/shr.el (shr-next-link): Use
`text-property-search-forward'.
(shr-previous-link): Use `text-property-search-backward'.
Lars Ingebrigtsen [Tue, 17 Apr 2018 16:51:41 +0000 (18:51 +0200)]
Add `text-property-search-forward' and `-backward'
* doc/lispref/text.texi (Property Search): Document
`text-property-search-forward' and `text-property-search-backward'.
* lisp/emacs-lisp/text-property-search.el: New file.
Eli Zaretskii [Tue, 17 Apr 2018 15:40:41 +0000 (18:40 +0300)]
* test/src/lread-tests.el (lread-test-bug-31186): New test.
Tino Calancha [Tue, 17 Apr 2018 13:20:28 +0000 (22:20 +0900)]
* lisp/textmodes/artist.el (artist-mode): Ensure we have a font
Andreas Schwab [Tue, 17 Apr 2018 09:36:36 +0000 (11:36 +0200)]
Fix undefined behaviour while looking for lexical-binding file variable (bug 31186)
* src/lread.c (lisp_file_lexically_bound_p): Reset
beg_end_state before reading variable or value.
Katsumi Yamaoka [Tue, 17 Apr 2018 06:22:17 +0000 (06:22 +0000)]
* lisp/mail/sendmail.el (mail-sendmail-undelimit-header): Work for
the case where the mail header separator has already been deleted.
Lars Ingebrigtsen [Tue, 17 Apr 2018 00:11:02 +0000 (02:11 +0200)]
(gnus-group-goto-group): Return correct value after previous patch
* lisp/gnus/gnus-group.el (gnus-group-goto-group): Return the
correct value after the previous patch.
Lars Ingebrigtsen [Mon, 16 Apr 2018 21:10:03 +0000 (23:10 +0200)]
Fix inconsistent point movement in the Gnus group buffer
* lisp/gnus/gnus-group.el (gnus-group-goto-group): If we can't
find the group we're looking for, then don't move point at all
(bug#23021).
Lars Ingebrigtsen [Mon, 16 Apr 2018 19:20:08 +0000 (21:20 +0200)]
(artist-mode): Warn about proportional fonts
* lisp/textmodes/artist.el (artist-mode): Warn about proportional
fonts (bug#24175).
Lars Ingebrigtsen [Mon, 16 Apr 2018 11:58:39 +0000 (13:58 +0200)]
Make mail-sendmail-undelimit-header actually remove the delimiter
* lisp/mail/sendmail.el (mail-sendmail-undelimit-header): Actually
remove the mail header separator (bug#17488). In all the cases
where this is called, the separator will probably already have
been removed, so the only thing this does is place point at the
end of the headers.
Lars Ingebrigtsen [Mon, 16 Apr 2018 11:47:53 +0000 (13:47 +0200)]
(semantic-symref-results-mode-map): Fix typo in previous check-in
* lisp/cedet/semantic/symref/list.el
(semantic-symref-results-mode-map): Fix typo in previous check-in.
Philipp Stephani [Mon, 16 Apr 2018 06:45:27 +0000 (23:45 -0700)]
Avoid undefined behavior in 'defvar' (Bug#31072)
* src/eval.c (Fdefvar): Check that first argument is a symbol.
* test/src/eval-tests.el (defvar/bug31072): New unit test.
Stefan Monnier [Thu, 15 Mar 2018 00:06:47 +0000 (20:06 -0400)]
EUDC: Enable lexical binding and do some cleanups
* lisp/net/eudc.el: Enable lexical binding.
(cl-lib): Always require cl-lib, not only when byte compiling.
(eudc-mode-map): Set parent keymap within let form.
(eudc-update-local-variables): Use #' read syntax for function
argument to map function.
(eudc-select): Likewise.
(eudc-format-attribute-name-for-display): Likewise
(eudc-filter-duplicate-attributes): Likewise.
(eudc-format-query): Likewise.
(eudc-expand-inline): Likewise.
(eudc-query-form): Likewise.
(eudc-print-attribute-value): Use mapc instead of mapcar.
(eudc-filter-partial-records): Use cl-every.
(eudc-distribute-field-on-records): Use delete-dups to
simplify function.
(eudc-expand-inline): Replace while with dolist and let form.
(eudc-query-form): Set inhibit-read-only after switching
buffers. Remove useless and call.
(eudc-load-eudc): Add a FIXME comment.