mirror of
git://git.sv.gnu.org/emacs.git
synced 2026-02-16 09:14:18 +00:00
Merge from origin/emacs-30
a44e9139c2loaddefs-generate--rubric: Note about committing ldefs-bo...e4908623f2; Fix documentation of 'other-window'5f3cbd62b1; * lisp/international/quail.el (quail-insert-kbd-layout)...47deb38f21; face-font-family-alternatives, fixed-pitch: Comments.dd29b0ab66Fix Eshell call to 'string-suffix-p' when checking for tr...cbfc095ed4* etc/PROBLEMS: Describe how to work around screen reader...8f00d36b63(gnus)Scoring Tips: New tip regarding header continuation...
This commit is contained in:
commit
ccc3068dae
9 changed files with 74 additions and 7 deletions
|
|
@ -2490,7 +2490,9 @@ argument.
|
|||
|
||||
The optional argument @var{all-frames} has the same meaning as in
|
||||
@code{next-window}, like a @code{nil} @var{minibuf} argument to
|
||||
@code{next-window}.
|
||||
@code{next-window}. When called interactively, @var{all-frames} is
|
||||
always @code{nil}, so only windows on the selected frame can be
|
||||
selected.
|
||||
|
||||
If the @code{other-window} parameter of the selected window is a
|
||||
function, and @code{ignore-window-parameters} is @code{nil}, that
|
||||
|
|
|
|||
|
|
@ -21168,6 +21168,29 @@ You may also consider doing something similar with @code{expunge}.
|
|||
If you say stuff like @code{[^abcd]*}, you may get unexpected results.
|
||||
That will match newlines, which might lead to, well, The Unknown. Say
|
||||
@code{[^abcd\n]*} instead.
|
||||
|
||||
@item Continuation lines when scoring on other headers
|
||||
When scoring on other headers using the @code{Head} or @code{All} match
|
||||
keys and regexp matching, your regular expression must take into account
|
||||
header continuation lines. For example, this naive attempt to match
|
||||
messages including a particular address in the @code{To} field:
|
||||
|
||||
@lisp
|
||||
("head" "^To: .*\\bspwhitton@@spwhitton\\.name\\b" r)
|
||||
@end lisp
|
||||
|
||||
will fail to match a message with a @code{To} header like this:
|
||||
|
||||
@example
|
||||
To: A long description of the Emacs devel list <emacs-devel@@gnu.org>,
|
||||
spwhitton@@spwhitton.name, 12345@@debbugs.gnu.org
|
||||
@end example
|
||||
|
||||
You can handle this issue with a regexp of this form:
|
||||
|
||||
@lisp
|
||||
("head" "^To: .*\\(?:\n[\s\t].*\\)*\\bspwhitton@@spwhitton\\.name\\b" r)
|
||||
@end lisp
|
||||
@end table
|
||||
|
||||
|
||||
|
|
|
|||
12
etc/PROBLEMS
12
etc/PROBLEMS
|
|
@ -2678,6 +2678,18 @@ terminals, for example, like this:
|
|||
This disables 'auto-composition-mode' on frames that display on
|
||||
terminals of this type.
|
||||
|
||||
** Screen readers get confused about character position
|
||||
|
||||
The Emacs display code sometimes emits TAB characters purely for motion
|
||||
on the terminal, even when those characters do not exist in the buffer.
|
||||
This can confuse screen reader software under certain terminal emulators
|
||||
(rxvt and vte have been cited). Switching to destructive tabs by running
|
||||
|
||||
stty -tabs
|
||||
|
||||
in the terminal before starting Emacs may mitigate this. See also the
|
||||
discussion in Bug#78474 <https://debbugs.gnu.org/78474>.
|
||||
|
||||
* Runtime problems specific to individual Unix variants
|
||||
|
||||
** GNU/Linux
|
||||
|
|
|
|||
|
|
@ -557,7 +557,7 @@ If COMPILE, don't include a \"don't compile\" cookie."
|
|||
file 'loaddefs-generate
|
||||
:title (concat "automatically extracted " (or type "autoloads"))
|
||||
:commentary (and (string-match "/lisp/loaddefs\\.el\\'" file)
|
||||
"This file will be copied to ldefs-boot.el and checked in periodically."))
|
||||
"This file will be copied to ldefs-boot.el and checked in periodically. Note: When checking in ldefs-boot.el, don't include changes to any other files in the commit."))
|
||||
(when lp
|
||||
(insert "(add-to-list 'load-path (directory-file-name
|
||||
(or (file-name-directory #$) (car load-path))))\n\n"))
|
||||
|
|
|
|||
|
|
@ -568,7 +568,7 @@ ends in a newline."
|
|||
(eshell-output-object object handle)
|
||||
(when (and eshell-ensure-newline-p
|
||||
(not (and (stringp object)
|
||||
(string-suffix-p object "\n"))))
|
||||
(string-suffix-p "\n" object))))
|
||||
(eshell-maybe-output-newline handle)))
|
||||
|
||||
(defsubst eshell-print-maybe-n (object)
|
||||
|
|
|
|||
|
|
@ -95,9 +95,10 @@ a font height that isn't optimal."
|
|||
(internal-set-font-selection-order value)))
|
||||
|
||||
|
||||
;; In the absence of Fontconfig support, Monospace and Sans Serif are
|
||||
;; unavailable, and we fall back on the courier and helv families,
|
||||
;; which are generally available.
|
||||
;; We use Fontconfig if we have it. This list is an alternative
|
||||
;; mechanism to fall back to in the absence of Fontconfig.
|
||||
;; In that situation, Monospace and Sans Serif are unavailable, and we
|
||||
;; turn to the courier and helv families, which are generally available.
|
||||
(defcustom face-font-family-alternatives
|
||||
'(("Monospace" "Cascadia Code" "Lucida Console" "courier" "fixed")
|
||||
|
||||
|
|
@ -2461,6 +2462,10 @@ If you set `term-file-prefix' to nil, this function does nothing."
|
|||
"Basic underlined face."
|
||||
:group 'basic-faces)
|
||||
|
||||
;; Ideally, in Emacs's default look, we'd like the default and
|
||||
;; fixed-pitch faces to use two different monospace typefaces so that
|
||||
;; they're visually distinct. At present, that's achieved on MS-Windows
|
||||
;; and macOS, but not on platforms that use Fontconfig. See bug#79083.
|
||||
(defface fixed-pitch
|
||||
'((t :family "Monospace"))
|
||||
"The basic fixed-pitch face."
|
||||
|
|
|
|||
|
|
@ -835,6 +835,8 @@ The format of KBD-LAYOUT is the same as `quail-keyboard-layout'."
|
|||
(format "\t%c\t" upper))
|
||||
(string upper))))
|
||||
(insert (bidi-string-mark-left-to-right lower)
|
||||
;; This invisible space is here to prevent the display
|
||||
;; engine from composing these two characters on display.
|
||||
(propertize " " 'invisible t)
|
||||
(bidi-string-mark-left-to-right upper))
|
||||
(if (< (string-width upper) 2)
|
||||
|
|
|
|||
|
|
@ -4017,7 +4017,8 @@ COUNT and ALL-FRAMES. Otherwise, do not return a window for which
|
|||
This function uses `next-window' for finding the window to
|
||||
select. The argument ALL-FRAMES has the same meaning as in
|
||||
`next-window', but the MINIBUF argument of `next-window' is
|
||||
always effectively nil."
|
||||
always effectively nil. Interactively, ALL-FRAMES is always
|
||||
nil, which considers all windows on the selected frame."
|
||||
(interactive "p\ni\np")
|
||||
(let* ((window (selected-window))
|
||||
(original-window window)
|
||||
|
|
|
|||
|
|
@ -40,6 +40,28 @@
|
|||
|
||||
;;; Tests:
|
||||
|
||||
|
||||
;; Newlines
|
||||
|
||||
(ert-deftest esh-io-test/output-newline/add-newline ()
|
||||
"Ensure we add a newline when writing a string to stdout."
|
||||
(with-temp-eshell
|
||||
(eshell-match-command-output "(concat \"hello\")" "\\`hello\n\\'")))
|
||||
|
||||
(ert-deftest esh-io-test/output-newline/no-newline ()
|
||||
"Ensure we don't add a newline when writing a string to a buffer."
|
||||
(eshell-with-temp-buffer bufname ""
|
||||
(with-temp-eshell
|
||||
(eshell-match-command-output
|
||||
(format "(concat \"hello\") > #<%s>" bufname)
|
||||
"\\`\\'"))
|
||||
(should (equal (buffer-string) "hello"))))
|
||||
|
||||
(ert-deftest esh-io-test/output-newline/no-extra-newline ()
|
||||
"Ensure we don't add an extra newline when writing to stdout."
|
||||
(with-temp-eshell
|
||||
(eshell-match-command-output "(concat \"hello\n\")" "\\`hello\n\\'")))
|
||||
|
||||
|
||||
;; Basic redirection
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue