]> git.eshelyaron.com Git - emacs.git/log
emacs.git
5 years agoCatch duplicate keywords in image specs
Paul Eggert [Thu, 27 Jun 2019 19:21:20 +0000 (12:21 -0700)]
Catch duplicate keywords in image specs

* src/image.c (struct image_keyword.count): Now bool, not int,
since it is either 0 or 1.
(parse_image_spec, xpm_image_p): Use bool for boolean.
(parse_image_spec): Fix a bug introduced in
2011-09-21T17:41:20!eggert@cs.ucla.edu that reported only
triplicate (or more) keywords, not duplicates.

5 years agoMention the new emacsclient -a/--eval behaviour
Lars Ingebrigtsen [Thu, 27 Jun 2019 19:18:42 +0000 (21:18 +0200)]
Mention the new emacsclient -a/--eval behaviour

5 years agoemacsclient: ignore --eval parameters when starting alternate editor
Lars Ingebrigtsen [Thu, 27 Jun 2019 18:59:50 +0000 (20:59 +0200)]
emacsclient: ignore --eval parameters when starting alternate editor

* lib-src/emacsclient.c (fail): If the user said --eval, don't
pass those arguments to the alternate editor as file names.
Suggested by a patch from Scott Turner (bug#11474).

5 years agoAllow for retrieving profiler logs after stopping
Vasilij Schneidermann [Thu, 27 Jun 2019 18:18:20 +0000 (20:18 +0200)]
Allow for retrieving profiler logs after stopping

* lisp/profiler.el (profiler-cpu-log, profiler-memory-log): New
variables.
(profiler-cpu-profile): Work even if the profiler is no longer
running (bug#22114).
(profiler-memory-profile): Ditto.
(profiler-stop): Save the data.
(profiler-reset): Clear the saved data.
(profiler-report-cpu, profiler-report-memory): Report on the saved
data.
(profiler-report): Save the data here, too.

5 years agoInclude the date in the bzr annotation buffer
Dan Nicolaescu [Thu, 27 Jun 2019 18:13:14 +0000 (20:13 +0200)]
Include the date in the bzr annotation buffer

* lisp/vc/vc-bzr.el (vc-bzr-annotate-command)
(vc-bzr-annotate-time)
(vc-bzr-annotate-extract-revision-at-line): Include a date in the
bzr annotation buffer (bug#5428).

5 years agoAdd new ispell-change-dictionary-hook (Bug#1110)
Stefan Kangas [Thu, 27 Jun 2019 18:02:56 +0000 (20:02 +0200)]
Add new ispell-change-dictionary-hook (Bug#1110)

* lisp/textmodes/ispell.el (ispell-change-dictionary-hook): New hook.
(ispell-change-dictionary): Call new hook (bug#1110).

5 years agoAdd a new regexp variable to control boring winner buffers
Thierry Volpiatto [Thu, 27 Jun 2019 17:20:50 +0000 (19:20 +0200)]
Add a new regexp variable to control boring winner buffers

* doc/emacs/windows.texi (Window Convenience): Mention it.

* lisp/winner.el (winner-boring-buffers-regexp): New variable.

* lisp/winner.el (winner-set): Use it (bug#11151).

5 years agoFix invoking Emacs via a symlink on Cygwin
Ken Brown [Thu, 27 Jun 2019 17:43:27 +0000 (13:43 -0400)]
Fix invoking Emacs via a symlink on Cygwin

* src/emacs.c (load_pdump) [CYGWIN]: Strip ".exe" suffix.

5 years agoAdd more fontification to regexp builder mode
Lennart Borgman [Thu, 27 Jun 2019 17:08:42 +0000 (19:08 +0200)]
Add more fontification to regexp builder mode

* lisp/emacs-lisp/re-builder.el (reb-copy): Work in the presence
of newlines in the regexps.
(reb-change-syntax): Use a dedicated history variable.
(reb-fontify-string-re): Fontify sub-matches.
(reb-regexp-grouping-backslash, reb-regexp-grouping-construct):
New faces.
(reb-string-font-lock-keywords): New variable.
(reb-mark-non-matching-parenthesis): Match parenthesis.
(reb-restart-font-lock): New function.

* lisp/emacs-lisp/re-builder.el (reb-mode-map): Add divider some
dividers (bug#6347).

5 years agoRename displayor to displayer in CEDET
Lars Ingebrigtsen [Thu, 27 Jun 2019 16:13:18 +0000 (18:13 +0200)]
Rename displayor to displayer in CEDET

* doc/misc/sem-user.texi (Idle Completions Mode): Rename
displayor->displayer throughout.
(Idle Completions Mode): Ditto.

* lisp/cedet/semantic/complete.el: Rename displayor->displayer
throughout and add aliases for all the methods that used that name.

5 years agoUse `default-indent-new-line' instead of `indent-new-comment-line'
Dmitry Gutov [Thu, 27 Jun 2019 14:57:47 +0000 (16:57 +0200)]
Use `default-indent-new-line' instead of `indent-new-comment-line'

* lisp/simple.el (default-indent-new-line): Doc string fix.

* lisp/textmodes/refill.el (refill-post-command-function): Make
default-indent-new-line work as indent-new-comment-line.

* lisp/textmodes/refill.el (refill-post-command-function): Bind
`M-C-j' and `M-j' to default-indent-new-line instead of
indent-new-comment-line to allow overriding via
`comment-line-break-function' (bug#12413).

5 years agoRevert "Apply font-lock in hexl-mode buffers"
Lars Ingebrigtsen [Thu, 27 Jun 2019 14:28:22 +0000 (16:28 +0200)]
Revert "Apply font-lock in hexl-mode buffers"

This reverts commit 573de396f03684efa89ead24a371b0f4c9bf8d5d.

The change wasn't necessary -- the hexl-mode buffer is automatically fontified.

5 years agoAllow generating wiki and mediawiki tables
Aaron S. Hawley [Thu, 27 Jun 2019 11:55:04 +0000 (13:55 +0200)]
Allow generating wiki and mediawiki tables

* lisp/textmodes/table.el (table--generate-source-prologue)
(table--generate-source-epilogue)
(table--generate-source-scan-rows)
(table--generate-source-cells-in-a-row): Insert the wiki/mediawiki
separators.

* lisp/textmodes/table.el (table-source-languages): Add support
for wiki and mediawiki tables (bug#13287).

2019-06-27  Lars Ingebrigtsen  <larsi@gnus.org>

* doc/emacs/text.texi (Table Misc): Mention the new wiki and
mediawiki formats.

5 years agoApply font-lock in hexl-mode buffers
Wilfred Hughes [Thu, 27 Jun 2019 11:30:36 +0000 (13:30 +0200)]
Apply font-lock in hexl-mode buffers

* lisp/hexl.el (hexl-mode): After setting font-lock-defaults, we
need to call `font-lock-ensure' to apply hexl-mode faces
(bug#24645).

5 years agoAdd :local specifier to defcustom
Juanma Barranquero [Thu, 27 Jun 2019 11:26:45 +0000 (13:26 +0200)]
Add :local specifier to defcustom

* lisp/custom.el (custom-declare-variable): Allow the new :local
parameter (bug#14591).
(defcustom): Document it.

5 years agoTweak ‘error’ and ‘user-error’ doc strings
Paul Eggert [Thu, 27 Jun 2019 09:33:36 +0000 (02:33 -0700)]
Tweak ‘error’ and ‘user-error’ doc strings

* lisp/net/tramp.el (tramp-user-error):
* lisp/subr.el (user-error):
Say that user errors are sometimes called pilot errors.
* lisp/subr.el (error, user-error):
Reorder wording to discuss mechanism first, then formatting advice,
rather than going back and forth between the two topics.
Tighten up the wording a bit.

5 years agoClarify error and user-error docstrings
Stefan Kangas [Thu, 27 Jun 2019 09:33:10 +0000 (02:33 -0700)]
Clarify error and user-error docstrings

* lisp/subr.el (error, user-error)
* lisp/net/tramp.el (tramp-user-error): Change "pilot error" to "user
error" and improve documentation.

5 years agoRemove gnus-bug from report-emacs-bug TODO entry
Basil L. Contovounesios [Wed, 26 Jun 2019 23:14:36 +0000 (00:14 +0100)]
Remove gnus-bug from report-emacs-bug TODO entry

For discussion, see the following thread:
https://lists.gnu.org/archive/html/emacs-devel/2019-04/msg01196.html
https://lists.gnu.org/archive/html/emacs-devel/2019-06/msg00967.html

* etc/TODO: Remove gnus-bug from list of obsolete bug-reporting
commands now that it is implemented in terms of report-emacs-bug.

5 years agoDocument bug in `replace-regexp-in-string'
Mattias Engdegård [Wed, 26 Jun 2019 09:23:32 +0000 (11:23 +0200)]
Document bug in `replace-regexp-in-string'

`replace-regexp-in-string' omits the first START characters of the
input string in its return value.  This is a clear bug, but fixing it
probably causes more trouble; document the behaviour instead (bug#36372).

* doc/lispref/searching.texi (Search and Replace)
* lisp/subr.el (replace-regexp-in-string):
Document current behaviour.

5 years ago* lisp/textmodes/page-ext.el (sort-pages-buffer): Fix typo
Stefan Monnier [Wed, 26 Jun 2019 16:49:01 +0000 (12:49 -0400)]
* lisp/textmodes/page-ext.el (sort-pages-buffer): Fix typo

Reported by Marco Wahl <marcowahlsoft@gmail.com>.
Update `Commentary:` to use the new command names.
(pages--ctl-x-ctl-p-map): Fix `mark-page` binding.
(pages-directory-mode-map): Update `add-new-page` => `pages-add-new-page`.

5 years agoSupport invoking Emacs via a symlink on MS-Windows
Eli Zaretskii [Wed, 26 Jun 2019 16:23:34 +0000 (19:23 +0300)]
Support invoking Emacs via a symlink on MS-Windows

* src/w32.c (w32_my_exename): Resolve symlinks in the
executable name, to support searching for the pdumper file
when the executable is found via a symlink.
* src/emacs.c (load_pdump): Add a comment about symlink
resolution on Windows.

5 years agoFix redisplay of registers in gdb-mi
Andrzej P [Mon, 6 Jan 2014 00:45:01 +0000 (00:45 +0000)]
Fix redisplay of registers in gdb-mi

* lisp/progmodes/gdb-mi.el (gdb-update): Call
gdb-get-changed-registers before updating the GDB-MI buffers.
(Bug#16366)

Copyright-paperwork-exempt: yes

5 years agoRestrict indirect lookups in Fdocumentation_property
Lars Ingebrigtsen [Wed, 26 Jun 2019 14:41:07 +0000 (16:41 +0200)]
Restrict indirect lookups in Fdocumentation_property

* src/doc.c (Fdocumentation_property): Only look up indirect
variables if we've been asked for the variable documentation.

5 years agoMerge branch 'master' of git+ssh://git.sv.gnu.org/srv/git/emacs into trunk
Stefan Monnier [Wed, 26 Jun 2019 14:27:36 +0000 (10:27 -0400)]
Merge branch 'master' of git+ssh://git.sv.gnu.org/srv/git/emacs into trunk

5 years ago* lisp/calc/calc-ext.el (math-scalarp): Fix typo
Bruce Stephens [Wed, 26 Jun 2019 14:26:18 +0000 (10:26 -0400)]
* lisp/calc/calc-ext.el (math-scalarp): Fix typo

5 years agoFdocumentation_property: Return doc string for indirect variables
Lars Ingebrigtsen [Wed, 26 Jun 2019 14:25:19 +0000 (16:25 +0200)]
Fdocumentation_property: Return doc string for indirect variables

* src/doc.c (Fdocumentation_property): When dealing with indirect
variables (i.e., aliases), also check the symbol being pointed to
for the doc string (bug #17180).

5 years agoRevert "* lisp/calc/calc-ext.el (math-scalarp): Fix typo"
Stefan Monnier [Wed, 26 Jun 2019 14:24:59 +0000 (10:24 -0400)]
Revert "* lisp/calc/calc-ext.el (math-scalarp): Fix typo"

This reverts commit 698ff554ac2699ec48fefc85a1307cbc4a183b0d.

5 years agohelp-C-file-name shouldn't error out if we can't find the name
Johan Claesson [Wed, 26 Jun 2019 14:05:54 +0000 (16:05 +0200)]
help-C-file-name shouldn't error out if we can't find the name

* lisp/help-fns.el (help-C-file-name): Make help-C-file-name
return nil instead of signalling an error if we can't find the
file name (bug#17250).

Copyright-paperwork-exempt: yes

5 years ago* test/lisp/calc/calc-tests.el (test-math-bignum, test-calc-23889): Disable
Stefan Monnier [Wed, 26 Jun 2019 14:04:52 +0000 (10:04 -0400)]
* test/lisp/calc/calc-tests.el (test-math-bignum, test-calc-23889): Disable

Not applicable any more with native bignums.

5 years ago* lisp/calc/calc-ext.el (math-scalarp): Fix typo
Stefan Monnier [Wed, 26 Jun 2019 14:03:48 +0000 (10:03 -0400)]
* lisp/calc/calc-ext.el (math-scalarp): Fix typo

5 years agoFix (rx-to-string (and (literal STR) (regexp STR)) regression
Noam Postavsky [Wed, 26 Jun 2019 12:47:56 +0000 (08:47 -0400)]
Fix (rx-to-string (and (literal STR) (regexp STR)) regression

* lisp/emacs-lisp/rx.el (rx-regexp, rx-literal): Check the cadr of the
form for stringness, not the form itself.
* test/lisp/emacs-lisp/rx-tests.el (rx-to-string-lisp-forms): New test.

5 years agoMerge consecutive constant `concat' args (bug#14769)
Mattias Engdegård [Sun, 16 Jun 2019 11:13:47 +0000 (13:13 +0200)]
Merge consecutive constant `concat' args (bug#14769)

Suggested by Shigeru Fukaya <shigeru.fukaya@gmail.com>

* lisp/emacs-lisp/byte-opt.el (byte-optimize-concat): New.
(concat): Add byte-optimizer.

5 years ago* lisp/calc/calc.el: Take advantage of native bignums.
Stefan Monnier [Wed, 26 Jun 2019 03:05:11 +0000 (23:05 -0400)]
* lisp/calc/calc.el: Take advantage of native bignums.

Remove redundant :group args.

(calc-trail-mode): Use inhibit-read-only.
(math-bignum-digit-length, math-bignum-digit-size)
(math-small-integer-size): Delete constants.
(math-normalize): Use native bignums.
(math-bignum, math-bignum-big): Delete functions.
(math-make-float): The mantissa can't be a calc bignum any more.
(math-neg, math-scale-left, math-scale-right, math-scale-rounding)
(math-add, math-sub, math-mul, math-idivmod, math-quotient)
(math-format-number, math-read-number, math-read-number-simple):
Don't bother handling calc bignums.
(math-div10-bignum, math-scale-left-bignum, math-scale-right-bignum)
(math-add-bignum, math-sub-bignum, math-mul-bignum, math-mul-bignum-digit)
(math-div-bignum, math-div-bignum-digit, math-div-bignum-big)
(math-div-bignum-part, math-div-bignum-try, math-format-bignum)
(math-format-bignum-decimal, math-read-bignum): Delete functions.
(math-numdigs): Don't presume that native ints are small enough to use
a slow algorithm.

* lisp/calc/calc-aent.el (calc-do-quick-calc):
* lisp/calc/calc-vec.el (calcFunc-vunpack):
* lisp/calc/calc-alg.el (math-beforep): Don't bother handling calc bignums.

* lisp/calc/calc-bin.el (math-bignum-logb-digit-size)
(math-bignum-digit-power-of-two): Remove constants.
(calcFunc-and, math-binary-arg, calcFunc-or, calcFunc-xor)
(calcFunc-diff, calcFunc-not, math-clip, math-format-twos-complement):
Use Emacs's builtin bignums.
(math-and-bignum, math-or-bignum, math-xor-bignum, math-diff-bignum)
(math-not-bignum, math-clip-bignum)
(math-format-bignum-radix, math-format-bignum-binary)
(math-format-bignum-octal, math-format-bignum-hex): Delete functions.
(math-format-binary): Fix old copy&paste error.

* lisp/calc/calc-comb.el (calc-prime-factors): Adjust for unused arg.
(math-prime-test): math-fixnum is now the identity.

* lisp/calc/calc-ext.el: Require cl-lib.
(math-oddp): Use cl-oddp.  Don't bother with calc bignums.
(math-integerp, math-natnump, math-ratp, math-realp, math-anglep)
(math-numberp, math-scalarp, math-vectorp, math-objvecp, math-primp)
(math-num-natnump, math-objectp, math-check-integer, math-compare):
Don't bother handling calc bignums.
(math-check-fixnum): Use fixnump.
(math-fixnum, math-fixnum-big, math-bignum-test): Remove functions.
(math--format-integer-fancy): Rename from math-format-bignum-fancy.
Adjust for internal bignums.

* lisp/calc/calc-funcs.el (calcFunc-besJ): Use cl-isqrt.

* lisp/calc/calc-macs.el (Math-zerop, Math-integer-negp)
(Math-integer-posp, Math-negp, Math-posp, Math-integerp)
(Math-natnump, Math-ratp, Math-realp, Math-anglep, Math-numberp)
(Math-scalarp, Math-vectorp, Math-objectp, Math-objvecp)
(Math-integer-neg, Math-primp, Math-num-integerp):
Don't bother handling calc bignums.
(Math-bignum-test): Delete function.

* lisp/calc/calc-math.el (math-use-emacs-fn): Remove unused `fx`.
(math-isqrt, math-sqrt): Use cl-isqrt.  Don't bother handling calc bignums.
(math-isqrt-bignum, math-isqrt-bignum-iter, math-isqrt-small):
Delete function.

* lisp/calc/calc-misc.el (math-fixnump, math-fixnatnump): Use fixnump.
(math-evenp): Use cl-evenp.
(math-zerop, math-negp, math-posp, math-div2): Don't bother handling
calc bignums.
(math-div2-bignum): Delete function.

5 years agoMerge from emacs-26
Noam Postavsky [Wed, 26 Jun 2019 02:04:13 +0000 (22:04 -0400)]
Merge from emacs-26

e62ad04963 Fix sgml-mode handling of quotes within parens (Bug#36347)
06b35b2f92 ; * lisp/frame.el: Enhance add-variable-watcher commentary.
572e34bb6f Rename 'make-symbolic-link' argument NEWNAME to LINKNAME
04477adedc Check that length of data returned by sysctl is non-zero
81535eeadb * test/lisp/progmodes/python-tests.el (python-virt-bin): D...
9d48979ca8 Fix Python tests depending on system-type
fcf6cc3177 Fix problem with wdired test when symlinks cannot be created.
4701e0663e Improve wording of documentation of click events

# Conflicts:
# lisp/textmodes/sgml-mode.el
# test/lisp/textmodes/sgml-mode-tests.el

5 years ago; Merge from emacs-26
Noam Postavsky [Wed, 26 Jun 2019 02:02:27 +0000 (22:02 -0400)]
; Merge from emacs-26

The following commit was skipped:

bea31a3794 Backport: Fix typo in regexp-opt example code

5 years agoMerge from emacs-26
Noam Postavsky [Wed, 26 Jun 2019 02:02:27 +0000 (22:02 -0400)]
Merge from emacs-26

2b765c650a Remove outdated comment in winner.el (Bug#36185)

5 years ago; Merge from emacs-26
Noam Postavsky [Wed, 26 Jun 2019 02:02:27 +0000 (22:02 -0400)]
; Merge from emacs-26

The following commit was skipped:

f87a9e359e Fix accidential change in tramp-tests; do not merge with m...

5 years agoDon't bind search-spaces-regexp around possible autoload (Bug#35802)
Noam Postavsky [Fri, 21 Jun 2019 11:09:44 +0000 (07:09 -0400)]
Don't bind search-spaces-regexp around possible autoload (Bug#35802)

* lisp/isearch.el (isearch-search-fun-default): Move possible autoload
trigger outside let-binding of search-spaces-regexp.
* lisp/char-fold.el (char-fold-make-table): Remove no longer needed
workaround.

* lisp/info.el (Info-search-whitespace-regexp):
* lisp/isearch.el (search-whitespace-regexp):
* src/search.c (syms_of_search) <search-spaces-regexp>: Add warning
about adding capturing groups to the value.

* test/lisp/char-fold-tests.el: Remove, binding search-spaces-regexp
to a different should be considered a bug.

5 years agoSupport (rx (and (regexp EXPR) (literal EXPR))) (Bug#36237)
Noam Postavsky [Fri, 14 Jun 2019 12:43:17 +0000 (08:43 -0400)]
Support (rx (and (regexp EXPR) (literal EXPR))) (Bug#36237)

* lisp/emacs-lisp/rx.el (rx-regexp): Allow non-string forms.
(rx-constituents): Add literal constituent, which is like a plain
STRING form, but allows arbitrary lisp expressions.
(rx-literal): New function.
(rx-compile-to-lisp): New variable.
(rx--subforms): New helper function for handling subforms, including
non-constant case.
(rx-group-if, rx-and, rx-or, rx-=, rx->=, rx-repeat, rx-submatch)
(rx-submatch-n, rx-kleene, rx-atomic-p): Use it to handle non-constant
subforms.
(rx): Document new form, wrap non-constant forms with concat call.
* test/lisp/emacs-lisp/rx-tests.el (rx-tests--match): New macro.
(rx-nonstring-expr, rx-nonstring-expr-non-greedy): New tests.
* etc/NEWS: Announce changes.

5 years agoFix PATH_MAX change to lib-src/emacsclient.c
Juanma Barranquero [Wed, 26 Jun 2019 00:05:53 +0000 (02:05 +0200)]
Fix PATH_MAX change to lib-src/emacsclient.c

* lib-src/emacsclient.c (get_current_dir_name): Declare pwdlen.

5 years agoFix previous patch to dired-mark-if
Lars Ingebrigtsen [Tue, 25 Jun 2019 23:15:06 +0000 (01:15 +0200)]
Fix previous patch to dired-mark-if

* lisp/dired.el (dired-mark-if): Don't use looking-at to check for
characters.

5 years agoFix sgml-mode handling of quotes within parens (Bug#36347)
Noam Postavsky [Mon, 24 Jun 2019 01:27:43 +0000 (21:27 -0400)]
Fix sgml-mode handling of quotes within parens (Bug#36347)

* lisp/textmodes/sgml-mode.el (sgml-syntax-propertize): Use
syntax-ppss-table if set.  This is only needed on the release branch,
on master the caller (syntax-propertize) already does this.
(sgml-mode): Set syntax-ppss-table to sgml-tag-syntax-table.  This
correctly classifies parens as punctuation, so they won't confuse the
parser.
* test/lisp/textmodes/sgml-mode-tests.el (sgml-tests--quotes-syntax):
New test copied from master, with two cases added for this bug.

5 years ago; * lisp/frame.el: Enhance add-variable-watcher commentary.
Noam Postavsky [Tue, 25 Jun 2019 22:57:30 +0000 (18:57 -0400)]
; * lisp/frame.el: Enhance add-variable-watcher commentary.

5 years agoPrefer PATH_MAX to MAXPATHLEN
Paul Eggert [Tue, 25 Jun 2019 22:54:37 +0000 (15:54 -0700)]
Prefer PATH_MAX to MAXPATHLEN

PATH_MAX is standardized, MAXPATHLEN is not.
Also, the Gnulib pathmax module fixes some rare bugs with PATH_MAX.
So prefer PATH_MAX to MAXPATHLEN unless we know the latter is
also correct (for some platform-specific code).
* admin/merge-gnulib (GNULIB_MODULES): Add pathmax.
This module was already present, as a dependency of canonicalize-lgpl,
but now Emacs is using it directly.  Sort.
* lib-src/emacsclient.c: Include stdint.h, pathmax.h.
(get_current_dir_name): Sync to current src/sysdep.c.
* lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
* src/sysdep.c: Include pathmax.h.
(get_current_dir_name_or_unreachable):
Use PATH_MAX instead of MAXPATHLEN.

5 years agoView-search-... now hit all the matches, regardless of window position
Dima Kogan [Tue, 25 Jun 2019 22:49:24 +0000 (00:49 +0200)]
View-search-... now hit all the matches, regardless of window position

* lisp/view.el (view-search): Jump to the next/prev occurrence of
the search, even if it's displayed in the buffer (bug#18131).
This seems more logical than the previous (undocumented) behaviour.

5 years agoAvoid some strlen work, primarily via strnlen
Paul Eggert [Tue, 25 Jun 2019 21:53:39 +0000 (14:53 -0700)]
Avoid some strlen work, primarily via strnlen

* admin/merge-gnulib (GNULIB_MODULES): Add strnlen.
* lib-src/etags.c (find_entries):
* src/emacs.c (main):
* src/nsmenu.m (parseKeyEquiv:):
* src/nsterm.m (ns_xlfd_to_fontname):
* src/term.c (vfatal):
Prefer !*X to !strlen (X).
* lib-src/etags.c (pfnote, add_regex):
* lib-src/pop.c (pop_open):
* lib-src/update-game-score.c (main):
* lwlib/lwlib.c (lw_separator_p):
* src/doprnt.c (doprnt):
* src/emacs.c (main):
* src/inotify.c (inotifyevent_to_event):
* src/keyboard.c (menu_separator_name_p, parse_tool_bar_item):
* src/sysdep.c (get_current_dir_name_or_unreachable):
* src/xdisp.c (store_mode_line_string):
Use strnlen to avoid unnecessary work with strlen.
* lib-src/etags.c (Prolog_functions, prolog_pr)
(Erlang_functions, erlang_func):
Prefer ptrdiff_t to size_t when either will do.
(prolog_pr, erlang_func): New arg LASTLEN, to avoid
unnecessary strlen call. All callers changed.
* lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
* lib/strnlen.c, m4/strnlen.m4: New files, copied from Gnulib.
* lwlib/lwlib.c (lw_separator_p):
* src/json.c (json_has_prefix):
Use strncmp to avoid unecessary work with strlen + memcmp.
* src/process.c (set_socket_option): Use SBYTES instead of strlen.

5 years agoSupport opening a new connection when reverting a telnet buffer
Emilio C. Lopes [Tue, 25 Jun 2019 21:40:22 +0000 (23:40 +0200)]
Support opening a new connection when reverting a telnet buffer

* net/telnet.el (telnet-connect-command): New variable.
(telnet-revert-buffer): New function.
(telnet-mode): Use `telnet-revert-buffer' as `revert-buffer-function'.
(telnet, rsh): Set `telnet-connect-command' accordingly (bug#18312).

Copyright-paperwork-exempt: yes

5 years agoSuppress warning about unix-sync in nnmaildir.el
Arash Esbati [Tue, 25 Jun 2019 21:24:47 +0000 (23:24 +0200)]
Suppress warning about unix-sync in nnmaildir.el

* nnmaildir.el (nnmaildir-request-replace-article): Check if the
function `unix-sync' is bound before running it.

5 years agoCheck labels in smerge-mode
Ivan Shmakov [Tue, 25 Jun 2019 21:22:19 +0000 (23:22 +0200)]
Check labels in smerge-mode

* lisp/vc/diff.el (diff-check-labels): Separated out into its own
function (bug#18850)...
(diff-no-select): ... from here.

* lisp/vc/smerge-mode.el (smerge-diff): Use diff-check-labels.

5 years agoAvoid using subr-x.el function in files.el
Basil L. Contovounesios [Tue, 25 Jun 2019 20:49:00 +0000 (21:49 +0100)]
Avoid using subr-x.el function in files.el

* lisp/files.el (file-size-human-readable): Open code string-empty-p
call.  This was the single occurrence of a subr-x.el function in
files.el, which does not (yet) load subr-x.el.

5 years ago* lisp/emacs-lisp/cl-extra.el (cl-isqrt): Speed up bignum case
Stefan Monnier [Tue, 25 Jun 2019 21:08:01 +0000 (17:08 -0400)]
* lisp/emacs-lisp/cl-extra.el (cl-isqrt): Speed up bignum case

5 years agoHighlight zsh glob flags and qualifiers in sh-mode
Jonathan Shin Hayase [Tue, 25 Jun 2019 21:00:20 +0000 (23:00 +0200)]
Highlight zsh glob flags and qualifiers in sh-mode

* lisp/progmode/sh-script.el (sh-syntax-propertize-function):
Add regexps to highlight zsh glob flags and alternate qualifiers
without mistaking them for comments. (bug#19455).

5 years agoBuild fix for previous buffers.texi change
Lars Ingebrigtsen [Tue, 25 Jun 2019 20:37:10 +0000 (22:37 +0200)]
Build fix for previous buffers.texi change

5 years ago* etc/NEWS: Fix vocabulary in last change
Stefan Monnier [Tue, 25 Jun 2019 20:36:26 +0000 (16:36 -0400)]
* etc/NEWS: Fix vocabulary in last change

5 years ago* lisp/tar-mode.el: Use lexical-binding; remove redundant :groups.
Stefan Monnier [Tue, 25 Jun 2019 20:34:57 +0000 (16:34 -0400)]
* lisp/tar-mode.el: Use lexical-binding; remove redundant :groups.

(tar-new-entry): Remove unused var `buffer`.

5 years agoMove widen/narrow in tabulated lists to } and {
Lars Ingebrigtsen [Tue, 25 Jun 2019 20:34:47 +0000 (22:34 +0200)]
Move widen/narrow in tabulated lists to } and {

* doc/emacs/buffers.texi (Several Buffers): Document it.

* lisp/emacs-lisp/tabulated-list.el (tabulated-list-mode-map):
Move widen/narrow to `}' and `{'.

5 years ago* test/lisp/progmodes/flymake-tests.el (ruby-backend): Skip on hydra.
Glenn Morris [Tue, 25 Jun 2019 20:23:15 +0000 (13:23 -0700)]
* test/lisp/progmodes/flymake-tests.el (ruby-backend): Skip on hydra.

Another unstable test.

5 years ago* lisp/net/tramp.el (tramp-file-name-handler): Use autoload-do-load
Stefan Monnier [Tue, 25 Jun 2019 20:09:48 +0000 (16:09 -0400)]
* lisp/net/tramp.el (tramp-file-name-handler): Use autoload-do-load

5 years agoHeed default directory in tar-untar-buffer
Ivan Shmakov [Tue, 25 Jun 2019 17:54:35 +0000 (19:54 +0200)]
Heed default directory in tar-untar-buffer

* lisp/tar-mode.el (tar-untar-buffer): Fix use the value of
default-directory local to the tar-mode buffer (bug#19865).

5 years agoetags: Fix handling of quoted symbol names in Erlang
David Hull [Tue, 25 Jun 2019 17:12:22 +0000 (19:12 +0200)]
etags: Fix handling of quoted symbol names in Erlang

* lib-src/etags.c (erlang_attribute): Fix handling of quoted
symbol names in Erlang (bug#24960).

5 years ago; * etc/NEWS: Fix an entry from recent commit.
Eli Zaretskii [Tue, 25 Jun 2019 16:38:11 +0000 (19:38 +0300)]
; * etc/NEWS: Fix an entry from recent commit.

5 years agoUpdate from Gnulib
Paul Eggert [Tue, 25 Jun 2019 16:18:17 +0000 (09:18 -0700)]
Update from Gnulib

This incorporates:
2019-06-24 unistd: stddef.h and sys/types.h namespace cleanup
* lib/gnulib.mk.in: Regenerate.
* lib/unistd.in.h: Copy from gnulib.

5 years ago* lisp/info.el (info-emphasis): Fix doc, version.
Glenn Morris [Tue, 25 Jun 2019 16:13:22 +0000 (09:13 -0700)]
* lisp/info.el (info-emphasis): Fix doc, version.

5 years agoPreserve header lines from derived modes in tabulated lists
Vaidheeswaran C [Tue, 25 Jun 2019 16:09:54 +0000 (18:09 +0200)]
Preserve header lines from derived modes in tabulated lists

* lisp/emacs-lisp/tabulated-list.el (tabulated-list-init-header):
Preserve header line set by derived modes (bug#21025).

5 years agoMake dired commands report how many files they mark
Drew Adams [Tue, 25 Jun 2019 15:42:25 +0000 (17:42 +0200)]
Make dired commands report how many files they mark

* lisp/dired.el (dired-mark-if): Report the number of files marked
when called, not the total number of marked files (bug#22457).

5 years ago* lisp/simple.el (forward-visible-line, end-of-visible-line): Use invisible-p
Stefan Monnier [Tue, 25 Jun 2019 15:35:56 +0000 (11:35 -0400)]
* lisp/simple.el (forward-visible-line, end-of-visible-line): Use invisible-p

5 years agoAdd a new command to report the number and size of the marked files
Lars Ingebrigtsen [Tue, 25 Jun 2019 14:29:03 +0000 (16:29 +0200)]
Add a new command to report the number and size of the marked files

2019-06-25  Constantino Calancha  <f92capac@gmail.com>

* lisp/dired.el (dired-mode-map): New keystroke and menu binding
(bug#22829).

2019-06-25  Lars Ingebrigtsen  <larsi@gnus.org>

* doc/emacs/dired.texi (Marks vs Flags): Document it.

* lisp/dired.el (dired-number-of-marked-files): New command.

5 years agoFix `goto-address-url-regexp'
Phil Sainty [Tue, 25 Jun 2019 14:02:12 +0000 (16:02 +0200)]
Fix `goto-address-url-regexp'

* lisp/net/goto-addr.el (goto-address-uri-schemes-ignored): New
variable.
(goto-address-uri-schemes): Ditto.
(goto-address-url-regexp): Use them to compose the final regexp.

* lisp/net/goto-addr.el: The URI schemes to be recognised by
`goto-address-mode' were not regexp-quoted (Bug#23343).

5 years agoMake winner restore point in all windows that display a buffer
Tino Calancha [Tue, 25 Jun 2019 13:42:17 +0000 (15:42 +0200)]
Make winner restore point in all windows that display a buffer

* lisp/window.el (window--before-delete-windows): New defun.
(delete-window, delete-other-windows): Use it.
* lisp/winner.el (winner-set): Use marker in 'window-prev-buffers'
when available and different than the value returned by
'winner-get-point' (bug#23621).

5 years agoUse xref in cedet
Bastian Beischer [Tue, 25 Jun 2019 13:12:04 +0000 (15:12 +0200)]
Use xref in cedet

* lisp/cedet/semantic/complete.el (semantic-complete-jump-local)
* lisp/cedet/semantic/analyze/refs.el
(semantic-analyze-proto-impl-toggle): Use xref to handle jumping
(bug#23793).

Copyright-paperwork-exempt: yes

5 years agoFontify _emphasis_ in info nodes
Drew Adams [Tue, 25 Jun 2019 12:53:05 +0000 (14:53 +0200)]
Fontify _emphasis_ in info nodes

* lisp/info.el (Info-fontify-node): Fontify _emphasis_ (bug#23798).
(info-emphasis): New face.

5 years agoUnlispify even more in custom-unlispify-menu-entry
Robert Weiner [Tue, 25 Jun 2019 12:08:49 +0000 (14:08 +0200)]
Unlispify even more in custom-unlispify-menu-entry

* lisp/cus-edit.el (custom-unlispify-menu-entry): Also allow : and
/ as separators in symbols when making the symbols look more
human-readable (bug#23986).

5 years ago[PATCH 1/1] Pass frame-parameters to server-create-tty-frame
Michael Shields [Tue, 25 Jun 2019 11:57:58 +0000 (13:57 +0200)]
[PATCH 1/1] Pass frame-parameters to server-create-tty-frame

* lisp/server.el: Pass frame-parameters when creating frames, even
on a tty (bug#24147).

5 years agoFix recent tex-mode safe-local-variable changes
Basil L. Contovounesios [Tue, 25 Jun 2019 12:40:32 +0000 (13:40 +0100)]
Fix recent tex-mode safe-local-variable changes

* lisp/textmodes/tex-mode.el (tex-verbatim-environments): Replace
(delq t ...) with more usual (memq nil ...).
(latex-noindent-environments, latex-noindent-commands): Fix typos
and thinkos in safe-local-variable logic.

5 years agoDon't delete macuvs.h in extraclean
Lars Ingebrigtsen [Tue, 25 Jun 2019 11:23:14 +0000 (13:23 +0200)]
Don't delete macuvs.h in extraclean

* admin/unidata/Makefile.in (extraclean): Don't delete macuvs.h,
because it's a checked-in file, and make targets altering
checked-in files is confusing.

5 years agoMake xref-show-xrefs-function a defcustom
Fritz Stelzer [Tue, 25 Jun 2019 11:09:41 +0000 (13:09 +0200)]
Make xref-show-xrefs-function a defcustom

* lisp/progmodes/xref.el (xref-show-xrefs-function): Make into a
defcustome (bug#29206).

* lisp/progmodes/xref.el (xref-show-definitions-function): Ditto.

Copyright-paperwork-exempt: yes

5 years agoAdd imenu support to package-menu-mode
Antoine Beaupré [Tue, 25 Jun 2019 10:58:36 +0000 (12:58 +0200)]
Add imenu support to package-menu-mode

* lisp/vc/vc-git.el (vc-git-grep-template): Include <C> in
template to be more consistent with lgrep/rgrep (bug#35326).  This
will introduce the --color and -i flags to the "git grep" command.

Copyright-paperwork-exempt: yes

5 years agoFix documentation of inhibit-modification-hooks in overlays + text properties
Alan Mackenzie [Tue, 25 Jun 2019 08:52:38 +0000 (08:52 +0000)]
Fix documentation of inhibit-modification-hooks in overlays + text properties

This fixes bug #25111.

* doc/lispref/display.text (Overlay Properties): For the hook property
modification-hooks, state that inhibit-modification-hooks is bound to non-nil
when calling its functions.  This also applies to insert-in-front-hooks and
insert-behind-hooks, which refer to modification-hooks.

* doc/lispref/text.texi (Special Properties): For the hook property
modification-hooks, state that inhibit-modification-hooks is NOT bound to
non-nil when calling its functions.  For the hooks insert-in-fron-hooks and
insert-behind-hooks, state that that variable does get bound to non-nil.

5 years agoAdd imenu support to package-menu-mode
Hong Xu [Mon, 24 Jun 2019 23:22:23 +0000 (01:22 +0200)]
Add imenu support to package-menu-mode

* gnus-cite.el (gnus-message-citation-mode): Fontify if the major
mode is derived from message-mode (not necessarily equal to
message-mode) (bug#25124).

5 years agoAdd imenu support to package-menu-mode
Damien Cassou [Mon, 24 Jun 2019 22:55:45 +0000 (00:55 +0200)]
Add imenu support to package-menu-mode

* lisp/emacs-list/package.el
(package--imenu-prev-index-position-function
package--imenu-extract-index-name-function): Add Imenu functions
to package-menu-mode (bug#27134).

5 years ago* lisp/textmodes/tex-mode.el (latex-noindent-commands): New custom var
Stefan Monnier [Mon, 24 Jun 2019 23:21:07 +0000 (19:21 -0400)]
* lisp/textmodes/tex-mode.el (latex-noindent-commands): New custom var

(latex-find-indent): Obey it.
(latex-noindent-environments): Make it into a defcustom as well.

5 years agoMake message_to_stderr do one single fwrite
Lars Ingebrigtsen [Mon, 24 Jun 2019 22:46:02 +0000 (00:46 +0200)]
Make message_to_stderr do one single fwrite

* src/xdisp.c (message_to_stderr): When running as a batch
process, the output from `message' goes to stderr, and has a
newline appended.  Rewrite the code so that only one fwrite is
performed to enable messages that are shorter than PIPE_BUF
(usually 4096 on modern operating systems) are written out as one
chunk, as this will ensure that the messages are not interleaved
with messages from other processes that are writing at the same
time.  This does not affect other stderr outputs, just the ones
from `message'.

5 years agoAdd example for enabling minor modes in .dir-local.el
Kaushal Modi [Mon, 24 Jun 2019 22:42:20 +0000 (00:42 +0200)]
Add example for enabling minor modes in .dir-local.el

* doc/emacs/custom.texi (Directory Variables): Add an example that
shows how a minor mode can be enabled in a .dir-local.el (Bug#27639).
Clarify that indent-tabs-mode is not a minor mode.

5 years ago* configure.ac: Set HAVE_XFT to no for summary if HAVE_CAIRO is yes.
YAMAMOTO Mitsuharu [Mon, 24 Jun 2019 22:24:37 +0000 (07:24 +0900)]
* configure.ac: Set HAVE_XFT to no for summary if HAVE_CAIRO is yes.

5 years ago* lisp/svg.el: Prepare for distribution via GNU ELPA
Stefan Monnier [Mon, 24 Jun 2019 21:15:11 +0000 (17:15 -0400)]
* lisp/svg.el: Prepare for distribution via GNU ELPA

Add a Version: and Package-Requires:.
Don't require subr-x.
Bring Commentary: from the GNU ELPA version of the package.
(svg-remove): Don't use when-let*.

5 years agoTweaks to html mode
Eric Abrahamsen [Tue, 30 Apr 2019 23:00:46 +0000 (16:00 -0700)]
Tweaks to html mode

* lisp/textmodes/sgml-mode.el (sgml-attributes): Add the "class" and
  "id" attributes when needed.
  (html-mode-map): Add the `html-div' and `html-span' commands to the
  `html-quick-keys' map.
  (html-ordered-list, html-unordered-list, html-paragraph): Use the
  "\n" element properly.
  (html-div, html-span): New HTML skeletons.

5 years agorectangle--pos-cols shouldn't move point
Lars Ingebrigtsen [Mon, 24 Jun 2019 17:10:32 +0000 (19:10 +0200)]
rectangle--pos-cols shouldn't move point

* lisp/rect.el (rectangle--pos-cols): Don't move point while
calculating the values (bug#25777).

5 years agoFix MS-Windows build as followup to pdumper executable lookup
Eli Zaretskii [Mon, 24 Jun 2019 17:06:34 +0000 (20:06 +0300)]
Fix MS-Windows build as followup to pdumper executable lookup

* src/w32.c (w32_my_exename): New function.
* src/w32.h (w32_my_exename): Add prototype.
* src/emacs.c (load_pdump_find_executable) [WINDOWSNT]: Find
the actual file name of the program without looking along
PATH, by calling w32_my_exename.

* nt/mingw-cfg.site (ac_cv_func_canonicalize_file_name)
(ac_cv_func_realpath, gl_cv_func_realpath_works): Disable
testing.
* nt/gnulib-cfg.mk (OMIT_GNULIB_MODULE_canonicalize-lgpl): Set
to true.

5 years agoMake C-l in iimage-mode call recenter-top-bottom
Lars Ingebrigtsen [Mon, 24 Jun 2019 16:25:56 +0000 (18:25 +0200)]
Make C-l in iimage-mode call recenter-top-bottom

* lisp/iimage.el (iimage-recenter): Call `recenter-top-bottom'
instead of `recenter', since that's the default function for `C-l'
(bug#27610).  Suggested by Arne Frederic Maria Döring.

5 years agoImprove error handling in Tramp
Michael Albinus [Mon, 24 Jun 2019 15:36:00 +0000 (17:36 +0200)]
Improve error handling in Tramp

* lisp/net/tramp-compat.el (ls-lisp): Require.

* lisp/net/tramp.el (ls-lisp-use-insert-directory-program):
Don't declare.
(tramp-current-connection): Adapt docstring.
(tramp-debug-message): Adapt function names.
(tramp-error, tramp-run-real-handler): Let-bind `signal-hook-function'.
(tramp-signal-hook-function): New defun.
(tramp-debug-on-error, tramp-condition-case-unless-debug): Remove.
(tramp-file-name-handler): Handle `tramp-current-connection'.
Let-bind `signal-hook-function'.  Use `unwind-protect' instead of
`tramp-condition-case-unless-debug'.
(tramp-handle-insert-directory): Don't require ls-lisp.
(tramp-process-actions): Check, that
`tramp-password-save-function' is non-nil.
(tramp-equal-remote): Handle the case both files are local.

* test/lisp/net/tramp-tests.el (tramp--test-instrument-test-case):
Do not bind `tramp-debug-on-error'.
(tramp--test-ignore-make-symbolic-link-error): Make error handler
more explicit about the error.

5 years agoFix up key bindings in previous tabulated-list patch
Lars Ingebrigtsen [Mon, 24 Jun 2019 14:45:54 +0000 (16:45 +0200)]
Fix up key bindings in previous tabulated-list patch

* lisp/emacs-lisp/tabulated-list.el (tabulated-list-mode-map):
Actually use `w'/`c' as described in previous patch.

5 years agoAdd new commands to widen/narrow tabulated list columns
Lars Ingebrigtsen [Mon, 24 Jun 2019 14:35:13 +0000 (16:35 +0200)]
Add new commands to widen/narrow tabulated list columns

* doc/emacs/buffers.texi: Document widen/contracting commands in
tabulated list mode.
* lisp/emacs-lisp/tabulated-list.el (tabulated-list-mode-map): Add
keystrokes.
(tabulated-list-widen-current-column): New command.
(tabulated-list-narrow-current-column): Ditto.  The code was
written by Boruch Baum and then tweaked by Drew Adams (bug#32106)
before some white-space changes before the commit.

5 years agoRemove -q from zstd invocation
Lars Ingebrigtsen [Mon, 24 Jun 2019 14:06:54 +0000 (16:06 +0200)]
Remove -q from zstd invocation

* lib-src/etags.c (compressors): -q isn't necessary since standard
output goes to /dev/null.  From Michael Albinus (bug#33919).

5 years agoNEWS fix up for Zstandard patches
Lars Ingebrigtsen [Mon, 24 Jun 2019 14:04:55 +0000 (16:04 +0200)]
NEWS fix up for Zstandard patches

* etc/NEWS: tramp-archive is a new feature, so no need to say that
specific parts of it are new.  From Michael Albinus.

5 years agoFix up Zstandard/tramp patch slightly
Lars Ingebrigtsen [Mon, 24 Jun 2019 14:02:46 +0000 (16:02 +0200)]
Fix up Zstandard/tramp patch slightly

* lisp/net/tramp-archive.el (tramp-archive-suffixes): Fix tzst
suffix.  From Michael Albinus (bug#33919).

5 years agoAdd Zstandard compression support for Tramp
Alexander Gramiak [Mon, 24 Jun 2019 13:57:33 +0000 (15:57 +0200)]
Add Zstandard compression support for Tramp

* lisp/net/tramp-archive.el (tramp-archive-suffixes)
(tramp-archive-compression-suffixes): Add zstd compression suffixes.
* lisp/net/tramp-sh.el (tramp-inline-compress-commands): Add
zstd (de)compression commands.

5 years agoAdd Zstandard compression support for dired
Alexander Gramiak [Mon, 24 Jun 2019 13:56:32 +0000 (15:56 +0200)]
Add Zstandard compression support for dired

* lisp/dired-aux.el (dired-compress-file-suffixes): Add suffixes for
zstd compressed tarballs and other files.
(dired-compress-file): Treat options found in
`dired-compress-file-suffixes' as arguments instead of part of the
program name.

5 years agoAdd Zstandard compression support for etags
Alexander Gramiak [Mon, 24 Jun 2019 13:54:36 +0000 (15:54 +0200)]
Add Zstandard compression support for etags

* lib-src/etags.c: (compressors): Add zstd support.
(print_language_names): Report zstd support.
* doc/man/etags.1: Update doc.

5 years agoFix pdumper executable-finding code
Daniel Colascione [Mon, 24 Jun 2019 13:20:07 +0000 (06:20 -0700)]
Fix pdumper executable-finding code

* src/emacs.c:
(load_pdump_find_executable): New function.
(load_pdump): Use it.

5 years ago* doc/misc/auth.texi (The Unix password store): Complete rewrite
Damien Cassou [Thu, 13 Jun 2019 19:54:21 +0000 (21:54 +0200)]
* doc/misc/auth.texi (The Unix password store): Complete rewrite