Merge from origin/emacs-28
# Conflicts: # lisp/progmodes/xref.el
This commit is contained in:
commit
b3023de543
25 changed files with 308 additions and 155 deletions
|
@ -54,12 +54,31 @@ General steps (for each step, check for possible errors):
|
|||
section at the beginning of that file, and commit etc/NEWS if it
|
||||
was modified.
|
||||
|
||||
2. Regenerate the etc/AUTHORS file:
|
||||
2. Regenerate the versioned ChangeLog.N and etc/AUTHORS files.
|
||||
|
||||
The "M-x authors" command below will first update the current
|
||||
versioned ChangeLog.N file. For this to work correctly, make sure
|
||||
the top-level Makefile says
|
||||
|
||||
PREFERRED_BRANCH = emacs-NN
|
||||
|
||||
where NN is the version on the release branch from which you are
|
||||
producing the tarball. If NN is incorrect, update Makefile.in and
|
||||
re-run 'configure' to update Makefile.
|
||||
|
||||
If the versioned ChangeLog.N file is too large, start a new one
|
||||
by bumping N, and also update the line in top-level Makefile.in
|
||||
which says
|
||||
|
||||
CHANGELOG_HISTORY_INDEX_MAX = N
|
||||
|
||||
by incrementing the value of N by 1; then regenerate Makefile.
|
||||
|
||||
Now:
|
||||
|
||||
M-: (require 'authors) RET
|
||||
M-x authors RET
|
||||
|
||||
(This first updates the current versioned ChangeLog.N)
|
||||
|
||||
If this says "Problem updating ChangeLog", find the reason for the
|
||||
failure of the command it runs, viz.:
|
||||
|
||||
|
@ -315,6 +334,10 @@ looks like this:
|
|||
</div>
|
||||
</div>
|
||||
|
||||
The file download.html may need to be updated, for example if the
|
||||
MS-Windows binaries will be signed by a different person/key than
|
||||
those mentioned there.
|
||||
|
||||
Next, regenerate the various manuals in HTML, PDF, and PS formats:
|
||||
|
||||
Invoke ./admin/make-manuals from the top-level directory of the
|
||||
|
|
|
@ -2927,7 +2927,8 @@ modifying the attributes of a named face.
|
|||
|
||||
@defun face-attribute face attribute &optional frame inherit
|
||||
This function returns the value of the @var{attribute} attribute for
|
||||
@var{face} on @var{frame}.
|
||||
@var{face} on @var{frame}. @xref{Face Attributes}, for the supported
|
||||
attributes.
|
||||
|
||||
If @var{frame} is omitted or @code{nil}, that means the selected frame
|
||||
(@pxref{Input Focus}). If @var{frame} is @code{t}, this function
|
||||
|
@ -3010,7 +3011,8 @@ for all frames. This function is mostly intended for internal usage.
|
|||
@defun set-face-attribute face frame &rest arguments
|
||||
This function sets one or more attributes of @var{face} for
|
||||
@var{frame}. The attributes specified in this way override the face
|
||||
spec(s) belonging to @var{face}.
|
||||
spec(s) belonging to @var{face}. @xref{Face Attributes}, for the
|
||||
supported attributes.
|
||||
|
||||
The extra arguments @var{arguments} specify the attributes to set, and
|
||||
the values for them. They should consist of alternating attribute
|
||||
|
@ -3810,57 +3812,62 @@ Then, the font specifications for all but Chinese GB2312 characters have
|
|||
Chinese GB2312 characters has a wild card @samp{*} in the @var{family}
|
||||
field.
|
||||
|
||||
@defun set-fontset-font name character font-spec &optional frame add
|
||||
This function modifies the existing fontset @var{name} to use the font
|
||||
matching with @var{font-spec} for the specified @var{character}.
|
||||
@defun set-fontset-font fontset characters font-spec &optional frame add
|
||||
This function modifies the existing @var{fontset} to use the font
|
||||
specified by @var{font-spec} for displaying the specified
|
||||
@var{characters}.
|
||||
|
||||
If @var{name} is @code{nil}, this function modifies the fontset of the
|
||||
selected frame or that of @var{frame} if @var{frame} is not
|
||||
If @var{fontset} is @code{nil}, this function modifies the fontset of
|
||||
the selected frame or that of @var{frame} if @var{frame} is not
|
||||
@code{nil}.
|
||||
|
||||
If @var{name} is @code{t}, this function modifies the default
|
||||
fontset, whose short name is @samp{fontset-default}.
|
||||
If @var{fontset} is @code{t}, this function modifies the default
|
||||
fontset, whose short name as a string is @samp{fontset-default}.
|
||||
|
||||
In addition to specifying a single codepoint, @var{character} may be a
|
||||
cons @code{(@var{from} . @var{to})}, where @var{from} and @var{to} are
|
||||
character codepoints. In that case, use @var{font-spec} for all the
|
||||
characters in the range @var{from} and @var{to} (inclusive).
|
||||
The @var{characters} argument can be a single character which should
|
||||
be displayed using @var{font-spec}. It can also be a cons cell
|
||||
@w{@code{(@var{from} . @var{to})}}, where @var{from} and @var{to} are
|
||||
characters. In that case, use @var{font-spec} for all the characters
|
||||
in the range @var{from} and @var{to} (inclusive).
|
||||
|
||||
@var{character} may be a charset (@pxref{Character Sets}). In that
|
||||
case, use @var{font-spec} for all the characters in the charset.
|
||||
@var{characters} may be a charset symbol (@pxref{Character Sets}). In
|
||||
that case, use @var{font-spec} for all the characters in the charset.
|
||||
|
||||
@var{character} may be a script name (@pxref{Character Properties,
|
||||
@var{characters} may be a script symbol (@pxref{Character Properties,
|
||||
char-script-table}). In that case, use @var{font-spec} for all the
|
||||
characters belonging to the script.
|
||||
|
||||
@var{character} may be @code{nil}, which means to use @var{font-spec}
|
||||
for any character which no font-spec is specified.
|
||||
@var{characters} may be @code{nil}, which means to use @var{font-spec}
|
||||
for any character in @var{fontset} for which no font-spec is
|
||||
specified.
|
||||
|
||||
@var{font-spec} may be a font-spec object created by the function
|
||||
@code{font-spec} (@pxref{Low-Level Font}).
|
||||
|
||||
@var{font-spec} may be a cons; @code{(@var{family} . @var{registry})},
|
||||
where @var{family} is a family name of a font (possibly including a
|
||||
foundry name at the head), @var{registry} is a registry name of a font
|
||||
(possibly including an encoding name at the tail).
|
||||
@var{font-spec} may be a cons cell @w{@code{(@var{family}
|
||||
. @var{registry})}}, where @var{family} is a family name of a font
|
||||
(possibly including a foundry name at the head), and @var{registry} is
|
||||
a registry name of a font (possibly including an encoding name at the
|
||||
tail).
|
||||
|
||||
@var{font-spec} may be a font name, a string.
|
||||
|
||||
@var{font-spec} may be @code{nil}, which explicitly specifies that
|
||||
there's no font for the specified @var{character}. This is useful,
|
||||
there's no font for the specified @var{characters}. This is useful,
|
||||
for example, to avoid expensive system-wide search for fonts for
|
||||
characters that have no glyphs, like those from the Unicode Private
|
||||
Use Area (PUA).
|
||||
|
||||
The optional argument @var{add}, if non-@code{nil}, specifies how to
|
||||
add @var{font-spec} to the font specifications previously set. If it
|
||||
is @code{prepend}, @var{font-spec} is prepended. If it is
|
||||
@code{append}, @var{font-spec} is appended. By default,
|
||||
@var{font-spec} overrides the previous settings.
|
||||
add @var{font-spec} to the font specifications previously set for
|
||||
@var{characters}. If it is @code{prepend}, @var{font-spec} is
|
||||
prepended to the existing specs. If it is @code{append},
|
||||
@var{font-spec} is appended. By default, @var{font-spec} overwrites
|
||||
the previously set font specs.
|
||||
|
||||
For instance, this changes the default fontset to use a font of which
|
||||
For instance, this changes the default fontset to use a font whose
|
||||
family name is @samp{Kochi Gothic} for all characters belonging to
|
||||
the charset @code{japanese-jisx0208}.
|
||||
the charset @code{japanese-jisx0208}:
|
||||
|
||||
@smallexample
|
||||
(set-fontset-font t 'japanese-jisx0208
|
||||
|
@ -4001,12 +4008,22 @@ symbols, or @code{nil} if none is required. If @code{gsub} or
|
|||
@code{gpos} is a list, a @code{nil} element in that list means that
|
||||
the font must not match any of the remaining tag symbols. The
|
||||
@code{gpos} element may be omitted.
|
||||
|
||||
@item :type
|
||||
@cindex font backend
|
||||
The symbol that specifies the @dfn{font backend} used to draw the
|
||||
characters. The possible values depend on the platform and on how
|
||||
Emacs was configured at build time. Typical values include
|
||||
@code{ftcrhb} and @code{xfthb} on X, @code{harfbuzz} on MS-Windows,
|
||||
@code{ns} on GNUstep, etc. It can also be @code{nil} if left
|
||||
unspecified, typically in a font-spec.
|
||||
@end table
|
||||
@end defun
|
||||
|
||||
@defun font-put font-spec property value
|
||||
Set the font property @var{property} in the font-spec @var{font-spec}
|
||||
to @var{value}.
|
||||
to @var{value}. The @var{property} can any of the ones described
|
||||
above.
|
||||
@end defun
|
||||
|
||||
@cindex font entity
|
||||
|
@ -4050,12 +4067,28 @@ object, a font entity, or a font spec.
|
|||
|
||||
@defun font-get font property
|
||||
This function returns the value of the font property @var{property}
|
||||
for @var{font}.
|
||||
for @var{font}. The @var{property} can any of the ones that
|
||||
@code{font-spec} supports.
|
||||
|
||||
If @var{font} is a font spec and the font spec does not specify
|
||||
@var{property}, the return value is @code{nil}. If @var{font} is a
|
||||
font object or font entity, the value for the @var{:script} property
|
||||
may be a list of scripts supported by the font.
|
||||
may be a list of scripts supported by the font, and the value of the
|
||||
@code{:otf} property is a cons of the form @w{@code{(@var{gsub}
|
||||
. @var{gpos})}}, where @var{gsub} and @var{gpos} are lists
|
||||
representing OpenType features supported by the font, of the form
|
||||
|
||||
@smallexample
|
||||
((@var{script-tag} (@var{langsys-tag} @var{feature}@dots{}) @dots{}) @dots{})
|
||||
@end smallexample
|
||||
|
||||
@noindent where @var{script-tag}, @var{langsys-tag}, and @var{feature}
|
||||
are symbols representing OpenType layout tags.
|
||||
|
||||
If @var{font} is a font object, the special property
|
||||
@code{:combining-capability} is non-@code{nil} if the font backend of
|
||||
@var{font} supports rendering of combining characters for non-OpenType
|
||||
fonts.
|
||||
@end defun
|
||||
|
||||
@defun font-face-attributes font &optional frame
|
||||
|
|
|
@ -1943,6 +1943,7 @@ completion function is trying to complete. If the symbol matches one
|
|||
of the keys in @code{completion-category-overrides}, the usual
|
||||
completion behavior is overridden. @xref{Completion Variables}.
|
||||
|
||||
@cindex @code{annotation-function}, in completion
|
||||
@item annotation-function
|
||||
The value should be a function for @dfn{annotating} completions. The
|
||||
function should take one argument, @var{string}, which is a possible
|
||||
|
@ -1952,6 +1953,7 @@ Unless this function puts own face on the annotation suffix string,
|
|||
the @code{completions-annotations} face is added by default to
|
||||
that string.
|
||||
|
||||
@cindex @code{affixation-function}, in completion
|
||||
@item affixation-function
|
||||
The value should be a function for adding prefixes and suffixes to
|
||||
completions. The function should take one argument,
|
||||
|
@ -1962,6 +1964,7 @@ the completion string in the @file{*Completions*} buffer, and
|
|||
a suffix displayed after the completion string. This function
|
||||
takes priority over @code{annotation-function}.
|
||||
|
||||
@cindex @code{group-function}, in completion
|
||||
@item group-function
|
||||
The value should be a function for grouping the completion candidates.
|
||||
The function must take two arguments, @var{completion}, which is a
|
||||
|
@ -1972,12 +1975,14 @@ can also be @code{nil}. Otherwise the function must return the
|
|||
transformed candidate. The transformation can for example remove a
|
||||
redundant prefix, which is displayed in the group title.
|
||||
|
||||
@cindex @code{display-sort-function}, in completion
|
||||
@item display-sort-function
|
||||
The value should be a function for sorting completions. The function
|
||||
should take one argument, a list of completion strings, and return a
|
||||
sorted list of completion strings. It is allowed to alter the input
|
||||
list destructively.
|
||||
|
||||
@cindex @code{cycle-sort-function}, in completion
|
||||
@item cycle-sort-function
|
||||
The value should be a function for sorting completions, when
|
||||
@code{completion-cycle-threshold} is non-@code{nil} and the user is
|
||||
|
|
|
@ -770,7 +770,7 @@ This function returns the parser state that the parser would reach at
|
|||
position @var{pos} starting from the beginning of the visible portion
|
||||
of the buffer.
|
||||
@iftex
|
||||
See the next section for
|
||||
See the next section
|
||||
@end iftex
|
||||
@ifnottex
|
||||
@xref{Parser State},
|
||||
|
|
|
@ -451,10 +451,6 @@ you can now configure them.
|
|||
(the default) or use the attachment directory of the current node, if
|
||||
it is correctly configured as a Git repository.
|
||||
|
||||
*** Some faces now use fixed-pitch
|
||||
|
||||
See [[msg:875z8njaol.fsf@protesilaos.com][this thread]].
|
||||
|
||||
*** New option ~org-attach-sync-delete-empty-dir~
|
||||
|
||||
~org-attach-sync-delete-empty-dir~ controls the deletion of an empty
|
||||
|
@ -509,7 +505,7 @@ heading, except return nil.
|
|||
|
||||
In the past, faces of todo keywords, emphasised text, tags, and
|
||||
priority cookies inherited =default= face. The resulting headline
|
||||
fontification was not always consistent, as discussed in [[https://lists.gnu.org/archive/html/emacs-orgmode/2020-09/msg00331.html][this bug
|
||||
fontification was not always consistent, as discussed in [[msg::87h7sawubl.fsf@protesilaos.com][this bug
|
||||
report]]. Now, the relevant faces adapt to face used to fontify the
|
||||
current headline level.
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
% Reference Card for Org Mode
|
||||
\def\orgversionnumber{9.5.2}
|
||||
\def\orgversionnumber{9.5.3}
|
||||
\def\versionyear{2021} % latest update
|
||||
\input emacsver.tex
|
||||
|
||||
|
|
|
@ -3285,9 +3285,14 @@ To continue searching for next match, use command \\[fileloop-continue]."
|
|||
;;;###autoload
|
||||
(defun dired-do-query-replace-regexp (from to &optional delimited)
|
||||
"Do `query-replace-regexp' of FROM with TO, on all marked files.
|
||||
As each match is found, the user must type a character saying
|
||||
what to do with it. Type SPC or `y' to replace the match,
|
||||
DEL or `n' to skip and go to the next match. For more directions,
|
||||
type \\[help-command] at that time.
|
||||
|
||||
Third arg DELIMITED (prefix arg) means replace only word-delimited matches.
|
||||
If you exit (\\[keyboard-quit], RET or q), you can resume the query replace
|
||||
with the command \\[tags-loop-continue]."
|
||||
If you exit the query-replace loop (\\[keyboard-quit], RET or q), you can
|
||||
resume the query replace with the command \\[tags-loop-continue]."
|
||||
(interactive
|
||||
(let ((common
|
||||
(query-replace-read-args
|
||||
|
@ -3353,6 +3358,11 @@ REGEXP should use constructs supported by your local `grep' command."
|
|||
(defun dired-do-find-regexp-and-replace (from to)
|
||||
"Replace matches of FROM with TO, in all marked files.
|
||||
|
||||
As each match is found, the user must type a character saying
|
||||
what to do with it. Type SPC or `y' to replace the match,
|
||||
DEL or `n' to skip and go to the next match. For more directions,
|
||||
type \\[help-command] at that time.
|
||||
|
||||
If no files are marked, use the file under point.
|
||||
|
||||
For any marked directory, matches in all of its files are replaced,
|
||||
|
|
|
@ -4164,7 +4164,12 @@ cursor move past the beginning of line."
|
|||
"Query replace.
|
||||
If a null string is supplied as the string to be replaced,
|
||||
the query replace mode will toggle between string replace
|
||||
and regexp replace."
|
||||
and regexp replace.
|
||||
|
||||
As each match is found, the user must type a character saying
|
||||
what to do with it. Type SPC or `y' to replace the match,
|
||||
DEL or `n' to skip and go to the next match. For more directions,
|
||||
type \\[help-command] at that time."
|
||||
(interactive)
|
||||
(let (str)
|
||||
(setq str (viper-read-string-with-history
|
||||
|
|
|
@ -449,6 +449,10 @@ of FACE on FRAME."
|
|||
|
||||
(defun face-attribute (face attribute &optional frame inherit)
|
||||
"Return the value of FACE's ATTRIBUTE on FRAME.
|
||||
|
||||
See `set-face-attribute' for the list of supported attributes
|
||||
and their meanings and allowed values.
|
||||
|
||||
If the optional argument FRAME is given, report on face FACE in that frame.
|
||||
If FRAME is t, report on the defaults for face FACE (for new frames).
|
||||
If FRAME is omitted or nil, use the selected frame.
|
||||
|
|
|
@ -2331,7 +2331,12 @@ arg means replace backward. Note that using the prefix arg
|
|||
is possible only when `isearch-allow-scroll' is non-nil or
|
||||
`isearch-allow-prefix' is non-nil, and it doesn't always provide the
|
||||
correct matches for `query-replace', so the preferred way to run word
|
||||
replacements from Isearch is `M-s w ... M-%'."
|
||||
replacements from Isearch is `M-s w ... M-%'.
|
||||
|
||||
As each match is found, the user must type a character saying
|
||||
what to do with it. Type SPC or `y' to replace the match,
|
||||
DEL or `n' to skip and go to the next match. For more directions,
|
||||
type \\[help-command] at that time."
|
||||
(interactive
|
||||
(list current-prefix-arg))
|
||||
(barf-if-buffer-read-only)
|
||||
|
@ -2385,7 +2390,12 @@ replacements from Isearch is `M-s w ... M-%'."
|
|||
|
||||
(defun isearch-query-replace-regexp (&optional arg)
|
||||
"Start `query-replace-regexp' with string to replace from last search string.
|
||||
See `isearch-query-replace' for more information."
|
||||
See `isearch-query-replace' for more information.
|
||||
|
||||
As each match is found, the user must type a character saying
|
||||
what to do with it. Type SPC or `y' to replace the match,
|
||||
DEL or `n' to skip and go to the next match. For more directions,
|
||||
type \\[help-command] at that time."
|
||||
(interactive
|
||||
(list current-prefix-arg))
|
||||
(isearch-query-replace arg t))
|
||||
|
|
|
@ -1205,12 +1205,18 @@ component is used as the target of the symlink."
|
|||
;; The scripts could fail, for example with huge file size.
|
||||
(tramp-do-file-attributes-with-ls v localname id-format))))))))
|
||||
|
||||
(defconst tramp-sunos-unames (regexp-opt '("SunOS 5.10" "SunOS 5.11"))
|
||||
"Regexp to determine remote SunOS.")
|
||||
|
||||
(defun tramp-sh--quoting-style-options (vec)
|
||||
"Quoting style options to be used for VEC."
|
||||
(or
|
||||
(tramp-get-ls-command-with
|
||||
vec "--quoting-style=literal --show-control-chars")
|
||||
(tramp-get-ls-command-with vec "-w")
|
||||
;; ls on Solaris does not return an error in that case. We've got
|
||||
;; reports for "SunOS 5.11" so far.
|
||||
(unless (tramp-check-remote-uname vec tramp-sunos-unames)
|
||||
(tramp-get-ls-command-with vec "-w"))
|
||||
""))
|
||||
|
||||
(defun tramp-do-file-attributes-with-ls (vec localname &optional id-format)
|
||||
|
@ -4036,9 +4042,6 @@ Returns the exit code of the `test' program."
|
|||
switch
|
||||
(tramp-shell-quote-argument localname)))))
|
||||
|
||||
(defconst tramp-sunos-unames (regexp-opt '("SunOS 5.10" "SunOS 5.11"))
|
||||
"Regexp to determine remote SunOS.")
|
||||
|
||||
(defun tramp-find-executable
|
||||
(vec progname dirlist &optional ignore-tilde ignore-path)
|
||||
"Search for PROGNAME in $PATH and all directories mentioned in DIRLIST.
|
||||
|
|
|
@ -38,8 +38,7 @@
|
|||
:group 'org-faces)
|
||||
|
||||
(defface org-hide
|
||||
'((default :inherit fixed-pitch)
|
||||
(((background light)) (:foreground "white"))
|
||||
'((((background light)) (:foreground "white"))
|
||||
(((background dark)) (:foreground "black")))
|
||||
"Face used to hide leading stars in headlines.
|
||||
The foreground color of this face should be equal to the background
|
||||
|
@ -202,8 +201,7 @@ set the properties in the `org-column' face. For example, set
|
|||
:group 'org-faces)
|
||||
|
||||
(defface org-date
|
||||
'((default :inherit fixed-pitch)
|
||||
(((class color) (background light)) (:foreground "Purple" :underline t))
|
||||
'((((class color) (background light)) (:foreground "Purple" :underline t))
|
||||
(((class color) (background dark)) (:foreground "Cyan" :underline t))
|
||||
(t (:underline t)))
|
||||
"Face for date/time stamps."
|
||||
|
@ -379,8 +377,7 @@ changes."
|
|||
(sexp :tag "Face")))))
|
||||
|
||||
(defface org-table ;Copied from `font-lock-function-name-face'
|
||||
'((default :inherit fixed-pitch)
|
||||
(((class color) (min-colors 88) (background light)) (:foreground "Blue1"))
|
||||
'((((class color) (min-colors 88) (background light)) (:foreground "Blue1"))
|
||||
(((class color) (min-colors 88) (background dark)) (:foreground "LightSkyBlue"))
|
||||
(((class color) (min-colors 16) (background light)) (:foreground "Blue"))
|
||||
(((class color) (min-colors 16) (background dark)) (:foreground "LightSkyBlue"))
|
||||
|
@ -396,8 +393,7 @@ changes."
|
|||
:group 'org-faces)
|
||||
|
||||
(defface org-formula
|
||||
'((default :inherit fixed-pitch)
|
||||
(((class color) (min-colors 88) (background light)) (:foreground "Firebrick"))
|
||||
'((((class color) (min-colors 88) (background light)) (:foreground "Firebrick"))
|
||||
(((class color) (min-colors 88) (background dark)) (:foreground "chocolate1"))
|
||||
(((class color) (min-colors 8) (background light)) (:foreground "red"))
|
||||
(((class color) (min-colors 8) (background dark)) (:foreground "red"))
|
||||
|
@ -405,12 +401,12 @@ changes."
|
|||
"Face for formulas."
|
||||
:group 'org-faces)
|
||||
|
||||
(defface org-code '((t :inherit (fixed-pitch shadow)))
|
||||
(defface org-code '((t :inherit shadow))
|
||||
"Face for fixed-width text like code snippets."
|
||||
:group 'org-faces
|
||||
:version "22.1")
|
||||
|
||||
(defface org-meta-line '((t :inherit (fixed-pitch font-lock-comment-face)))
|
||||
(defface org-meta-line '((t :inherit font-lock-comment-face))
|
||||
"Face for meta lines starting with \"#+\"."
|
||||
:group 'org-faces
|
||||
:version "22.1")
|
||||
|
@ -437,7 +433,7 @@ This face applies to the #+TITLE:, #+SUBTITLE:, #+AUTHOR:,
|
|||
#+EMAIL: and #+DATE: keywords."
|
||||
:group 'org-faces)
|
||||
|
||||
(defface org-block `((t :inherit (fixed-pitch shadow)
|
||||
(defface org-block `((t :inherit shadow
|
||||
,@(and (>= emacs-major-version 27) '(:extend t))))
|
||||
"Face used for text inside various blocks.
|
||||
|
||||
|
@ -459,7 +455,7 @@ verse and quote blocks are fontified using the `org-verse' and
|
|||
"Face used for the line delimiting the end of source blocks."
|
||||
:group 'org-faces)
|
||||
|
||||
(defface org-verbatim '((t (:inherit (fixed-pitch shadow))))
|
||||
(defface org-verbatim '((t (:inherit shadow)))
|
||||
"Face for fixed-with text like code snippets."
|
||||
:group 'org-faces
|
||||
:version "22.1")
|
||||
|
|
|
@ -5,13 +5,13 @@
|
|||
(defun org-release ()
|
||||
"The release version of Org.
|
||||
Inserted by installing Org mode or when a release is made."
|
||||
(let ((org-release "9.5.2"))
|
||||
(let ((org-release "9.5.3"))
|
||||
org-release))
|
||||
;;;###autoload
|
||||
(defun org-git-version ()
|
||||
"The Git version of Org mode.
|
||||
Inserted by installing Org or when a release is made."
|
||||
(let ((org-git-version "release_9.5.2-38-g682ccd"))
|
||||
(let ((org-git-version "release_9.5.3-3-gd54104"))
|
||||
org-git-version))
|
||||
|
||||
(provide 'org-version)
|
||||
|
|
|
@ -9,7 +9,7 @@
|
|||
;; Homepage: https://orgmode.org
|
||||
;; Package-Requires: ((emacs "25.1"))
|
||||
|
||||
;; Version: 9.5.2
|
||||
;; Version: 9.5.3
|
||||
|
||||
;; This file is part of GNU Emacs.
|
||||
;;
|
||||
|
@ -15012,20 +15012,24 @@ value is equivalent to `inactive'.
|
|||
When at a timestamp, return the position of the point as a symbol
|
||||
among `bracket', `after', `year', `month', `hour', `minute',
|
||||
`day' or a number of character from the last know part of the
|
||||
time stamp.
|
||||
time stamp. If diary sexp timestamps, any point inside the timestamp
|
||||
is considered `day' (i.e. only `bracket', `day', and `after' return
|
||||
values are possible).
|
||||
|
||||
When matching, the match groups are the following:
|
||||
group 1: year
|
||||
group 2: month
|
||||
group 3: day number
|
||||
group 4: day name
|
||||
group 1: year, if any
|
||||
group 2: month, if any
|
||||
group 3: day number, if any
|
||||
group 4: day name, if any
|
||||
group 5: hours, if any
|
||||
group 6: minutes, if any"
|
||||
(let* ((regexp (if extended
|
||||
(if (eq extended 'agenda)
|
||||
org-element--timestamp-regexp
|
||||
org-ts-regexp3)
|
||||
org-ts-regexp2))
|
||||
(let* ((regexp
|
||||
(if extended
|
||||
(if (eq extended 'agenda)
|
||||
(rx (or (regexp org-ts-regexp3)
|
||||
(regexp org-element--timestamp-regexp)))
|
||||
org-ts-regexp3)
|
||||
org-ts-regexp2))
|
||||
(pos (point))
|
||||
(match?
|
||||
(let ((boundaries (org-in-regexp regexp)))
|
||||
|
|
|
@ -3633,7 +3633,12 @@ If regular expression is nil, repeat last search."
|
|||
;;;###autoload
|
||||
(defun ebrowse-tags-query-replace (from to)
|
||||
"Query replace FROM with TO in all files of a class tree.
|
||||
With prefix arg, process files of marked classes only."
|
||||
With prefix arg, process files of marked classes only.
|
||||
|
||||
As each match is found, the user must type a character saying
|
||||
what to do with it. Type SPC or `y' to replace the match,
|
||||
DEL or `n' to skip and go to the next match. For more directions,
|
||||
type \\[help-command] at that time."
|
||||
(interactive
|
||||
"sTree query replace (regexp): \nsTree query replace %s by: ")
|
||||
(setq ebrowse-tags-loop-call
|
||||
|
|
|
@ -1839,7 +1839,13 @@ Also see the documentation of the `tags-file-name' variable."
|
|||
Third arg DELIMITED (prefix arg) means replace only word-delimited matches.
|
||||
If you exit (\\[keyboard-quit], RET or q), you can resume the query replace
|
||||
with the command \\[fileloop-continue].
|
||||
For non-interactive use, superseded by `fileloop-initialize-replace'."
|
||||
|
||||
As each match is found, the user must type a character saying
|
||||
what to do with it. Type SPC or `y' to replace the match,
|
||||
DEL or `n' to skip and go to the next match. For more directions,
|
||||
type \\[help-command] at that time.
|
||||
|
||||
For non-interactive use, this is superseded by `fileloop-initialize-replace'."
|
||||
(declare (advertised-calling-convention (from to &optional delimited) "27.1"))
|
||||
(interactive (query-replace-read-args "Tags query replace (regexp)" t t))
|
||||
(fileloop-initialize-replace
|
||||
|
|
|
@ -1076,6 +1076,10 @@ command \\[fileloop-continue]."
|
|||
(defun project-query-replace-regexp (from to)
|
||||
"Query-replace REGEXP in all the files of the project.
|
||||
Stops when a match is found and prompts for whether to replace it.
|
||||
At that prompt, the user must type a character saying what to do
|
||||
with the match. Type SPC or `y' to replace the match,
|
||||
DEL or `n' to skip and go to the next match. For more directions,
|
||||
type \\[help-command] at that time.
|
||||
If you exit the `query-replace', you can later continue the
|
||||
`query-replace' loop using the command \\[fileloop-continue]."
|
||||
(interactive
|
||||
|
|
|
@ -751,6 +751,12 @@ references displayed in the current *xref* buffer.
|
|||
When called interactively, it uses '.*' as FROM, which means
|
||||
replace the whole name. Unless called with prefix argument, in
|
||||
which case the user is prompted for both FROM and TO."
|
||||
|
||||
As each match is found, the user must type a character saying
|
||||
what to do with it. Type SPC or `y' to replace the match,
|
||||
DEL or `n' to skip and go to the next match. For more directions,
|
||||
type \\[help-command] at that time.
|
||||
"
|
||||
(interactive
|
||||
(let* ((fr
|
||||
(if current-prefix-arg
|
||||
|
|
|
@ -399,7 +399,9 @@ should a regexp."
|
|||
(defun query-replace (from-string to-string &optional delimited start end backward region-noncontiguous-p)
|
||||
"Replace some occurrences of FROM-STRING with TO-STRING.
|
||||
As each match is found, the user must type a character saying
|
||||
what to do with it. For directions, type \\[help-command] at that time.
|
||||
what to do with it. Type SPC or `y' to replace the match,
|
||||
DEL or `n' to skip and go to the next match. For more directions,
|
||||
type \\[help-command] at that time.
|
||||
|
||||
In Transient Mark mode, if the mark is active, operate on the contents
|
||||
of the region. Otherwise, operate from point to the end of the buffer's
|
||||
|
@ -469,7 +471,9 @@ To customize possible responses, change the bindings in `query-replace-map'."
|
|||
(defun query-replace-regexp (regexp to-string &optional delimited start end backward region-noncontiguous-p)
|
||||
"Replace some things after point matching REGEXP with TO-STRING.
|
||||
As each match is found, the user must type a character saying
|
||||
what to do with it. For directions, type \\[help-command] at that time.
|
||||
what to do with it. Type SPC or `y' to replace the match,
|
||||
DEL or `n' to skip and go to the next match. For more directions,
|
||||
type \\[help-command] at that time.
|
||||
|
||||
In Transient Mark mode, if the mark is active, operate on the contents
|
||||
of the region. Otherwise, operate from point to the end of the buffer's
|
||||
|
@ -566,7 +570,9 @@ Interactive use of this function is deprecated in favor of the
|
|||
using `search-forward-regexp' and `replace-match' is preferred.
|
||||
|
||||
As each match is found, the user must type a character saying
|
||||
what to do with it. For directions, type \\[help-command] at that time.
|
||||
what to do with it. Type SPC or `y' to replace the match,
|
||||
DEL or `n' to skip and go to the next match. For more directions,
|
||||
type \\[help-command] at that time.
|
||||
|
||||
TO-EXPR is a Lisp expression evaluated to compute each replacement. It may
|
||||
reference `replace-count' to get the number of replacements already made.
|
||||
|
@ -652,6 +658,11 @@ Use \\<minibuffer-local-map>\\[next-history-element] \
|
|||
to pull the last incremental search regexp to the minibuffer
|
||||
that reads REGEXP.
|
||||
|
||||
As each match is found, the user must type a character saying
|
||||
what to do with it. Type SPC or `y' to replace the match,
|
||||
DEL or `n' to skip and go to the next match. For more directions,
|
||||
type \\[help-command] at that time.
|
||||
|
||||
A prefix argument N says to use each replacement string N times
|
||||
before rotating to the next.
|
||||
Fourth and fifth arg START and END specify the region to operate on.
|
||||
|
|
|
@ -88,6 +88,12 @@ No active TAGS table is required."
|
|||
(defun reftex-query-replace-document (&optional from to delimited)
|
||||
"Do `query-replace-regexp' of FROM with TO over the entire document.
|
||||
Third arg DELIMITED (prefix arg) means replace only word-delimited matches.
|
||||
|
||||
As each match is found, the user must type a character saying
|
||||
what to do with it. Type SPC or `y' to replace the match,
|
||||
DEL or `n' to skip and go to the next match. For more directions,
|
||||
type \\[help-command] at that time.
|
||||
|
||||
If you exit (\\[keyboard-quit], RET or q), you can resume the query replace
|
||||
with the command \\[tags-loop-continue].
|
||||
No active TAGS table is required."
|
||||
|
|
|
@ -933,6 +933,12 @@ To continue searching for next match, use command \\[tags-loop-continue]."
|
|||
"Do `query-replace-regexp' of FROM with TO, on all marked files.
|
||||
If a directory is marked, then use the files displayed for that directory.
|
||||
Third arg DELIMITED (prefix arg) means replace only word-delimited matches.
|
||||
|
||||
As each match is found, the user must type a character saying
|
||||
what to do with it. Type SPC or `y' to replace the match,
|
||||
DEL or `n' to skip and go to the next match. For more directions,
|
||||
type \\[help-command] at that time.
|
||||
|
||||
If you exit (\\[keyboard-quit], RET or q), you can resume the query replace
|
||||
with the command \\[tags-loop-continue]."
|
||||
;; FIXME: this is almost a copy of `dired-do-query-replace-regexp'. This
|
||||
|
|
37
src/font.c
37
src/font.c
|
@ -4237,26 +4237,33 @@ merge_font_spec (Lisp_Object from, Lisp_Object to)
|
|||
DEFUN ("font-get", Ffont_get, Sfont_get, 2, 2, 0,
|
||||
doc: /* Return the value of FONT's property KEY.
|
||||
FONT is a font-spec, a font-entity, or a font-object.
|
||||
KEY is any symbol, but these are reserved for specific meanings:
|
||||
:family, :weight, :slant, :width, :foundry, :adstyle, :registry,
|
||||
:size, :name, :script, :otf
|
||||
KEY can be any symbol, but these are reserved for specific meanings:
|
||||
:foundry, :family, :adstyle, :registry, :weight, :slant, :width,
|
||||
:size, :dpi, :spacing, :avgwidth, :script, :lang, :otf
|
||||
See the documentation of `font-spec' for their meanings.
|
||||
In addition, if FONT is a font-entity or a font-object, values of
|
||||
:script and :otf are different from those of a font-spec as below:
|
||||
|
||||
The value of :script may be a list of scripts that are supported by the font.
|
||||
If FONT is a font-entity or a font-object, then values of
|
||||
:script and :otf properties are different from those of a font-spec
|
||||
as below:
|
||||
|
||||
The value of :otf is a cons (GSUB . GPOS) where GSUB and GPOS are lists
|
||||
representing the OpenType features supported by the font by this form:
|
||||
((SCRIPT (LANGSYS FEATURE ...) ...) ...)
|
||||
SCRIPT, LANGSYS, and FEATURE are all symbols representing OpenType
|
||||
Layout tags.
|
||||
The value of :script may be a list of scripts that are supported by
|
||||
the font.
|
||||
|
||||
The value of :otf is a cons (GSUB . GPOS) where GSUB and GPOS are
|
||||
lists representing the OpenType features supported by the font, of
|
||||
this form: ((SCRIPT (LANGSYS FEATURE ...) ...) ...), where
|
||||
SCRIPT, LANGSYS, and FEATURE are all symbols representing OpenType
|
||||
Layout tags. See `otf-script-alist' for the OpenType script tags.
|
||||
|
||||
In addition to the keys listed above, the following keys are reserved
|
||||
for the specific meanings as below:
|
||||
|
||||
The value of :combining-capability is non-nil if the font-backend of
|
||||
FONT supports rendering of combining characters for non-OTF fonts. */)
|
||||
The value of :type is a symbol that identifies the font backend to be
|
||||
used, such as `ftcrhb' or `xfthb' on X , `harfbuzz' or `uniscribe' on
|
||||
MS-Windows, `ns' on Cocoa/GNUstep, etc.
|
||||
|
||||
The value of :combining-capability is non-nil if the font-backend of
|
||||
FONT supports rendering of combining characters for non-OTF fonts. */)
|
||||
(Lisp_Object font, Lisp_Object key)
|
||||
{
|
||||
int idx;
|
||||
|
@ -4384,7 +4391,9 @@ accepted by the function `font-spec' (which see), VAL must be what
|
|||
allowed in `font-spec'.
|
||||
|
||||
If FONT is a font-entity or a font-object, KEY must not be the one
|
||||
accepted by `font-spec'. */)
|
||||
accepted by `font-spec'.
|
||||
|
||||
See also `font-get' for KEYs that have special meanings. */)
|
||||
(Lisp_Object font, Lisp_Object prop, Lisp_Object val)
|
||||
{
|
||||
int idx;
|
||||
|
|
|
@ -1450,28 +1450,30 @@ static void update_auto_fontset_alist (Lisp_Object, Lisp_Object);
|
|||
|
||||
DEFUN ("set-fontset-font", Fset_fontset_font, Sset_fontset_font, 3, 5, 0,
|
||||
doc: /*
|
||||
Modify fontset NAME to use FONT-SPEC for TARGET characters.
|
||||
Modify FONTSET to use font specification in FONT-SPEC for displaying CHARACTERS.
|
||||
|
||||
NAME is a fontset name (a string), nil for the fontset of FRAME,
|
||||
or t for the default fontset.
|
||||
FONTSET should be a fontset name (a string); or nil, meaning the
|
||||
fontset of FRAME; or t, meaning the default fontset.
|
||||
|
||||
TARGET may be a single character to use FONT-SPEC for.
|
||||
CHARACTERS may be a single character to use FONT-SPEC for.
|
||||
|
||||
TARGET may be a cons (FROM . TO), where FROM and TO are characters.
|
||||
CHARACTERS may be a cons (FROM . TO), where FROM and TO are characters.
|
||||
In that case, use FONT-SPEC for all the characters in the range
|
||||
between FROM and TO (inclusive).
|
||||
|
||||
TARGET may be a script symbol. In that case, use FONT-SPEC for
|
||||
CHARACTERS may be a script symbol. In that case, use FONT-SPEC for
|
||||
all the characters that belong to the script. See the variable
|
||||
`script-representative-chars' for the list of known scripts.
|
||||
`script-representative-chars' for the list of known scripts, and
|
||||
see the variable `char-script-table' for the script of any specific
|
||||
character.
|
||||
|
||||
TARGET may be a charset. In that case, use FONT-SPEC for all
|
||||
the characters in the charset. See `list-character-sets' and
|
||||
CHARACTERS may be a charset symbol. In that case, use FONT-SPEC for
|
||||
all the characters in the charset. See `list-character-sets' and
|
||||
`list-charset-chars' for the list of character sets and their
|
||||
characters.
|
||||
|
||||
TARGET may be nil. In that case, use FONT-SPEC for any character for
|
||||
which no font-spec is specified.
|
||||
CHARACTERS may be nil. In that case, use FONT-SPEC for any
|
||||
character for which no font-spec is specified in FONTSET.
|
||||
|
||||
FONT-SPEC may one of these:
|
||||
* A font-spec object made by the function `font-spec' (which see).
|
||||
|
@ -1479,25 +1481,28 @@ FONT-SPEC may one of these:
|
|||
REGISTRY is a font registry name. FAMILY may contain foundry
|
||||
name, and REGISTRY may contain encoding name.
|
||||
* A font name string.
|
||||
* nil, which explicitly specifies that there's no font for TARGET.
|
||||
* nil, which explicitly specifies that there's no font for CHARACTERS.
|
||||
|
||||
Optional 4th argument FRAME is a frame, or nil for the selected frame,
|
||||
to be considered in the case that NAME is nil.
|
||||
Optional 4th argument FRAME is a frame whose fontset should be modified;
|
||||
it is used if FONTSET is nil. If FONTSET is nil and FRAME is omitted
|
||||
or nil, that stands for the fontset of the selected frame.
|
||||
|
||||
Optional 5th argument ADD, if non-nil, specifies how to add FONT-SPEC
|
||||
to the previously set font specifications for TARGET. If it is
|
||||
`prepend', FONT-SPEC is prepended. If it is `append', FONT-SPEC is
|
||||
appended. By default, FONT-SPEC overrides the previous settings. */)
|
||||
(Lisp_Object name, Lisp_Object target, Lisp_Object font_spec, Lisp_Object frame, Lisp_Object add)
|
||||
to the previously set font specifications for CHARACTERS. If it is
|
||||
`prepend', FONT-SPEC is prepended to the existing font specifications.
|
||||
If it is `append', FONT-SPEC is appended. By default, FONT-SPEC
|
||||
overwrites the previous settings. */)
|
||||
(Lisp_Object fontset, Lisp_Object characters, Lisp_Object font_spec,
|
||||
Lisp_Object frame, Lisp_Object add)
|
||||
{
|
||||
Lisp_Object fontset;
|
||||
Lisp_Object fontset_obj;
|
||||
Lisp_Object font_def, registry, family;
|
||||
Lisp_Object range_list;
|
||||
struct charset *charset = NULL;
|
||||
Lisp_Object fontname;
|
||||
bool ascii_changed = 0;
|
||||
|
||||
fontset = check_fontset_name (name, &frame);
|
||||
fontset_obj = check_fontset_name (fontset, &frame);
|
||||
|
||||
fontname = Qnil;
|
||||
if (CONSP (font_spec))
|
||||
|
@ -1555,18 +1560,18 @@ appended. By default, FONT-SPEC overrides the previous settings. */)
|
|||
else
|
||||
font_def = Qnil;
|
||||
|
||||
if (CHARACTERP (target))
|
||||
if (CHARACTERP (characters))
|
||||
{
|
||||
if (XFIXNAT (target) < 0x80)
|
||||
if (XFIXNAT (characters) < 0x80)
|
||||
error ("Can't set a font for partial ASCII range");
|
||||
range_list = list1 (Fcons (target, target));
|
||||
range_list = list1 (Fcons (characters, characters));
|
||||
}
|
||||
else if (CONSP (target))
|
||||
else if (CONSP (characters))
|
||||
{
|
||||
Lisp_Object from, to;
|
||||
|
||||
from = Fcar (target);
|
||||
to = Fcdr (target);
|
||||
from = Fcar (characters);
|
||||
to = Fcdr (characters);
|
||||
CHECK_CHARACTER (from);
|
||||
CHECK_CHARACTER (to);
|
||||
if (XFIXNAT (from) < 0x80)
|
||||
|
@ -1575,38 +1580,38 @@ appended. By default, FONT-SPEC overrides the previous settings. */)
|
|||
error ("Can't set a font for partial ASCII range");
|
||||
ascii_changed = 1;
|
||||
}
|
||||
range_list = list1 (target);
|
||||
range_list = list1 (characters);
|
||||
}
|
||||
else if (SYMBOLP (target) && !NILP (target))
|
||||
else if (SYMBOLP (characters) && !NILP (characters))
|
||||
{
|
||||
Lisp_Object script_list;
|
||||
Lisp_Object val;
|
||||
|
||||
range_list = Qnil;
|
||||
script_list = XCHAR_TABLE (Vchar_script_table)->extras[0];
|
||||
if (! NILP (Fmemq (target, script_list)))
|
||||
if (! NILP (Fmemq (characters, script_list)))
|
||||
{
|
||||
if (EQ (target, Qlatin))
|
||||
if (EQ (characters, Qlatin))
|
||||
ascii_changed = 1;
|
||||
val = list1 (target);
|
||||
val = list1 (characters);
|
||||
map_char_table (accumulate_script_ranges, Qnil, Vchar_script_table,
|
||||
val);
|
||||
range_list = Fnreverse (XCDR (val));
|
||||
}
|
||||
if (CHARSETP (target))
|
||||
if (CHARSETP (characters))
|
||||
{
|
||||
CHECK_CHARSET_GET_CHARSET (target, charset);
|
||||
CHECK_CHARSET_GET_CHARSET (characters, charset);
|
||||
if (charset->ascii_compatible_p)
|
||||
ascii_changed = 1;
|
||||
}
|
||||
else if (NILP (range_list))
|
||||
error ("Invalid script or charset name: %s",
|
||||
SDATA (SYMBOL_NAME (target)));
|
||||
SDATA (SYMBOL_NAME (characters)));
|
||||
}
|
||||
else if (NILP (target))
|
||||
else if (NILP (characters))
|
||||
range_list = list1 (Qnil);
|
||||
else
|
||||
error ("Invalid target for setting a font");
|
||||
error ("Invalid second argument for setting a font in a fontset");
|
||||
|
||||
if (ascii_changed)
|
||||
{
|
||||
|
@ -1614,7 +1619,7 @@ appended. By default, FONT-SPEC overrides the previous settings. */)
|
|||
|
||||
if (NILP (font_spec))
|
||||
error ("Can't set ASCII font to nil");
|
||||
val = CHAR_TABLE_REF (fontset, 0);
|
||||
val = CHAR_TABLE_REF (fontset_obj, 0);
|
||||
if (! NILP (val) && EQ (add, Qappend))
|
||||
/* We are going to change just an additional font for ASCII. */
|
||||
ascii_changed = 0;
|
||||
|
@ -1622,7 +1627,7 @@ appended. By default, FONT-SPEC overrides the previous settings. */)
|
|||
|
||||
if (charset)
|
||||
{
|
||||
Lisp_Object arg = CALLN (Fvector, fontset, font_def, add,
|
||||
Lisp_Object arg = CALLN (Fvector, fontset_obj, font_def, add,
|
||||
ascii_changed ? Qt : Qnil, range_list);
|
||||
|
||||
map_charset_chars (set_fontset_font, Qnil, arg, charset,
|
||||
|
@ -1631,15 +1636,15 @@ appended. By default, FONT-SPEC overrides the previous settings. */)
|
|||
range_list = AREF (arg, 4);
|
||||
}
|
||||
for (; CONSP (range_list); range_list = XCDR (range_list))
|
||||
FONTSET_ADD (fontset, XCAR (range_list), font_def, add);
|
||||
FONTSET_ADD (fontset_obj, XCAR (range_list), font_def, add);
|
||||
|
||||
if (ascii_changed)
|
||||
{
|
||||
Lisp_Object tail, fr;
|
||||
int fontset_id = XFIXNUM (FONTSET_ID (fontset));
|
||||
int fontset_id = XFIXNUM (FONTSET_ID (fontset_obj));
|
||||
|
||||
set_fontset_ascii (fontset, fontname);
|
||||
name = FONTSET_NAME (fontset);
|
||||
set_fontset_ascii (fontset_obj, fontname);
|
||||
fontset = FONTSET_NAME (fontset_obj);
|
||||
FOR_EACH_FRAME (tail, fr)
|
||||
{
|
||||
struct frame *f = XFRAME (fr);
|
||||
|
@ -1657,17 +1662,17 @@ appended. By default, FONT-SPEC overrides the previous settings. */)
|
|||
font_object = font_open_by_spec (f, font_spec);
|
||||
if (! NILP (font_object))
|
||||
{
|
||||
update_auto_fontset_alist (font_object, fontset);
|
||||
AUTO_FRAME_ARG (arg, Qfont, Fcons (name, font_object));
|
||||
update_auto_fontset_alist (font_object, fontset_obj);
|
||||
AUTO_FRAME_ARG (arg, Qfont, Fcons (fontset, font_object));
|
||||
Fmodify_frame_parameters (fr, arg);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* Free all realized fontsets whose base is FONTSET. This way, the
|
||||
/* Free all realized fontsets whose base is FONTSET_OBJ. This way, the
|
||||
specified character(s) are surely redisplayed by a correct
|
||||
font. */
|
||||
free_realized_fontsets (fontset);
|
||||
free_realized_fontsets (fontset_obj);
|
||||
|
||||
return Qnil;
|
||||
}
|
||||
|
|
|
@ -770,7 +770,7 @@ static bool message_buf_print;
|
|||
static bool message_cleared_p;
|
||||
|
||||
/* A scratch glyph row with contents used for generating truncation
|
||||
glyphs. Also used in direct_output_for_insert. */
|
||||
glyphs and overlay-arrow glyphs. */
|
||||
|
||||
#define MAX_SCRATCH_GLYPHS 100
|
||||
static struct glyph_row scratch_glyph_row;
|
||||
|
@ -22144,7 +22144,7 @@ get_overlay_arrow_glyph_row (struct window *w, Lisp_Object overlay_arrow_string)
|
|||
struct buffer *buffer = XBUFFER (w->contents);
|
||||
struct buffer *old = current_buffer;
|
||||
const unsigned char *arrow_string = SDATA (overlay_arrow_string);
|
||||
ptrdiff_t arrow_len = SCHARS (overlay_arrow_string);
|
||||
ptrdiff_t arrow_len = SBYTES (overlay_arrow_string), char_num = 0;
|
||||
const unsigned char *arrow_end = arrow_string + arrow_len;
|
||||
const unsigned char *p;
|
||||
struct it it;
|
||||
|
@ -22175,7 +22175,7 @@ get_overlay_arrow_glyph_row (struct window *w, Lisp_Object overlay_arrow_string)
|
|||
p += it.len;
|
||||
|
||||
/* Get its face. */
|
||||
ilisp = make_fixnum (p - arrow_string);
|
||||
ilisp = make_fixnum (char_num++);
|
||||
face = Fget_text_property (ilisp, Qface, overlay_arrow_string);
|
||||
it.face_id = compute_char_face (f, it.char_to_display, face);
|
||||
|
||||
|
|
28
src/xfaces.c
28
src/xfaces.c
|
@ -1450,9 +1450,9 @@ enum xlfd_field
|
|||
};
|
||||
|
||||
/* Order by which font selection chooses fonts. The default values
|
||||
mean `first, find a best match for the font width, then for the
|
||||
font height, then for weight, then for slant.' This variable can be
|
||||
set via set-face-font-sort-order. */
|
||||
mean "first, find a best match for the font width, then for the
|
||||
font height, then for weight, then for slant." This variable can be
|
||||
set via 'internal-set-font-selection-order'. */
|
||||
|
||||
static int font_sort_order[4];
|
||||
|
||||
|
@ -1503,16 +1503,22 @@ If FAMILY is omitted or nil, list all families.
|
|||
Otherwise, FAMILY must be a string, possibly containing wildcards
|
||||
`?' and `*'.
|
||||
If FRAME is omitted or nil, use the selected frame.
|
||||
|
||||
Each element of the result is a vector [FAMILY WIDTH POINT-SIZE WEIGHT
|
||||
SLANT FIXED-P FULL REGISTRY-AND-ENCODING].
|
||||
FAMILY is the font family name. POINT-SIZE is the size of the
|
||||
font in 1/10 pt. WIDTH, WEIGHT, and SLANT are symbols describing the
|
||||
width, weight and slant of the font. These symbols are the same as for
|
||||
face attributes. FIXED-P is non-nil if the font is fixed-pitch.
|
||||
FULL is the full name of the font, and REGISTRY-AND-ENCODING is a string
|
||||
giving the registry and encoding of the font.
|
||||
The result list is sorted according to the current setting of
|
||||
the face font sort order. */)
|
||||
|
||||
FAMILY is the font family name.
|
||||
POINT-SIZE is the size of the font in 1/10 pt.
|
||||
WIDTH, WEIGHT, and SLANT are symbols describing the width, weight
|
||||
and slant of the font. These symbols are the same as for face
|
||||
attributes, see `set-face-attribute'.
|
||||
FIXED-P is non-nil if the font is fixed-pitch.
|
||||
FULL is the full name of the font.
|
||||
REGISTRY-AND-ENCODING is a string giving the registry and encoding of
|
||||
the font.
|
||||
|
||||
The resulting list is sorted according to the current setting of
|
||||
the face font sort order, see `face-font-selection-order'. */)
|
||||
(Lisp_Object family, Lisp_Object frame)
|
||||
{
|
||||
Lisp_Object font_spec, list, *drivers, vec;
|
||||
|
|
Loading…
Add table
Reference in a new issue