aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* | ; Merge from origin/emacs-27Glenn Morris2020-03-300-0/+0
|\ \ | |/ | | | | | | | | The following commit was skipped: 4860530f3c Don't add repeated xlmns:xlink declarations in svg-create
| * Don't add repeated xlmns:xlink declarations in svg-createLars Ingebrigtsen2020-03-241-1/+2
| | | | | | | | | | | | * 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.
* | Merge from origin/emacs-27Glenn Morris2020-03-301-0/+1
|\ \ | |/ | | | | 8db6b432bb Calc: Declare dynamic variable bound in lexbind code (bug#...
| * Calc: Declare dynamic variable bound in lexbind code (bug#40185)Mattias Engdegård2020-03-231-0/+1
| | | | | | | | * lisp/calc/calc.el: Declare math-comp-selected as dynamic.
* | Avoid assertion violation at startup in pdumped EmacsEli Zaretskii2020-03-301-11/+0
| | | | | | | | | | | | | | | | | | * src/buffer.c (init_buffer) [USE_MMAP_FOR_BUFFERS]: Remove the assertion that ensured all buffers in pdumped Emacs have non-NULL pointer to buffer text. That was false when Emacs was pdumped with killed buffer(s) in the all_buffers linked list. See https://lists.gnu.org/archive/html/emacs-devel/2020-03/msg00800.html for more details.
* | Deprecate with-displayed-buffer-window, use body-function instead (bug#39822)Juri Linkov2020-03-307-83/+105
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * doc/lispref/display.texi (Temporary Displays): Remove defmac with-displayed-buffer-window. * doc/lispref/windows.texi (Buffer Display Action Alists): Add body-function. * lisp/window.el (with-displayed-buffer-window): Declare macro obsolete. (window--display-buffer): Call 'body-function' after displaying the buffer. * lisp/dired.el (dired-mark-pop-up): * lisp/files.el (save-buffers-kill-emacs): * lisp/minibuffer.el (minibuffer-completion-help): Replace with-displayed-buffer-window with with-current-buffer-window and add action alist entry 'body-function' with former macro body.
* | Support state changing VC operations on directories in Dired (bug#34949)Juri Linkov2020-03-307-37/+90
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lisp/dired-aux.el (dired-vc-next-action): New command. (dired-vc-deduce-fileset): Rename from vc-dired-deduce-fileset in vc.el. * lisp/dired.el (dired-mode-map): Remap vc-next-action to dired-vc-next-action. * lisp/vc/vc-dir.el (vc-dir-mark-files): New function. (vc-dir-refresh): Run hook vc-dir-refresh-hook. * lisp/vc/vc.el (vc-deduce-fileset): Rename arg 'observer' to 'not-state-changing' and document it in docstring. (vc-dired-deduce-fileset): Rename to dired-vc-deduce-fileset in dired-aux.el. * lisp/cedet/ede.el (ede-turn-on-hook, ede-minor-mode): * lisp/desktop.el (desktop-minor-mode-table): Rename the long ago obsolete vc-dired-mode to vc-dir-mode.
* | Use hard links to Emacs executable in "make install" on MS-WindowsEli Zaretskii2020-03-291-11/+5
| | | | | | | | | | * configure.ac (LN_S_FILEONLY): Set to "/bin/ln" for MinGW unconditionally.
* | Improve Tramp cache for asynchronous processesMichael Albinus2020-03-298-90/+130
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lisp/net/tramp-adb.el (tramp-adb-handle-exec-path) (tramp-adb-get-device): * lisp/net/tramp-gvfs.el (tramp-gvfs-handler-askquestion): * lisp/net/tramp-sh.el (tramp-remote-selinux-p, tramp-remote-acl-p) (tramp-open-connection-setup-interactive-shell) (tramp-maybe-open-connection, tramp-get-remote-path) (tramp-get-inline-compress, tramp-get-inline-coding): * lisp/net/tramp-smb.el (tramp-smb-get-cifs-capabilities) (tramp-smb-get-stat-capability): * lisp/net/tramp-sudoedit.el (tramp-sudoedit-remote-acl-p) (tramp-sudoedit-remote-selinux-p): Cache property in main process. * lisp/net/tramp-cache.el (tramp-cache-undefined): New defconst. (tramp-get-hash-table, tramp-connection-property-p): Use it. (tramp-set-connection-property, tramp-flush-connection-property) (tramp-flush-connection-properties): Add sanity checks. (tramp-get-file-property, tramp-set-file-property) (tramp-get-connection-property, tramp-set-connection-property) (tramp-dump-connection-properties): Adapt docstring. * lisp/net/tramp-cmds.el (tramp-cleanup-connection): Delete all processes. * lisp/net/tramp-gvfs.el (tramp-gvfs-unmount): Use `tramp-cleanup-connection'. * lisp/net/tramp-sh.el (tramp-sh-handle-vc-registered): Use `bound-and-true-p'. * lisp/net/tramp.el (tramp-get-process): New defun.
* | ; * doc/lispref/internals.texi (Module Misc): Fix versionPhilipp Stephani2020-03-291-1/+1
| |
* | * lisp/vc/vc-dir.el (vc-dir-root): New command (bug#12492, bug#34949).Juri Linkov2020-03-293-4/+18
| | | | | | | | | | * lisp/vc/vc-hooks.el (vc-menu-map): Change menu command from 'vc-dir' to 'vc-dir-root'.
* | Switch to literal mode with message when regexp is too big in char-fold searchJuri Linkov2020-03-292-9/+9
| | | | | | | | | | | | | | | | | | | | * lisp/char-fold.el (char-fold-to-regexp): Don't use regexp-quote when the length of regexp reaches 5000. (Bug#40216) * lisp/isearch.el (isearch-search): On big regexp in char-fold mode gracefully fall back to literal mode, try to search again and display momentary-message about switching to literal mode. (isearch--momentary-message): Add optional arg SECONDS.
* | Stop using newly-deprecated dosname Gnulib modulePaul Eggert2020-03-286-34/+5
| | | | | | | | | | | | | | | | | | Code is supposed to use the filename module now. * admin/merge-gnulib (GNULIB_MODULES): Replace dosname with filename. * lib/dosname.h: Remove this forwarding stub. * lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate. * lib-src/emacsclient.c, src/fileio.c: Include filename.h instead of dosname.h.
* | Update from GnulibPaul Eggert2020-03-286-38/+125
| | | | | | | | | | | | | | | | | | | | This incorporates: 2020-03-28 Use module 'filename' instead of module 'dosname' 2020-03-28 dosname: Redirect to 'filename' * lib/at-func.c, lib/canonicalize-lgpl.c, lib/dosname.h: Copy from Gnulib. * lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate. * lib/filename.h: New file, copied from Gnulib.
* | * lisp/jit-lock.el (jit-lock-mode): Pass `local` to add-hookStefan Monnier2020-03-281-20/+11
| | | | | | | | | | | | The old code used local=nil knowing that add-hook would affect the local part only anyway. Remove this hideous assumption. Remove redundant `:group` args while we're at it.
* | * lisp/progmodes/ebrowse.el (ebrowse-tags-loop-call): RenameStefan Monnier2020-03-281-24/+22
| | | | | | | | | | | | | | | | | | | | Used to be called `ebrowse-tags-loop-form` and passed to `eval`. Now it's passed to `apply` instead, which is better for karma. (ebrowse-tags-loop-continue, ebrowse-tags-search) (ebrowse-tags-query-replace, ebrowse-tags-search-member-use): Adjust accordingly. (ebrowse-electric-position-mode-map): Move init into declaration. (ebrowse-electric-position-mode): Derive from special.
* | Turn compilation-error-case-fold-search into a defvarMattias Engdegård2020-03-282-6/+10
| | | | | | | | | | | | | | | | | | See bug#40119, and the discussion at https://lists.gnu.org/archive/html/emacs-devel/2020-03/msg00653.html * lisp/progmodes/compile.el (compilation-error-case-fold-search): Turn into a defvar. * etc/NEWS: Update.
* | Tramp cache fixesMichael Albinus2020-03-282-6/+8
| | | | | | | | | | | | * lisp/net/tramp-adb.el (tramp-adb-handle-write-region): * lisp/net/tramp-smb.el (tramp-smb-handle-write-region): Flush the cache after the file has been written.
* | Use ATTRIBUTE_CONST for some bignum functionsPaul Eggert2020-03-272-5/+5
| | | | | | | | | | | | | | * src/bignum.h (mpz_get_d_rounded): * src/lisp.h (bignum_to_double, bignum_to_intmax) (bignum_to_uintmax, bignum_bufsize): Declare as ATTRIBUTE_CONST.
* | * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Declare the type immediatelyStefan Monnier2020-03-271-1/+4
| |
* | * lisp/gnus/gnus-registry.el: Use lexical-bindingStefan Monnier2020-03-271-46/+43
| | | | | | | | | | | | (gnus-registry-install-shortcuts): Use a closure (with dynamic :documentation) (gnus-registry-user-format-function-M): Use define-obsolete-function-alias. (gnus-registry-article-marks-to-names): η-reduce.
* | * lisp/textmodes/tex-mode.el: Replace double-definition hack with an adviceStefan Monnier2020-03-271-33/+27
| | | | | | | | | | | | | | (tex-verbatim-environments): Add "Verbatim". (tex--guess-mode): Rename from tex-guess-mode and return the mode rather than calling it. (tex-mode): Replace second definition with an advice.
* | * lisp/progmodes/ebrowse.el: Prefer hash-tables to obarraysStefan Monnier2020-03-271-245/+167
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Remove redundant :group args. Use `defvar-local` and `setq-local` where possible. (ebrowse-some): Use seq-some instead. (ebrowse-every): Use seq-every-p instead. (ebrowse-position): Use seq-position. (ebrowse--tree-table): Rename from `ebrowse--tree-obarray`. Change all users to use a hash-table rather than an obarray. (ebrowse-for-all-trees): Adjust to the table being a hash-table. (ebrowse-tree-table-as-alist): Rename from `ebrowse-tree-obarray-as-alist`. (ebrowse-build-tree-obarray): Rename from `ebrowse-build-tree-obarray`. (ebrowse-tree-mode): Remove redundant setting of `ebrowse--tree-obarray`. (ebrowse-set-tree-indentation, ebrowse-view-file-other-frame) (ebrowse-last-completion-table): Rename from ebrowse-last-completion-obarray. (ebrowse-position): Make it a proper struct.
* | Port the 'module/async-pipe' test to MS-WindowsEli Zaretskii2020-03-272-7/+44
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These changes let the code compile and produce a valid DLL, but the test hangs. It looks like the hang is in Fdelete_process, when it closes one of the descriptors of the pipe process. In addition, this use of the pipe process cannot currently work on MS-Windows, since make-pipe-process doesn't set up the reader thread to read from the Emacs's side of the pipe, so the select emulation doesn't know there's stuff to read from that pipe. * test/data/emacs-module/mod-test.c [WINDOWSNT]: Include windows.h. (ALIGN_STACK) [!__x86_64__]: Define for 32-bit builds. (sleep_for_half_second): New function. (write_to_pipe): Declare return type differently for WINDOWSNT. Call sleep_for_half_second. (Fmod_test_async_pipe) [WINDOWSNT]: Use _beginthread as substitute for pthread_create. (invalid_finalizer): Replace non_ASCII character in a comment. * test/src/emacs-module-tests.el (module/async-pipe): Skip on MS-Windows, as the test fails and then hangs.
* | ; * etc/NEWS: Fix typos.Michael Albinus2020-03-271-25/+27
| |
* | Add manual and NEWS entries for previous gdb-mi changesYuan Fu2020-03-272-2/+43
| | | | | | | | | | | | | | | | | | | | | | | | * etc/NEWS: Add entries for saving and restoring GDB window configurations. * doc/emacs/building.texi (GDB User Interface Layout): Add documentation for 'gdb-save-window-configuration', 'gdb-load-window-configuration', 'gdb-default-window-configuration-file', 'gdb-window-configuration-directory', 'gdb-restore-window-configuration-after-quit'. Change 'many-windows layout' to 'default layout'.
* | Treat out-of-range positions consistentlyPaul Eggert2020-03-2714-164/+111
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If a position argument to get-byte etc. is an out-of-range integer, treat it the same regardless of whether it is a fixnum or a bignum. * src/buffer.c (fix_position): New function. * src/buffer.c (validate_region): * src/character.c (Fget_byte): * src/coding.c (Ffind_coding_systems_region_internal) (Fcheck_coding_systems_region): * src/composite.c (Ffind_composition_internal): * src/editfns.c (Fposition_bytes, Fchar_after, Fchar_before) (Finsert_buffer_substring, Fcompare_buffer_substrings) (Fnarrow_to_region): * src/fns.c (Fsecure_hash_algorithms): * src/font.c (Finternal_char_font, Ffont_at): * src/fringe.c (Ffringe_bitmaps_at_pos): * src/search.c (search_command): * src/textprop.c (get_char_property_and_overlay): * src/window.c (Fpos_visible_in_window_p): * src/xdisp.c (Fwindow_text_pixel_size): Use it instead of CHECK_FIXNUM_COERCE_MARKER, so that the code is simpler and treats bignums consistently with fixnums. * src/buffer.h (CHECK_FIXNUM_COERCE_MARKER): Define here rather than in lisp.h, and reimplement in terms of fix_position so that it treats bignums consistently with fixnums. * src/lisp.h (CHECK_FIXNUM_COERCE_MARKER): Move to buffer.h. * src/textprop.c (validate_interval_range): Signal with original bounds rather than modified ones.
* | Disable enable-local-variables for hunk-only in diff-syntax-fontify-propsJuri Linkov2020-03-271-1/+3
| | | | | | | | | | * lisp/vc/diff-mode.el (diff-syntax-fontify-props): Let-bind enable-local-variables to nil when hunk-only is non-nil (bug#39190)
* | Refactor and fix typo in CHECK_*_COERCE_MARKERPaul Eggert2020-03-262-52/+41
| | | | | | | | | | | | | | | | | | | | | | | | | | * src/data.c (check_integer_coerce_marker) (check_number_coerce_marker): New functions. Also, fix a typo in the former, by having it use Qinteger_or_marker_p not Qnumber_or_marker_p. (arithcompare, floatop_arith_driver, bignum_arith_driver) (arith_driver, Fplus, Fminus, Ftimes, Fquo, Frem, Fmod) (minmax_driver, Flogand, Flogior, Flogxor, Fadd1, Fsub1): Use them in place of the similarly-named macros. * src/lisp.h (CHECK_NUMBER_COERCE_MARKER) (CHECK_INTEGER_COERCE_MARKER): Remove; no longer used.
* | Add a module function to open a file descriptor connected to a pipe.Philipp Stephani2020-03-269-2/+114
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A common complaint about the module API is that modules can't communicate asynchronously with Emacs. While it isn't possible to call arbitrary Emacs functions asynchronously, writing to a pipe should always be fine and is a pretty low-hanging fruit. This patch implements a function that adapts an existing pipe process. That way, users can use familiar tools like process filters or 'accept-process-output'. * src/module-env-28.h: Add 'open_channel' module function. * src/emacs-module.c (module_open_channel): Provide definition for 'open_channel'. (initialize_environment): Use it. * src/process.c (open_channel_for_module): New helper function. (syms_of_process): Define necessary symbol. * test/src/emacs-module-tests.el (module/async-pipe): New unit test. * test/data/emacs-module/mod-test.c (signal_system_error): New helper function. (signal_errno): Use it. (write_to_pipe): New function running in the background. (Fmod_test_async_pipe): New test module function. (emacs_module_init): Export it. * doc/lispref/internals.texi (Module Misc): Document new module function. * doc/lispref/processes.texi (Asynchronous Processes): New anchor for pipe processes. * etc/NEWS: Document 'open_channel' function.
* | Remove COERCE_MARKERPaul Eggert2020-03-261-8/+2
| | | | | | | | | | | | * src/xdisp.c (COERCE_MARKER): Remove. All uses replaced by Fmarker_position; this is simpler as the macro was invoked only on markers.
* | line-beginning-position args can be bignumsPaul Eggert2020-03-251-9/+17
| | | | | | | | | | * src/editfns.c (Fline_beginning_position, Fline_end_position): Do not restrict integer arguments to fixnums.
* | Fix integer overflow in internal_self_insertPaul Eggert2020-03-251-1/+4
| | | | | | | | | | * src/cmds.c (internal_self_insert): Avoid undefined behavior on integer overflow by using saturated add.
* | Fix integer overflow in forward-pointPaul Eggert2020-03-252-11/+5
| | | | | | | | | | | | * lisp/subr.el (forward-point): Rewrite in Lisp and move here ... * src/cmds.c (Fforward_point): ... from here. This fixes an integer overflow bug with (forward-point most-positive-fixnum).
* | Make compilation-mode regexp matching case-sensitive (bug#40119)Mattias Engdegård2020-03-252-1/+16
| | | | | | | | | | | | | | | | | | | | | | | | The number of regexps is large, they are written independently of one another, and they frequently intersect. Using case-sensitive matching improves separation and performance, and is probably what everyone have being assuming was used by compilation-mode all along. * lisp/progmodes/compile.el (compilation-error-case-fold-search): New. (compilation-parse-errors): Bind case-fold-search to compilation-error-case-fold-search during matching. * etc/NEWS: Announce.
* | Update from gnulibPaul Eggert2020-03-252-2/+10
| | | | | | | | | | | | | | This incorporates: 2020-03-25 getopt-posix: port __GETOPT_PREFIX to macOS 2020-03-22 acl-permissions: Improve autoconf macro * lib/getopt-pfx-core.h, m4/acl.m4: Copy from Gnulib.
* | Pacify --enable-gcc-warnings for lock_filePaul Eggert2020-03-251-15/+9
| | | | | | | | | | * src/filelock.c (lock_file): Pacify gcc -Wmaybe-uninitialized after recent change to this function.
* | * lisp/textmodes/conf-mode.el (conf-mode): Fix last changeStefan Monnier2020-03-251-21/+25
| | | | | | | | | | | | `delay-mode-hooks` cannot be tested from within `define-derived-mode` because it's always non-nil in there, so arrange to test it before we enter the body.
* | Improve the UI of 'list-timers'Eli Zaretskii2020-03-252-5/+16
| | | | | | | | | | | | * lisp/emacs-lisp/timer-list.el (list-timers): Display both "Next" and "Repeat" in units of seconds, for consistency. (timer-list-mode): Add help-echo to column headers.
* | Merge branch 'master' of git.savannah.gnu.org:/srv/git/emacsEli Zaretskii2020-03-254-21/+73
|\ \
| * | Rename dired-mark-region choices and ignore empty region.Juri Linkov2020-03-242-15/+22
| | | | | | | | | | | | | | | | | | | | | | | | * lisp/dired.el (dired-mark-region): Rename choices 'exclusive' to 'file', and 'inclusive' to 'line'. (dired-mark-if, dired-mark): Check for non-empty region explicitly instead of using use-region-p to ignore non-nil value of use-empty-active-region. (Bug#39902)
| * | Fix gravatar testsRobert Pluim2020-03-242-14/+14
| | | | | | | | | | | | | | | | | | | | | | | | * lisp/image/gravatar.el (gravatar--service-libravatar): Don't error when failing to parse email address, just return the default URL. * test/lisp/image/gravatar-tests.el (gravatar-build-url): Adjust for new default gravatar url.
| * | ; fix previous commitRobert Pluim2020-03-241-1/+1
| | |
| * | ; * etc/NEWS: Clarify news entry for message-draft-headers changeEric Abrahamsen2020-03-241-1/+5
| | |
| * | Add support for multiple Gravatar servicesPhilip K2020-03-242-4/+45
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Now supports Libravatar and Unicornify, next to Gravatar (Bug#39965). * lisp/image/gravatar.el (gravatar-base-url): Remove constant. (gravatar-service-alist): List supported services. (gravatar-service): Add user option to specify service, defaults to Libravatar. (gravatar--service-libravatar): New function, libravatar image host resolver implementation. (gravatar-build-url): Use alist gravatar-service-alist instead of gravatar-base-url. * etc/NEWS: Mention new gravatar service option.
* | | Fix sending signals and EOF to the inferior process in gdb-mi.elEli Zaretskii2020-03-241-4/+4
|/ / | | | | | | | | | | * lisp/progmodes/gdb-mi.el (gdb-io-interrupt, gdb-io-quit) (gdb-io-stop, gdb-io-eof): Send signal/EOF to the inferior process, not to GDB. (Bug#40210)
* | Don't add repeated xlmns:xlink declarations in svg-createLars Ingebrigtsen2020-03-241-1/+2
| | | | | | | | | | | | * 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.
* | Make cl-concatenate an alias of seq-concatenateNoam Postavsky2020-03-231-3/+2
| | | | | | | | | | * lisp/emacs-lisp/cl-extra.el (cl-concatenate): Use defalias instead of apply. This is simpler and more efficient.
* | Merge from origin/emacs-27Glenn Morris2020-03-2315-50/+159
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | 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
| * Don't build the Gnulib 'utimens' module on MinGWEli Zaretskii2020-03-231-0/+1
| | | | | | | | | | | | * 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.