]> git.eshelyaron.com Git - emacs.git/log
emacs.git
4 years agoDocument fido-mode scratch/fido-mode
João Távora [Tue, 5 Nov 2019 18:04:20 +0000 (18:04 +0000)]
Document fido-mode

* doc/emacs/buffers.texi (Icomplete): Document Fido Mode.

* etc/NEWS: Mention Fido Mode.

* lisp/icomplete.el (icomplete-mode): Ensure fido-mode is off.
(fido-mode): Ensure icomplete-mode is off.
(icomplete-magic-ido-ret): Don't force completions if no
completions.

4 years agoNew fido-mode, emulates ido-mode with icomplete-mode
João Távora [Sun, 3 Nov 2019 13:10:40 +0000 (13:10 +0000)]
New fido-mode, emulates ido-mode with icomplete-mode

* lisp/icomplete.el (icomplete-fido-mode-map): New variable.
(icomplete--fido-mode-setup): New function.
(fido-mode): New global minor mode.

4 years agoAllow flymake diagnostic types to have shorter names
João Távora [Sat, 2 Nov 2019 16:38:53 +0000 (16:38 +0000)]
Allow flymake diagnostic types to have shorter names

Eglot, a third-party package which uses Flymake, has its own
diagnostic types such as 'eglot-error', 'eglot-warning', etc...  While
not being too long, they will not fit in the type column of the "list
all diagnostics" buffer.  This commit allows diagnostic types to have
user-defined names and also assigns names to the default categories.

* doc/misc/flymake.texi (Flymake error types): Describe
flymake-type-name prop.

* lisp/progmodes/flymake.el (flymake--diagnostics-buffer-entries):
Use type names.
(flymake-error, flymake-warning, flymake-note): Give these
diagnostic categories default type names.

4 years agoAvoid face clashes between Flymake and region highlighting
João Távora [Sat, 2 Nov 2019 16:16:14 +0000 (16:16 +0000)]
Avoid face clashes between Flymake and region highlighting

Fix bug#34022.

* lisp/progmodes/flymake.el (flymake--highlight-line): Use
(PRIMARY . SECONDARY) priority value.

4 years agoClarify consequences of mismatching Flymake diagnostic buffers
João Távora [Sat, 2 Nov 2019 15:53:45 +0000 (15:53 +0000)]
Clarify consequences of mismatching Flymake diagnostic buffers

Fix bug#34418.

* doc/misc/flymake.texi (Flymake utility functions): Add note to
flymake-make-diagnostic.

* lisp/progmodes/flymake.el (flymake--handle-report): Discard
diagnostics from other buffers.

4 years agoFurther fixup of the previous doc fix in the Faces node
Lars Ingebrigtsen [Sat, 2 Nov 2019 15:05:42 +0000 (16:05 +0100)]
Further fixup of the previous doc fix in the Faces node

* doc/lispref/display.texi (Faces): Improve wording from previous
change.

4 years agoRevert "Make the debbugs groups also include robot messages"
Lars Ingebrigtsen [Sat, 2 Nov 2019 14:36:42 +0000 (15:36 +0100)]
Revert "Make the debbugs groups also include robot messages"

This reverts commit 682eae776efa9d57842345de67becf5c56cafc91.

The change made the bug# disappear from the Subject lines.

4 years agoCC Mode. Fix slow scrolling by adding a search limit.
Alan Mackenzie [Sat, 2 Nov 2019 13:03:50 +0000 (13:03 +0000)]
CC Mode.  Fix slow scrolling by adding a search limit.

This fixes bug #10149.

* lisp/progmodes/cc-fonts.el (c-font-lock-single-decl) Limit the search by
c-go-up-list-backwards to 500 non-literal characters.

4 years agoCorrect merge blunder in last icomplete commit
João Távora [Sat, 2 Nov 2019 11:09:55 +0000 (11:09 +0000)]
Correct merge blunder in last icomplete commit

* lisp/icomplete.el (icomplete-exhibit): Use
while-no-input-ignore-events.

4 years agoDocument Windows font selection quirks
Eli Zaretskii [Sat, 2 Nov 2019 10:50:27 +0000 (12:50 +0200)]
Document Windows font selection quirks

* doc/emacs/msdos.texi (Windows Fonts): Document
'w32-use-w32-font-dialog' and 'w32-fixed-font-alist'.

4 years agoImprove documentation of 'set-face-font'
Eli Zaretskii [Sat, 2 Nov 2019 10:41:51 +0000 (12:41 +0200)]
Improve documentation of 'set-face-font'

* lisp/faces.el (set-face-font):
* doc/emacs/frames.texi (Fonts):
* doc/lispref/display.texi (Face Attributes)
(Attribute Functions): Clarify and correct the documentation
of set-face-font and related descriptions of font
specifications.  (Bug#14647)

4 years agoRevert "Omit edition numbers and dates in manuals"
Eli Zaretskii [Sat, 2 Nov 2019 07:52:39 +0000 (09:52 +0200)]
Revert "Omit edition numbers and dates in manuals"

This reverts commit 2f42832895942fdeaa0c500511aa19860fa806cd.
Editions of Emacs manuals must be coordinated with the FSF
publishing staff, as they appear on the printed books.

4 years ago; * etc/NEWS: Fix my previous change for package-initialize.
Stefan Kangas [Sat, 2 Nov 2019 03:32:03 +0000 (04:32 +0100)]
; * etc/NEWS: Fix my previous change for package-initialize.

4 years ago* .dir-locals.el: Add explanatory header.
Stefan Kangas [Sat, 2 Nov 2019 03:24:44 +0000 (04:24 +0100)]
* .dir-locals.el: Add explanatory header.

4 years agoAdd auto-insert skeleton for ".dir-locals.el"
Stefan Kangas [Sat, 2 Nov 2019 03:23:24 +0000 (04:23 +0100)]
Add auto-insert skeleton for ".dir-locals.el"

* lisp/autoinsert.el (auto-insert-alist): Add auto-insert skeleton for
".dir-locals.el".

4 years agoNew icomplete-tidy-shadowed-file-names variable
João Távora [Thu, 31 Oct 2019 10:58:38 +0000 (10:58 +0000)]
New icomplete-tidy-shadowed-file-names variable

* lisp/icomplete.el (rfn-eshadow): Require it.
(icomplete-tidy-shadowed-file-names): New variable.
(icomplete-exhibit): Use icomplete-tidy-shadowed-file-names.

4 years agoFix icomplete-force-complete-and-exit for no-input situations
João Távora [Thu, 31 Oct 2019 20:19:35 +0000 (20:19 +0000)]
Fix icomplete-force-complete-and-exit for no-input situations

If there is no minibuffer input, but the user has already cycled some
pre-calculated completions, we should be calling
minibuffer-force-complete-and-exit instead of
minibuffer-complete-and-exit.  The former is guaranteed to be fast in
this situation and yields the desired "selected" completion, while the
latter will just give us the default, ignoring all the cycling of
icomplete-{forward|backward}-completions.

* lisp/icomplete.el (icomplete-force-complete-and-exit): Add
comments and fix for empty input but some completions calculated.

4 years agoImprove fix for icomplete's backward-kill-word bug#38024
João Távora [Sat, 2 Nov 2019 02:29:56 +0000 (02:29 +0000)]
Improve fix for icomplete's backward-kill-word bug#38024

* lisp/icomplete.el (icomplete-exhibit): Use
while-no-input-ignore-events, not redisplay.

Co-authored-by: Stefan Monnier <j.schmoe@example.org>
4 years ago* doc/emacs/package.texi (Package Menu): Add index items.
Stefan Kangas [Sat, 2 Nov 2019 02:22:58 +0000 (03:22 +0100)]
* doc/emacs/package.texi (Package Menu): Add index items.

4 years agoUse PASSWORD_STORE_DIR in auth-source-pass when set
Stefan Kangas [Sun, 6 Oct 2019 02:02:27 +0000 (04:02 +0200)]
Use PASSWORD_STORE_DIR in auth-source-pass when set

* lisp/auth-source-pass.el (auth-source-pass-filename): Initialize to
PASSWORD_STORE_DIR environment variable when set.  (Bug#29663)

4 years agoDon't refuse to install packages without a "footer line"
Stefan Kangas [Sat, 2 Nov 2019 00:30:36 +0000 (01:30 +0100)]
Don't refuse to install packages without a "footer line"

* lisp/emacs-lisp/package.el (package-buffer-info): Don't signal an
error when the "footer line" is missing.  Warn only.  (Bug#26490)
* etc/NEWS: Announce it.

4 years agoOmit edition numbers and dates in manuals
Paul Eggert [Sat, 2 Nov 2019 00:24:02 +0000 (17:24 -0700)]
Omit edition numbers and dates in manuals

These seem to cause more confusion than they cure; e.g.,
https://shop.fsf.org/books/gnu-emacs-manual-18th-edition-v-261
currently advertises "18th edition" even as it points to
https://www.gnu.org/software/emacs/manual/pdf/emacs.pdf
which says "Seventeenth Edition".  It is simpler and less
confusing to stick to one version number like "26.3".  If we
need a separate edition number for each printed manual for
some reason (marketing?) we can put “@ifset printed-edition”
around anything specific to the printed editions.
(as opposed to online PDF copies).
* doc/emacs/emacs.texi (EDITION):
* doc/lispintro/emacs-lisp-intro.texi (edition-number, update-date):
* doc/lispref/elisp.texi (VERSION, DATE):
Remove, and remove uses.

4 years agoDocument limits on some time-conversion functions
Paul Eggert [Fri, 1 Nov 2019 23:13:31 +0000 (16:13 -0700)]
Document limits on some time-conversion functions

* doc/lispref/os.texi (Time of Day, Time Zone Rules)
(Time Conversion, Time Parsing, Time Calculations):
Document functions that limit the range of time values
due to OS limits (Bug#37974).

4 years agoset-face-font doc string update
Lars Ingebrigtsen [Fri, 1 Nov 2019 17:32:29 +0000 (18:32 +0100)]
set-face-font doc string update

* lisp/faces.el (set-face-font): Mention what the string formats
are (bug#14647).

4 years agoFix documentation of set-face-font in the manual
Lars Ingebrigtsen [Fri, 1 Nov 2019 17:27:17 +0000 (18:27 +0100)]
Fix documentation of set-face-font in the manual

* doc/lispref/display.texi (Attribute Functions): Describe more
precisely what set-face-font does (bug#14647).

4 years agoLow-Level Font documentation fix
Lars Ingebrigtsen [Fri, 1 Nov 2019 17:14:17 +0000 (18:14 +0100)]
Low-Level Font documentation fix

* doc/lispref/display.texi (Low-Level Font): Mention what the data
types the font attributes are (bug#14634).

4 years agoReally enable setting a breakpoint without instrumenting first
Lars Ingebrigtsen [Fri, 1 Nov 2019 16:42:22 +0000 (17:42 +0100)]
Really enable setting a breakpoint without instrumenting first

* lisp/emacs-lisp/edebug.el (edebug-set-breakpoint): Really enable
setting a breakpoint without instrumenting first (bug#23469).

4 years ago; Auto-commit of loaddefs files.
Glenn Morris [Fri, 1 Nov 2019 13:27:08 +0000 (06:27 -0700)]
; Auto-commit of loaddefs files.

4 years agoDon't claim that anonymous face can't be used in font-lock
Lars Ingebrigtsen [Fri, 1 Nov 2019 13:17:17 +0000 (14:17 +0100)]
Don't claim that anonymous face can't be used in font-lock

* doc/lispref/display.texi (Faces): Anonymous functions can be
used when font locking, so adjust the injunction against them
(bug#35005).

4 years agoRemove an unfunny joke from DEVEL.HUMOR
Cecilio Pardo [Fri, 1 Nov 2019 12:54:41 +0000 (13:54 +0100)]
Remove an unfunny joke from DEVEL.HUMOR

* etc/DEVEL.HUMOR: Remove unfunny joke (bug#38002).

Copyright-paperwork-exempt: yes

4 years agoMake ant regexp in compilation-error-regexp-alist-alist more lax
Filipp Gunbin [Thu, 31 Oct 2019 18:39:01 +0000 (21:39 +0300)]
Make ant regexp in compilation-error-regexp-alist-alist more lax

* lisp/progmodes/compile.el: Make ant regexp accept filenames that may
occur on Cygwin (like c:/test) and optional additional severity level
after task name.
* etc/compilation.txt: Add sample.

4 years agoMinor wording change in ELisp manual
Richard Stallman [Sun, 27 Oct 2019 02:02:57 +0000 (22:02 -0400)]
Minor wording change in ELisp manual

* doc/lispref/functions.texi (Advising Named Functions):
Improve and clarify wording of the advice to avoid advising
functions in released code.

4 years ago; Add @cindex in files.texi for "temporary file on a remote host"
Michael Albinus [Fri, 1 Nov 2019 09:36:26 +0000 (10:36 +0100)]
; Add @cindex in files.texi for "temporary file on a remote host"

* doc/lispref/files.texi (Unique File Names): Add @cindex for
"temporary file on a remote host".  (Bug#38010)

4 years agoFix insert-file-contents file error regression
Paul Eggert [Fri, 1 Nov 2019 06:31:17 +0000 (23:31 -0700)]
Fix insert-file-contents file error regression

Problem reported for dired-view-file (Bug#37950).
* src/fileio.c (Finsert_file_contents): When visiting,
signal an error if the file could not be opened for any reason,
rather than signaling an error only for nonexistent files, fixing
a bug introduced in 2019-09-16T03:17:43!eggert@cs.ucla.edu.

4 years ago* lisp/cedet/ (semantic-analyze-possible-completions): Add `flags` arg
Eric Ludlam [Thu, 31 Oct 2019 23:10:58 +0000 (19:10 -0400)]
* lisp/cedet/ (semantic-analyze-possible-completions): Add `flags` arg

* lisp/cedet/semantic/texi.el (semantic-analyze-possible-completions),
lisp/cedet/srecode/srt-mode.el (semantic-analyze-possible-completions),
lisp/cedet/semantic/bovine/make.el (semantic-analyze-possible-completions):
Add `flags` arg.
* lisp/cedet/semantic/grammar.el (semantic-analyze-possible-completions):
Add `flags` arg.  Reverse the found prefix.
(semantic-ctxt-current-class-list): Include token tags as things to
appear in non-lisp context.

4 years ago* test/lisp/cedet/semantic-utest-ia.el: Update from upstream
Eric Ludlam [Mon, 28 Oct 2019 01:01:54 +0000 (21:01 -0400)]
* test/lisp/cedet/semantic-utest-ia.el: Update from upstream

Merge content from CEDET on SF to bring in additional test points
and support more types of languages.
(semantic-utest-ia-struct.cpp, semantic-utest-ia-templates.cpp)
(semantic-utest-ia-using.cpp, semantic-utest-ia-nsp.cpp)
(semantic-utest-ia-localvars.cpp, semantic-utest-ia-varnamse.java)
(semantic-utest-ia-wisent.wy, semantic-utest-ia-texi)
(semantic-utest-ia-make, semantic-utest-ia-srecoder): New test points
(semantic-ia-utest-buffer): Use comment-start-skip when looking
for test point tokens.
Capture errors ignoring debugger to enable test for empty results.
Improve output from test diagnostics.
(semantic-ia-utest-buffer-refs): Use comment-start-skip to find
test point tokens.
Author: Eric Ludlam <zappo@gnu.org>

4 years ago* test/manual/cedet/tests/test*: More updates from upstream
Eric Ludlam [Mon, 28 Oct 2019 00:51:54 +0000 (20:51 -0400)]
* test/manual/cedet/tests/test*: More updates from upstream

* test/manual/cedet/tests/testjavacomp.java,
test/manual/cedet/tests/testnsp.cpp,
test/manual/cedet/tests/testsppcomplete.c,
test/manual/cedet/tests/testtypedefs.cpp,
test/manual/cedet/tests/testvarnames.c:
Merge content from CEDET on SF with extended test points for use with
test/lisp/cedet/semantic-utest-ia.el
Author: Eric Ludlam <zappo@gnu.org>

4 years ago* test/manual/cedet/tests/testdoublens.cpp: Update from upstream
Eric Ludlam [Mon, 28 Oct 2019 00:36:17 +0000 (20:36 -0400)]
* test/manual/cedet/tests/testdoublens.cpp: Update from upstream

* test/manual/cedet/tests/testdoublens.hpp:
Merge content from CEDET on SF with extended test points for use with
test/lisp/cedet/semantic-utest-ia.el
Author: Eric Ludlam <zappo@gnu.org>

4 years ago* test/manual/cedet/tests/: New files for semantic-utest-ia.el
Eric Ludlam [Mon, 28 Oct 2019 00:31:34 +0000 (20:31 -0400)]
* test/manual/cedet/tests/: New files for semantic-utest-ia.el

* test/manual/cedet/tests/test.mk,
test/manual/cedet/tests/test.srt, test/manual/cedet/tests/test.texi,
test/manual/cedet/tests/testlocalvars.cpp,
test/manual/cedet/tests/teststruct.cpp,
test/manual/cedet/tests/testtemplates.cpp,
test/manual/cedet/tests/testusing.cpp,
test/manual/cedet/tests/testusing.hh,
test/manual/cedet/tests/testvarnames.java.
test/manual/cedet/tests/testwisent.wy:
New files to be used by test/lisp/cedet/semantic-utest-ia.el.
Author: Eric Ludlam <zappo@gnu.org>

4 years agoPrevent text flicker with macOS input methods (bug#23412)
Alan Third [Mon, 28 Oct 2019 11:21:29 +0000 (11:21 +0000)]
Prevent text flicker with macOS input methods (bug#23412)

* src/nsterm.m ([EmacsView setMarkedText:selectedRange:]): Don't
always delete the working text as ns-put-working-text does that.

4 years agoInhibit undo-in-region for mouse-drag-region (bug#37700)
Mattias Engdegård [Thu, 31 Oct 2019 09:31:27 +0000 (10:31 +0100)]
Inhibit undo-in-region for mouse-drag-region (bug#37700)

'mouse-drag-region' leaves the region active around the dragged text,
so a straight undo did not revert the entire operation.  To remedy
this, inhibit undo-in-region when the last command was
mouse-drag-region.  (Method suggested by Stefan Monnier.)

* lisp/mouse.el (undo-drag-region): Set the undo-inhibit-region property.
* lisp/simple.el (undo): Inhibit undo-in-region if the last command
had the undo-inhibit-region property set.
* doc/lispref/symbols.texi (Standard Properties):
* doc/lispref/text.texi (Undo): Document undo-inhibit-region.
* etc/NEWS: Announce the property.

4 years agoEnsure that font-local variables are buffer-local
Lars Ingebrigtsen [Thu, 31 Oct 2019 13:06:08 +0000 (14:06 +0100)]
Ensure that font-local variables are buffer-local

* lisp/font-lock.el (font-lock-set-defaults): Ensure that the font
lock variables are buffer-local even when nil, so that they're
copied correctly by mhtml mode when changing sub-modes (bug#33937).

4 years agoClean up font-lock-refontify slightly
Lars Ingebrigtsen [Thu, 31 Oct 2019 12:26:19 +0000 (13:26 +0100)]
Clean up font-lock-refontify slightly

* lisp/font-lock.el (font-lock-refontify): Use
syntax-ppss-flush-cache instead of internal variable.

4 years agoFurther tweaks to sh-script \ #foo font locking
Lars Ingebrigtsen [Thu, 31 Oct 2019 12:07:37 +0000 (13:07 +0100)]
Further tweaks to sh-script \ #foo font locking

* lisp/progmodes/sh-script.el (sh-syntax-propertize-function):
Tweak previous \ #foo change to work on all quoted characters, but
check that the backslash itself is not backslashed.  Regexp from
Stefan Monnier.

4 years agoFix some minor Tramp problems
Michael Albinus [Thu, 31 Oct 2019 10:13:13 +0000 (11:13 +0100)]
Fix some minor Tramp problems

* lisp/net/tramp-gvfs.el (tramp-gvfs-maybe-open-connection):
Check, that `tramp-password-save-function' is a function.

* lisp/net/tramp-smb.el (tramp-smb-handle-file-system-info):
Check, that there is a share.

* lisp/net/tramp.el (outline-regexp): Declare.
(tramp-get-debug-buffer): Let-bind `signal-hook-function'.

* test/lisp/net/tramp-tests.el (tramp-test04-substitute-in-file-name):
Skip some tests for Emacs 24 and 25; they let Emacs crash.

4 years agoRework vc stash bindings
Robert Pluim [Thu, 31 Oct 2019 09:52:20 +0000 (10:52 +0100)]
Rework vc stash bindings

This adds create/snapshot bindings to the stash button even when there
are no stashes, and extends the stash menu bindings.

* etc/NEWS: Announce the bindings.

* lisp/vc/vc-git.el (vc-git-stash-shared-map): New keymap.  Holds
shared bindings between stash button and stash list.
(vc-git-stash-map): Inherit from vc-git-stash-shared-map.
(vc-git-stash-button-map): New keymap.  Holds button bindings,
inherit from vc-git-stash-shared-map.
(vc-git-stash-shared-help, vc-git-stash-list-help): New
defconsts.  Abstract out list/button help texts.
(vc-git--make-button-text): Set keymap property to
vc-git-stash-button-map.
(vc-git-make-stash-button): Use vc-git-stash-shared-help.
(vc-git-stash-menu-map): Add items for vc-git-stash and
vc-git-stash-snapshot.
(vc-git-dir-extra-headers): Use vc-git-stash-list-help and
vc-git-stash-shared-help.  Add vc-git-stash and
vc-git-stash-snapshot bindings to text shown when there are no stashes.

4 years agoFix bug with lock file on nonstandard filesystem
Paul Eggert [Thu, 31 Oct 2019 01:15:14 +0000 (18:15 -0700)]
Fix bug with lock file on nonstandard filesystem

* src/filelock.c (create_lock_file):
Don’t disable user write access to the lock file (Bug#37884).

4 years agoFont-lock symlinks in dired buffers better
Lars Ingebrigtsen [Wed, 30 Oct 2019 23:31:32 +0000 (00:31 +0100)]
Font-lock symlinks in dired buffers better

* lisp/dired.el (dired-font-lock-keywords): Font-lock symlinks
differently based on whether they point at a directory or not
(bug#17064).  Based on code from Michael Heerdegen.

4 years ago* lisp/tab-bar.el (tab-bar-select-tab): Use set-frame-parameter.
Juri Linkov [Wed, 30 Oct 2019 23:11:05 +0000 (01:11 +0200)]
* lisp/tab-bar.el (tab-bar-select-tab): Use set-frame-parameter.

(tab-bar-list-noselect, tab-bar-list-mode): Rearrange buffer-read-only.

4 years agoFix print.c infloop on circular lists
Paul Eggert [Wed, 30 Oct 2019 21:40:06 +0000 (14:40 -0700)]
Fix print.c infloop on circular lists

Fix infinite loops in print.c when a circular list is passed
to command-error-default-function or to error-message-string.
* src/print.c (print_error_message):
Use FOR_EACH_TAIL to avoid infloop on circular lists.
(print_object): Use FOR_EACH_TAIL_SAFE, as it uses
Brent’s teleporting tortoise-hare algorithm which is
asymptotically better than the classic tortoise-hare
algorithm that the code wsas using.
* test/src/print-tests.el (print-circle-2): When print-circle
is nil, do not insist on a particular cycle-detection heuristic.
(error-message-string-circular): New test.

4 years agoFix keyboard.c infloops on circular lists
Paul Eggert [Wed, 30 Oct 2019 21:24:29 +0000 (14:24 -0700)]
Fix keyboard.c infloops on circular lists

Fix infinite loops in keyboard.c when a circular list is
found in a hook, or in help-event-list, or in the argument
of event-convert-list, or in a keymap where a Lucid event
type list is expected, or in a menu or tab spec.
* src/keyboard.c (safe_run_hooks_error, menu_bar_items)
(parse_menu_item, parse_tab_bar_item, parse_tool_bar_item):
Use FOR_EACH_TAIL to avoid infloop on circular lists.
(help_char_p, Fevent_convert_list, lucid_event_type_list_p):
Use FOR_EACH_TAIL_SAFE to avoid infloop on circular lists,
when the action is idempotent so a circular list can be
treated as a noncircular one.

4 years agoFix fileio.c infloops on circular lists
Paul Eggert [Wed, 30 Oct 2019 21:17:40 +0000 (14:17 -0700)]
Fix fileio.c infloops on circular lists

Fix infinite loops in fileio.c when a circular list is the
value of after_insert_file_functions,
buffer-auto-save-file-format, buffer-file-format, or
write-region-annotate-functions.
* src/fileio.c (Finsert_file_contents, build_annotations):
Use FOR_EACH_TAIL to avoid infloop on circular lists.
(build_annotations): Use an EMACS_INT, not an int, to count
nesting level.
* test/src/fileio-tests.el:
(fileio-tests--circular-after-insert-file-functions): New test.

4 years agoSupport \pagebreak[0] for paragraph-separate in latex-mode
Kevin Ryde [Wed, 30 Oct 2019 21:32:45 +0000 (22:32 +0100)]
Support \pagebreak[0] for paragraph-separate in latex-mode

* textmodes/tex-mode.el (latex-mode): In 'paragraph-separate' allow
optional argument ('[0]', etc.) for '\pagebreak[0]'.  (Bug#19039)

4 years agoSend -enable-frame-filters to gdb
Tom Tromey [Wed, 30 Oct 2019 21:25:23 +0000 (22:25 +0100)]
Send -enable-frame-filters to gdb

* lisp/progmodes/gdb-mi.el (gdb-init-1): Send -enable-frame-filters to
gdb.

4 years agoFix previous sh-script.el font-lock #comment change
Lars Ingebrigtsen [Wed, 30 Oct 2019 21:06:18 +0000 (22:06 +0100)]
Fix previous sh-script.el font-lock #comment change

* lisp/progmodes/sh-script.el (sh-syntax-propertize-function): We
want to match "\ " before a comment; not a space character.

4 years agoRevert "Move description of value to syntax-ppss function."
Lars Ingebrigtsen [Wed, 30 Oct 2019 20:26:22 +0000 (21:26 +0100)]
Revert "Move description of value to syntax-ppss function."

This reverts commit 305dbc7e2be05748039aacb1a3d697f6f64bed4c.

Both of the functions in question are used a lot in the sources, so move it back to the more basic function.

4 years agoAdd a new ppss structure for syntax-ppss data
Lars Ingebrigtsen [Wed, 30 Oct 2019 20:25:23 +0000 (21:25 +0100)]
Add a new ppss structure for syntax-ppss data

* lisp/emacs-lisp/syntax.el (ppss): Add a new structure to provide
accessors to the syntax-ppss data.

4 years agoTweak fontification of \url{http://foo.org/bar%zot} in (la)tex-mode
Lars Ingebrigtsen [Wed, 30 Oct 2019 20:06:47 +0000 (21:06 +0100)]
Tweak fontification of \url{http://foo.org/bar%zot} in (la)tex-mode

* lisp/textmodes/tex-mode.el (tex-font-lock-keywords-1):
\url{http://foo.org/bar%zot} shouldn't be fontified as having a
comment, so make the tex-verbatim face overwrite the
already-applied syntactical comment bits (bug#37134).

4 years agoBind vc-git-stash to a key
Lars Ingebrigtsen [Wed, 30 Oct 2019 19:54:44 +0000 (20:54 +0100)]
Bind vc-git-stash to a key

* lisp/vc/vc-git.el (vc-git-stash-map): Give `vc-git-stash' a
keystroke, because it's a useful command.

When there are no stashes, there's no way to use that keystroke (since
it's only bound on the stash lines), so perhaps that should also be
fixed somehow.

4 years agoClear more data in font-lock-refontify to ensure refontifying
Lars Ingebrigtsen [Wed, 30 Oct 2019 14:39:44 +0000 (15:39 +0100)]
Clear more data in font-lock-refontify to ensure refontifying

* lisp/font-lock.el (font-lock-refontify): Clear out even more data.

4 years agofont-lock \ #foo in shell mode more correctly
Lars Ingebrigtsen [Wed, 30 Oct 2019 14:39:15 +0000 (15:39 +0100)]
font-lock \ #foo in shell mode more correctly

* lisp/progmodes/sh-script.el (sh-syntax-propertize-function):
\ #foo isn't a comment -- it's a symbol that starts with a space
character (bug#17538).

4 years agoMake font-lock-refontify try even harder to refontify
Lars Ingebrigtsen [Wed, 30 Oct 2019 14:04:17 +0000 (15:04 +0100)]
Make font-lock-refontify try even harder to refontify

* lisp/font-lock.el (font-lock-refontify): Make this command work
even after switching global font lock mode on and then off again.

4 years agoFix setgid fontification in dired on some OS-es
Lars Ingebrigtsen [Wed, 30 Oct 2019 12:30:47 +0000 (13:30 +0100)]
Fix setgid fontification in dired on some OS-es

* lisp/dired.el (dired-font-lock-keywords): Apparently some
versions of ls use "S" for setgid and other use "s" (bug#8186).

4 years agoFix "dnl" highlights in m4-mode
Lars Ingebrigtsen [Wed, 30 Oct 2019 12:16:07 +0000 (13:16 +0100)]
Fix "dnl" highlights in m4-mode

* lisp/progmodes/m4-mode.el (m4-font-lock-keywords): "dnl"
comments should override any previous syntax-based highlighting
(37132).  This makes "dnl foo#bar" be highlighted correctly.

4 years agoAdd a convenience function to be used when working on font locking
Lars Ingebrigtsen [Wed, 30 Oct 2019 12:08:55 +0000 (13:08 +0100)]
Add a convenience function to be used when working on font locking

* doc/lispref/modes.texi (Font Lock Basics): Document it.

* lisp/font-lock.el (font-lock-refontify): New convenience command.

4 years agoMove description of value to syntax-ppss function.
Lars Ingebrigtsen [Wed, 30 Oct 2019 11:39:14 +0000 (12:39 +0100)]
Move description of value to syntax-ppss function.

* lisp/emacs-lisp/syntax.el (syntax-ppss): Move the description of
the return value from...

* src/syntax.c (Fparse_partial_sexp): ... here because
`syntax-ppss' is what's called over the place, and jumping through
an indirection to get to the value description is inconvenient.

4 years agoIndent font-lock-fontify-syntactically-region
Lars Ingebrigtsen [Wed, 30 Oct 2019 11:32:20 +0000 (12:32 +0100)]
Indent font-lock-fontify-syntactically-region

* lisp/font-lock.el (font-lock-fontify-syntactically-region):
Indent function.

4 years ago* lisp/net/tramp.el (outline-regexp): Remove declaration.
Michael Albinus [Wed, 30 Oct 2019 08:44:24 +0000 (09:44 +0100)]
* lisp/net/tramp.el (outline-regexp): Remove declaration.

4 years ago* etc/NEWS: Update renamed function read-char-from-minibuffer.
Juri Linkov [Wed, 30 Oct 2019 00:08:55 +0000 (02:08 +0200)]
* etc/NEWS: Update renamed function read-char-from-minibuffer.

4 years agoFix image-converter probes
Lars Ingebrigtsen [Wed, 30 Oct 2019 00:02:43 +0000 (01:02 +0100)]
Fix image-converter probes

* lisp/image/image-converter.el (image-converter--probe): Check
that the executable exists before trying to call it.

4 years agoRename read-char-with-history to read-char-from-minibuffer (bug#10477)
Juri Linkov [Wed, 30 Oct 2019 00:00:02 +0000 (02:00 +0200)]
Rename read-char-with-history to read-char-from-minibuffer (bug#10477)

* lisp/simple.el (read-char-from-minibuffer-history):
Rename from read-char-with-history--history.
(read-char-from-minibuffer-map):
Rename from read-char-with-history--map.
(read-char-from-minibuffer): Rename from read-char-with-history.
(read-char-from-minibuffer-self-insert): New command.
(zap-to-char): Use read-char-from-minibuffer.

4 years agoMake the debbugs groups also include robot messages
Lars Ingebrigtsen [Tue, 29 Oct 2019 23:17:57 +0000 (00:17 +0100)]
Make the debbugs groups also include robot messages

* lisp/gnus/gnus-group.el (gnus-bug-group-download-format-alist):
Change the URL to also include robot messages.

4 years agoReimplement read-char-with-history based on read-from-minibuffer
Juri Linkov [Tue, 29 Oct 2019 23:01:11 +0000 (00:01 +0100)]
Reimplement read-char-with-history based on read-from-minibuffer

* lisp/simple.el (read-char-with-history): Reimplement based on
read-from-minibuffer.
* lisp/simple.el (read-char-with-history--map): New variable
(bug#10477).

4 years ago* lisp/tab-bar.el: Store point position and frame buffer-lists in tab.
Juri Linkov [Tue, 29 Oct 2019 22:31:11 +0000 (00:31 +0200)]
* lisp/tab-bar.el: Store point position and frame buffer-lists in tab.

* lisp/tab-bar.el (tab-bar--tab): Store additionally point-marker,
frame parameters buffer-list and buried-buffer-list, both for wc and ws.
Use seq-filter.
(tab-bar-select-tab): Restore point-marker after restoring
window-configuration.  Also restore frame parameters buffer-list
and buried-buffer-list both for window-configuration and window-state.
(tab-bar-history-limit, tab-bar-history--minibuffer-depth): New variables.
(tab-bar-history-current): Rename from tab-bar-history--pre-change.
(tab-bar-history--pre-change): Set tab-bar-history-current.
(tab-bar--history-change): Use seq-take for tab-bar-history-limit.
(tab-bar-history-back, tab-bar-history-forward): Restore point-marker.
(tab-bar-list-noselect): Use seq-remove.

* lisp/emacs-lisp/seq.el (seq-take, seq-filter): Add autoload cookie.

4 years agoMake url-cookie.el be more resistant against bogus data
Lars Ingebrigtsen [Tue, 29 Oct 2019 21:53:00 +0000 (22:53 +0100)]
Make url-cookie.el be more resistant against bogus data

* lisp/url/url-cookie.el (url-cookie-handle-set-cookie): Don't bug
out on large max-age values (bug#37974).

4 years agoDocument run-with-timer
Lars Ingebrigtsen [Tue, 29 Oct 2019 21:22:25 +0000 (22:22 +0100)]
Document run-with-timer

* doc/lispref/os.texi (Timers): Mention run-with-timer (bug#37875).

4 years agoDefault exotic image formats (like .webp) to image-mode
Lars Ingebrigtsen [Tue, 29 Oct 2019 20:42:33 +0000 (21:42 +0100)]
Default exotic image formats (like .webp) to image-mode

* doc/lispref/errors.texi (Standard Errors): Mention the new error.

* lisp/files.el (auto-mode-alist): Add a bunch of image suffixes
to the list (bug#37972) based on the output from "gm convert -list
format" (i.e., graphicsmagick).

* lisp/image-mode.el (image-mode): Rewrite to possibly notify the
user about image-use-external-converter.
(image-mode--setup-mode): Factor out into own function and don't
run under `condition-case' as there's nothing here that should
error.

* lisp/image.el (unknown-image-type): New error.
(image-type): Signal that error so that image-mode can offer
sensible feedback to the user.

4 years agoFix image-converter probing
Lars Ingebrigtsen [Tue, 29 Oct 2019 20:16:40 +0000 (21:16 +0100)]
Fix image-converter probing

* lisp/image/image-converter.el (image-converter--find-converter):
Stop probing on the first successful probe.

4 years ago* lisp/minibuffer.el: Tweak and undo parts of recent changes
Stefan Monnier [Tue, 29 Oct 2019 20:17:14 +0000 (16:17 -0400)]
* lisp/minibuffer.el: Tweak and undo parts of recent changes

(completion-metadata): Always return a fresh new cons cell.
(completion--nth-completion): Don't bother calling adjust-metadata
if the result won't be used.
(completion-pcm--hilit-commonality): Revert recent change which had
removed support for `completions-first-difference` in `substring` and
`partial-completion` styles.
(completion--flex-adjust-metadata): Treat the arg as immutable.

4 years agoAdd gradle-kotlin to compilation-error-regexp-alist-alist
Filipp Gunbin [Tue, 29 Oct 2019 20:06:20 +0000 (23:06 +0300)]
Add gradle-kotlin to compilation-error-regexp-alist-alist

* lisp/progmodes/compile.el: Add gradle-kotlin to
compilation-error-regexp-alist-alist.
* etc/compilation.txt: Add samples for it.

4 years agoOptimize conditional recursive merge face.
Jimmy Aguilar Mena [Sun, 27 Oct 2019 01:43:11 +0000 (02:43 +0100)]
Optimize conditional recursive merge face.

* src/xfaces.c (merge_face_vectors) : Pass ATTR_FILTER to
merge_face_ref to stop recursion merging in advance when possible.
(merge_named_face) : add more conditions to potentially reduce calls to
merge_face_vectors in more unneeded situations.

4 years agoFix extend face in gui interfaces.
Jimmy Aguilar Mena [Fri, 25 Oct 2019 00:57:28 +0000 (02:57 +0200)]
Fix extend face in gui interfaces.

* src/xdisp.c (extend_face_to_end_of_line) : Change call to
PRODUCE_GLYPHS with append_stretch_glyph to fill until the windows
border.

4 years agoFix inherited :extend attribute in faces.
Jimmy Aguilar Mena [Thu, 24 Oct 2019 23:52:16 +0000 (01:52 +0200)]
Fix inherited :extend attribute in faces.

* src/xfaces.c (merge_face_vectors) : Add extra parameter ATTR_FILTER
with the same functionality than in merge_named_face.  Update all
occurrences.
(merge_named_face): Remove condition to avoid call
`merge_face_vectors`.

4 years agoMake shr scale images on all frames
Lars Ingebrigtsen [Tue, 29 Oct 2019 12:56:49 +0000 (13:56 +0100)]
Make shr scale images on all frames

* lisp/net/shr.el (shr-rescale-image): Rescale images even if the
window isn't on the current frame.

4 years agoMake icomplete-exhibit actually work when navigating up directories
João Távora [Tue, 29 Oct 2019 00:18:55 +0000 (00:18 +0000)]
Make icomplete-exhibit actually work when navigating up directories

Sometimes, when finding files with icomplete-mode, backward-deleting
the previous word or sexp (to move up a directory) doesn't actually
refresh the file list of the new directory.  Forcing redisplay in
icomplete-exhibit misteriously fixes the problem.

* lisp/icomplete.el (icomplete-exhibit): Add call to redisplay.

4 years agoNew commands for making icomplete behave more like ido
João Távora [Tue, 29 Oct 2019 00:12:16 +0000 (00:12 +0000)]
New commands for making icomplete behave more like ido

This tries (not particularly hard) to emulate Ido's magic C-k, C-d,
RET and DEL.  For now, the new commands have to be explicitly added to
an active map by the user, using something like this:

(let ((imap icomplete-minibuffer-map))
  (define-key imap (kbd "C-k") 'icomplete-magic-ido-kill)
  (define-key imap (kbd "C-d") 'icomplete-magic-ido-delete-char)
  (define-key imap (kbd "RET") 'icomplete-magic-ido-ret)
  (define-key imap (kbd "DEL") 'icomplete-magic-ido-backward-updir))

* lisp/icomplete.el (icomplete-magic-ido-kill)
(icomplete-magic-ido-delete-char, icomplete-magic-ido-ret)
(icomplete-magic-ido-backward-updir): New commands.

4 years ago* lisp/tab-bar.el: Check for minibuffer-depth in tab-bar-history-mode.
Juri Linkov [Mon, 28 Oct 2019 21:55:16 +0000 (23:55 +0200)]
* lisp/tab-bar.el: Check for minibuffer-depth in tab-bar-history-mode.

* lisp/tab-bar.el (tab-bar-history--pre-change): Store also minibuffer-depth.
(tab-bar-history-change): Check stored minibuffer-depth for zero.
(tab-bar-history-mode): Use prefix -- for internal functions.

4 years agoUse new-style rx extensions in python.el
Mattias Engdegård [Sun, 27 Oct 2019 20:39:58 +0000 (21:39 +0100)]
Use new-style rx extensions in python.el

* lisp/progmodes/python.el (python-rx): Use `rx-let' instead of
`rx-constituents'.  This allows for some slight redundancy reduction,
since `rx-let' definitions are expanded inside `not' (bug#37849).
Reorder some `or' forms for more efficient matching.

4 years ago; Fix recent change in docs
Eli Zaretskii [Mon, 28 Oct 2019 15:52:16 +0000 (17:52 +0200)]
; Fix recent change in docs

* doc/lispref/minibuf.texi (Minibuffer Commands): Fix wording
and markup.  (Bug#37948)

4 years agoAdd doc for goto-history-element
Hong Xu [Mon, 28 Oct 2019 15:20:43 +0000 (16:20 +0100)]
Add doc for goto-history-element

* doc/lispref/minibuf.texi (Minibuffer Commands): Add
goto-history-element (bug#37948).
* lisp/simple.el (goto-history-element): Clarify NABS.

4 years ago* lisp/eshell/em-term.el: Remove commented out XEmacs compat code.
Stefan Kangas [Mon, 28 Oct 2019 15:13:28 +0000 (16:13 +0100)]
* lisp/eshell/em-term.el: Remove commented out XEmacs compat code.

4 years agoRemove more XEmacs compat code from CEDET
Stefan Kangas [Mon, 28 Oct 2019 15:05:39 +0000 (16:05 +0100)]
Remove more XEmacs compat code from CEDET

* lisp/cedet/mode-local.el (mode-local-describe-bindings-1):
* lisp/cedet/semantic/idle.el (semantic-idle-summary-out-of-context-faces):
* lisp/cedet/semantic/imenu.el (semantic-imenu-rebuild-directory-indexes):
* lisp/cedet/semantic/texi.el (semantic-texi-command-completion-list):
Remove XEmacs compat code.

4 years agoRemove obsolete doc references to XEmacs (Bug#37899)
Stefan Kangas [Mon, 28 Oct 2019 14:55:10 +0000 (15:55 +0100)]
Remove obsolete doc references to XEmacs (Bug#37899)

* doc/misc/edt.texi (Changes, Goals):
* doc/misc/emacs-mime.texi (Charset Translation):
* doc/misc/gnus-faq.texi (FAQ 4-15):
* doc/misc/pcl-cvs.texi (Bugs):
* doc/misc/srecode.texi (SRecode Minor Mode):
* lisp/cedet/srecode/insert.el (srecode-insert-ask-variable-method):
* lisp/follow.el:
* lisp/leim/quail/ipa.el (ipa-x-sampa, ipa-kirshenbaum):
* lisp/net/newsticker.el:
* lisp/obsolete/iswitchb.el:
* lisp/progmodes/hideshow.el:
* lisp/savehist.el (savehist-file):
* lisp/vc/ediff.el: Remove obsolete references to XEmacs in doc
strings and comments.

4 years agoAdd cert bundle path for OpenIndiana
Michal Nowak [Mon, 28 Oct 2019 14:38:34 +0000 (15:38 +0100)]
Add cert bundle path for OpenIndiana

* lisp/net/gnutls.el (gnutls-trustfiles): Add cert bundle path for
OpenIndiana (bug#37960).

Copyright-paperwork-exempt: yes

4 years agoMake ERC respect erc-channel-hide-list
Lars Ingebrigtsen [Mon, 28 Oct 2019 14:31:39 +0000 (15:31 +0100)]
Make ERC respect erc-channel-hide-list

* lisp/erc/erc.el (erc-hide-current-message-p): Make
erc-channel-hide-list work (bug#37879) by getting matching on the
channel name instead of the ERC client name.

4 years agoFix `G c' in Gnus group buffers for non-ASCII text
Lars Ingebrigtsen [Mon, 28 Oct 2019 14:10:51 +0000 (15:10 +0100)]
Fix `G c' in Gnus group buffers for non-ASCII text

* lisp/gnus/gnus-cus.el (gnus-group-customize): Decoding is
superfluous here -- everything is utf-8 already.
(gnus-group-customize-done): Don't double-encode the text (bug#37901).

4 years agoBe more permissive when interpreting IMAP mail headers
Lars Ingebrigtsen [Mon, 28 Oct 2019 12:31:37 +0000 (13:31 +0100)]
Be more permissive when interpreting IMAP mail headers

* lisp/gnus/nnimap.el (nnimap-transform-headers): Some mail
doesn't have space after the colon of the header name.  Don't
ignore these.

4 years agoMake <up> work in read-char-with-history
Lars Ingebrigtsen [Mon, 28 Oct 2019 11:11:46 +0000 (12:11 +0100)]
Make <up> work in read-char-with-history

* lisp/simple.el (read-char-with-history): Tweak to make
<up>/<down> also traverse the history (bug#10477).

4 years agoReorder command-line switches in Tramp
Koichi Arakawa [Mon, 28 Oct 2019 08:49:59 +0000 (09:49 +0100)]
Reorder command-line switches in Tramp

* lisp/net/tramp-sh.el (tramp-maybe-open-connection):
`tramp-encoding-command-interactive' must be the last command-line
switch, at least for bash.  (Bug#37953)

Copyright-paperwork-exempt: yes

4 years ago* lisp/tab-bar.el: Add tab-bar-history-mode with arrow buttons for navigation.
Juri Linkov [Sun, 27 Oct 2019 23:04:47 +0000 (01:04 +0200)]
* lisp/tab-bar.el: Add tab-bar-history-mode with arrow buttons for navigation.

* lisp/tab-bar.el (tab-bar-back-button, tab-bar-forward-button):
New variables.
(tab-bar-make-keymap-1): Show these buttons in tab-bar-history-mode.
(tab-bar--tab): Add history-back and history-forward.
(tab-bar-select-tab): Restore history-back and history-forward.
(tab-bar-history-omit, tab-bar-history-back)
(tab-bar-history-forward, tab-bar-history-pre-change): New variables.
(tab-bar-history-pre-change, tab-bar-history-change)
(tab-bar-history-back, tab-bar-history-forward)
(tab-bar-history-mode): New functions.