1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-02-03 14:10:47 -08:00
Commit graph

8756 commits

Author SHA1 Message Date
Amin Bandali
344f769491
Add support for using a TLS client certificate with 'erc-tls' (bug#47788)
* lisp/erc/erc-backend.el (erc-session-client-certificate): New
buffer-local variable storing the TLS client certificate used for the
current connection.
(erc-open-network-stream): Use open-network-stream instead of
make-network-process, and pass any additional arguments to it.
(erc-server-connect): Add an optional client-certificate argument
that if present is passed with the :client-certificate keyword as part
of the arguments to erc-server-connect-function.
* lisp/erc/erc.el (erc-open): Add new optional client-certificate
argument, set it as erc-session-client-certificate, and pass it along
to erc-server-connect.
(erc): Clarify documentation string with respect to the full-name
argument.
(erc-tls): Add new client-certificate keyword argument and pass it in
the direct call to erc-open (instead of going through erc).
(erc-open-tls-stream): Pass any additional arguments (such as
:client-certificate) to open-network-stream.  Also allow overriding
:nowait if desired.

* doc/misc/erc.texi: Add documentation for erc-tls, including the new
:client-certificate argument.

* etc/NEWS: Announce the change.
2021-04-22 20:22:38 -04:00
Dmitry Gutov
522c34f0e8 Remove the binding for xref-quit-and-goto-xref
* lisp/progmodes/xref.el (xref--xref-buffer-mode-map):
Remove the binding for xref-quit-and-goto-xref (bug#44611).

* doc/emacs/maintaining.texi (Xref Commands): Update.
2021-04-23 00:18:01 +03:00
Alan Mackenzie
846989498b Fix unclean "can't happen" error handling in read_minibuf_unwind
Also fix a bug where, with minibuffer-follows-selected-frame neither nil nor
t, a minibuffer could appear in two frames at the same time.

* src/window.c (Fset_window_configuration): Add a new &optional parameter
DONT-SET-MINIWINDOW, which inhibits the minibuffer from being restored from
the supplied window configuration.
(restore_window_configuration): Enhance to match the above.

* src/minibuf.c (read_minibuf): Enhance the argument list to the
restore_window_configuration calls to match the above.  In the main case,
restoring the minibuffer is inhibited.
(read_minibuf_unwind): Should the frame with the expired minibuffer not be
found ("can't happen"), unwind the stacked data nevertheless, rather than just
exiting.

* src/keyboard.c (read_char_help_form_unwind): Amend a call of
Fset_window_configuration.

* doc/lispref/windows.texi (Window Configurations): Document the new form of
set-window-configuration.

* etc/NEWS (Lisp Changes in Emacs 28.1): Amend the entry for
set-window-configuration.
2021-04-22 12:07:21 +00:00
Philipp Stephani
4c6d302da8 Remove a self-reference from the Emacs Lisp manual.
* doc/lispref/minibuf.texi (Programmed Completion): Remove
self-reference.
2021-04-21 20:54:32 +02:00
Basil L. Contovounesios
0873134682 ; Fix Texinfo in last change to minibuf.texi. 2021-04-20 13:34:59 +01:00
Eli Zaretskii
cad8913c89 Improve filling-related documentation
* doc/emacs/text.texi (Auto Fill, Fill Commands): Mention special
line-breaking rules for CJK characters and the kinsoku rules.
(Bug#47856)

* lisp/textmodes/fill.el
(fill-separate-heterogeneous-words-with-space): Doc fix.
2021-04-20 15:12:10 +03:00
Alan Mackenzie
55db25b257 Introduce and use minibuffer-mode. This fixes bug #47150
* lisp/minibuffer.el (minibuffer-mode): New derived mode.

* src/minibuf.c (syms_of_minibuf): New DEFSYMs Qminibuffer_mode,
Qminibuffer_inactive_mode, Qminibuffer_completing_file_name,
Qselect_frame_set_input_focus, Qadd_to_history.
(read_minibuf, set_minibuffer_mode, read_minibuf_unwind): Use the new DEFSYMs
in place of continual interning.
(set_minibuffer_mode): Put an active minibuffer into minibuffer-mode rather
than fundamental-mode.

* doc/emacs/mini.texi (Minibuffer Edit): Mention minibuffer-mode.

* doc/lispref/minibuf.texi (Intro to Minibuffers): Add a paragraph about
minibuffer-mode.

* etc/NEWS (Incompatible Lisp Changes in Emacs 28.1): Add an entry.
2021-04-20 10:14:40 +00:00
Daniel Mendler
077dae3b4c completing-read: If HIST is the symbol `t', history is not recorded.
* lisp/minibuffer.el (completion-all-sorted-completions): Check if
`minibuffer-history-variable` is `t`
* src/minibuf.c (completing-read): Update docstring
* doc/lispref/minibuf.texi: Update documentation of
`read-from-minibuffer` and `completing-read`
2021-04-19 14:25:32 -04:00
Michael Albinus
518312346d Add Tramp recompilation
* doc/misc/tramp.texi (Frequently Asked Questions): Refer to GNU
ELPA Tramp README.

* lisp/net/tramp-cmds.el (tramp-recompile-elpa-command-completion-p)
(tramp-recompile-elpa): New defuns.  Add property `completion-predicate'.
2021-04-19 11:52:48 +02:00
Protesilaos Stavrou
dc9b0dc461 Update modus-themes to version 1.3.2
* doc/misc/modus-themes.org (COPYING): Reword to match the phrasing of
other manuals that are distributed with Emacs.

(Install from the archives)
(Sample configuration for use-package)
(Option for more bold constructs)
(Option for more slanted constructs)
(Option for syntax highlighting)
(Option for no font mixing)
(Option for links)
(Option for command prompt styles)
(Option for completion framework aesthetics)
(Option for fringe visibility)
(Option for language checkers)
(Option for org-habit graph styles)
(Option for line numbers (display-line-numbers-mode))
(Option for parenthesis matching (show-paren-mode))
(Option for diff buffer looks)
(Option for scaled headings)
(Option for variable-pitch font in UI elements)
(Option for variable-pitch font in headings)
(Case-by-case face specs using the themes' palette (DIY))
(Face specs at scale using the themes' palette (DIY))
(Font configurations for Org and others (DIY))
(Load theme depending on time of day): Minor markup changes for better
texi output.

(Option for mode line presentation): Document new possible values for
'modus-themes-mode-line'.

(Option for line highlighting (hl-line-mode)): Document new
'modus-themes-hl-line' variable, which supersedes
'modus-themes-intense-hl-line'.

(Option for active region): Document new possible values for
'modus-themes-region'.

(Option for org-mode block styles): Cite variables that affect
fontification.

(Option for the headings' overall style): Include the option of a
per-level nil value.

(Remap face with local value (DIY))
(Override colors (DIY)): Add sections.

(Full support for packages or face groups): Document newly supported packages

(Note for dimmer.el)
(Note for EWW and Elfeed fonts (SHR fonts)): Add notes.

(Acknowledgements): Add names of new contributors.

(GNU Free Documentation License): Add tags for html export.

* etc/themes/modus-operandi-theme.el (File)
* etc/themes/modus-vivendi-theme.el (File): Update to version 1.3.1

* etc/themes/modus-themes.el (modus-themes-operandi-colors)
(modus-themes-vivendi-colors)
(modus-theme-subtle-red)
(modus-themes-subtle-red)
(modus-theme-subtle-green)
(modus-themes-subtle-green)
(modus-theme-subtle-yellow)
(modus-themes-subtle-yellow)
(modus-theme-subtle-blue)
(modus-themes-subtle-blue)
(modus-theme-subtle-magenta)
(modus-themes-subtle-magenta)
(modus-theme-subtle-cyan)
(modus-themes-subtle-cyan)
(modus-theme-subtle-neutral)
(modus-themes-subtle-neutral)
(modus-theme-intense-red)
(modus-themes-intense-red)
(modus-theme-intense-green)
(modus-themes-intense-green)
(modus-theme-intense-yellow)
(modus-themes-intense-yellow)
(modus-theme-intense-blue)
(modus-themes-intense-blue)
(modus-theme-intense-magenta)
(modus-themes-intense-magenta)
(modus-theme-intense-cyan)
(modus-themes-intense-cyan)
(modus-theme-intense-neutral)
(modus-themes-intense-neutral)
(modus-theme-refine-red)
(modus-themes-refine-red)
(modus-theme-refine-green)
(modus-themes-refine-green)
(modus-theme-refine-yellow)
(modus-themes-refine-yellow)
(modus-theme-refine-blue)
(modus-themes-refine-blue)
(modus-theme-refine-magenta)
(modus-themes-refine-magenta)
(modus-theme-refine-cyan)
(modus-themes-refine-cyan)
(modus-theme-active-red)
(modus-themes-active-red)
(modus-theme-active-green)
(modus-themes-active-green)
(modus-theme-active-yellow)
(modus-themes-active-yellow)
(modus-theme-active-blue)
(modus-themes-active-blue)
(modus-theme-active-magenta)
(modus-themes-active-magenta)
(modus-theme-active-cyan)
(modus-themes-active-cyan)
(modus-theme-fringe-red)
(modus-themes-fringe-red)
(modus-theme-fringe-green)
(modus-themes-fringe-green)
(modus-theme-fringe-yellow)
(modus-themes-fringe-yellow)
(modus-theme-fringe-blue)
(modus-themes-fringe-blue)
(modus-theme-fringe-magenta)
(modus-themes-fringe-magenta)
(modus-theme-fringe-cyan)
(modus-themes-fringe-cyan)
(modus-theme-nuanced-red)
(modus-theme-nuanced-green)
(modus-theme-nuanced-yellow)
(modus-theme-nuanced-blue)
(modus-theme-nuanced-magenta)
(modus-theme-nuanced-cyan)
(modus-theme-special-cold)
(modus-theme-special-mild)
(modus-theme-special-warm)
(modus-theme-special-calm)
(modus-theme-diff-added)
(modus-theme-diff-changed)
(modus-theme-diff-removed)
(modus-theme-diff-refine-added)
(modus-theme-diff-refine-changed)
(modus-theme-diff-refine-removed)
(modus-theme-diff-focus-added)
(modus-theme-diff-focus-changed)
(modus-theme-diff-focus-removed)
(modus-theme-diff-heading)
(modus-theme-pseudo-header)
(modus-theme-mark-alt)
(modus-theme-mark-del)
(modus-theme-mark-sel)
(modus-theme-mark-symbol)
(modus-theme-heading-1)
(modus-theme-heading-2)
(modus-theme-heading-3)
(modus-theme-heading-4)
(modus-theme-heading-5)
(modus-theme-heading-6)
(modus-theme-heading-7)
(modus-theme-heading-8)
(modus-theme-hl-line)
(modus-theme-bold)
(modus-theme-slant)
(modus-theme-variable-pitch)
(modus-theme-graph-red-0)
(modus-theme-graph-red-1)
(modus-theme-graph-green-0)
(modus-theme-graph-green-1)
(modus-theme-graph-yellow-0)
(modus-theme-graph-yellow-1)
(modus-theme-graph-blue-0)
(modus-theme-graph-blue-1)
(modus-theme-graph-magenta-0)
(modus-theme-graph-magenta-1)
(modus-theme-graph-cyan-0)
(modus-theme-graph-cyan-1)
(modus-theme-lang-note)
(modus-theme-lang-warning)
(modus-theme-lang-error): Rename all internal faces.

(modus-themes-headings)
(modus-themes-fringes)
(modus-themes-lang-checkers)
(modus-themes-org-blocks)
(modus-themes-org-habit)
(modus-themes-mode-line)
(modus-themes-diffs)
(modus-themes-completions)
(modus-themes-prompts)
(modus-themes-intense-hl-line)
(modus-themes-hl-line)
(modus-themes-paren-match)
(modus-themes-syntax)
(modus-themes-links)
(modus-themes-region): Update defcustom.

(modus-themes--fringe):
(modus-themes--headings-choice):
(modus-themes--prompt):
(modus-themes--org-block-delim):
(modus-themes--mode-line-attrs):
(modus-themes--link):
(modus-themes--region):
(modus-themes--hl-line): Adjustments to internal functions.

(modus-themes-faces): Update faces.
(modus-themes-custom-variables): Update custom variables.
2021-04-18 18:39:49 +02:00
Philipp Stephani
2b7eed23eb ; * doc/lispref/keymaps.texi (Easy Menu): Fix typo. 2021-04-17 23:13:57 +02:00
Daniel Martín
47fc92cefc Fix reference to "yanking" in the main Emacs manual
* doc/emacs/emacs.texi (Top): Yanking is alternatively known as
pasting, not copying.  (Bug#47839).
2021-04-17 17:21:35 +03:00
Eli Zaretskii
1789dcdb35 Improve documentation of 'map-y-or-n-p'
* lisp/emacs-lisp/map-ynp.el (map-y-or-n-p): Doc fix.  (Bug#47833)

* doc/lispref/minibuf.texi (Multiple Queries): Fix the wording in
the description of 'map-y-or-n-p'.
2021-04-17 11:24:04 +03:00
Glenn Morris
629e5f8026 Merge from origin/emacs-27
eedad01b4b (origin/emacs-27) Fix typos in manuals
24d214652e Fix description of momentary message display
2021-04-16 07:50:20 -07:00
Robert Pluim
fcd1943bfe ; Grammar fixes
* doc/lispref/display.texi (Size of Displayed Text): Grammar fix.

* etc/NEWS: Grammar fix.
2021-04-16 09:56:41 +02:00
Robert Pluim
2448fb2f25 ; Fix typos
* doc/lispref/display.texi (SVG Images): Fix typos.
2021-04-16 09:51:59 +02:00
Alan Third
c237209643 Allow use of em in image spec sizes
* src/image.c (image_get_dimension): New function.
(compute_image_size): Use image_get_dimension to set the sizes, and
pass in the image struct instead of just the spec.
(image_set_transform):
(imagemagick_load_image):
(svg_load_image): Use the image instead of the spec in compute_image_size.
(syms_of_image): Add 'em' as a symbol.
2021-04-15 17:56:23 +01:00
Stefan Monnier
0c3ce42c8f * lisp/emacs-lisp/bindat.el: Allow non-fixed size of strz
(bindat--unpack-strz): Allow `len` to be nil.
(bindat--pack-strz): New function.
(bindat--type) <strz>: Make `len` arg optional.
(bindat-type): Adjust debug spec and docstring accordingly.

* doc/lispref/processes.texi (Bindat Types): Adjust accordingly.
2021-04-15 11:28:06 -04:00
Mattias Engdegård
7893945cc8 Add condition-case success handler (bug#47677)
Allow a condition-case handler on the form (:success BODY) to be
specified as the success continuation of the protected form, with
the specified variable bound to its result.

* src/eval.c (Fcondition_case): Update the doc string.
(internal_lisp_condition_case): Implement in interpreter.
(syms_of_eval): Defsym :success.
* lisp/emacs-lisp/bytecomp.el (byte-compile-condition-case):
Implement in byte-compiler.
* lisp/emacs-lisp/cl-macs.el (cl--self-tco): Allow self-TCO
from success handler.
* doc/lispref/control.texi (Handling Errors): Update manual.
* etc/NEWS: Announce.
* test/lisp/emacs-lisp/bytecomp-tests.el (bytecomp-tests--test-cases)
(bytecomp-condition-case-success):
* test/lisp/emacs-lisp/cl-macs-tests.el (cl-macs--labels):
Add test cases.
2021-04-15 15:41:13 +02:00
Eli Zaretskii
d1559ede54 Add two optional arguments to 'string-width'
* src/character.c (Fstring_width, lisp_string_width): Accept two
optional arguments FROM and TO, to indicate the substring to be
considered.
(Fstring_width): Add caveats in the doc string about display
features ignored by the function.  (Bug#47712)
* src/character.h (lisp_string_width): Update prototype.
* src/editfns.c (styled_format): Adjust call of lisp_string_width
to its changed signature.

* test/src/character-tests.el (character-test-string-width): New
file with tests for 'string-width'.

* doc/lispref/display.texi (Size of Displayed Text): Document
caveats of using 'string-width'.

* etc/NEWS: Announce the change.
2021-04-14 11:47:55 +03:00
Filipp Gunbin
468a00f380 * doc/lispref/keymaps.texi (Translation Keymaps): Fix small misprint 2021-04-13 20:07:20 +03:00
Filipp Gunbin
9738b5b93b * doc/lispref/processes.texi: Fix small misprint 2021-04-13 19:54:39 +03:00
Eric Abrahamsen
17ff8c3e5a Improvements to message-syntax-checks docs and options
* doc/misc/message.texi: Move the manual entry from the "News Headers"
section to the "Message Headers" section, as it is generally
applicable, not just to News.
* lisp/gnus/message.el (message-syntax-checks): Add an explicit alist
type specifying the valid options; point to the manual for more
information.
2021-04-13 08:45:07 -07:00
Eli Zaretskii
eedad01b4b Fix typos in manuals
* doc/misc/eshell.texi (Completion):
* doc/lispref/objects.texi (Mutability): Fix typos.  (Bug#47738)
2021-04-13 15:30:02 +03:00
Stefan Monnier
9a6523dfd6 * lisp/frame.el (delete-other-frames): Add universal prefix iconify arg
(frame--current-backround-mode): New function,
extracted from `frame-set-background-mode`.  Use `color-dark-p`.
(frame-set-background-mode): Use it.
2021-04-12 12:32:58 -04:00
Stefan Monnier
6bec60ad31 (define-minor-mode): Warn about use of pre-Emacs-21 style args
* lisp/emacs-lisp/easy-mmode.el (define-minor-mode):
Use `advertised-calling-convention` to avoid promoting the old
style arguments.  Emit a wanring when old-style arguments are used.
Massage the docstring accordingly.
* doc/lispref/modes.texi (Defining Minor Modes): Document the keyword
arguments rather than the old-style positional arguments.
2021-04-12 11:08:19 -04:00
Ralph Schleicher
9dc28e1fca Add command in eww to toggle images
* lisp/net/eww.el (eww-toggle-images): New function.
(eww-mode-map): Add key binding and menu entry.
* lisp/net/shr.el (shr-inhibit-images): Make it customizable.
* doc/misc/eww.texi (Basics): Document eww-toggle-images.
Fix index entries for shr-use-fonts and shr-use-colors.
(Advanced): Document shr-inhibit-images
(bug#47705).
2021-04-12 10:31:46 +02:00
Stefan Kangas
dac5af2ba1 * doc/lispref/elisp.texi (Top): Add missing entry. 2021-04-11 14:24:04 +02:00
Gregory Heytings
5761e9004a Add new icomplete-vertical-mode
Co-authored-by: João Távora <joaotavora@gmail.com>

* lisp/icomplete.el (icomplete-completions): Consider icomplete-vertical-mode.
(icomplete-vertical-mode-minibuffer-map): New map.
(icomplete--vertical-minibuffer-setup): New helper.
(icomplete-vertical-mode): New minor mode.

* doc/emacs/buffers.texi (Icomplete): Mention icomplete-vertical-mode.

* etc/NEWS: Mention icomplete-vertical-mode
2021-04-10 23:51:05 +01:00
Philipp Stephani
53dfd85a7f Edebug: Disable backtracking when hitting a &define keyword.
Edebug doesn't deal well with backtracking out of definitions, see
Bug#41988.  Rather than trying to support this rare situation (e.g. by
implementing a multipass parser), prevent it by adding an implicit
gate.

* lisp/emacs-lisp/edebug.el (edebug--match-&-spec-op): Disable
backtracking when hitting a &define keyword.

* test/lisp/emacs-lisp/edebug-tests.el
(edebug-tests-duplicate-&define): New unit test.
(edebug-tests--duplicate-&define): New helper macro.

* doc/lispref/edebug.texi (Backtracking): Mention &define in the list
of constructs that disable backtracking.

* etc/NEWS: Document new behavior.
2021-04-10 18:19:49 +02:00
Eli Zaretskii
24d214652e Fix description of momentary message display
* doc/emacs/mini.texi (Basic Minibuffer): Update the description
of momentary message display while minibuffer is active.
(Bug#47689)
2021-04-10 13:41:48 +03:00
Gregory Heytings
972bab0981 User option to move to another match when changing direction in isearch.
* lisp/isearch.el (isearch-direction-change-changes-match):
New user option (bug#47599).
(isearch-repeat): Use the new option.
(isearch-repeat-forward, isearch-repeat-backward): Adapt to the
new option.

* etc/NEWS: Mention the new user option.

* doc/emacs/search.texi: Document the new user option.
2021-04-08 22:04:08 +03:00
Michael Albinus
173d49b03a * doc/misc/tramp.texi (Frequently Asked Questions): New item about recentf. 2021-04-08 16:35:02 +02:00
Glenn Morris
a44d423a5a * doc/misc/Makefile.in (echo-sources): Make it not the first target. 2021-04-04 17:24:27 -07:00
Glenn Morris
a86edac26b Regenerate texi-from-org if ox-texinfo.el changes
* doc/misc/Makefile.in (top_srcdir): New, set by configure.
(emacs): Set load-prefer-newer.
(org_template): Make output depend on ox-texinfo.el.
2021-04-04 17:11:47 -07:00
Alan Third
1fdbeffe3a Set CSS for SVG files
* src/dispextern.h (struct image): Add font details required for the CSS.
* src/image.c (free_image): Free the font family string.
(search_image_cache):
(uncache_image): Make image caching understand the font details.
(lookup_image): Handle the font details when generating the image and
looking up the cache.
(svg_css_length_to_pixels): Handle 'em' when we know the font size.
(svg_load_image): Generate the CSS and apply it to the SVG.
(enum svg_keyword_index):
(svg_format):
(syms_of_image): Add ':css' attribute.
* doc/lispref/display.texi (SVG Images): Add details of new svg image
attributes.
2021-04-03 23:07:01 +01:00
Stefan Kangas
74a86c1acf Remove references to very old versions of Emacs from eintr
* doc/lispintro/emacs-lisp-intro.texi (Making Errors)
(Void Function, Void Variable, Wrong Type of Argument, debug)
(debug-on-entry): Remove commented out references to Emacs 20 or
earlier.
* doc/lispintro/emacs-lisp-intro.texi (what-line)
(print-elements-of-list, debug, X Axis Tic Marks): Don't call version
22 or earlier a "recent" version of Emacs.
2021-04-03 00:53:43 +02:00
Stefan Kangas
b65a1cfed7 * doc/misc/woman.texi (Introduction): Remove reference to old Emacs. 2021-04-02 16:33:15 +02:00
Stefan Monnier
a9645338e4 * doc/misc/reftex.texi: Remove outdated instructions
(Building and Installing, Installation with make)
(Installation by Hand, Loading @RefTeX{}): Delete sections.
(Entering @RefTeX{} Mode): Merge into its parent.
(AUCTeX): Point to GNU ELPA for installation.
(Problems and Work-Arounds): Remove XEmacs-specific item.
2021-04-02 09:40:37 -04:00
Michael Albinus
f113d0c4fd Some Tramp doc clarifications
* doc/misc/tramp.texi (Remote shell setup): Explain meaning of
`tramp-sh-extra-args' for bash.
(Frequently Asked Questions): New item about unloading / reloading Tramp.
2021-03-29 13:52:01 +02:00
Matt Armstrong
c4ab173df3 File unlock errors now issue warnings (Bug#46397)
The primary idea is to allow `kill-buffer' and `kill-emacs' to
complete even if Emacs has trouble unlocking the buffer's file.

* lisp/userlock.el (userlock--handle-unlock-error): New function, call
`display-error'.
* src/filelock.c (unlock_file_body): New function, do what
'unlock_file' used to.
(unlock_file_handle_error): New function, call
`userlock--handle-unlock-error' with the captured error.
(unlock_file): Handle `file-error' conditions by calling the handler
defined above.
* test/src/filelock-tests.el (filelock-tests-kill-buffer-spoiled):
(filelock-tests-unlock-spoiled): Modify to test new behavior.
2021-03-27 12:17:31 +03:00
Glenn Morris
aeb0530309 * doc/emacs/maintaining.texi (Managing Projects): Fixes and copyedits. 2021-03-24 20:15:46 -07:00
Theodor Thornhill
275be44dd4 Add command project-remove-known-project
* etc/NEWS: Mention the new command.

* lisp/progmodes/project.el (project--remove-from-project-list): Add
new argument, report-message, used to signal various messages when
removal has happened.

* lisp/progmodes/project.el (project-remove-known-project): New
command that removes the selected directory from the project-list-file.

* lisp/progmodes/project.el (project-current): Add the report message.

* doc/emacs/maintaining.text: Add information about the new command to
the manual.
2021-03-25 01:15:50 +02:00
Stefan Kangas
8b07994e20 Convert many more links to use HTTPS 2021-03-24 10:20:18 +01:00
Lars Ingebrigtsen
a4ececf004 Move string-trim functions to subr.el
* doc/lispref/strings.texi (Creating Strings): Document them.

* lisp/faces.el: Don't require subr-x, because that leads to build
errors.

* lisp/subr.el (string-trim, string-trim-right)
(string-trim-left): Move here from subr-x.el.

* lisp/emacs-lisp/shortdoc.el (string): Adjust.
2021-03-24 09:22:44 +01:00
Alan Mackenzie
7c2ebf6e23 Prevent open minibuffers getting lost when their frame gets deleted
This happened with minibuffer-follows-selected-frame set to t.

* doc/emacs/mini.texi (Basic Minibuffer): State where a command's action takes
place when a minibuffer's frame has been deleted.

* lisp/window.el (window--before-delete-windows, record-window-buffer): Take
into account that minibuffers are now recorded on w->prev_buffers field.

* src/fns.c (merge_c): New version of `merge' taking a C function, rather than
a Lisp function as the comparison function.

* src/frame.c (do_switch_frame): Pass arguments sf and for_deletion to
move_minibuffers_onnto_frame.

* src/lisp.h (top level): Declare merge_c and
move_minibuffers_onto_selected_frame.

* src/minibuf.c (MB_frame): New Lisp_Object recording the minibuffer's frame.
(choose_minibuf_frame): Remove all code except that which sets minibuf_window
to the current frame's minibuffer.
(minibuffer_ent_greater): New comparison function, passed to merge_c.
(zip_minibuffer_stacks): New function.
(move_minibuffers_onto_frame): Renamed from `move_minibuffer_onto_frame' given
two arguments, the old frame and for_deletion, and simplified.  Minibuffers
are now stacked in the mini-window's ->prev_buffers field.
(read_minibuf): Several detailed amendments.
(exp_MB_frame): New Lisp_Object, the expired minibuffer's frame.
(read_minibuf_unwind): Search for the expired minibuffer's frame, rather than
taking it from (unreliable) variables.  Switch temporarily to this frame for
tidying up operations.
(minibuffer_unwind): New function which pops a stacked minibuffer.
(syms_of_minibuf): Call staticpro for the two new Lisp variables.

* src/window.c (Fset_window_configuration): Don't record minibuffers with
record-window-buffer.

* src/xdisp.c (gui_consider_frame_title): Remove redundant Fselect_window,
which caused an unwanted frame switch.  Amend the arguments to
format_mode_line_unwind_data to match.
2021-03-21 16:54:31 +00:00
Glenn Morris
29ca91f3d9 Merge from origin/emacs-27
a7f95d5244 Remove duplicate @table item from ELisp manual
be1b3512f7 Fix reference to 'diff-font-lock-syntax' in diff-mode docu...
2021-03-18 08:50:32 -07:00
Glenn Morris
d92b725ffc Merge from origin/emacs-27
f60eb988f6 Fix typos and omissions for (elisp)Button Buffer Commands
876b95bf90 Teach Rmail about NBSP in "Re:"

# Conflicts:
#	lisp/mail/rmail.el
2021-03-18 08:50:32 -07:00
Lars Ingebrigtsen
7ae4588bb4 Document that `buffer-string' retains text properties
* doc/lispref/text.texi (Buffer Contents): Mention text properties
in the `buffer-string' documentation.
* src/editfns.c (Fbuffer_string): Mention text properties in the
doc string (bug#47220).

(cherry picked from commit 60af754170)
2021-03-18 11:03:14 +02:00
Lars Ingebrigtsen
60af754170 Document that `buffer-string' retains text properties
* doc/lispref/text.texi (Buffer Contents): Mention text properties
in the `buffer-string' documentation.
* src/editfns.c (Fbuffer_string): Mention text properties in the
doc string (bug#47220).
2021-03-18 05:59:12 +01:00