Skip to content

Commit dc8a8d0

Browse files
author
Yuuki Harano
committed
Merge branch 'master' of https://github.com/emacs-mirror/emacs into pgtk
2 parents 1457c45 + 2b1dc8c commit dc8a8d0

File tree

119 files changed

+3943
-1524
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

119 files changed

+3943
-1524
lines changed

.dir-locals.el

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
;;; Directory Local Variables
2+
;;; For more information see (info "(emacs) Directory Variables")
3+
14
((nil . ((tab-width . 8)
25
(sentence-end-double-space . t)
36
(fill-column . 70)

admin/unidata/uvs.el

Lines changed: 13 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
;;; uvs.el --- utility for UVS (format 14) cmap subtables in OpenType fonts.
1+
;;; uvs.el --- utility for UVS (format 14) cmap subtables in OpenType fonts -*- lexical-binding:t -*-
22

33
;; Copyright (C) 2014-2019 Free Software Foundation, Inc.
44

@@ -30,7 +30,7 @@
3030
;;; Code:
3131

3232
(defun uvs-fields-total-size (fields)
33-
(apply '+ (mapcar (lambda (field) (get field 'uvs-field-size)) fields)))
33+
(apply #'+ (mapcar (lambda (field) (get field 'uvs-field-size)) fields)))
3434

3535
;;; Fields in Format 14 header.
3636
(defconst uvs-format-14-header-fields
@@ -85,7 +85,8 @@ where selectors and bases are sorted in ascending order."
8585
"\\(?:" (regexp-quote collection-id) "\\)"
8686
"[[:blank:]]*;[[:blank:]]*"
8787
"\\([^\n[:blank:]]+\\)"
88-
"[[:blank:]]*$") nil t)
88+
"[[:blank:]]*$")
89+
nil t)
8990
(let* ((base (string-to-number (match-string 1) 16))
9091
(selector (string-to-number (match-string 2) 16))
9192
(sequence-id (match-string 3))
@@ -105,7 +106,7 @@ where selectors and bases are sorted in ascending order."
105106
"Convert integer VALUE to a list of SIZE bytes.
106107
The most significant byte comes first."
107108
(let (result)
108-
(dotimes (i size)
109+
(dotimes (_ size)
109110
(push (logand value #xff) result)
110111
(setq value (ash value -8)))
111112
result))
@@ -118,17 +119,17 @@ respectively. Byte length of each value is determined by the
118119
(while fields
119120
(let ((field (car fields))
120121
(value (car values)))
121-
(insert (apply 'unibyte-string
122+
(insert (apply #'unibyte-string
122123
(uvs-int-to-bytes value (get field 'uvs-field-size))))
123124
(setq fields (cdr fields) values (cdr values)))))
124125

125126
(defun uvs-insert-alist-as-bytes (uvs-alist)
126127
"Insert UVS-ALIST as a sequence of bytes to the current buffer."
127128
(let* ((nrecords (length uvs-alist)) ; # of selectors
128129
(total-nmappings
129-
(apply '+ (mapcar
130-
(lambda (selector-bgs) (length (cdr selector-bgs)))
131-
uvs-alist)))
130+
(apply #'+ (mapcar
131+
(lambda (selector-bgs) (length (cdr selector-bgs)))
132+
uvs-alist)))
132133
(non-default-offset
133134
(+ uvs-format-14-header-size
134135
(* uvs-variation-selector-record-size nrecords))))
@@ -158,23 +159,23 @@ respectively. Byte length of each value is determined by the
158159
(car base-glyph)
159160
(cdr base-glyph))))))
160161

161-
(defun uvs-dump (&optional bytes-per-line separator separator-eol line-prefix)
162+
(defun uvs-dump (&optional bytes-per-line separator separator-eol bol-prefix)
162163
"Print the current buffer as in representation of C array contents."
163164
(or bytes-per-line (setq bytes-per-line 8))
164165
(or separator (setq separator ", "))
165166
(or separator-eol (setq separator-eol ","))
166-
(or line-prefix (setq line-prefix " "))
167+
(or bol-prefix (setq bol-prefix " "))
167168
(goto-char (point-min))
168169
(while (> (- (point-max) (point)) bytes-per-line)
169-
(princ line-prefix)
170+
(princ bol-prefix)
170171
(princ (mapconcat (lambda (byte) (format "0x%02x" byte))
171172
(string-to-unibyte
172173
(buffer-substring (point) (+ (point) bytes-per-line)))
173174
separator))
174175
(princ separator-eol)
175176
(terpri)
176177
(forward-char bytes-per-line))
177-
(princ line-prefix)
178+
(princ bol-prefix)
178179
(princ (mapconcat (lambda (byte) (format "0x%02x" byte))
179180
(string-to-unibyte
180181
(buffer-substring (point) (point-max)))

doc/emacs/buffers.texi

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -725,6 +725,22 @@ of directories.
725725
the variable @code{icomplete-mode} to @code{t} (@pxref{Easy
726726
Customization}).
727727

728+
@findex fido-mode
729+
@cindex fido mode
730+
731+
An alternative to Icomplete mode is Fido mode. This is very similar
732+
to Icomplete mode, but retains some functionality from a popular
733+
extension called Ido mode (in fact the name is derived from ``Fake
734+
Ido''). Among other things, in Fido mode, @kbd{C-s} and @kbd{C-r} are
735+
also used to rotate the completions list, @kbd{C-k} can be used to
736+
delete files and kill buffers in-list. Another noteworthy aspect is
737+
that @code{flex} is used as the default completion style
738+
(@pxref{Completion Styles}).
739+
740+
To enable Fido mode, type @kbd{M-x fido-mode}, or customize
741+
the variable @code{fido-mode} to @code{t} (@pxref{Easy
742+
Customization}).
743+
728744
@node Buffer Menus
729745
@subsection Customizing Buffer Menus
730746

doc/emacs/frames.texi

Lines changed: 14 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -592,9 +592,9 @@ command can be helpful. It describes the character at point, and
592592
names the font that it's rendered in.
593593

594594
@cindex fontconfig
595-
On X, there are four different ways to express a font name. The
596-
first is to use a @dfn{Fontconfig pattern}. Fontconfig patterns have
597-
the following form:
595+
There are four different ways to express a font name. The first is
596+
to use a @dfn{Fontconfig pattern}. Fontconfig patterns have the
597+
following form:
598598

599599
@example
600600
@var{fontname}[-@var{fontsize}][:@var{name1}=@var{values1}][:@var{name2}=@var{values2}]...
@@ -650,6 +650,10 @@ For a more detailed description of Fontconfig patterns, see the
650650
Fontconfig manual, which is distributed with Fontconfig and available
651651
online at @url{https://fontconfig.org/fontconfig-user.html}.
652652

653+
On MS-Windows, only the subset of the form
654+
@var{fontname}[-@var{fontsize}] is supported for all fonts; the full
655+
Fontconfig pattern might not work for all of them.
656+
653657
@cindex GTK font pattern
654658
The second way to specify a font is to use a @dfn{GTK font pattern}.
655659
These have the syntax
@@ -685,12 +689,15 @@ Monospace 12
685689
Monospace Bold Italic 12
686690
@end example
687691

692+
On MS-Windows, only the subset @var{fontname} is supported.
693+
688694
@cindex XLFD
689695
@cindex X Logical Font Description
690696
The third way to specify a font is to use an @dfn{XLFD} (@dfn{X
691697
Logical Font Description}). This is the traditional method for
692-
specifying fonts under X@. Each XLFD consists of fourteen words or
693-
numbers, separated by dashes, like this:
698+
specifying fonts under X, and is also supported on MS-Windows. Each
699+
XLFD consists of fourteen words or numbers, separated by dashes, like
700+
this:
694701

695702
@example
696703
-misc-fixed-medium-r-semicondensed--13-*-*-*-c-60-iso8859-1
@@ -774,6 +781,8 @@ equivalent to
774781
-misc-fixed-medium-r-semicondensed--13-*-*-*-c-60-iso8859-1
775782
@end example
776783

784+
This form is not supported on MS-Windows.
785+
777786
@cindex client-side fonts
778787
@cindex server-side fonts
779788
On X, Emacs recognizes two types of fonts: @dfn{client-side} fonts,

doc/emacs/msdos.texi

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1133,6 +1133,15 @@ file. (If the function returns @code{nil}, you have no fonts
11331133
installed that can display characters from the scripts which need this
11341134
facility.)
11351135

1136+
@vindex w32-use-w32-font-dialog
1137+
@vindex w32-fixed-font-alist
1138+
The variable @code{w32-use-w32-font-dialog} controls the way fonts can
1139+
be selected via @kbd{S-mouse-1} (@code{mouse-appearance-menu}). If
1140+
the value is @code{t}, the default, Emacs uses the standard Windows
1141+
font selection dialog. If the value is @code{nil}, Emacs instead pops
1142+
a menu of a fixed set of fonts. The fonts to appear in the menu are
1143+
determined by @code{w32-fixed-font-alist}.
1144+
11361145
@node Windows Misc
11371146
@section Miscellaneous Windows-specific features
11381147

doc/emacs/package.texi

Lines changed: 35 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -85,23 +85,32 @@ The following commands are available in the package menu:
8585

8686
@table @kbd
8787
@item h
88+
@kindex h @r{(Package Menu)}
89+
@findex package-menu-quick-help
8890
Print a short message summarizing how to use the package menu
8991
(@code{package-menu-quick-help}).
9092

9193
@item ?
9294
@itemx @key{RET}
95+
@kindex ? @r{(Package Menu)}
96+
@kindex RET @r{(Package Menu)}
97+
@findex package-menu-describe-package
9398
Display a help buffer for the package on the current line
9499
(@code{package-menu-describe-package}), similar to the help window
95100
displayed by the @kbd{C-h P} command (@pxref{Packages}).
96101

97102
@item i
103+
@kindex i @r{(Package Menu)}
104+
@findex package-menu-mark-install
98105
Mark the package on the current line for installation
99106
(@code{package-menu-mark-install}). If the package status is
100107
@samp{available}, this adds an @samp{I} character to the start of the
101108
line; typing @kbd{x} (see below) will download and install the
102109
package.
103110

104111
@item d
112+
@kindex d @r{(Package Menu)}
113+
@findex package-menu-mark-delete
105114
Mark the package on the current line for deletion
106115
(@code{package-menu-mark-delete}). If the package status is
107116
@samp{installed}, this adds a @samp{D} character to the start of the
@@ -110,52 +119,74 @@ line; typing @kbd{x} (see below) will delete the package.
110119
entails.
111120

112121
@item ~
122+
@kindex ~ @r{(Package Menu)}
123+
@findex package-menu-mark-obsolete-for-deletion
113124
Mark all obsolete packages for deletion
114125
(@code{package-menu-mark-obsolete-for-deletion}). This marks for
115126
deletion all the packages whose status is @samp{obsolete}.
116127

117128
@item u
118129
@itemx @key{DEL}
130+
@kindex u @r{(Package Menu)}
131+
@findex package-menu-mark-unmark
119132
Remove any installation or deletion mark previously added to the
120-
current line by an @kbd{i} or @kbd{d} command.
133+
current line by an @kbd{i} or @kbd{d} command
134+
(@code{package-menu-mark-unmark}).
121135

122136
@item U
137+
@kindex U @r{(Package Menu)}
138+
@findex package-menu-mark-upgrades
123139
Mark all package with a newer available version for upgrading
124140
(@code{package-menu-mark-upgrades}). This places an installation mark
125141
on the new available versions, and a deletion mark on the old
126142
installed versions.
127143

128144
@item x
145+
@kindex x @r{(Package Menu)}
129146
@vindex package-menu-async
147+
@findex package-menu-execute
130148
Download and install all packages marked with @kbd{i}, and their
131149
dependencies; also, delete all packages marked with @kbd{d}
132150
(@code{package-menu-execute}). This also removes the marks.
133151

152+
@item g
134153
@item r
135-
Refresh the package list (@code{package-menu-refresh}). This fetches
136-
the list of available packages from the package archive again, and
137-
recomputes the package list.
154+
@kindex g @r{(Package Menu)}
155+
@kindex r @r{(Package Menu)}
156+
Refresh the package list (@code{revert-buffer}). This fetches the
157+
list of available packages from the package archive again, and
158+
redisplays the package list.
138159

139160
@item / k
161+
@kindex / k @r{(Package Menu)}
162+
@findex package-menu-filter-by-keyword
140163
Filter the package list by keyword
141164
(@code{package-menu-filter-by-keyword}). This prompts for a keyword
142165
(e.g., @samp{games}), then shows only the packages that relate to that
143166
keyword.
144167

145168
@item / n
169+
@kindex / n @r{(Package Menu)}
170+
@findex package-menu-filter-by-name
146171
Filter the package list by name (@code{package-menu-filter-by-name}).
147172
This prompts for a string, then shows only the packages whose names
148173
match a regexp with that value.
149174

150175
@item / /
176+
@kindex / / @r{(Package Menu)}
177+
@findex package-menu-clear-filter
151178
Clear filter currently applied to the package list
152179
(@code{package-menu-clear-filter}).
153180

154181
@item H
182+
@kindex H @r{(Package Menu)}
183+
@findex package-menu-hide-package
155184
Permanently hide packages that match a regexp
156185
(@code{package-menu-hide-package}).
157186

158187
@item (
188+
@kindex ( @r{(Package Menu)}
189+
@findex package-menu-toggle-hiding
159190
Toggle visibility of old versions of packages and also of versions
160191
from lower-priority archives (@code{package-menu-toggle-hiding}).
161192
@end table

doc/emacs/windows.texi

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -181,12 +181,12 @@ the minibuffer window to one of the other windows, and later switch
181181
back and finish supplying the minibuffer argument that is requested.
182182
@xref{Minibuffer Edit}.
183183

184-
@findex next-multiframe-window
184+
@findex next-window-any-frame
185185
The @code{other-window} command will normally only switch to the next
186186
window in the current frame (unless otherwise configured). If you
187187
work in a multi-frame environment and you want windows in all frames
188188
to be part of the cycle, you can rebind @kbd{C-x o} to the
189-
@code{next-multiframe-window} command. (@xref{Rebinding}, for how to
189+
@code{next-window-any-frame} command. (@xref{Rebinding}, for how to
190190
rebind a command.)
191191

192192
@kindex C-M-v

doc/lispref/display.texi

Lines changed: 26 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -2248,10 +2248,8 @@ is equivalent to a Lisp symbol with the same name.}. Named faces are
22482248
defined using the @code{defface} macro (@pxref{Defining Faces}).
22492249
Emacs comes with several standard named faces (@pxref{Basic Faces}).
22502250

2251-
Many parts of Emacs require named faces, and do not accept
2252-
anonymous faces. These include the functions documented in
2253-
@ref{Attribute Functions}, and the variable @code{font-lock-keywords}
2254-
(@pxref{Search-based Fontification}). Unless otherwise stated, we
2251+
Some parts of Emacs require named faces (e.g., the functions
2252+
documented in @ref{Attribute Functions}). Unless otherwise stated, we
22552253
will use the term @dfn{face} to refer only to named faces.
22562254

22572255
@defun facep object
@@ -2467,16 +2465,18 @@ or a fontset. @xref{Low-Level Font}, for information about font
24672465
objects, font specs, and font entities. @xref{Fontsets}, for
24682466
information about fontsets.
24692467

2470-
When specifying this attribute using @code{set-face-attribute}
2471-
(@pxref{Attribute Functions}), you may also supply a font spec, a font
2472-
entity, or a string. Emacs converts such values to an appropriate
2473-
font object, and stores that font object as the actual attribute
2474-
value. If you specify a string, the contents of the string should be
2475-
a font name (@pxref{Fonts,,, emacs, The GNU Emacs Manual}); if the
2476-
font name is an XLFD containing wildcards, Emacs chooses the first
2477-
font matching those wildcards. Specifying this attribute also changes
2478-
the values of the @code{:family}, @code{:foundry}, @code{:width},
2479-
@code{:height}, @code{:weight}, and @code{:slant} attributes.
2468+
@anchor{face-font-attribute}
2469+
When specifying this attribute using @code{set-face-attribute} or
2470+
@code{set-face-font} (@pxref{Attribute Functions}), you may also
2471+
supply a font spec, a font entity, or a string. Emacs converts such
2472+
values to an appropriate font object, and stores that font object as
2473+
the actual attribute value. If you specify a string, the contents of
2474+
the string should be a font name (@pxref{Fonts,,, emacs, The GNU Emacs
2475+
Manual}); if the font name is an XLFD containing wildcards, Emacs
2476+
chooses the first font matching those wildcards. Specifying this
2477+
attribute also changes the values of the @code{:family},
2478+
@code{:foundry}, @code{:width}, @code{:height}, @code{:weight}, and
2479+
@code{:slant} attributes.
24802480

24812481
@cindex inheritance, for faces
24822482
@item :inherit
@@ -2834,7 +2834,14 @@ This sets the @code{:stipple} attribute of @var{face} to
28342834
@end deffn
28352835

28362836
@deffn Command set-face-font face font &optional frame
2837-
This sets the @code{:font} attribute of @var{face} to @var{font}.
2837+
Change the font-related attributes of @var{face} to those of
2838+
@var{font} (a string or a font object). @xref{face-font-attribute},
2839+
for the supported formats of the @var{font} argument. This function
2840+
sets the attribute @code{:font} of the face, and indirectly also the
2841+
@code{:family}, @code{:foundry}, @code{:width}, @code{:height},
2842+
@code{:weight}, and @code{:slant} attributes, as defined by the font.
2843+
If @var{frame} is non-@code{nil}, only change the attributes on the
2844+
specified frame.
28382845
@end deffn
28392846

28402847
@defun set-face-bold face bold-p &optional frame
@@ -3661,7 +3668,10 @@ The font name (a string), in either XLFD, Fontconfig, or GTK+ format.
36613668
@itemx :slant
36623669
@itemx :width
36633670
These have the same meanings as the face attributes of the same name.
3664-
@xref{Face Attributes}.
3671+
@xref{Face Attributes}. @code{:family} and @code{:foundry} are
3672+
strings, while the other three are symbols. As example values,
3673+
@code{:slant} may be @code{italic}, @code{:weight} may be @code{bold}
3674+
and @code{:width} may be @code{normal}.
36653675

36663676
@item :size
36673677
The font size---either a non-negative integer that specifies the pixel

0 commit comments

Comments
 (0)