Commit Graph

138316 Commits

Author SHA1 Message Date
Mattias Engdegård
2aee20fbf8 Correct arguments to `skip-syntax-forward'
* lisp/wid-edit.el (widget-sexp-validate): Fix bad calls to
`skip-syntax-forward', whose argument is not a regexp.
2019-09-04 16:27:02 +02:00
Lars Ingebrigtsen
4c3a40a9b7 Make the NSM not pop up an X dialogue on non-mouse actions
* lisp/emacs-lisp/rmc.el (read-multiple-choice): Don't pop up X
dialogues on (url-retrieve "https://expired.badssl.com/" #'ignore)
and the like.
2019-09-04 15:20:00 +02:00
Lars Ingebrigtsen
9df72ecb63 Preserve more markers when reverting .gpg files
* lisp/epa-file.el (epa-file--replace-text): Gingerly replace the
text in the buffer to preserve as many markers as possible
(bug#34720).  This emulates the behaviour of Finsert_file_contents
more accurately.
(epa-file-decode-and-insert): Remove compat code.
(epa-file-insert-file-contents): Use the new function.

* lisp/emacs-lisp/cl-lib.el (cl-incf): Add autoload cookie.
2019-09-04 15:20:00 +02:00
Mattias Engdegård
3f30d98af9 Repair change to compilation-context-lines (bug#36832)
* lisp/progmodes/compile.el (compilation-set-window):
Restore proper behaviour when compilation-context-lines is nil,
which is the default.
2019-09-04 14:35:18 +02:00
Michael Albinus
ed80d6d88c Further work on Bug#37202
* test/lisp/shadowfile-tests.el (shadow-debug): Set to t.
(shadow--tests-cleanup): Simplify.
(shadow-test*): Call `shadow-initialize'.
(shadow-test08-shadow-todo, shadow-test09-shadow-copy-files):
In cleanup, kill buffers used for test.
(top): Do not initialize.
2019-09-04 14:13:13 +02:00
Michael Albinus
6c2e107a54 * lisp/net/tramp.el (tramp-process-sentinel): Use `process-buffer'. 2019-09-04 09:37:37 +02:00
Paul Eggert
22213f0052 * src/systime.h (hz): #undef to work around AIX build issue. 2019-09-03 23:47:19 -07:00
Paul Eggert
d84b4f83a5 Prefer functions to macros in buffer.h
In buffer.h, prefer inline functions to function-like macros
when either will do.  This helps avoid confusion about how
many times an arg is evaluated.  On my platform, this patch
improves performance of ‘make compile-always’ by 5.7%.
Also, prefer enum constants to object-like macros
when either will do.
* src/buffer.h (BEG, BEG_BYTE, GAP_BYTES_DFL, GAP_BYTES_MIN)
(MAX_PER_BUFFER_VARS, NONEXISTENT_MODTIME_NSECS)
(UNKNOWN_MODTIME_NSECS, BUFFER_LISP_SIZE, BUFFER_REST_SIZE):
Now enum constants, instead of macros.
(BUFFER_CEILING_OF, BUFFER_FLOOR_OF, BUF_BEG, BUF_BEG_BYTE)
(BUF_BEGV, BUF_BEGV_BYTE, BUF_PT, BUF_PT_BYTE, BUF_ZV)
(BUF_ZV_BYTE, BUF_GPT_ADDR, BUF_Z_ADDR, BUF_GAP_END_ADDR)
(BUF_COMPUTE_UNCHANGED, SET_PT, TEMP_SET_PT, SET_PT_BOTH)
(TEMP_SET_PT_BOTH, BUF_TEMP_SET_PT, SET_BUF_BEGV, SET_BUF_ZV)
(SET_BUF_BEGV_BOTH, SET_BUF_ZV_BOTH, SET_BUF_PT_BOTH)
(BYTE_POS_ADDR, CHAR_POS_ADDR, CHAR_TO_BYTE, BYTE_TO_CHAR)
(PTR_BYTE_POS, FETCH_CHAR, FETCH_CHAR_AS_MULTIBYTE)
(BUF_BYTE_ADDRESS, BUF_CHAR_ADDRESS, BUF_PTR_BYTE_POS)
(BUF_FETCH_CHAR, BUF_FETCH_CHAR_AS_MULTIBYTE, BUF_FETCH_BYTE)
(BUFFER_PVEC_INIT, BUFFER_LIVE_P, BUFFER_HIDDEN_P)
(BUFFER_CHECK_INDIRECTION, OVERLAY_POSITION, PER_BUFFER_VALUE_P)
(SET_PER_BUFFER_VALUE_P, PER_BUFFER_IDX):
Now inline functions instead of macros.
2019-09-03 22:46:12 -07:00
Paul Eggert
bbe45091de * src/xdisp.c (hscroll_window_tree): Fix type typo. 2019-09-03 22:46:12 -07:00
Paul Eggert
97cfda2638 Take last_per_buffer_idx private
This will simplify future changes.  Turn the runtime check
into an eassert, since it’s not needed in production.
* src/buffer.c (last_per_buffer_idx): Now static.
(valid_per_buffer_idx): New function.
* src/buffer.h (PER_BUFFER_VALUE_P, SET_PER_BUFFER_VALUE_P): Use it.
2019-09-03 22:46:11 -07:00
Paul Eggert
9117a66790 Avoid macros in pdumper.c when it’s easy
Problem with DUMP_SET_REFERRER mentioned by Pip Cet at end of:
https://lists.gnu.org/archive/html/emacs-devel/2019-07/msg00548.html
* src/pdumper.c (DANGEROUS, EMACS_RELOC_TYPE_BITS)
(EMACS_RELOC_LENGTH_BITS, DUMP_RELOC_TYPE_BITS)
(DUMP_RELOC_ALIGNMENT_BITS, DUMP_RELOC_OFFSET_BITS)
(DUMP_RELOCATION_ALIGNMENT, DUMP_ALIGNMENT)
(WEIGHT_NONE, WEIGHT_NORMAL, WEIGHT_STRONG)
(PDUMPER_MAX_OBJECT_SIZE):
Now a constant, not a macro.
(divide_round_up): Now a function, not a macro DIVIDE_ROUND_UP.
All uses changed.
(enum link_weight_enum, WEIGHT_NONE_VALUE)
(WEIGHT_NORMAL_VALUE, WEIGHT_STRONG_VALUE): Remove.
(struct link_weight): Just use an int.
(dump_set_referrer): New function, replacing DUMP_SET_REFERRER
macro with a different API.  All uses changed.
(dump_clear_referrer): Rename from DUMP_CLEAR_REFERRER.
All uses changed.
(DEFINE_FROMLISP_FUNC, DEFINE_TOLISP_FUNC): Remove.
(intmax_t_from_lisp, intmax_t_to_lisp, dump_off_from_lisp)
(dump_off_to_lisp): Define without using macros,
(dump_off_from_lisp): Add an eassert range check.
(DUMP_FIELD_COPY): Simplify.
2019-09-03 22:46:11 -07:00
Paul Eggert
d20655669b Avoid casting -1 to possibly-unsigned enum
* src/alloc.c (mark_maybe_pointer):
* src/pdumper.h (pdumper_object_p_precise):
Use pdumper_valid_object_type_p.
* src/pdumper.c (pdumper_find_object_type_impl):
* src/pdumper.h (pdumper_find_object_type):
Return int, not enum Lisp_Type.  All callers changed.
* src/pdumper.h (PDUMPER_NO_OBJECT): Do not cast -1 to enum
Lisp_Type; in theory, C18 says this could yield 7, which would
mean PDUMPER_NO_OBJECT == Lisp_Float (!).
(pdumper_valid_object_type_p): New function.
2019-09-03 17:34:50 -07:00
Daniel Colascione
5f089ac93f Run tramp cleanup in correct buffer
Fixes bug #37297.

* lisp/net/tramp.el (tramp-process-sentinel): Do process-end cleanup
in the tramp buffer, not a random file buffer.
2019-09-03 13:19:24 -07:00
Paul Eggert
97ffa339b6 Sync consing_until_gc with gc-cons-threshold
Add watchers for gc-cons-threshold and gc-cons-percentage
that update consing_until_gc accordingly.
Suggested by Eli Zaretskii (Bug#37006#52).
* src/alloc.c (consing_threshold, bump_consing_until_gc)
(watch_gc_cons_threshold, watch_gc_cons_percentage):
New functions.
(garbage_collect_1): Use consing_threshold.
(syms_of_alloc): Arrange to watch gc-cons-threshold and
gc-cons-percentage.
2019-09-03 13:03:47 -07:00
Alan Mackenzie
c34dbd80e7 Use left margin to hold "=>" to indicate current error in fringeless windows
This applies to compilation-mode.  It amends the fix for bug #36832.

* lisp/progmodes/compile.el (compilation-arrow-overlay): renamed from
overlay-arrow-overlay.
(compilation-margin-string, compilation--dummy-string): New variables.
(compilation-set-up-arrow-spec-in-margin)
(compilation-tear-down-arrow-spec-in-margin): New functions.
(compilation-set-overlay-arrow): Rewritten to use the new variables/functions.
2019-09-03 17:33:26 +00:00
Michael Albinus
ea5d591f29 Fix Bug#37202
* lisp/shadowfile.el (shadow-debug): New defvar.
(shadow-read-files): Suppress error if there's no TODO file.

* test/lisp/shadowfile-tests.el (shadow-debug): Set to nil.
(shadow--tests-cleanup): New defun.  Apply to all tests.  (Bug#37202)
(shadow-test06-literal-groups): Cleanup temp buffer.
(shadow-test08-shadow-todo): Add debug messages.
(top): Cleanup initially.
2019-09-03 13:55:42 +02:00
Paul Eggert
fda015e7b8 Update from Gnulib
This incorporates:
2019-08-25 intprops.h, verify.h: port better to clang
2019-08-21 New strip-trailing-space option for srclist-update
* .gitattributes: Remove doc/misc/texinfo.tex special case,
which is no longer needed now that Gnulib trims blank-at-eol.
* build-aux/install-sh, doc/misc/texinfo.tex, lib/intprops.h:
* lib/regex_internal.c, lib/verify.h: Copy from Gnulib.
2019-09-02 12:38:49 -07:00
Paul Eggert
7c37b17b3d * doc/lispref/files.texi (Standard File Names): Mention .emacs.d too. 2019-09-02 11:32:50 -07:00
Robert Pluim
f17d26eb0c Reword documentation markup description
* etc/NEWS: Reword temporary note about documentation updates.
2019-09-02 17:47:39 +02:00
Robert Pluim
0458a9e776 Add 'nsm-trust-local-network' to NEWS
* etc/NEWS: Describe 'nsm-trust-local-network', and warn against its
use.
2019-09-02 17:47:39 +02:00
Glenn Morris
dd162a3f22 * admin/admin.el (set-version): Check for empty NEWS sections. 2019-09-01 14:35:31 -07:00
Paul Eggert
ba12c5467d Fix load-theme bug with user-emacs-directory
* lisp/custom.el (custom-theme-directory): Delay initialization,
since the value depends on user-emacs-directory (Bug#37256).
2019-09-01 09:56:59 -07:00
Glenn Morris
a7d47e64aa ; Auto-commit of loaddefs files. 2019-09-01 06:26:47 -07:00
Mattias Engdegård
4051fa3ba9 Clarify what counts as whitespace in `string-blank-p'
* lisp/emacs-lisp/subr-x.el (string-blank-p): Expand doc string.
2019-09-01 14:28:01 +02:00
Thomas Fitzsimmons
e8c46c2b6f package.el: Allow Package-Requires to span multiple lines (Bug#36301)
* lisp/emacs-lisp/package.el (lm-header-multiline): Declare
function.
(package-buffer-info): Parse Package-Requires with
lm-header-multiline instead of lm-header.
(Bug#36301)

Co-authored-by: Noam Postavsky <npostavs@gmail.com>
2019-08-31 21:20:00 -04:00
Paul Eggert
fd8346600c Make user-emacs-directory a variable
This is in response to Eli’s review here:
https://lists.gnu.org/r/emacs-devel/2019-07/msg00712.html
* lisp/subr.el (user-emacs-directory): defvar, not defconst
2019-08-31 18:17:57 -07:00
Paul Eggert
72ab46fefc Improve documentation for recent XDG-related changes
Adjust documentation in the light of Eli’s review here:
https://lists.gnu.org/r/emacs-devel/2019-07/msg00712.html
* doc/emacs/custom.texi (Init File, Find Init):
* doc/lispref/files.texi (Standard File Names):
* doc/lispref/os.texi (Init File):
2019-08-31 18:17:57 -07:00
Paul Eggert
02a74ed315 * doc/lispref/customize.texi: Fix typo. 2019-08-31 14:48:57 -07:00
Paul Eggert
2befb4f0a1 Calculate user-emacs-directory on startup
Problem reported by Glenn Morris (Bug#583#56).
* lisp/startup.el (startup--xdg-config-default): New constant.
(startup--xdg-config-home-emacs): New var.
(startup--xdg-or-homedot): New function.
(normal-top-level): Use it to set user-emacs-directory early on.
(command-line): Also use it to determine the startup init directory.
* lisp/subr.el (user-emacs-directory): Just initialize to nil.
2019-08-31 14:48:56 -07:00
Paul Eggert
7791005544 Check instead of relying on NOTREACHED
NOTREACHED was designed for traditional lint decades ago,
and _Noreturn now normally subsumes its function.
In the one case in Emacs where NORETURN might help and _Noreturn does
not, check for NOTREACHED instead of assuming it.
* lib-src/etags.c (main):
* src/xterm.c (x_connection_closed):
Remove NOTREACHED after a call to a _Noreturn function, as NOTREACHED
is no longer needed there.  Also, one of the NOTREACHEDs was
misplaced, which defeated traditional lint checking anyway.
* lib-src/pop.c (pop_getline): Redo so as to not need NOTREACHED.
* src/emacs.c (main): Use eassume (false) rather than NOTREACHED,
so that running with ENABLE_CHECKING catches any internal error
causing the toplevel Frecursive_edit to return.
2019-08-31 11:01:46 -07:00
Glenn Morris
2de46be662 * test/lisp/net/tramp-tests.el (tramp-test21-file-links): More cleanup. 2019-08-31 10:30:14 -07:00
Andreas Schwab
172b99a43a Fix compilation with CHECK_STRUCTS
* src/pdumper.c (dump_hash_table): Update hash of Lisp_Hash_Table.
2019-08-31 12:41:53 +02:00
Eli Zaretskii
3608c5f27c ; * src/floatfns.c: Don't use non-ASCII characters in comments. 2019-08-31 09:58:45 +03:00
Eli Zaretskii
616835312e Avoid signaling errors from ls-lisp--insert-directory on macOS
* lisp/ls-lisp.el (ls-lisp-sanitize): Don't assume the
directory entries for ".." and "." will either both be present
or both absent.  (Bug#37236)
2019-08-31 09:54:05 +03:00
Mattias Engdegård
4a919b1bbc * src/floatfns.c: Check against __FINITE_MATH_ONLY__ (bug#37140) 2019-08-30 15:08:24 +02:00
Michael Albinus
d09a1d66c6 Extend tramp--test-check-files (Bug#37228)
* test/lisp/net/tramp-tests.el (tramp--test-check-files): Test also
`directory-files-and-attributes'.  (Bug#37228)
2019-08-30 13:54:42 +02:00
Koichi Arakawa
cea78adf7c Fix Tramp's directory-files-and-attributes-with-stat (Bug#37228)
* lisp/net/tramp-sh.el
(tramp-do-directory-files-and-attributes-with-stat): Handle file
names with spaces.  (Bug#37228)

Copyright-paperwork-exempt: yes
2019-08-30 13:53:56 +02:00
Paul Eggert
44f15b63db emacsclient: adjust to new config file location
* lib-src/emacsclient.c (open_config): New arg XDG, to respect
XDG_CONFIG_HOME, consistently with Emacs proper.  Caller changed.
Use XDG convention if available, falling back on the old names
if not.
2019-08-30 00:24:47 -07:00
Paul Eggert
a4144af909 Prefer ~/.config/emacs to ~/.emacs.d if neither exists
That way, when Emacs starts in a fresh home directory,
it prefers the new (XDG) convention rather than the old one.
* lisp/files.el (locate-user-emacs-file): Make the parent
directories of user-emacs-directory if needed.  This is useful
if user-emacs-directory is "~/.config/emacs" and "~/.config"
does not yet exist.
* lisp/startup.el (command-line):
* lisp/subr.el (user-emacs-directory):
Prefer XDG_CONFIG_HOME to ~/.emacs.d if neither exists.
2019-08-30 00:24:46 -07:00
Nick Drozd
462be72f41 Minor copyedits in ido.texi
* doc/misc/ido.texi (Overview)
(Interactive Substring Matching, Prefix Matching)
(Regexp Matching, Hidden Buffers and Files)
(Changing List Order, Find File At Point, Misc)
(All Matching, Replacement): Fix wording, markup and punctuation.
(Bug#37225)
2019-08-30 10:23:17 +03:00
Glenn Morris
51cf9161ce Merge from origin/emacs-26
1af1240 (origin/emacs-26, emacs-26) ; Remove empty NEWS sections
96dd019 (tag: emacs-26.3-rc1, tag: emacs-26.3) * etc/HISTORY: Add Ema...

# Conflicts:
#	etc/NEWS
2019-08-29 11:12:12 -07:00
Glenn Morris
040b305752 ; Merge from origin/emacs-26
The following commit was skipped:

4e59ad5 Bump Emacs version to 26.3
2019-08-29 11:11:24 -07:00
Glenn Morris
e7f16f00e1 Merge from origin/emacs-26
70829f8 ; ChangeLog.3 update

# Conflicts:
#	ChangeLog.3
2019-08-29 11:11:23 -07:00
Glenn Morris
8e8ebd44ae ; Merge from origin/emacs-26
The following commit was skipped:

a6d0172 * etc/AUTHORS: Update.
2019-08-29 11:11:22 -07:00
Glenn Morris
5a3e501edd Merge from origin/emacs-26
290fe4d * ; ChangeLog.3 update
e8f176b * etc/NEWS: Delete temporary markup.

# Conflicts:
#	ChangeLog.3
#	etc/NEWS
2019-08-29 11:11:21 -07:00
Glenn Morris
6dd44926a3 ; Fix earlier NEWS merge 2019-08-29 11:04:18 -07:00
Glenn Morris
1af1240f5f ; Remove empty NEWS sections 2019-08-29 10:59:53 -07:00
Stefan Kangas
9df285250b Add new "make help" target
* GNUmakefile: Add new "help" target that shows a brief summary of
common make targets.  (Bug#12411)
* INSTALL
* etc/NEWS: Announce it.
2019-08-29 11:58:23 +02:00
Lars Ingebrigtsen
d87e9a59cd Tweak shr background colour handling
* lisp/net/shr.el (shr-fill-line): Extend the background to the
end of the line when folding lines.
2019-08-29 09:19:19 +02:00
Michael Albinus
7803e65ffc Clarify meaning of <filename> in test/README 2019-08-28 20:39:33 +02:00