]> git.eshelyaron.com Git - emacs.git/log
emacs.git
4 years agoPrevent collisions in C namespace and function shadowing
Andrea Corallo [Sat, 28 Mar 2020 20:56:47 +0000 (20:56 +0000)]
Prevent collisions in C namespace and function shadowing

This rework make functions being indexed by their unique C symbol name
preventing multiple lisp function with the same name colliding.

4 years ago* comp.c (maybe_defer_native_compilation): Compile comp dependecies.
Andrea Corallo [Thu, 26 Mar 2020 15:47:36 +0000 (15:47 +0000)]
* comp.c (maybe_defer_native_compilation): Compile comp dependecies.

Make maybe_defer_native_compilation able to compile comp dependecies
breaking circularity.

4 years agosrc/comp.c (Fcomp__init_ctxt): Aesthetic
Andrea Corallo [Sun, 29 Mar 2020 11:26:45 +0000 (12:26 +0100)]
src/comp.c (Fcomp__init_ctxt): Aesthetic

4 years ago* .gitlab-ci.yml (test-native-bootstrap-speed*): Timeout to 8h
Andrea Corallo [Tue, 24 Mar 2020 20:36:46 +0000 (20:36 +0000)]
* .gitlab-ci.yml (test-native-bootstrap-speed*): Timeout to 8h

Running in tests in parall takes longer.

4 years ago* comp.c (emit_mvar_access): Fix speed 1 compilation
Andrea Corallo [Tue, 24 Mar 2020 18:47:39 +0000 (18:47 +0000)]
* comp.c (emit_mvar_access): Fix speed 1 compilation

At speed 1 propagate does not run and all mvars are allocated in array
0.

4 years ago* comp.el (native-compile-async): Fix excessive messaging
Andrea Corallo [Tue, 24 Mar 2020 19:10:20 +0000 (19:10 +0000)]
* comp.el (native-compile-async): Fix excessive messaging

4 years agoMerge remote-tracking branch 'savannah/master' into HEAD
Andrea Corallo [Tue, 24 Mar 2020 16:22:06 +0000 (16:22 +0000)]
Merge remote-tracking branch 'savannah/master' into HEAD

4 years agoDon't add repeated xlmns:xlink declarations in svg-create
Lars Ingebrigtsen [Tue, 24 Mar 2020 04:30:49 +0000 (05:30 +0100)]
Don't add repeated xlmns:xlink declarations in svg-create

* lisp/svg.el (svg-create): Fix previous unconditional addition of
the xmlns:xlink declaration -- callers may already add one, and
having it twice is something most svg libraries doesn't like.

4 years agoMake cl-concatenate an alias of seq-concatenate
Noam Postavsky [Mon, 23 Mar 2020 22:58:21 +0000 (18:58 -0400)]
Make cl-concatenate an alias of seq-concatenate

* lisp/emacs-lisp/cl-extra.el (cl-concatenate): Use defalias instead
of apply.  This is simpler and more efficient.

4 years ago* comp.el : Fix typo introduced by f8b07ff4f3
Andrea Corallo [Mon, 23 Mar 2020 22:27:17 +0000 (22:27 +0000)]
* comp.el : Fix typo introduced by f8b07ff4f3

4 years agoMerge remote-tracking branch 'savannah/master' into HEAD
Andrea Corallo [Mon, 23 Mar 2020 20:38:07 +0000 (20:38 +0000)]
Merge remote-tracking branch 'savannah/master' into HEAD

4 years agoGuard against function redefinition during deferred load
Andrea Corallo [Mon, 23 Mar 2020 15:57:48 +0000 (15:57 +0000)]
Guard against function redefinition during deferred load

4 years agoMerge from origin/emacs-27
Glenn Morris [Mon, 23 Mar 2020 16:48:15 +0000 (09:48 -0700)]
Merge from origin/emacs-27

d66331aea4 (origin/emacs-27) Don't build the Gnulib 'utimens' module ...
f2351a689b Add Harfbuzz dependency
8944310d7c Don't signal during backtrace unrewind (Bug#40088)
8709aaddd8 Fix a couple of problems in changelog generating functions
9ab85f087f Fix cl-concatenate (Bug#40180)
561e9fb91b Improve documentation of project.el commands
b28a9a6cc3 Make svg images with links valid
7515252cce * lisp/tab-line.el (tab-line-new-button-show): New defcustom.

# Conflicts:
# etc/NEWS
# nt/gnulib-cfg.mk

4 years ago; Merge from origin/emacs-27
Glenn Morris [Mon, 23 Mar 2020 16:46:39 +0000 (09:46 -0700)]
; Merge from origin/emacs-27

The following commit was skipped:

d801d1d8cc Don't have exif bugging out on short strings

4 years agoMerge from origin/emacs-27
Glenn Morris [Mon, 23 Mar 2020 16:46:39 +0000 (09:46 -0700)]
Merge from origin/emacs-27

bed04c502c Use correct registry name for windows-1251 charset
1aa1529301 ERC: Update maintainer address

4 years agoDon't build the Gnulib 'utimens' module on MinGW
Eli Zaretskii [Mon, 23 Mar 2020 14:37:27 +0000 (16:37 +0200)]
Don't build the Gnulib 'utimens' module on MinGW

* nt/gnulib-cfg.mk (OMIT_GNULIB_MODULE_utimens): Omit the
'utimens' module in the MinGW build: 'utimens' is not used by
Emacs, and 'fdutimens' is implemented in w32.c.

4 years agoAdd Harfbuzz dependency
Phillip Lord [Mon, 23 Mar 2020 09:38:36 +0000 (09:38 +0000)]
Add Harfbuzz dependency

* admin/nt/dist-build/build-dep-zips.py: Add harfbuzz as a dependency.

4 years agoDon't signal during backtrace unrewind (Bug#40088)
Noam Postavsky [Fri, 20 Mar 2020 08:07:39 +0000 (04:07 -0400)]
Don't signal during backtrace unrewind (Bug#40088)

backtrace_eval_unrewind is used to temporarily reverse
let-bindings (it's called with a positive argument to reverse
bindings, and then a negative argument to re-apply them) by
backtrace--locals and backtrace-eval.  For the SPECPDL_LET_DEFAULT and
SPECPDL_LET_LOCAL cases (which occur for let-bindings on buffer-local
variables), the code calls Fdefault_value and Fbuffer_local_value on
the symbol.

For symbols which are unbound at top-level, the first (with positive
argument) call to backtrace_eval_unrewind will set the symbol's value
to unbound (putting the current value in the specpdl's "old value"
slot).  On the second (with negative argument) call,
backtrace_eval_unrewind attempts to retrieve the symbol's value with
Fdefault_value or Fbuffer_local_value, but that raises a void-variable
signal.  This interrupts the restoration of the let-bindings, so any
other variables more recent on the stack will now have the wrong
value.

* src/data.c (default_value): Make non-static.
* src/lisp.h: Declare it.
* src/eval.c (backtrace_eval_unrewind): Replace the calls to
Fdefault_value and Fbuffer_local_value with default_value and
buffer_local_value, respectively.  The latter do exactly the same as
the former, except if the symbol's value is Qunbound they just return
it instead of signaling void-variable.

4 years agoFix a couple of problems in changelog generating functions
Noam Postavsky [Fri, 20 Mar 2020 10:00:11 +0000 (06:00 -0400)]
Fix a couple of problems in changelog generating functions

* lisp/vc/diff-mode.el (diff-add-log-current-defuns): If there is a
scan-error when calling end-of-defun, go to end of hunk.  This can
easily happen since we are calling end-of-defun on a partial code
fragment from a diff.
* lisp/vc/log-edit.el (log-edit-generate-changelog-from-diff): Bind
display-buffer-overriding-action around the log-edit-show-diff call
only.  Otherwise, it can affect, for example, debugger windows
triggered by the diff-add-log-current-defuns call.

4 years agoFix cl-concatenate (Bug#40180)
Noam Postavsky [Sun, 22 Mar 2020 11:48:14 +0000 (07:48 -0400)]
Fix cl-concatenate (Bug#40180)

* lisp/emacs-lisp/cl-extra.el (cl-concatenate): Use apply, to avoid
adding extra nesting of args.
* test/lisp/emacs-lisp/cl-extra-tests.el (cl-concatenate): New test.

4 years agoAvoid extra "changed on disk" prompt in save-buffer (Bug#18336)
Noam Postavsky [Sun, 22 Mar 2020 01:00:08 +0000 (21:00 -0400)]
Avoid extra "changed on disk" prompt in save-buffer (Bug#18336)

* src/filelock.c (lock_file): Don't query the user if the current
session already owns the lock.

4 years ago* lisp/dired.el (dired-mark-region): New defcustom (bug#39902)
Juri Linkov [Mon, 23 Mar 2020 00:35:33 +0000 (02:35 +0200)]
* lisp/dired.el (dired-mark-region): New defcustom (bug#39902)

* lisp/dired.el (dired-mark-if): Use dired-mark-region.
(dired-mark): Use dired-mark-region.  Fix docstring.
(dired-mark-files-regexp, dired-mark-files-containing-regexp)
(dired-mark-symlinks, dired-mark-directories)
(dired-mark-executables, dired-flag-auto-save-files)
(dired-flag-backup-files): Mention dired-mark-region in docstring.

* lisp/dired-aux.el (dired-compare-directories):
* lisp/dired-x.el (dired-mark-unmarked-files, dired-mark-sexp):
Mention dired-mark-region in docstring.

4 years agoMerge remote-tracking branch 'savannah/master' into HEAD
Andrea Corallo [Sun, 22 Mar 2020 16:11:53 +0000 (16:11 +0000)]
Merge remote-tracking branch 'savannah/master' into HEAD

4 years ago* comp.c (maybe_defer_native_compilation): Fix
Andrea Corallo [Sun, 22 Mar 2020 15:08:58 +0000 (15:08 +0000)]
* comp.c (maybe_defer_native_compilation): Fix

Prevent recursive compilation while deferring compilation.

4 years ago* comp.c (maybe_defer_native_compilation): Add some debug code
Andrea Corallo [Sun, 22 Mar 2020 14:50:01 +0000 (14:50 +0000)]
* comp.c (maybe_defer_native_compilation): Add some debug code

4 years ago* comp.el: Add missing require
Andrea Corallo [Sun, 22 Mar 2020 09:35:55 +0000 (09:35 +0000)]
* comp.el: Add missing require

4 years ago* .gitlab-ci.yml: CI test native bootstrap speed1 and speed2
Andrea Corallo [Sat, 21 Mar 2020 19:32:01 +0000 (19:32 +0000)]
* .gitlab-ci.yml: CI test native bootstrap speed1 and speed2

Do just a fast bootstrap for these two.

4 years agoHave a fast build option triggered by env var NATIVE_FAST_BOOT
Andrea Corallo [Sat, 21 Mar 2020 14:11:41 +0000 (14:11 +0000)]
Have a fast build option triggered by env var NATIVE_FAST_BOOT

4 years agoRevert "Signal user-error on duplicate package refresh" (Bug#39187)
Stefan Kangas [Sun, 22 Mar 2020 10:57:06 +0000 (11:57 +0100)]
Revert "Signal user-error on duplicate package refresh" (Bug#39187)

This reverts commit a6d87ea045d9df73f70765bedfb02522043efd9b.

4 years ago; * etc/NEWS: Note changed default of message-draft-headers
Eric Abrahamsen [Sat, 21 Mar 2020 18:46:06 +0000 (11:46 -0700)]
; * etc/NEWS: Note changed default of message-draft-headers

4 years agoImprove documentation of project.el commands
Eli Zaretskii [Sat, 21 Mar 2020 11:26:19 +0000 (13:26 +0200)]
Improve documentation of project.el commands

* lisp/progmodes/project.el (project-find-regexp): Require 'grep'
to be able to call 'grep-read-files'.
(project-search, project-query-replace-regexp): Doc fixes.

* doc/emacs/maintaining.texi (Projects): New section.
* doc/emacs/emacs.texi (Top): Add "Projects" to the detailed menu.

4 years agoFix Bug#40156 in Tramp
Michael Albinus [Sat, 21 Mar 2020 09:30:26 +0000 (10:30 +0100)]
Fix Bug#40156 in Tramp

* lisp/net/tramp-sh.el (tramp-sh-handle-write-region): Copy to temp file
only if FILENAME exists.  (Bug#40156)

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

4 years agoRemove more XEmacs compat code from ediff*.el
Stefan Kangas [Sat, 21 Mar 2020 06:59:05 +0000 (07:59 +0100)]
Remove more XEmacs compat code from ediff*.el

* lisp/vc/ediff-init.el (ediff-H-glyph):
* lisp/vc/ediff-util.el (ediff-inferior-compare-regions)
(ediff-setup-keymap):
* lisp/vc/ediff-wind.el (ediff-control-frame-parameters)
(ediff-prefer-iconified-control-frame)
(ediff-setup-control-frame, ediff-xemacs-select-frame-hook): Remove
XEmacs compat code and declare compatibility functions obsolete.

* lisp/vc/ediff-init.el (ediff-temp-file-prefix): Redefine as
obsolete variable alias for 'temporary-file-directory'.
* lisp/vc/ediff-util.el (ediff-make-temp-file): Don't use obsolete
variable name.

4 years agoRemove obsolete XEmacs comment
Stefan Kangas [Sat, 21 Mar 2020 06:38:21 +0000 (07:38 +0100)]
Remove obsolete XEmacs comment

* lisp/emacs-lisp/edebug.el (edebug--display-1): Remove comment
regarding an XEmacs exclusive variable.

4 years agoDeclare some <package>-version variables obsolete
Stefan Kangas [Sat, 21 Mar 2020 01:47:08 +0000 (02:47 +0100)]
Declare some <package>-version variables obsolete

These are not used for anything these days and can therefore be
removed.  Package developers should check the Emacs version instead.
Ref: https://lists.gnu.org/r/emacs-devel/2020-03/msg00080.html

* lisp/calendar/icalendar.el (icalendar-version):
* lisp/dframe.el (dframe-version):
* lisp/emacs-lisp/checkdoc.el (checkdoc-version):
* lisp/emulation/edt.el (edt-version):
* lisp/international/mule.el (mule-version)
(mule-version-date):
* lisp/linum.el (linum-version):
* lisp/play/bubbles.el (bubbles-version):
* lisp/speedbar.el (speedbar-version):
* lisp/textmodes/remember.el (remember-version):
* lisp/url/url-vars.el (url-version):
* lisp/woman.el (woman-version): Declare obsolete.

* lisp/emacs-lisp/checkdoc.el (checkdoc-start-section):
* lisp/speedbar.el (speedbar-mode):
* lisp/url/url-about.el (url-about-protocols):
* lisp/url/url-http.el (url-http--user-agent-default-string):
* lisp/url/url-news.el (url-news-fetch-message-id):
* lisp/woman.el (woman-menu, woman-mode): Stop using variables
declared obsolete above.

4 years agoAdd "Old-" prefix to "Version" header in some cases
Stefan Kangas [Sat, 21 Mar 2020 01:46:53 +0000 (02:46 +0100)]
Add "Old-" prefix to "Version" header in some cases

These version numbers are historical accidents and not relevant today.
Ref: https://lists.gnu.org/r/emacs-devel/2020-03/msg00080.html

* lisp/calendar/icalendar.el:
* lisp/emacs-lisp/checkdoc.el:
* lisp/hippie-exp.el:
* lisp/linum.el:
* lisp/master.el:
* lisp/progmodes/cwarn.el:
* lisp/repeat.el:
* lisp/ruler-mode.el:
* lisp/textmodes/remember.el:
* lisp/wdired.el:
* lisp/woman.el: Change "Version" header to "Old-Version".

4 years agoRemove the Date header from message-draft-headers
Eric Abrahamsen [Fri, 20 Mar 2020 17:53:49 +0000 (10:53 -0700)]
Remove the Date header from message-draft-headers

* lisp/gnus/message.el (message-draft-headers): The Date header should
reflect when the message is sent, not when it was saved or delayed.

4 years agoMake svg images with links valid
Zhu Zihao [Fri, 20 Mar 2020 15:35:31 +0000 (16:35 +0100)]
Make svg images with links valid

* lisp/svg.el (svg-create): Specify xlink namespace for svg images
(bug#40010).

Copyright-paperwork-exempt: yes

4 years ago* lisp/tab-line.el (tab-line-new-button-show): New defcustom.
Juri Linkov [Thu, 19 Mar 2020 23:21:57 +0000 (01:21 +0200)]
* lisp/tab-line.el (tab-line-new-button-show): New defcustom.

* lisp/tab-line.el (tab-line-format-template): Use tab-line-new-button-show.
(tab-line-new-tab-choice): Remove choice 'nil' with "No button".
(tab-line-separator): Add docstring.

4 years ago* comp.el (comp-async-jobs-number): Fix customize type.
Andrea Corallo [Thu, 19 Mar 2020 18:37:32 +0000 (18:37 +0000)]
* comp.el (comp-async-jobs-number): Fix customize type.

4 years agoMerge remote-tracking branch 'savannah/master' into HEAD
Andrea Corallo [Thu, 19 Mar 2020 16:49:55 +0000 (16:49 +0000)]
Merge remote-tracking branch 'savannah/master' into HEAD

4 years ago* comp.el (comp-run-async-workers): Load only if compilation succeed
Andrea Corallo [Wed, 18 Mar 2020 20:16:05 +0000 (20:16 +0000)]
* comp.el (comp-run-async-workers): Load only if compilation succeed

4 years agoDon't have exif bugging out on short strings
Lars Ingebrigtsen [Thu, 19 Mar 2020 15:15:04 +0000 (16:15 +0100)]
Don't have exif bugging out on short strings

* lisp/image/exif.el (exif--direct-ascii-value): New function
(bug#40127).
(exif--parse-directory): Use it to get the correct values for
in-directory (i.e., shorter than 4 octets) strings.

4 years agoDon't have exif bugging out on short strings
Lars Ingebrigtsen [Thu, 19 Mar 2020 15:15:04 +0000 (16:15 +0100)]
Don't have exif bugging out on short strings

* lisp/image/exif.el (exif--direct-ascii-value): New function
(bug#40127).
(exif--parse-directory): Use it to get the correct values for
in-directory (i.e., shorter than 4 octets) strings.

4 years agoFix display of :box face when overlay strings are around
Eli Zaretskii [Thu, 19 Mar 2020 14:57:35 +0000 (16:57 +0200)]
Fix display of :box face when overlay strings are around

* src/xdisp.c (reset_box_start_end_flags): New function.
(handle_face_prop): Only set the start_of_box_run_p flag, don't
reset it.
(pop_it): Set the face_box_p flag, if the popped face requires
that, when continuing iteration over buffer text.
(get_next_display_element, next_element_from_display_vector): Only
set the end_of_box_run_p flag, never reset it here.
(set_iterator_to_next): Don't reset the start_of_box_run_p and
end_of_box_run_p flags here.  They are now reset as side effect of
PRODUCE_GLYPHS.
(append_space_for_newline): Restore the end_of_box_run_p flag
after PRODUCE_GLYPHS where we previously didn't reset it.
* src/dispextern.h (PRODUCE_GLYPHS): Call
reset_box_start_end_flags after producing glyphs.
(Bug#40124)

4 years agoUse correct registry name for windows-1251 charset
Robert Pluim [Wed, 18 Mar 2020 20:37:55 +0000 (21:37 +0100)]
Use correct registry name for windows-1251 charset

* src/ftfont.c (fc_charset_table): The registry to use to lookup
windows-1251 charset is microsoft-cp1251, not windows-1251.
(Bug#40097)

4 years agoTiny simplification of frac_to_double
Paul Eggert [Thu, 19 Mar 2020 06:58:46 +0000 (23:58 -0700)]
Tiny simplification of frac_to_double

* src/timefns.c (frac_to_double): Remove unnecessary runtime check,
since the denominator is always positive.

4 years agoOmit timestamp optimization invalid on 387 FPU
Paul Eggert [Wed, 18 Mar 2020 21:48:52 +0000 (14:48 -0700)]
Omit timestamp optimization invalid on 387 FPU

* src/timefns.c (frac_to_double): Omit optimization that is
invalid on machines with excess precision (e.g., gcc x86 with 387
FPU), because it double-rounds.  Found via ‘gcc -m32’ on x86-64.

4 years agoERC: Update maintainer address
Amin Bandali [Thu, 19 Mar 2020 01:27:49 +0000 (21:27 -0400)]
ERC: Update maintainer address

4 years ago* comp.c (native-elisp-load): Guard against misisng file.
Andrea Corallo [Wed, 18 Mar 2020 20:00:43 +0000 (20:00 +0000)]
* comp.c (native-elisp-load): Guard against misisng file.

4 years agoCommand late load when deferring compilation
Andrea Corallo [Wed, 18 Mar 2020 21:20:52 +0000 (21:20 +0000)]
Command late load when deferring compilation

4 years ago* comp.el: Extend `native-compile-async' for load and late-load
Andrea Corallo [Wed, 18 Mar 2020 19:52:36 +0000 (19:52 +0000)]
* comp.el: Extend `native-compile-async' for load and late-load

4 years agoExtend low level code for late load
Andrea Corallo [Wed, 18 Mar 2020 19:48:50 +0000 (19:48 +0000)]
Extend low level code for late load

4 years ago* comp.el: late-load support optional as `native-compile' parameter
Andrea Corallo [Tue, 17 Mar 2020 22:24:52 +0000 (22:24 +0000)]
* comp.el: late-load support optional as `native-compile' parameter

4 years ago* comp.el: Have the compiler generates 'late_top_level_run'
Andrea Corallo [Tue, 17 Mar 2020 21:35:11 +0000 (21:35 +0000)]
* comp.el: Have the compiler generates 'late_top_level_run'

4 years agoMerge from origin/emacs-27
Glenn Morris [Wed, 18 Mar 2020 14:50:37 +0000 (07:50 -0700)]
Merge from origin/emacs-27

e92b8e535a (origin/emacs-27) Remove raw carriage return characters fr...
5747a59a88 Recalculate default font when switching font backend
a2dd8c4234 * lisp/tab-line.el: Fix tab-line-format and tab-line-forma...
a7b8291b6c * etc/NEWS: Make the `--eval` example slightly more precise
f8254aad14 * lisp/image/image-converter.el: Support more ImageMagick ...
5beb269505 Support Unicode 13.0
3a671ad7ed Fix regression in wisent-total-conflicts

# Conflicts:
# etc/NEWS

4 years ago; Merge from origin/emacs-27
Glenn Morris [Wed, 18 Mar 2020 14:50:36 +0000 (07:50 -0700)]
; Merge from origin/emacs-27

The following commit was skipped:

dcc943be0a * lisp/progmodes/cc-defs.el (c-version): update to 5.34.1 ...

4 years agoMerge from origin/emacs-27
Glenn Morris [Wed, 18 Mar 2020 14:50:36 +0000 (07:50 -0700)]
Merge from origin/emacs-27

3a8a231810 * lisp/textmodes/fill.el (fill-nobreak-predicate): Fix doc...
cbe643104d Improve Package Menu hiding docstrings
8d28c98ae0 Fix display of Big5 characters when using Fontconfig

4 years ago* lisp/vc/smerge-mode.el (smerge-start-session): Don't re-enable
Stefan Monnier [Wed, 18 Mar 2020 14:20:13 +0000 (10:20 -0400)]
* lisp/vc/smerge-mode.el (smerge-start-session): Don't re-enable

Don't do anything if smerge-mode is already enabled.

4 years agoRemove raw carriage return characters from test file.
Philipp Stephani [Wed, 18 Mar 2020 11:37:47 +0000 (12:37 +0100)]
Remove raw carriage return characters from test file.

This protects against tools that mangle newline characters in text
files.

* test/lisp/electric-tests.el (electric-pair-mode-newline-between-parens)
(electric-layout-mode-newline-between-parens-without-e-p-m)
(electric-layout-mode-newline-between-parens-without-e-p-m-2): Escape
carriage return characters.

4 years agoDon't generate useless range table entries for ASCII chars
Mattias Engdegård [Tue, 17 Mar 2020 12:18:14 +0000 (13:18 +0100)]
Don't generate useless range table entries for ASCII chars

In multibyte regexps, each ASCII char or range in a character
alternative produces a nonsense range table entry in addition to the
correct bits in the ASCII bitmap.  Those entries do not match anything
but waste space and time.

* src/regex-emacs.c (regex_compile): Don't generate reversed intervals.

4 years agoRecalculate default font when switching font backend
Robert Pluim [Mon, 16 Mar 2020 16:21:02 +0000 (17:21 +0100)]
Recalculate default font when switching font backend

This is an updated version of the patch by Dmitry Antipov
<dmantipov@yandex.ru> in
<https://debbugs.gnu.org/cgi/bugreport.cgi?bug=23386#43>.

Fixes Bug#23386

* src/dispextern.h (struct redisplay_interface): New member
default_font_parameter.
* src/xterm.h: Add prototype for x_default_font_parameter.
* src/xterm.c (x_redisplay_interface): Initialize
default_font_parameter member.
* src/xfns.c (x_default_font_parameter): Make non-static.
* src/w32term.h: Add prototype for w32_default_font_parameter
* src/w32fns.c (w32_default_font_parameter): Make non-static.
* src/w32term.c (w32_redisplay_interface): Initialize
default_font_parameter member.
* src/nsterm.m (ns_redisplay_interface): Add dummy
ns_default_font_parameter (there is currently only one possible font
backend on macOS).  Initialize default_font_parameter member.
* src/frame.c (gui_set_font_backend): Recalculate default font using
RIF default_font_parameter to avoid crash when changing font backend.

4 years ago* lisp/tab-line.el: Fix tab-line-format and tab-line-format-template.
Juri Linkov [Mon, 16 Mar 2020 23:11:27 +0000 (01:11 +0200)]
* lisp/tab-line.el: Fix tab-line-format and tab-line-format-template.

* lisp/tab-line.el (tab-line-format): Use buffer-name in the cache key
instead of just buffer object to invalidate the cache on buffer renaming.
(tab-line-format-template): Always leave the separator after the last tab
like tab-bar.el already does.

4 years agoMerge remote-tracking branch 'savannah/master' into HEAD
Andrea Corallo [Mon, 16 Mar 2020 23:08:47 +0000 (23:08 +0000)]
Merge remote-tracking branch 'savannah/master' into HEAD

4 years agoTrigger native compilation when loading bytecode
Andrea Corallo [Sun, 15 Mar 2020 21:44:05 +0000 (21:44 +0000)]
Trigger native compilation when loading bytecode

Introduce a first mechanism to trigger compilation when lex elc files
are loaded.  This is off by default and has to be better tested.

4 years ago* comp.el: (native-compile-async) do not duplicate queue entries
Andrea Corallo [Sun, 15 Mar 2020 21:07:14 +0000 (21:07 +0000)]
* comp.el: (native-compile-async) do not duplicate queue entries

4 years ago* comp.el: Estimate async worker number using system CPU number
Andrea Corallo [Sun, 15 Mar 2020 20:17:15 +0000 (20:17 +0000)]
* comp.el: Estimate async worker number using system CPU number

This only when `comp-async-jobs-number' is 0 (default).

4 years ago* comp.el: Make compilation logic to be dynamically controllable
Andrea Corallo [Sun, 15 Mar 2020 19:37:51 +0000 (19:37 +0000)]
* comp.el: Make compilation logic to be dynamically controllable

Introduce `comp-async-jobs-number' to control async job number, this
can be now adjusted dynamically.

Also make `native-compile-async' able to dynamically queue new
compilations.

4 years ago* etc/NEWS: Make the `--eval` example slightly more precise
Stefan Monnier [Mon, 16 Mar 2020 17:12:52 +0000 (13:12 -0400)]
* etc/NEWS: Make the `--eval` example slightly more precise

4 years agoAdd store/restore window configuration feature for gdb-mi
Yuan Fu [Sun, 15 Mar 2020 15:47:43 +0000 (16:47 +0100)]
Add store/restore window configuration feature for gdb-mi

Add a feature that allows a user to save a gdb window
configuration (window layout) to a file with
'gdb-save-window-configuration' and load it back with
'gdb-load-window-configuration'.  Set a default window configuration
by setting 'gdb-default-window-configuration-file'.
Add an option to make gdb preserve the window configuration
that the user had before starting gdb.  In window.el, add
'with-window-non-dedicated'.

* lisp/progmodes/gdb-mi.el (top/level): Require 'pcase' and 'cl-seq'.
(gdb--window-configuration-before): New variable.
(gdb-restore-window-configuration-after-quit): New option.
(gdb-window-configuration-directory,
gdb-default-window-configuration-file): New variables.
(gdb): Save configuration on startup.
(gud-menu-map): Add "Load Layout" and "Save Layout" to menu.  Add
"Restore Layout After Quit" button to menu.  Rename "Restore Window
Layout" to "Restore Default Layout", add some help echo, and move it
from "GDB-MI" menu to "GDB-WINDOWs" menu.
(gdb-toggle-restore-window-configuration): New function.
(gdb-get-source-buffer): New function, extracted out of
'gdb-restore-window'.
(gdb-setup-windows): Add a condition branch that loads default window
configuration when available.  Fix docstring.
(gdb-buffer-p, gdb-function-buffer-p, gdb--buffer-type,
gdb-save-window-configuration, gdb-load-window-configuration): New
functions.
(gdb-restore-windows): Edit docstring to mention
'gdb-default-window-configuration-file'.
(gdb-reset): Restore window configuration after quit.
* lisp/window.el (with-window-non-dedicated): New macro.

4 years agoReverse the meaning of 2nd arg to 'live_buffer_holding'
Eli Zaretskii [Sun, 15 Mar 2020 14:47:54 +0000 (16:47 +0200)]
Reverse the meaning of 2nd arg to 'live_buffer_holding'

* src/alloc.c (live_buffer_holding): Rename ALL_BUFFERS ti
IGNORE_KILLED, and reverse the condition for returning killed
buffers.
(live_buffer_p): Add commentary.
(live_buffer_p, mark_maybe_object, mark_maybe_pointer): Reverse
the 2nd argument to live_buffer_holding.  (Bug#39962)

4 years agoMake sure we mark reachable killed buffers during GC
Pip Cet [Sat, 14 Mar 2020 18:26:33 +0000 (18:26 +0000)]
Make sure we mark reachable killed buffers during GC

* src/alloc.c (live_buffer_holding): Add ALL_BUFFERS argument for
returning killed buffers.
(mark_maybe_object, mark_maybe_pointer): Use the additional
argument.  (Bug#39962)

4 years agoMerge remote-tracking branch 'savannah/master' into HEAD
Andrea Corallo [Sun, 15 Mar 2020 10:31:03 +0000 (10:31 +0000)]
Merge remote-tracking branch 'savannah/master' into HEAD

4 years ago* .gitlab-ci.yml: Always run test-filenotify-gio
Andrea Corallo [Sun, 15 Mar 2020 10:27:38 +0000 (10:27 +0000)]
* .gitlab-ci.yml: Always run test-filenotify-gio

test-filenotify-gio is run always to keep stock bootstrap tested.

4 years ago* comp.el: Fix missing rx require
Andrea Corallo [Sun, 15 Mar 2020 10:26:31 +0000 (10:26 +0000)]
* comp.el: Fix missing rx require

4 years agocomp.el: Minor improvements
Adam Porter [Sun, 15 Mar 2020 10:19:22 +0000 (10:19 +0000)]
comp.el: Minor improvements

Change: (comp-start-async-worker) Refactor slightly

Change: (comp-start-async-worker) Inline (comp-to-file-p)

Change: (comp-source-files) Rename from comp-src-pool

Add: (comp-start-async-worker) Assertion

Change: (comp-async-processes) Rename from comp-prc-pool

Tidy: (native-compile)

Rename variables, improve docstring, adjust log message, simplify
filename code.

Tidy: (batch-native-compile) Docstring

Tidy: whitespace-cleanup

Tidy: (comp-start-async-worker) Use () instead of nil

Tidy: (comp-files-queue) Rename from comp-source-files

Change: (native-compile-async) Improve paths support

Tidy: Comment

Save a line for one word.  :)

Change: (comp-log) Rewrite without macro, follow tail

Change: (native-compile-async) Use end-of-string in filename regexps

Change: (native-compile-async) Use cl-loop instead of dotimes

Add/Change: (comp-log-to-buffer) And use in comp-log

Comment: Tidy comment

Fix: (configure.ac) Option description

Fix: (comp-log) Argument

Fix: (comp-start-async-worker) Variable name

Change: Undo whitespace changes

Some of them included incorrect indentation because the
macros' (declare (indent)) forms were not loaded.  The
whitespace-cleanup should be run from Emacs 27+ with the file loaded.

4 years ago* lisp/image/image-converter.el: Support more ImageMagick versions (bug#39994)
Juri Linkov [Sat, 14 Mar 2020 23:58:58 +0000 (01:58 +0200)]
* lisp/image/image-converter.el: Support more ImageMagick versions (bug#39994)

* lisp/image/image-converter.el (image-converter--probe): Match
a possible additional second column in some ImageMagick versions
of "convert -list format".

4 years ago* lisp/progmodes/sql.el: Try and avoid `eval`; use define-derived-mode
Stefan Monnier [Sat, 14 Mar 2020 19:39:31 +0000 (15:39 -0400)]
* lisp/progmodes/sql.el: Try and avoid `eval`; use define-derived-mode

Remove redundant `:group` args.

(sql-interactive-mode-map): `set-keymap-parent` is always fboundp.
(sql-get-product-feature): Prefer `symbol-value` over `eval`.
(sql--adjust-interactive-setup): New function, extracted from
`sql-interactive-mode`.
(sql-interactive-mode): Use it and `define-derived-mode`.
(sql-connect, sql-connection-menu-filter): Prefer `cl-progv` over `eval`.

4 years ago* lisp/textmodes/conf-mode.el (conf-mode): Use define-derived-mode
Stefan Monnier [Sat, 14 Mar 2020 19:16:51 +0000 (15:16 -0400)]
* lisp/textmodes/conf-mode.el (conf-mode): Use define-derived-mode

(conf--guess-mode): Extract from conf-mode.
(defcustoms): Remove redundant `:group` args.
(conf-mode, conf-mode-initialize, conf-javaprop-mode)
(conf-space-mode, conf-space-keywords, conf-space-mode-internal)
(conf-colon-mode): Use `setq-local`.

4 years ago* lisp/emacs-lisp/package.el (package-activate-1): Avoid duplicates
Stefan Monnier [Sat, 14 Mar 2020 18:59:45 +0000 (14:59 -0400)]
* lisp/emacs-lisp/package.el (package-activate-1): Avoid duplicates

in `Info-directory-list`.

4 years agoMerge remote-tracking branch 'savannah/master' into HEAD
Andrea Corallo [Sat, 14 Mar 2020 15:14:12 +0000 (15:14 +0000)]
Merge remote-tracking branch 'savannah/master' into HEAD

4 years agoFix make bootstrap for native compilation
Andrea Corallo [Sat, 14 Mar 2020 10:57:34 +0000 (10:57 +0000)]
Fix make bootstrap for native compilation

Add Makefile target native-compile-clean removing all eln output
folders.

This is also triggered by make bootstrap to perform a clean bootstrap.

Also revert some modification of the build system against master not
effective anymore with the new directory layout.

4 years agoSupport Unicode 13.0
Eli Zaretskii [Sat, 14 Mar 2020 12:54:59 +0000 (14:54 +0200)]
Support Unicode 13.0

* admin/unidata/BidiBrackets.txt:
* admin/unidata/BidiMirroring.txt:
* admin/unidata/Blocks.txt:
* admin/unidata/NormalizationTest.txt:
* admin/unidata/SpecialCasing.txt:
* admin/unidata/UnicodeData.txt:
* admin/unidata/copyright.html:
* test/manual/BidiCharacterTest.txt: Updated files imported from
Unicode v13.0.

* admin/unidata/blocks.awk: Add "Symbols for Legacy Computing" to
known aliases.

* lisp/international/fontset.el (script-representative-chars)
(setup-default-fontset): Add new scripts.
* lisp/international/characters.el: Set syntax for Symbols for
Legacy Computing characters.  Update setting of char-width-table.
* lisp/international/mule-cmds.el (ucs-names): Update ranges of
characters for which we want names in 'ucs-names'.

* test/lisp/international/ucs-normalize-tests.el
(ucs-normalize-tests--failing-lines-part1)
(ucs-normalize-tests--failing-lines-part2): Update according to
'ucs-normalize-check-failing-lines'.

4 years ago* lisp/progmodes/cc-defs.el (c-version): update to 5.34.2 for master branch
Alan Mackenzie [Sat, 14 Mar 2020 12:27:20 +0000 (12:27 +0000)]
* lisp/progmodes/cc-defs.el (c-version): update to 5.34.2 for master branch

4 years agoFix regression in wisent-total-conflicts
Lars Ingebrigtsen [Sat, 14 Mar 2020 12:17:57 +0000 (13:17 +0100)]
Fix regression in wisent-total-conflicts

* lisp/cedet/semantic/wisent/comp.el (wisent-total-conflicts):
There may not be a current source file.  In that case, don't try
to keep track of the number of expected conflicts (bug#39911).

4 years agoMake previous mml-expand-html-into-multipart-related fix more general
Jeremy Compostella [Sat, 14 Mar 2020 11:44:55 +0000 (12:44 +0100)]
Make previous mml-expand-html-into-multipart-related fix more general

* lisp/gnus/mml.el (mml-expand-html-into-multipart-related): This is
function is now called by a recursive
engine (mml-expand-all-html-into-multipart-related).  The structure of
the returned value should be identical between an untouched part and a
expanded multipart (bug#39230).

4 years ago* lisp/progmodes/cc-defs.el (c-version): update to 5.34.1 for Emacs 27.1
Alan Mackenzie [Sat, 14 Mar 2020 11:39:40 +0000 (11:39 +0000)]
* lisp/progmodes/cc-defs.el (c-version): update to 5.34.1 for Emacs 27.1

Don't merge to master.

4 years ago* lisp/textmodes/fill.el (fill-nobreak-predicate): Fix documentation.
Philipp Stephani [Sat, 14 Mar 2020 10:25:57 +0000 (11:25 +0100)]
* lisp/textmodes/fill.el (fill-nobreak-predicate): Fix documentation.

4 years agoAdd charsets to 'w32-charset-info-alist'
Eli Zaretskii [Sat, 14 Mar 2020 10:00:46 +0000 (12:00 +0200)]
Add charsets to 'w32-charset-info-alist'

* lisp/w32-fns.el: Add a few more charsets to
w32-charset-info-alist.

4 years agoImprove Package Menu hiding docstrings
Stefan Kangas [Sat, 14 Mar 2020 09:03:09 +0000 (10:03 +0100)]
Improve Package Menu hiding docstrings

* lisp/emacs-lisp/package.el (package-menu-toggle-hiding): Add
reference to 'package-menu-hidden-regexps'.
* lisp/emacs-lisp/package.el (package-menu-hide-package): Improve
docstring to say that hiding is saved in a user option.  Fix a
typo.  (Bug#39436)

4 years agoAvoid regexp stack overflow in GDB string matching (bug#22149)
Mattias Engdegård [Fri, 13 Mar 2020 18:51:02 +0000 (19:51 +0100)]
Avoid regexp stack overflow in GDB string matching (bug#22149)

* lisp/progmodes/gdb-mi.el (gdb--string-regexp):
Swap the or-clauses so that the rarely matching one comes first.
This avoids a build-up of backtrack points on the regexp stack.

4 years agoFix display of Big5 characters when using Fontconfig
Eli Zaretskii [Sat, 14 Mar 2020 08:31:01 +0000 (10:31 +0200)]
Fix display of Big5 characters when using Fontconfig

* src/ftfont.c (fc_charset_table): Fix the value of the big-5
representative codepoint.  Reported by Brian Schack
<bschack-cocoa@usa.net>.  (Bug#40057)

* src/macfont.m (cf_charset_table): Adjust the comment.

4 years agoPrefix native compilation folders with "eln-"
Andrea Corallo [Fri, 13 Mar 2020 22:16:21 +0000 (22:16 +0000)]
Prefix native compilation folders with "eln-"

4 years agoMerge from origin/emacs-27
Glenn Morris [Fri, 13 Mar 2020 14:50:33 +0000 (07:50 -0700)]
Merge from origin/emacs-27

a2b07f9f11 (origin/emacs-27) ; * etc/NEWS: Explain how to get back ol...
b468b3d1ff Fix a recent documentation change
1ab766fd58 Fix last change
ecfe633993 * lisp/tab-bar.el: Last-minute changes.
c1ce9fa7f2 * lisp/subr.el (cancel-change-group): Fix bug#39680
ef5744a988 Improve docs for horizontal scrolling with mouse and touch...
1bc3fa0bd0 * lisp/emacs-lisp/package.el (package-install): Fix typo i...
4537976afd Port .gdbinit to clang with -gdwarf-4
0883c800a0 Simplify rx example in manual
a695189248 ; * etc/NEWS: Fix typo.

# Conflicts:
# etc/NEWS

4 years ago; * etc/NEWS: Explain how to get back old behavior with --eval.
Eli Zaretskii [Fri, 13 Mar 2020 10:32:52 +0000 (12:32 +0200)]
; * etc/NEWS: Explain how to get back old behavior with --eval.

4 years agoFix a recent documentation change
Eli Zaretskii [Fri, 13 Mar 2020 10:24:25 +0000 (12:24 +0200)]
Fix a recent documentation change

* doc/emacs/frames.texi (Mouse Commands): More detailed
description of how tilting the mouse-wheel works.

* lisp/mwheel.el (mouse-wheel-tilt-scroll)
(mouse-wheel-flip-direction): Fix the wording of doc strings.
(Bug#39979)

4 years agoMerge branch 'master' of git.sv.gnu.org:/srv/git/emacs
Michael Albinus [Fri, 13 Mar 2020 09:55:27 +0000 (10:55 +0100)]
Merge branch 'master' of git.sv.gnu.org:/srv/git/emacs

4 years ago* lisp/net/tramp.el (tramp-accept-process-output): Propagate `quit' signal.
Michael Albinus [Fri, 13 Mar 2020 09:54:56 +0000 (10:54 +0100)]
* lisp/net/tramp.el (tramp-accept-process-output): Propagate `quit' signal.

4 years ago* lisp/emacs-lisp/package.el (package-menu--generate): Fix doc string.
Pieter van Oostrum [Tue, 3 Mar 2020 15:27:21 +0000 (16:27 +0100)]
* lisp/emacs-lisp/package.el (package-menu--generate): Fix doc string.

Add REMEMBER-POS to docstring (bug#39861).

4 years ago* Do not produce .eln files when a byte compilation error happen
Andrea Corallo [Thu, 12 Mar 2020 22:36:39 +0000 (22:36 +0000)]
* Do not produce .eln files when a byte compilation error happen

Have the byte compiler signal an error when compilation fails to stop
native compilation too.