Commit graph

2839 commits

Author SHA1 Message Date
Eli Zaretskii
291955a588 Improve documentation of a recent change
* doc/emacs/mule.texi (Select Input Method): Add an @anchor.
* doc/emacs/search.texi (Special Isearch): Add cross-reference and
improve wording.
2020-11-06 13:49:07 +02:00
Juri Linkov
af6891629d Support transient input methods in Isearch mode (bug#44266)
* doc/emacs/mule.texi (Select Input Method): Rename
transient-input-method to activate-transient-input-method.

* doc/emacs/search.texi (Special Isearch):
Document isearch-transient-input-method.

* lisp/international/isearch-x.el (isearch-transient-input-method):
New function.
(isearch-process-search-multibyte-characters):
Call 'deactivate-transient-input-method' after 'read-string'.

* lisp/international/mule-cmds.el (mule-menu-keymap): Remove
duplicate menu item 'describe-input-method'.  Add new menu item
'activate-transient-input-method'.
(default-transient-input-method): Rename from transient-input-method.
(current-transient-input-method)
(previous-transient-input-method): New buffer-local variables.
(deactivate-input-method): Don't add
current-transient-input-method to input-method-history.
(toggle-input-method): Call deactivate-transient-input-method
when current-transient-input-method is non-nil.
(activate-transient-input-method): Rename from transient-input-method.
(deactivate-transient-input-method): New function with body from
renamed function transient-input-method.

* lisp/isearch.el (isearch-menu-bar-map): Add new menu item
'isearch-transient-input-method'.
(isearch-mode-map): Bind 'C-x \' to isearch-transient-input-method.
(isearch-forward): Add isearch-transient-input-method to docstring.
(isearch-message-prefix): Use shorter string for narrowed buffer.
2020-11-06 10:31:58 +02:00
Alan Mackenzie
2ecbf4cfae Allow minibuffer to stay in its original frame. Tidy up this area.
* doc/emacs/mini.texi (Basic Minibuffer): Add an entry for
minibuffer-follows-selected-frame.

* doc/lispref/minibuf.texi (Minibuffer Misc): Describe the new parameter to
minibufferp, LIVE.

* etc/NEWS: Add an entry describing the new minibuffer strategy.

* lisp/cus-start.el (minibuffer-prompt-properties--setter): Add an entry for
minibuffer-follows-selected-frame.

* lisp/minibuffer.el (minibuffer-message): Check for the current buffer being
an _active_ minibuffer rather than merely a minibuffer.

* src/frame.c (do_switch_frame): Call move_minibuffer_onto_frame.

* src/lisp.h (Top level): Add prototypes for move_minibuffer_onto_frame and
is_minibuffer.

* src/minibuf.c (minibuf_follows_frame): New function which ignores local and
let-bound values of minibuffer-follows-selected-frame.
(choose_minibuf_frame): Reformulate this function to reuse a minibuffer window
where possible, and to ensure no other frame has its minibuffer current, but
only when `minibuffer-follows-selected-frame'.
(move_minibuffer_onto_frame): New function.
(live_minibuffer_p): New function.
(Fminibufferp): Add a new &optional parameter LIVE.  Reformulate, possibly
calling live_minibuffer_p.
(read_minibuf): move the incrementation of minibuf_level to before the call of
choose_minibuf_frame.  Empty the miniwindows of frames without an active
minibuffer, rather than of all but the current frame.
(is_minibuffer): New function.
(read_minibuf_unwind): Note the miniwindow being restored and resize all other
miniwindows to zero size.
(minibuffer-follows-selected-frame): New configuration variable.

* src/window.c (candidate_window_p): In some scenarios, check the miniwindow
holds an active minibuffer.

* src/xdisp.c (get_window_cursor_type): Suppress the cursor for non-active
miniwindows, regardless of minibuf_level.
2020-11-05 19:27:43 +00:00
Juri Linkov
a6240cb263 Horizontal mouse wheel scrolling amount (bug#43568)
* lisp/mwheel.el (mouse-wheel-scroll-amount-horizontal): New defcustom.
(mwheel-scroll): Use it.

* doc/emacs/frames.texi (Mouse Commands): Update doc about horizontal
scrolling step.
2020-11-03 21:06:11 +02:00
Eli Zaretskii
3e8cdc404f Improve documentation of a recent commit
* lisp/international/mule-cmds.el (transient-input-method): Doc
fix.  Add :version tag.
(transient-input-method): Doc fix.

* etc/NEWS:
* doc/emacs/mule.texi (Select Input Method): Fix wording of the
last change.
2020-11-02 19:49:32 +02:00
Juri Linkov
030ab2dad5 Transient input methods bound to 'C-x \' (bug#44266)
* lisp/international/mule-cmds.el (ctl-x-map): Bind 'C-x \' to
'transient-input-method'.
(input-method-function): New defcustom.
(transient-input-method): New command.

* doc/emacs/mule.texi (Select Input Method): Document transient-input-method.
2020-11-01 23:35:41 +02:00
Basil L. Contovounesios
5ce37da355 ; * doc/emacs/custom.texi (Keymaps): Fix typo. 2020-11-01 14:46:22 +00:00
Lars Ingebrigtsen
7602ed6b82 Mention the C-c LETTER keybinding convention
* doc/emacs/custom.texi (Keymaps): Reintroduce the text about C-c
LETTER (bug#15917), and clarify.
2020-11-01 12:48:40 +01:00
Stefan Monnier
7103192cd2 * src/xdisp.c (syms_of_xdisp) <"scroll-minibuffer-conservatively">: New var
Fix bug#44070, which causes the minibuffer display to jump upon minor edit

(redisplay_window): Obey it.
* lisp/simple.el (end-of-buffer): Obey it.

* test/src/xdisp-tests.el (xdisp-tests--in-minibuffer): New macro,
extracted from `xdisp-tests--minibuffer-resizing`.
(xdisp-tests--minibuffer-resizing): Use it.
(xdisp-tests--minibuffer-scroll): New test.
2020-10-31 09:07:53 -04:00
Dima Kogan
0836335cdf Add a new command to regenerate a hunk in diff-mode
* lisp/vc/diff-mode.el (diff-refresh-hunk): New function (bug#44312).
(diff-mode-map): Bind C-c C-l.
2020-10-30 14:04:06 +01:00
Neil Roberts
f018cffca0 Use nobreak-space on all non-ASCII whitespace characters
* doc/emacs/display.texi (Text Display): Document it.

* src/xdisp.c (get_next_display_element): Use blankp to test whether
to use the nobreak_space face (bug#44236).
2020-10-30 13:13:31 +01:00
Glenn Morris
0dfb896be2 Merge from origin/emacs-27
e0de9f3295 (origin/emacs-27) Don't skip empty lines when fitting mini...
a4ec03fa9b ; * etc/tutorials/TUTORIAL.de: Fix grammar (Bug#44246)
20c02e628c Improve documentation of display-fill-column-indicator
e2005f1f2a * INSTALL: Mention efaq.texi for installation of intlfonts.
71661b2872 Use WebKit sandboxing

# Conflicts:
#	etc/NEWS
2020-10-27 08:24:56 -07:00
Eli Zaretskii
20c02e628c Improve documentation of display-fill-column-indicator
* lisp/display-fill-column-indicator.el
(display-fill-column-indicator-mode): Mention the globalized
version in the doc string.

* doc/emacs/display.texi (Displaying Boundaries): Improve and
clarify the documentation of display-fill-column-indicator.
Suggest using the minor mode as the primary means for turning the
feature on.

* src/xdisp.c (syms_of_xdisp) <display-fill-column-indicator>
<display-fill-column-indicator-character>: Doc fix.  (Bug#44226)
2020-10-26 18:01:13 +02:00
Stefan Kangas
8c96c720fa Add command package-menu-filter-upgradable
* lisp/emacs-lisp/package.el (package-menu-filter-upgradable):
New command.  (Bug#41436)
(package-menu-mode-map): Bind the new command.
* doc/emacs/package.texi (Package Menu): Document the new command.
2020-10-19 20:30:52 +02:00
Eli Zaretskii
0022935a31 ; * doc/emacs/ack.texi (Acknowledgments): Tweak the purpose description. 2020-10-16 18:42:22 +03:00
Eli Zaretskii
871c027080 Revert "* doc/emacs/ack.texi (Acknowledgments): Remove now deleted files."
This reverts commit 731a26bb50.

We don't support rewriting history!
People who contributed to Emacs development should have their
contributions remain acknowledged forever, even if the files
to which they contributed are deleted at some point.
2020-10-16 16:52:36 +03:00
Stefan Kangas
731a26bb50 * doc/emacs/ack.texi (Acknowledgments): Remove now deleted files.
This is in line with an ack.texi comment that says to "Remove things
that are no longer distributed."  Most files in this list were removed
many years ago.
2020-10-16 15:15:47 +02:00
Lars Ingebrigtsen
c6ecf6428e Make C-x C-e' work more like C-M-x' on defvar etc
* doc/emacs/building.texi (Lisp Eval): Document it.

* lisp/emacs-lisp/pp.el (pp-eval-last-sexp): Ditto.

* lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp): Work more
like `eval-defun': Re-evaluate defvar/defcustom/defface forms.
2020-10-15 16:26:45 +02:00
Juri Linkov
4bf9bb56b5 Highlight regexp sub-expressions in query-replace
* lisp/replace.el (query-replace-highlight-submatches): New defcustom.
(replace-submatches-overlays): New variable.
(replace-highlight): Use query-replace-highlight-submatches.
(replace-dehighlight): Use query-replace-highlight-submatches.

* doc/emacs/search.texi (Query Replace):
Add documentation for query-replace-highlight-submatches.

Suggested by Drew Adams <drew.adams@oracle.com> in bug#43702.
2020-10-14 11:56:23 +03:00
Ernesto Alfonso
1ee5a4cb1a Add option to highlight the 'next-error' error message
* lisp/simple.el (next-error-message-highlight):
(next-error-message): New faces (bug#32676).
(next-error--message-highlight-overlay): New internal variable.
(next-error-message-highlight): New function.
(next-error-found): Call the function.
2020-10-14 07:45:21 +02:00
Alex Branham
64c8511664 Add a new variable tab-first-completion
* doc/emacs/indent.texi (Indent Convenience): Mention it.

* doc/lispref/text.texi (Mode-Specific Indent): Document it.

* lisp/indent.el (tab-first-completion): New variable (bug#34787).
(indent-for-tab-command): Use it.
2020-10-14 07:26:58 +02:00
Eli Zaretskii
993116eec9 Fix documentation of Outline cycling commands
* lisp/outline.el (outline-mode-map): Fix wording of a comment.

* doc/emacs/text.texi (Outline Visibility): Fix wording and markup
of a recently added paragraph.  Improve indexing.

* etc/NEWS: Fix whitespace of a recently added entry.
2020-10-13 19:39:11 +03:00
Yuan Fu
1b45079ffa Add cycling commands to outline
* lisp/outline.el (outline--cycle-state, outline-has-subheading-p)
(outline-cycle, outline-cycle-buffer): New functions.
(outline-mode-map): Add key bindings for the two new commands.
(outline--cycle-buffer-state): New variable.
* doc/emacs/text.text (Outline Visibility): Add 'outline-cycle' and
'outline-cycle-buffer'.
* etc/NEWS (Outline): Record the change (bug#41130).
2020-10-13 05:14:21 +02:00
Lars Ingebrigtsen
905d08c98a Add a reference to the shortdoc command in the Emacs manual
* doc/emacs/help.texi (Name Help): Mention shortdoc.
2020-10-12 00:07:58 +02:00
Eli Zaretskii
7be18bbfe1 Improve documentation of 'isearch-group-N' faces
* etc/NEWS:
* doc/emacs/search.texi (Search Customizations): Improve and
clarify the wording of the 'isearch-group-N' faces description.

* lisp/isearch.el (search-highlight-submatches): Doc fix.
2020-10-07 12:12:06 +03:00
Juri Linkov
46aa145d39 Add match-data to isearch state and repeat faces to highlight group matches
* lisp/isearch.el (isearch-match-data): New variable.
(isearch-mode): Set isearch-match-data to nil.
(isearch-update): Call isearch-highlight with isearch-match-data.
(isearch--state): Add isearch-match-data.
(isearch--set-state): Restore isearch-match-data.
(with-isearch-suspended): Preserve isearch-match-data.
(isearch-search): Set isearch-match-data to integers.
(isearch-group-1): Rename from isearch-group-odd and adjust colors.
(isearch-group-2): Rename from isearch-group-even and adjust colors.
(isearch-highlight): Add optional arg 'match-data'.
Rewrite search-highlight-submatches part to recycle faces.

* doc/emacs/search.texi (Search Customizations): Amend the
documentation for isearch-group faces.

(bug#6227, bug#43702)
2020-10-06 23:14:26 +03:00
Daniel Martín
cbcca8159d Add missing full stop in MS-DOS processes documentation
* doc/emacs/msdos-xtra.texi (MS-DOS Processes): Minor copy edig
(bug#43820).
2020-10-06 03:44:07 +02:00
Daniel Martín
a447d5e5a9 Add missing full stop in MS-DOS processes documentation
* doc/emacs/msdos-xtra.texi (MS-DOS Processes): Minor copy edig
(bug#43820).
2020-10-06 03:42:44 +02:00
Juri Linkov
306fcc59dc Use new faces isearch-group-odd and isearch-group-even (bug#43702)
* lisp/isearch.el (isearch-group-odd, isearch-group-even): New faces
instead of isearch-group-1 .. isearch-group-9.
(isearch-highlight): Use new faces.
2020-10-01 22:17:40 +03:00
Stefan Monnier
8f6bde6371 * doc/emacs/basic.texi (Basic Undo): Explain the C-/ situation in xterm
AFAICT, in ttys you can send a `C-_` to Emacs either by pressing
`C-/` (e.g. xterm, uxterm, rxvt, xfce4-terminal, gnome-terminal)
or by pressing `C--` (e.g. rxvt, Linux console).
2020-09-30 19:08:47 -04:00
Richard M Stallman
0434c1a9a6 Clarify previous undo keys change
Clarify which terminals allow C-/ and which make C-_ easy to type.
2020-09-30 18:15:43 -04:00
Eli Zaretskii
19042966f2 Minor documentation copyedits
* etc/NEWS:
* doc/emacs/dired.texi (Dired Enter): Fix wording, punctuation,
and typos in doc of 'dired-switches-in-mode-line'.
2020-09-30 19:38:55 +03:00
Drew Adams
cc3e369ab0 Allow controlling the Dired switches shown in the mode line
* doc/emacs/dired.texi (Dired Enter): Document it (bug#41250).

* lisp/dired.el (dired-switches-in-mode-line): New variable (bug#41250).
(dired-sort-set-mode-line): Use it.
2020-09-30 17:59:59 +02:00
Glenn Morris
f2a6bbefa9 Merge from origin/emacs-27
0b78785a9b (origin/emacs-27) Minor copyedits in the Emacs user manual
0dfc6fdc1f Followup to a recent change in menu-bar.el
767713682c Enable "Continue Tags Search" menu item only when it can b...
4bb7532163 Fix soap-client URL
2020-09-27 09:37:10 -07:00
Glenn Morris
2e8c9ede15 Merge from origin/emacs-27
f31c6792ab Fix support for Zip64 zip files
ba635a19fb * lisp/hi-lock.el (hi-lock-auto-select-face): Doc fix.  (B...
cc8fef2bdd Avoid infinite recursion with 'relative' line numbers display
395f10cb98 ; Fix more trivial typos
bf4accb65e ; Fix some trivial typos

# Conflicts:
#	etc/NEWS
#	lisp/arc-mode.el
2020-09-27 09:37:10 -07:00
Eli Zaretskii
c2da21c4cc ; * doc/emacs/building.texi (Grep Searching): Fix a typo. 2020-09-27 16:00:39 +03:00
Simon Lang
cea06818a1 Add a new grep-match-regexp variable
* doc/emacs/building.texi (Grep Searching): Document it.

* lisp/progmodes/grep.el (grep-match-regexp): New variable (bug#41766).
(grep-filter): Use it.
2020-09-27 14:55:29 +02:00
Eli Zaretskii
0b78785a9b Minor copyedits in the Emacs user manual
* doc/emacs/emacs.texi (Top): Remove "real-time" from the Emacs
description; add "advanced", to be consistent with what we say in
the Introduction section.  (Bug#43633)
2020-09-27 09:09:27 +03:00
Eli Zaretskii
c37370a7a0 Improve documentation of the 'abbrev-suggest' feature
* lisp/abbrev.el (abbrev-suggest, abbrev-suggest-hint-threshold)
(abbrev-suggest-show-report): Improve wording of the doc strings.

* doc/emacs/abbrevs.texi (Abbrevs Suggestions): Fix the typo in
the node name.  Improve wording.
* doc/emacs/emacs.texi (Top): Add the new node in the @detailmenu
section.

* etc/NEWS: Improve wording of the NEWS entry for
'abbrev-suggest'.
2020-09-27 08:57:17 +03:00
Mathias Dahl
f43d9d94aa Abbrev suggestions helps users remember to use defined abbrevs
* lisp/abbrev.el (abbrev-suggest): New defcustom.
    (abbrev-suggest-hint-threshold): New defcustom.
    (abbrev--suggest-get-active-tables-including-parents): New defun.
    (abbrev--suggest-get-active-abbrev-expansions): New defun.
    (abbrev--suggest-count-words): New defun.
    (abbrev--suggest-get-previous-words): New defun.
    (abbrev--suggest-above-threshold): New defun.
    (abbrev--suggest-saved-recommendations): New defvar.
    (abbrev--suggest-inform-user): New defun.
    (abbrev--suggest-shortest-abbrev): New defun.
    (abbrev--suggest-maybe-suggest): New defun.
    (abbrev--suggest-get-totals): New defun.
    (abbrev-suggest-show-report): New defun.
    (expand-abbrev): If the previous word was not an abbrev, maybe
    suggest an abbrev to the user.
    * doc/emacs/abbrevs.texi (Abbrev suggestions): New section.
    * etc/NEWS: Announce abbrev suggestions.
2020-09-26 16:01:59 -04:00
Juri Linkov
1e7f636576 Horizontal scrolling for mouse wheel with Shift modifier (bug#43568)
* lisp/mwheel.el (mouse-wheel-scroll-amount): Change 'shift' default value
from 5 to 'hscroll'.  Add new option "Scroll horizontally" for 'hscroll'.
(mwheel-scroll): Handle value 'hscroll' and call mwheel-scroll-left-function
or mwheel-scroll-right-function.

* doc/emacs/frames.texi (Mouse Commands): Update for horizontal scrolling
with Shift modifier.
2020-09-24 22:25:03 +03:00
Juri Linkov
dc86c4cc0b New command goto-line-relative (bug#5042, bug#9917)
* lisp/simple.el (goto-line-read-args): New function with code from goto-line.
(goto-line): New arg RELATIVE.  Also use 'widen-automatically' to
leave all lines accessible in the narrowed buffer.
(goto-line-relative): New command.

* lisp/info.el (Info-mode-map): Remap 'goto-line' to 'goto-line-relative'.

* doc/emacs/basic.texi (Moving Point):
* doc/emacs/display.texi (Optional Mode Line): Mention goto-line-relative.
2020-09-23 22:39:32 +03:00
Lars Ingebrigtsen
d2b754ec1a Add more isearch submatch faces
* doc/emacs/search.texi (Search Customizations): Adjust
documentation.
* lisp/isearch.el (search-highlight-submatches): Be a boolean.
(isearch-group-{6-9}): New faces.
(isearch-highlight): Use the variable as a boolean.
2020-09-21 15:57:00 +02:00
Stefan Kangas
bf4accb65e ; Fix some trivial typos 2020-09-21 15:04:55 +02:00
Lars Ingebrigtsen
e72d3793bc Allow disabling the verbose eldoc truncation message
* doc/emacs/programs.texi (Lisp Doc): Document it.

* lisp/emacs-lisp/eldoc.el (eldoc-display-truncation-message): New
variable (bug#43543).
(eldoc--handle-docs): Use it.
2020-09-21 14:15:39 +02:00
Eli Zaretskii
209dfa11a4 Improve documentation of a recently-added feature
* lisp/isearch.el (search-highlight-submatches): Improve the doc
string.

* doc/emacs/search.texi (Search Customizations): Improve the
documentation of 'search-highlight-submatches'.

* etc/NEWS: Minor change of the entry for
'search-highlight-submatches'.
2020-09-20 17:16:38 +03:00
Juri Linkov
09e109851b Highlight regexp sub-expressions
* doc/emacs/search.texi (Search Customizations): Document it.

* lisp/isearch.el (search-highlight-submatches): New variable.
(isearch-group-1, isearch-group-2, isearch-group-3)
(isearch-group-4, isearch-group-5): New faces.
(isearch-highlight): Use them.
(isearch-dehighlight): Ditto (bug#6227).
2020-09-20 15:46:19 +02:00
Earl
676398dd7d Add new tab command `C-x t C-r'
* doc/emacs/misc.texi (FFAP): Document new commands (bug#43503).

* lisp/ffap.el (ffap-read-only-other-tab): New command.

* lisp/tab-bar.el (find-file-read-only-other-tab): New command and
keystroke.
2020-09-20 11:36:52 +02:00
Mauro Aranda
1278a9a907 New command: revert-buffer-with-fine-grain
* doc/emacs/files.texi (Reverting): Document the new command and the
new variable.

* etc/NEWS: Mention the new command and the new variable.

* lisp/files.el (revert-buffer-with-fine-grain): New command.  Revert
a buffer trying to be non-destructive, by using replace-buffer-contents.
(revert-buffer-insert-file-contents-delicately): New function, alternative
to revert-buffer-insert-file-contents-function--default-function.
(revert-buffer-with-fine-grain-max-seconds): New variable.  Passed as
argument MAX-SECS of replace-buffer-contents.

* test/lisp/files-tests.el (files-tests-lao files-tests-tzu): Helper
variables, taken from diffutils manual, to test reverting a buffer.
(files-tests-revert-buffer)
(files-tests-revert-buffer-with-fine-grain): New tests (bug#18).
2020-09-20 01:04:39 +02:00
Richard Stallman
7fec0a444e Document easy ways of typing undo key on TTY frames
* doc/emacs/basic.texi (Basic Undo): Document the easiest way to
type the undo key.

* etc/tutorials/TUTORIAL: Describe typing C-_ without the Shift
key.
2020-09-18 10:50:57 +03:00