aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Fix bug when completing file namesscratch/a-modest-completion-redesign-proposalJoão Távora2019-11-101-3/+3
| | | | | * lisp/minibuffer.el (completion--nth-completion): Fix bug when requote function is needed.
* Redesign completion style definition mechanismStefan Monnier2019-11-101-27/+43
| | | | | | | | | | | | | | * lisp/minibuffer.el (completion-styles-alist): Don't define flex here. (completion-styles-try-completion) (completion-styles-all-completions): New generics. (completion--nth-completion): Use them. Return a cons of completions and metadata. (completion-all-completions): Adjust metadata here. (completion--flex-adjust-metadata): Return adjusted metadata entries. (completion-styles-try-completion flex) (completion-styles-all-completions flex): Implement.
* Revert "Nudge icomplete-mode a little closer to fido-mode"João Távora2019-11-091-13/+2
| | | | | | | | | Fixes bug#38131. This is not the best way to have fido-mdoe emulate that particular bit of ido-mode. This reverts commit 5761a1a3939e23d8e8c725241dd9398a12f191b0.
* Rename some commands to reflect they are fido-mode specificJoão Távora2019-11-091-8/+8
| | | | | | | | * lisp/icomplete.el (icomplete-fido-kill) (icomplete-fido-delete-char, icomplete-fido-ret) (icomplete-fido-backward-updir): Rename from icomplete-magic-ido-* versions. (icomplete-fido-mode-map): Use new command names.
* Protect flex's display-sort-function against 0-length candidatesJoão Távora2019-11-091-2/+3
| | | | | * lisp/minibuffer.el (completion--flex-adjust-metadata): Assume a candidate missing a score has a score of 0.
* Widen around c-font-lock-fontify-region. This fixes bug #38049.Alan Mackenzie2019-11-091-38/+40
| | | | | | * lisp/progmodes/cc-mode (c-font-lock-fontify-region): Widen in this function, to ensure that the CC Mode font locking mechanism can examine characters outside the given region.
* CC Mode. Allow fontification of "wrong" style comments with warning face.Alan Mackenzie2019-11-096-9/+126
| | | | | | | | | | | | | | | | | | | | | | | | | | This fixes bug #4192. * etc/NEWS: Add a new entry. * lisp/progmodes/cc-defs.el (c-font-lock-flush): New macro. * lisp/progmodes/cc-cmds.el (c-toggle-comment-style): On toggling the comment style, invoke c-font-lock-flush when c-mark-wrong-style-of-comment is non-nil, to cause that marking to be done instead on the other style of comment. * lisp/progmodes/cc-fonts.el (c-maybe-font-lock-wrong-style-comments): New function. (c-cpp-matchers): Call c-maybe-font-lock-wrong-style-comments when appropriate. * lisp/progmodes/cc-vars.el (c-mark-wrong-style-of-comment): New customizable option. * doc/misc/cc-mode.texi (top level, Indentation Commands, Guessing the Style, Custom Macros): For some opening quote marks, correct '' to ``. (Minor Modes): Add an xref to the new page "Wrong Comment Style" in a footnote. (Wrong Comment Style): New page.
* Fix unresponsive Help menu in macOSNick Helm2019-11-091-8/+16
| | | | | * src/nsterm.m (ns_check_menu_open): Don't postpone mouse drag and non-user-generated mouse down events (Bug#31371).
* Avoid compiler warnings in addpm.c and ddeclient.cEli Zaretskii2019-11-092-6/+6
| | | | | | | * nt/ddeclient.c (DdeCallback): * nt/addpm.c (DdeCallback): Modify types of the last 2 arguments to avoid compiler warnings in 64-bit builds. (Bug#38040)
* Fix last changeEli Zaretskii2019-11-092-4/+6
| | | | | | | | | * lisp/simple.el (goto-history-element) (next-history-element): Fix quoting of "future history". * doc/lispref/minibuf.texi (Minibuffer Commands) (Text from Minibuffer): Add index entry and cross-reference for "future history". (Bug#38026)
* Mention future history in history-related minibuffer commandsHong Xu2019-11-092-4/+10
| | | | | | | | | * lisp/simple.el (goto-history-element): * doc/lispref/minibuf.texi (Minibuffer Commands): Explain negative NABS. * lisp/simple.el (next-history-element): * doc/lispref/minibuf.texi (Minibuffer Commands): Mention "future history." (Bug#38026)
* Fix some quoting glitches in doc stringsPaul Eggert2019-11-0811-58/+58
| | | | This also fixes a misplaced "only".
* * lisp/ffap.el (ffap-read-file-or-url): Fix some URL casesStefan Monnier2019-11-081-14/+24
|
* * lisp/ffap.el (ffap-read-file-or-url): Simplify furtherStefan Monnier2019-11-081-28/+20
|
* * lisp/ffap.el (ffap-read-file-or-url): Use `read-file-name`Thierry Volpiatto2019-11-081-31/+7
| | | | | | | | Since we use `url-handler-mode` to deal with URLs, `read-file-name` works just as well, with the added benefit that it interacts correctly with packages that rebind `read-file-name-function`, such as Helm. (ffap-read-url-internal, ffap-read-file-or-url-internal): Remove, unused.
* Fix MS-Windows version reference in FAQEli Zaretskii2019-11-081-4/+6
| | | | | * doc/misc/efaq-w32.texi (Which versions of Windows): Clarify that we support all recent versions of MS-Windows. (Bug#38023)
* Nudge icomplete-mode a little closer to fido-modeJoão Távora2019-11-081-2/+13
| | | | | | * lisp/icomplete.el (icomplete-completions): Don't use ellipsis when truncating determ in fido-mode. Highlight the center part of determ with icomplete-first-match.
* Have pcm styles apply faces to face prop, not font-lock-faceJoão Távora2019-11-081-3/+3
| | | | | | | | This is the way the basic completion styles work. This fixes candidate highlighting in icomplete. * lisp/minibuffer.el (completion-pcm--hilit-commonality): Apply faces to 'face property, not font-lock-face.
* Minor copyedits in ELisp manualEli Zaretskii2019-11-081-3/+2
| | | | | * doc/lispref/lists.texi (Sets And Lists): Minor rewording of the "Common Lisp note". (Bug#37811)
* Ensure building and running on non-IPv6 capable hosts worksRobert Pluim2019-11-082-13/+22
| | | | | | | | | | | * src/process.c (Fmake_network_process) [AF_INET6]: Only build ::1 localhost when IPv6 is supported. (Fnetwork_lookup_address_info) [AF_INET6]: Move check for Qipv6 inside ifdef, since its definition depends on AF_INET6. Don't return IPv6 addresses when they're not supported. * test/src/process-tests.el (lookup-family-specification, lookup-google): Only do IPv6 lookup if IPv6 is supported.
* Handle case where a face's :extend attribute is unspecified (Bug#37774)Jimmy Aguilar Mena2019-11-081-4/+10
| | | | | * src/xfaces.c (merge_face_vectors, merge_named_face): Handle case where the :extend attribute's value is 'unspecified' (Bug#37774).
* * lisp/emacs-lisp/easymenu.el: Don't quote lambdasStefan Monnier2019-11-071-6/+6
| | | | | (easy-menu-do-define, easy-menu-make-symbol): Replace `(lambda ..) with a closure.
* Handle different system names of w32 in Tramp (Bug#38079)Michael Albinus2019-11-071-4/+9
| | | | | * lisp/net/tramp.el (tramp-restricted-shell-hosts-alist): Initialize with `system-name' in small and capital chars.
* Describe IPv6 format in docstring for 'make-network-process'Robert Pluim2019-11-071-0/+2
| | | | | * src/process.c (Fmake_network_process): Add description of IPv6 address format.
* Revert "Don't flash previous buffer when connecting with emacsclient"Eli Zaretskii2019-11-071-50/+39
| | | | | | This reverts commit 49fc040077b33bd1e78ee425575e76329b772a41. It turns out that the fix for a minor aesthetical annoyance caused much more serious bugs: bug#31038, bug#35726, Bug#37097,
* ; * etc/NEWS: Fix wording of last change.Eli Zaretskii2019-11-071-2/+2
|
* python.el: Pdbtracking improvementsAndrii Kolomoiets2019-11-072-25/+140
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Allow not to kill buffers when pdbtracking session is finished. Pdbtracking session considered finished judging from the user input. * lisp/progmodes/python.el (python-pdbtrack-kill-buffers): New customizable variable. (python-pdbtrack-set-tracked-buffer): Use it. (python-pdbtrack-unset-tracked-buffer) (python-pdbtrack-tracking-finish): New functions. (python-pdbtrack-continue-command, python-pdbtrack-exit-command): New customizable variables. (python-pdbtrack-process-sentinel): New function. Finish pdbtracking session when process is killed. (python-pdbtrack-prev-command-continue): New variable. (python-pdbtrack-comint-input-filter-function): New function. Finish pdbtracking session based on commands sent to pdb. (python-pdbtrack-comint-output-filter-function): Unset/set tracking buffer if looking at pdb prompt; finish pdbtracking session if filename of current stack frame starts with "<" e.g. "<stdin>". (python-pdbtrack-comint-output-filter-function): Don't override overlay-arrow-string. (python-pdbtrack-setup-tracking): New function. (inferior-python-mode): Use it. (python-pdbtrack-stacktrace-info-regexp): Default value is changed. Must also match lines with filename like "<stdin>" and "<string>". * etc/NEWS: Mention python-pdbtrack-kill-buffers
* ; * etc/NEWS: Minor copyedits in the Fido mode entry.Eli Zaretskii2019-11-071-4/+5
|
* Make ange-ftp fit for tramp-testsMichael Albinus2019-11-072-133/+242
| | | | | | | | | | | | | | | | | | | | | | | | | | * lisp/net/ange-ftp.el (ange-ftp-repaint-minibuffer): Use empty message. (ange-ftp-quote-string): Unquote the string. (ange-ftp-substitute-in-file-name, ange-ftp-access-file) (ange-ftp-copy-directory, ange-ftp-make-symbolic-link) (ange-ftp-add-name-to-file): New defuns. Set 'ange-ftp property. (ange-ftp-real-substitute-in-file-name) (ange-ftp-real-copy-directory): New defuns. (ange-ftp-file-name-as-directory): Care about `non-essential'. (ange-ftp-file-attributes): Handle ID-STRING. (ange-ftp-copy-file-internal, ange-ftp-rename-file) (ange-ftp-make-directory): Improve error handling. (ange-ftp-insert-directory): Initialize SWITCHES if they are nil. * test/lisp/net/tramp-tests.el (ange-ftp-make-backup-files): Declare. (tramp-test39-make-nearby-temp-file, tramp--test-ange-ftp-p): New defun. (tramp-test05-expand-file-name-relative) (tramp-test06-directory-file-name, tramp-test10-write-region) (tramp-test11-copy-file, tramp-test12-rename-file) (tramp-test17-insert-directory) (tramp-test26-file-name-completion) (tramp-test37-make-auto-save-file-name) (tramp-test38-find-backup-file-name) (tramp--test-special-characters): Use it.
* Clean up major mode check in package-menu-modeStefan Kangas2019-11-071-8/+20
| | | | | | | | | | | | | | * lisp/emacs-lisp/package.el (package--ensure-package-menu-mode): Extract function to warn about incorrect major mode... (package-menu-toggle-hiding, package-menu-refresh) (package-menu-execute): ...from here. (package-menu--mark-upgrades-1): And here, but move call... (package-menu-mark-upgrades): ...here instead. (package-menu-hide-package, package-menu-mark-delete) (package-menu-mark-install, package-menu-mark-unmark) (package-menu-quick-help, package-menu-get-status) (package-menu-filter-by-keyword, package-menu-filter-by-name) (package-menu-clear-filter): Add call to new function. (Bug#37891)
* Test that comint-password-prompt-regexp matches "git push"Stefan Kangas2019-11-071-0/+1
| | | | | | * test/lisp/comint-tests.el (comint-testsuite-password-strings): Test that 'comint-password-prompt-regexp' matches 'git push' output. (Bug#20910)
* * lisp/dired-aux.el (dired-vc-rename-file): New defcustom.Juri Linkov2019-11-073-2/+21
| | | | | | | | | | (dired-rename-file): Call vc-rename-file when dired-vc-rename-file is non-nil. * lisp/vc/vc.el (vc-rename-file): Allow renaming added files. Call vc-file-clearprops on new file too for the case when old and new files were renamed to each other back and forth. https://lists.gnu.org/archive/html/emacs-devel/2019-11/msg00069.html
* * lisp/tab-bar.el (tab-bar-history-old): Rename from tab-bar-history-current.Juri Linkov2019-11-071-10/+10
| | | | | (tab-bar-history-old-minibuffer-depth): Rename from tab-bar-history--minibuffer-depth.
* * lisp/tab-line.el: More configurability for tab buffer groups.Juri Linkov2019-11-071-33/+51
| | | | | | | | | | | | * lisp/tab-line.el (tab-line-tabs-buffer-group-function) (tab-line-tabs-buffer-group-sort-function) (tab-line-tabs-buffer-groups-sort-function): New defvars. (tab-line-tabs-buffer-group-name): Rename from tab-line-tabs-buffer-groups--name and use tab-line-tabs-buffer-group-function. (tab-line-tabs-buffer-groups): Use tab-line-tabs-buffer-groups-sort-function and tab-line-tabs-buffer-group-sort-function. (tab-line-new-tab): Let bind tab-line-tabs-buffer-groups to mouse-buffer-menu-mode-groups.
* Simplify fixnum division slightlyPaul Eggert2019-11-061-4/+6
| | | | | | * src/data.c (arith_driver): Streamline fixnum division a bit more, and add a comment about why overflow is impossible. This responds to a private comment by Stefan Monnier.
* Add a full set of CC Mode language variables to js.el.Alan Mackenzie2019-11-061-8/+21
| | | | | | | | | | | | This will allow js.el to work after maintenance changes in CC Mode, e.g. the fix to bug #11165. * lisp/progmodes/js.el (top level): Create a CC Mode derived language called js-mode and based on Java Mode. (js-mode): call c-init-language-vars for js-mode. Remove the direct settings of several CC Mode language variables which are now defined through the derived language mechanism. Call c-set-style and set up the needed style variables c-block-comment-prefix and c-comment-prefix-regexp.
* Minor fix in the Emacs manualEli Zaretskii2019-11-061-9/+10
| | | | | * doc/emacs/msdos.texi (ls in Lisp): Fix the description of 'ls-lisp-verbosity'. (Bug#38077)
* time-stamp: add support for time zone numeric offsetStephen Gildea2019-11-062-7/+24
| | | | | | | | | | | | | * time-stamp.el: Implement %:z as expanding to the numeric time zone offset, to address the feature request of bug#32931. Do not document it yet, to discourage compatibility problems in mixed Emacs 26 and Emacs 27 environments. Documentation will be added in a subsequent release at least two years later. (We cannot yet use %z for numeric time zone because in Emacs 26 it was documented to do something else.) * time-stamp-tests.el (time-stamp-test-format-time-zone): expand this test and break it into two tests, time-stamp-test-format-time-zone-name and time-stamp-test-format-time-zone-offset.
* More error checks in Tramp's make-directoryMichael Albinus2019-11-067-8/+29
| | | | | | | | | | | | | | * lisp/net/tramp-adb.el (tramp-adb-handle-make-directory): * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-make-directory): * lisp/net/tramp-sh.el (tramp-sh-handle-make-directory): * lisp/net/tramp-smb.el (tramp-smb-handle-make-directory): * lisp/net/tramp-sudoedit.el (tramp-sudoedit-handle-make-directory): Signal `file-already-exists' if DIR exists. * test/lisp/net/tramp-tests.el (tramp-test04-substitute-in-file-name): Fix thinko. (tramp-test13-make-directory, tramp-test14-delete-directory) (tramp-test15-copy-directory): Extend tests.
* Fix problem with my last commit in package.elStefan Kangas2019-11-061-3/+3
| | | | | | * lisp/emacs-lisp/package.el (package-menu--refresh-archives): Rename from duplicated name package-menu--refresh. (Bug#38084) (package-menu-mode, list-packages): Use new name.
* Update from GnulibPaul Eggert2019-11-052-26/+14
| | | | | | | This incorporates: 2019-10-24 timespec-add, timespec-sub: simplify * lib/timespec-add.c, lib/timespec-sub.c: Copy from Gnulib.
* Remove unneeded overflow check in integer divisionPaul Eggert2019-11-051-4/+3
| | | | | | | * src/data.c (arith_driver): Remove unnecessary runtime test, since integer overflow is impossible on division of fixnums, given that the worst case is MOST_NEGATIVE_FIXNUM / -1 which is representable as an EMACS_INT (albeit not as a fixnum).
* Avoid changing value of defcustom package-enable-at-startupStefan Kangas2019-11-063-10/+13
| | | | | | | | | | | | | | * lisp/emacs-lisp/package.el (package--activated): New variable to avoid changing value of defcustom 'package-enable-at-startup'. (package-initialize): Don't set 'package-enable-at-startup'. (package-initialize, package-activate-all): Set 'package--activated' instead of 'package-enable-at-startup'. (package--initialized): Add doc string. * lisp/startup.el (command-line): Check if 'package--activated' is non-nil before activating packages. * doc/lispref/package.texi (Packaging Basics): Update docs.
* Make 'g' refresh package data in package menuStefan Kangas2019-11-063-10/+24
| | | | | | | | | | | * lisp/emacs-lisp/package.el (package-menu--refresh): Rename from 'package-menu-refresh', make internal and non-interactive. (package-menu-mode-map, package-menu-mode-menu, package-menu-mode) (list-packages): Use the above. (Bug#35504) (package-menu-refresh): Redefine as obsolete fuction alias for 'revert-buffer'. * doc/emacs/package.texi (Package Menu): Document it. * etc/NEWS: Announce it.
* Rename *-multiframe-window to *-window-any-frameStefan Kangas2019-11-064-5/+18
| | | | | | | | | | | | | | Suggested by Drew Adams. * lisp/frame.el (next-multiframe-window): Define as obsolete alias for... (next-window-any-frame): ...new function name. (previous-multiframe-window): Define as obsolete alias for... (previous-window-any-frame): ...new function name. (Bug#12436) * lisp/term/ns-win.el (global-map): Use new command name. * doc/emacs/windows.texi (Other Window): Document it. * etc/NEWS: Announce it.
* Follow JSONRPC spec by not sending :result field on errorsJoão Távora2019-11-051-3/+7
| | | | | | | | Also don't send :error field on non-errors. * lisp/jsonrpc.el (jsonrpc--reply): Don't send :result and :error if none supplied. (Version): Bump to 1.0.8
* Add prefix arg to more isearch commands (bug#14563)Juri Linkov2019-11-062-17/+23
| | | | | | * lisp/isearch.el (isearch--yank-char-or-syntax) (isearch-yank-word-or-char, isearch-yank-symbol-or-char) (isearch-yank-until-char): Add optional prefix arg.
* * lisp/tab-line.el: New option for tabs where buffers are grouped by mode.Juri Linkov2019-11-061-29/+109
| | | | | | | | | | | | | * lisp/tab-line.el (tab-line-tabs-function): Add option tab-line-tabs-buffer-groups. (tab-line-tabs-buffer-groups): New defvar defaulted to mouse-buffer-menu-mode-groups. (tab-line-tabs-buffer-groups--name, tab-line-tabs-buffer-groups): New functions. (tab-line-format): Support tabs in the format '(tab (name . "name") ...)'. (tab-line-select-tab): Move part of code to tab-line-select-tab-buffer. (tab-line-select-tab-buffer): New function. (tab-line-tab-current): Rename from tab-line-tab-selected.
* Document fido-modeJoão Távora2019-11-053-7/+36
| | | | | | | | | | | * 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.
* New fido-mode, emulates ido-mode with icomplete-modeJoão Távora2019-11-051-15/+37
| | | | | | * lisp/icomplete.el (icomplete-fido-mode-map): New variable. (icomplete--fido-mode-setup): New function. (fido-mode): New global minor mode.