mirror of
https://git.savannah.gnu.org/git/emacs.git
synced 2024-11-23 07:19:15 +00:00
Merge from origin/emacs-26
0589de5
(origin/emacs-26) Fix markup of fake keys in the ELisp manual82d4b98
Avoid errors in Auto Revert modea3b1935
Mention empty strings in file name expansion, emacs lisp refe...a38da0d
cc-mode.texi: Work around makeinfo alignment bug. Fix proble...464ee80
Warn against recursive invocations of 'buffer-list-update-hoo...60b5c10
Provide more details in doc-string of 'delete-windows-on' (Bu...f0be0f1
Improve documentation of 'delete-windows-on'f1bddc7
* lisp/frame.el (make-frame-command): Doc fix. (Bug#34715)2848623
Avoid undefined behavior in gdb-mi.eldbf1837
* lisp/window.el (fit-frame-to-buffer): Make doc-string more ...099ef44
Minor spelling and grammar fixes (bug#34756)52fd400
Minor improvement of documentation of '(when CONDITION . SPEC)'f872b65
Improve documentation of 'auto-coding-functions'04cad5e
Fix visiting XML files with non-Unix EOL formata89fabe
Update example major mode code in Elisp manual # Conflicts: # lisp/autorevert.el # lisp/window.el
This commit is contained in:
commit
3b63afd73b
@ -262,6 +262,8 @@ Delete all windows in the selected frame except the selected window
|
||||
Delete the selected window and kill the buffer that was showing in it
|
||||
(@code{kill-buffer-and-window}). The last character in this key
|
||||
sequence is a zero.
|
||||
@item M-x delete-windows-on @key{RET} @var{buffer} @key{RET}
|
||||
Delete windows showing the specified @var{buffer}.
|
||||
@item C-x ^
|
||||
Make selected window taller (@code{enlarge-window}).
|
||||
@item C-x @}
|
||||
@ -297,6 +299,11 @@ selected window.
|
||||
whole frame. (This command cannot be used while the minibuffer window
|
||||
is active; attempting to do so signals an error.)
|
||||
|
||||
@kbd{M-x delete-windows-on} deletes windows that show a specific
|
||||
buffer. It prompts for the buffer, defaulting to the current buffer.
|
||||
With prefix argument of zero, @kbd{C-u 0}, this command deletes
|
||||
windows only on the current display's frames.
|
||||
|
||||
@cindex resize window
|
||||
@cindex resizing windows
|
||||
@kindex C-x ^
|
||||
|
@ -14825,7 +14825,7 @@ According to its documentation as shown by @kbd{C-h f} (the
|
||||
@code{describe-function} command), the @code{find-file-noselect}
|
||||
function reads the named file into a buffer and returns the buffer.
|
||||
(Its most recent version includes an optional @var{wildcards} argument,
|
||||
too, as well as another to read a file literally and an other you
|
||||
too, as well as another to read a file literally and another to
|
||||
suppress warning messages. These optional arguments are irrelevant.)
|
||||
|
||||
However, the @code{find-file-noselect} function does not select the
|
||||
|
@ -935,6 +935,10 @@ This is a normal hook run whenever the buffer list changes. Functions
|
||||
(@pxref{Creating Buffers}), @code{rename-buffer} (@pxref{Buffer Names}),
|
||||
@code{kill-buffer} (@pxref{Killing Buffers}), @code{bury-buffer} (see
|
||||
above) and @code{select-window} (@pxref{Selecting Windows}).
|
||||
|
||||
Functions run by this hook should avoid calling @code{select-window}
|
||||
with a nil @var{norecord} argument or @code{with-temp-buffer} since
|
||||
either may lead to infinite recursion.
|
||||
@end defvar
|
||||
|
||||
@node Creating Buffers
|
||||
|
@ -4894,6 +4894,16 @@ and the buffer position where the @code{display} property was found,
|
||||
respectively. Both positions can be different when @code{object} is a
|
||||
string.
|
||||
|
||||
Note that @var{condition} will only be evaluated when redisplay
|
||||
examines the text where this display spec is located, so this feature
|
||||
is best suited for conditions that are relatively stable, i.e.@:
|
||||
yield, for each particular buffer position, the same results on every
|
||||
evaluation. If the results change for the same text location, e.g.,
|
||||
if the result depends on the position of point, then the conditional
|
||||
specification might not do what you want, because redisplay examines
|
||||
only those parts of buffer text where it has reasons to assume that
|
||||
something changed since the last display cycle.
|
||||
|
||||
@node Display Margins
|
||||
@subsection Displaying in the Margins
|
||||
@cindex display margins
|
||||
|
@ -16,7 +16,7 @@ described in @ref{Backups and Auto-Saving}.
|
||||
names. A file name is a string. Most of these functions expand file
|
||||
name arguments using the function @code{expand-file-name}, so that
|
||||
@file{~} is handled correctly, as are relative file names (including
|
||||
@file{../}). @xref{File Name Expansion}.
|
||||
@file{../} and the empty string). @xref{File Name Expansion}.
|
||||
|
||||
In addition, certain @dfn{magic} file names are handled specially.
|
||||
For example, when a remote file name is specified, Emacs accesses the
|
||||
@ -2402,6 +2402,17 @@ This is for the sake of filesystems that have the concept of a
|
||||
superroot above the root directory @file{/}. On other filesystems,
|
||||
@file{/../} is interpreted exactly the same as @file{/}.
|
||||
|
||||
Expanding @file{.} or the empty string returns the default directory:
|
||||
|
||||
@example
|
||||
@group
|
||||
(expand-file-name "." "/usr/spool/")
|
||||
@result{} "/usr/spool"
|
||||
(expand-file-name "" "/usr/spool/")
|
||||
@result{} "/usr/spool"
|
||||
@end group
|
||||
@end example
|
||||
|
||||
Note that @code{expand-file-name} does @emph{not} expand environment
|
||||
variables; only @code{substitute-in-file-name} does that:
|
||||
|
||||
|
@ -2502,7 +2502,7 @@ can do it this way:
|
||||
|
||||
Emacs usually shows a @dfn{menu bar} at the top of each frame.
|
||||
@xref{Menu Bars,,,emacs, The GNU Emacs Manual}. Menu bar items are
|
||||
subcommands of the fake function key @code{menu-bar}, as defined
|
||||
subcommands of the fake function key @key{MENU-BAR}, as defined
|
||||
in the active keymaps.
|
||||
|
||||
To add an item to the menu bar, invent a fake function key of your
|
||||
@ -2554,9 +2554,10 @@ bar item:
|
||||
@end example
|
||||
|
||||
@noindent
|
||||
Here, @code{edit} is the fake function key used by the global map for
|
||||
the @samp{Edit} menu bar item. The main reason to suppress a global
|
||||
menu bar item is to regain space for mode-specific items.
|
||||
Here, @code{edit} is the symbol produced by a fake function key, it is
|
||||
used by the global map for the @samp{Edit} menu bar item. The main
|
||||
reason to suppress a global menu bar item is to regain space for
|
||||
mode-specific items.
|
||||
|
||||
@defvar menu-bar-final-items
|
||||
Normally the menu bar shows global items followed by items defined by the
|
||||
@ -2601,7 +2602,7 @@ If the value is @code{grow-only}, the tool bar expands automatically,
|
||||
but does not contract automatically.
|
||||
|
||||
The tool bar contents are controlled by a menu keymap attached to a
|
||||
fake function key called @code{tool-bar} (much like the way the menu
|
||||
fake function key called @key{TOOL-BAR} (much like the way the menu
|
||||
bar is controlled). So you define a tool bar item using
|
||||
@code{define-key}, like this:
|
||||
|
||||
|
@ -1237,6 +1237,7 @@ the conventions listed above:
|
||||
(modify-syntax-entry ?\\ ". " st)
|
||||
;; Add 'p' so M-c on 'hello' leads to 'Hello', not 'hello'.
|
||||
(modify-syntax-entry ?' "w p" st)
|
||||
@dots{}
|
||||
st)
|
||||
"Syntax table used while in `text-mode'.")
|
||||
@end group
|
||||
@ -1246,6 +1247,7 @@ the conventions listed above:
|
||||
(defvar text-mode-map
|
||||
(let ((map (make-sparse-keymap)))
|
||||
(define-key map "\e\t" 'ispell-complete-word)
|
||||
@dots{}
|
||||
map)
|
||||
"Keymap for `text-mode'.
|
||||
Many other modes, such as `mail-mode', `outline-mode' and
|
||||
@ -1289,11 +1291,11 @@ illustrate how these modes are written.
|
||||
@smallexample
|
||||
@group
|
||||
;; @r{Create mode-specific table variables.}
|
||||
(defvar lisp-mode-abbrev-table nil)
|
||||
(define-abbrev-table 'lisp-mode-abbrev-table ())
|
||||
(define-abbrev-table 'lisp-mode-abbrev-table ()
|
||||
"Abbrev table for Lisp mode.")
|
||||
|
||||
(defvar lisp-mode-syntax-table
|
||||
(let ((table (copy-syntax-table emacs-lisp-mode-syntax-table)))
|
||||
(let ((table (make-syntax-table lisp--mode-syntax-table)))
|
||||
(modify-syntax-entry ?\[ "_ " table)
|
||||
(modify-syntax-entry ?\] "_ " table)
|
||||
(modify-syntax-entry ?# "' 14" table)
|
||||
@ -1308,10 +1310,9 @@ each calls the following function to set various variables:
|
||||
|
||||
@smallexample
|
||||
@group
|
||||
(defun lisp-mode-variables (&optional syntax keywords-case-insensitive)
|
||||
(defun lisp-mode-variables (&optional syntax keywords-case-insensitive elisp)
|
||||
(when syntax
|
||||
(set-syntax-table lisp-mode-syntax-table))
|
||||
(setq local-abbrev-table lisp-mode-abbrev-table)
|
||||
@dots{}
|
||||
@end group
|
||||
@end smallexample
|
||||
@ -1322,8 +1323,7 @@ variable to handle Lisp comments:
|
||||
|
||||
@smallexample
|
||||
@group
|
||||
(make-local-variable 'comment-start)
|
||||
(setq comment-start ";")
|
||||
(setq-local comment-start ";")
|
||||
@dots{}
|
||||
@end group
|
||||
@end smallexample
|
||||
@ -1337,6 +1337,7 @@ common. The following code sets up the common commands:
|
||||
@group
|
||||
(defvar lisp-mode-shared-map
|
||||
(let ((map (make-sparse-keymap)))
|
||||
(set-keymap-parent map prog-mode-map)
|
||||
(define-key map "\e\C-q" 'indent-sexp)
|
||||
(define-key map "\177" 'backward-delete-char-untabify)
|
||||
map)
|
||||
@ -1351,7 +1352,7 @@ And here is the code to set up the keymap for Lisp mode:
|
||||
@group
|
||||
(defvar lisp-mode-map
|
||||
(let ((map (make-sparse-keymap))
|
||||
(menu-map (make-sparse-keymap "Lisp")))
|
||||
(menu-map (make-sparse-keymap "Lisp")))
|
||||
(set-keymap-parent map lisp-mode-shared-map)
|
||||
(define-key map "\e\C-x" 'lisp-eval-defun)
|
||||
(define-key map "\C-c\C-z" 'run-lisp)
|
||||
@ -1375,17 +1376,13 @@ Blank lines separate paragraphs. Semicolons start comments.
|
||||
|
||||
\\@{lisp-mode-map@}
|
||||
Note that `run-lisp' may be used either to start an inferior Lisp job
|
||||
or to switch back to an existing one.
|
||||
or to switch back to an existing one."
|
||||
@end group
|
||||
|
||||
@group
|
||||
Entry to this mode calls the value of `lisp-mode-hook'
|
||||
if that value is non-nil."
|
||||
(lisp-mode-variables nil t)
|
||||
(set (make-local-variable 'find-tag-default-function)
|
||||
'lisp-find-tag-default)
|
||||
(set (make-local-variable 'comment-start-skip)
|
||||
"\\(\\(^\\|[^\\\\\n]\\)\\(\\\\\\\\\\)*\\)\\(;+\\|#|\\) *")
|
||||
(setq-local find-tag-default-function 'lisp-find-tag-default)
|
||||
(setq-local comment-start-skip
|
||||
"\\(\\(^\\|[^\\\\\n]\\)\\(\\\\\\\\\\)*\\)\\(;+\\|#|\\) *")
|
||||
(setq imenu-case-fold-search t))
|
||||
@end group
|
||||
@end smallexample
|
||||
|
@ -1632,11 +1632,16 @@ coding system for a file based on its undecoded contents.
|
||||
|
||||
Each function in this list should be written to look at text in the
|
||||
current buffer, but should not modify it in any way. The buffer will
|
||||
contain undecoded text of parts of the file. Each function should
|
||||
take one argument, @var{size}, which tells it how many characters to
|
||||
look at, starting from point. If the function succeeds in determining
|
||||
a coding system for the file, it should return that coding system.
|
||||
Otherwise, it should return @code{nil}.
|
||||
contain the text of parts of the file. Each function should take one
|
||||
argument, @var{size}, which tells it how many characters to look at,
|
||||
starting from point. If the function succeeds in determining a coding
|
||||
system for the file, it should return that coding system. Otherwise,
|
||||
it should return @code{nil}.
|
||||
|
||||
The functions in this list could be called either when the file is
|
||||
visited and Emacs wants to decode its contents, and/or when the file's
|
||||
buffer is about to be saved and Emacs wants to determine how to encode
|
||||
its contents.
|
||||
|
||||
If a file has a @samp{coding:} tag, that takes precedence, so these
|
||||
functions won't be called.
|
||||
|
@ -148,7 +148,17 @@ CC Mode
|
||||
@comment !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||
|
||||
@comment Define an index for syntactic symbols.
|
||||
@c Version for Texinfo <= 4.x
|
||||
@ifclear txicommandconditionals
|
||||
@ifnottex @c In texi2dvi, the @defindex would create an empty cc-mode.ss
|
||||
@c For Info, unlike tex, @syncodeindex needs a matching @defindex.
|
||||
@defindex ss
|
||||
@end ifnottex
|
||||
@end ifclear
|
||||
@c Version for Texinfo >= 5.x
|
||||
@ifset txicommandconditionals
|
||||
@defindex ss
|
||||
@end ifset
|
||||
|
||||
@comment Combine key, syntactic symbol and concept indices into one.
|
||||
@syncodeindex ss cp
|
||||
@ -2282,6 +2292,8 @@ method, ``Top-level commands or the customization interface''.
|
||||
|
||||
If you make conflicting settings in several of these ways, the way
|
||||
that takes precedence is the one that appears latest in this list:
|
||||
@c Version of list for Texinfo <= 4.x
|
||||
@ifclear txicommandconditionals
|
||||
@itemize @w{}
|
||||
@item
|
||||
@table @asis
|
||||
@ -2292,6 +2304,18 @@ that takes precedence is the one that appears latest in this list:
|
||||
@itemx File Local Variable setting
|
||||
@end table
|
||||
@end itemize
|
||||
@end ifclear
|
||||
@c Version of list for Texinfo >= 5.x
|
||||
@ifset txicommandconditionals
|
||||
@itemize @asis
|
||||
@item Style
|
||||
@item File Style@footnote{In earlier versions of @ccmode{}, a File Style setting took precedence over any other setting apart from a File Local Variable setting.}
|
||||
@item Top-level command or ``customization interface''
|
||||
@item Hook
|
||||
@item File Local Variable setting
|
||||
@end itemize
|
||||
@end ifset
|
||||
|
||||
|
||||
Here is a summary of the different ways of writing your configuration
|
||||
settings:
|
||||
@ -2548,7 +2572,7 @@ Basics}).
|
||||
@item
|
||||
The style variable @code{c-offsets-alist} (@pxref{c-offsets-alist}) is
|
||||
an association list with an element for each syntactic symbol. It's
|
||||
handled a little differently from the other style variables. It's
|
||||
handled a little differently from the other style variables. Its
|
||||
default global binding is the empty list @code{nil}, rather than
|
||||
@code{set-from-style}. Before the style system is initialized, you
|
||||
can add individual elements to @code{c-offsets-alist} by calling
|
||||
@ -5286,7 +5310,7 @@ The simplest and most used kind of ``offset'' setting in
|
||||
@defopt c-basic-offset
|
||||
@vindex basic-offset @r{(c-)}
|
||||
This style variable holds the basic offset between indentation levels.
|
||||
It's factory default is 4, but all the built-in styles set it
|
||||
Its factory default is 4, but all the built-in styles set it
|
||||
themselves, to some value between 2 (for @code{gnu} style) and 8 (for
|
||||
@code{bsd}, @code{linux}, and @code{python} styles).
|
||||
@end defopt
|
||||
|
@ -1038,7 +1038,7 @@ details on using @eieio{} to extending classes, and writing methods.
|
||||
|
||||
If you intend to extend @ede{}, it is most likely that a new target type is
|
||||
needed in one of the existing project types. The rest of this chapter
|
||||
will discuss extending the @code{ede-project} class, and it's targets.
|
||||
will discuss extending the @code{ede-project} class, and its targets.
|
||||
See @file{project-am.el} for basic details on adding targets to it.
|
||||
|
||||
For the @code{ede-project} type, the core target class is called
|
||||
@ -1477,7 +1477,7 @@ Get the inode of the directory project @var{PROJ} is in.
|
||||
@end deffn
|
||||
|
||||
@deffn Method ede-project-root :AFTER this
|
||||
If a project knows it's root, return it here.
|
||||
If a project knows its root, return it here.
|
||||
Allows for one-project-object-for-a-tree type systems.
|
||||
@end deffn
|
||||
|
||||
@ -1486,7 +1486,7 @@ Find a subproject of @var{PROJ} that corresponds to @var{DIR}.
|
||||
@end deffn
|
||||
|
||||
@deffn Method ede-project-root-directory :AFTER this &optional file
|
||||
If a project knows it's root, return it here.
|
||||
If a project knows its root, return it here.
|
||||
Allows for one-project-object-for-a-tree type systems.
|
||||
Optional @var{FILE} is the file to test. It is ignored in preference
|
||||
of the anchor file for the project.
|
||||
@ -2516,7 +2516,7 @@ In sources for @var{THIS}, change version numbers to @var{VERSION}.
|
||||
@end deffn
|
||||
|
||||
@deffn Method project-delete-target :AFTER ot
|
||||
Delete the current target @var{OT} from it's parent project.
|
||||
Delete the current target @var{OT} from its parent project.
|
||||
@end deffn
|
||||
|
||||
@deffn Method ede-target-sourcecode :AFTER this
|
||||
@ -2715,7 +2715,7 @@ Converts all symbols into the objects to be used.
|
||||
@end deffn
|
||||
|
||||
@deffn Method project-delete-target :AFTER this
|
||||
Delete the current target @var{THIS} from it's parent project.
|
||||
Delete the current target @var{THIS} from its parent project.
|
||||
@end deffn
|
||||
|
||||
@deffn Method ede-proj-makefile-target-name :AFTER this
|
||||
@ -4013,7 +4013,7 @@ Type: @code{list}
|
||||
|
||||
The commands used to execute this compiler.
|
||||
The object which uses this compiler will place these commands after
|
||||
it's rule definition.
|
||||
its rule definition.
|
||||
|
||||
@item :autoconf
|
||||
Type: @code{list} @*
|
||||
@ -4125,7 +4125,7 @@ Type: @code{list}
|
||||
|
||||
The commands used to execute this compiler.
|
||||
The object which uses this compiler will place these commands after
|
||||
it's rule definition.
|
||||
its rule definition.
|
||||
|
||||
@item :objectextention
|
||||
Type: @code{string}
|
||||
@ -4265,7 +4265,7 @@ Type: @code{list}
|
||||
|
||||
The commands used to execute this compiler.
|
||||
The object which uses this compiler will place these commands after
|
||||
it's rule definition.
|
||||
its rule definition.
|
||||
|
||||
@item :objectextention
|
||||
Type: @code{string}
|
||||
|
@ -284,7 +284,7 @@ what's this?
|
||||
@subsubheading Answer
|
||||
|
||||
You get the message described in the q/a pair above while
|
||||
starting Gnus, right? It's an other symptom for the same
|
||||
starting Gnus, right? It's another symptom for the same
|
||||
problem, so read the answer above.
|
||||
|
||||
@node FAQ 2-3
|
||||
|
@ -9416,7 +9416,7 @@ function must return @code{mid}, @code{mail}, @code{invalid} or
|
||||
@item gnus-button-mid-or-mail-heuristic
|
||||
@findex gnus-button-mid-or-mail-heuristic
|
||||
Function that guesses whether its argument is a message ID or a mail
|
||||
address. Returns @code{mid} if it's a message IDs, @code{mail} if
|
||||
address. Returns @code{mid} if it's a message ID, @code{mail} if
|
||||
it's a mail address, @code{ask} if unsure and @code{invalid} if the
|
||||
string is invalid.
|
||||
|
||||
|
@ -816,7 +816,7 @@ the timer when no buffers need to be checked."
|
||||
(when (and (not global-auto-revert-mode)
|
||||
(null auto-revert-buffer-list))
|
||||
(if (timerp auto-revert-timer)
|
||||
(cancel-timer auto-revert-timer))
|
||||
(cancel-timer auto-revert-timer))
|
||||
(setq auto-revert-timer nil)))))
|
||||
|
||||
|
||||
|
@ -736,7 +736,9 @@ If DISPLAY is nil, that stands for the selected frame's display."
|
||||
(defun make-frame-command ()
|
||||
"Make a new frame, on the same terminal as the selected frame.
|
||||
If the terminal is a text-only terminal, this also selects the
|
||||
new frame."
|
||||
new frame.
|
||||
|
||||
When called from Lisp, returns the new frame."
|
||||
(interactive)
|
||||
(if (display-graphic-p)
|
||||
(make-frame)
|
||||
|
@ -7473,7 +7473,7 @@ must return `mid', `mail', `invalid' or `ask'."
|
||||
(2.0 . "^[A-Z][a-z][A-Z][a-z][a-z][^a-z]")) ;; ^[A-Z][a-z]{4,4}
|
||||
"An alist of (RATE . REGEXP) pairs for `gnus-button-mid-or-mail-heuristic'.
|
||||
|
||||
A negative RATE indicates a message IDs, whereas a positive indicates a mail
|
||||
A negative RATE indicates a message ID, whereas a positive indicates a mail
|
||||
address. The REGEXP is processed with `case-fold-search' set to nil."
|
||||
:version "22.1"
|
||||
:group 'gnus-article-buttons
|
||||
@ -7482,7 +7482,7 @@ address. The REGEXP is processed with `case-fold-search' set to nil."
|
||||
|
||||
(defun gnus-button-mid-or-mail-heuristic (mid-or-mail)
|
||||
"Guess whether MID-OR-MAIL is a message ID or a mail address.
|
||||
Returns `mid' if MID-OR-MAIL is a message IDs, `mail' if it's a mail
|
||||
Returns `mid' if MID-OR-MAIL is a message ID, `mail' if it's a mail
|
||||
address, `ask' if unsure and `invalid' if the string is invalid."
|
||||
(let ((case-fold-search nil)
|
||||
(list gnus-button-mid-or-mail-heuristic-alist)
|
||||
|
@ -1732,7 +1732,7 @@ no, only reply back to the author."
|
||||
:type 'boolean)
|
||||
|
||||
(defcustom message-user-fqdn nil
|
||||
"Domain part of Message-Ids."
|
||||
"Domain part of Message-IDs."
|
||||
:version "22.1"
|
||||
:group 'message-headers
|
||||
:link '(custom-manual "(message)News Headers")
|
||||
|
@ -1852,9 +1852,12 @@ or nil."
|
||||
|
||||
Each function in this list should be written to operate on the
|
||||
current buffer, but should not modify it in any way. The buffer
|
||||
will contain undecoded text of parts of the file. Each function
|
||||
will contain the text of parts of the file. Each function
|
||||
should take one argument, SIZE, which says how many characters
|
||||
\(starting from point) it should look at.
|
||||
\(starting from point) it should look at. The function might be
|
||||
called both when the file is visited and Emacs wants to decode
|
||||
its contents, and when the file's buffer is about to be saved
|
||||
and Emacs wants to determine how to encode its contents.
|
||||
|
||||
If one of these functions succeeds in determining a coding
|
||||
system, it should return that coding system. Otherwise, it
|
||||
@ -2501,10 +2504,17 @@ This function is intended to be added to `auto-coding-functions'."
|
||||
(let ((sym-type (coding-system-type sym))
|
||||
(bfcs-type
|
||||
(coding-system-type buffer-file-coding-system)))
|
||||
;; 'charset' will signal an error in
|
||||
;; coding-system-equal, since it isn't a
|
||||
;; coding-system. So test that up front.
|
||||
(if (and (not (equal sym-type 'charset))
|
||||
;; If the buffer is unibyte, its encoding is
|
||||
;; immaterial (it is just the default value of
|
||||
;; buffer-file-coding-system), so we ignore it.
|
||||
;; This situation happens when this function is
|
||||
;; called as part of visiting a file, as opposed
|
||||
;; to when saving a buffer to a file.
|
||||
(if (and enable-multibyte-characters
|
||||
;; 'charset' will signal an error in
|
||||
;; coding-system-equal, since it isn't a
|
||||
;; coding-system. So test that up front.
|
||||
(not (equal sym-type 'charset))
|
||||
(coding-system-equal 'utf-8 sym-type)
|
||||
(coding-system-equal 'utf-8 bfcs-type))
|
||||
buffer-file-coding-system
|
||||
@ -2556,7 +2566,8 @@ This function is intended to be added to `auto-coding-functions'."
|
||||
(let ((sym-type (coding-system-type sym))
|
||||
(bfcs-type
|
||||
(coding-system-type buffer-file-coding-system)))
|
||||
(if (and (coding-system-equal 'utf-8 sym-type)
|
||||
(if (and enable-multibyte-characters
|
||||
(coding-system-equal 'utf-8 sym-type)
|
||||
(coding-system-equal 'utf-8 bfcs-type))
|
||||
buffer-file-coding-system
|
||||
sym))
|
||||
|
@ -1843,7 +1843,7 @@ commands to be prefixed by \"-interpreter-exec console\".")
|
||||
;; Python and Guile commands that have an argument don't enter the
|
||||
;; recursive reading loop.
|
||||
(let* ((control-command-p (string-match gdb-control-commands-regexp string))
|
||||
(command-arg (match-string 3 string))
|
||||
(command-arg (and control-command-p (match-string 3 string)))
|
||||
(python-or-guile-p (string-match gdb-python-guile-commands-regexp
|
||||
string)))
|
||||
(if (and control-command-p
|
||||
|
@ -4697,6 +4697,8 @@ displayed there."
|
||||
BUFFER-OR-NAME may be a buffer or the name of an existing buffer
|
||||
and defaults to the current buffer.
|
||||
|
||||
Interactively, prompt for the buffer.
|
||||
|
||||
The following non-nil values of the optional argument FRAME
|
||||
have special meanings:
|
||||
|
||||
@ -4713,9 +4715,25 @@ have special meanings:
|
||||
Any other value of FRAME means consider all windows on all
|
||||
frames.
|
||||
|
||||
When a window showing BUFFER-OR-NAME is dedicated and the only
|
||||
window of its frame, that frame is deleted when there are other
|
||||
frames left."
|
||||
Interactively, FRAME is the prefix argument, so you can
|
||||
use \\[universal-argument] 0 to specify all windows only on
|
||||
the current terminal's frames.
|
||||
|
||||
If a frame's root window shows the buffer specified by
|
||||
BUFFER-OR-NAME and is dedicated to that buffer and that frame
|
||||
does not host the active minibuffer window and there is at least
|
||||
one other frame on that frame's terminal, delete that frame.
|
||||
Otherwise, do not delete a frame's root window if it shows the
|
||||
buffer specified by BUFFER-OR-NAME and do not delete any frame's
|
||||
main window showing that buffer either. Rather, in any such
|
||||
case, call `switch-to-prev-buffer' to show another buffer in that
|
||||
window and make sure the window is no more dedicated to its
|
||||
buffer.
|
||||
|
||||
If the buffer specified by BUFFER-OR-NAME is shown in a
|
||||
minibuffer window, do nothing for that window. For any window
|
||||
that does not show that buffer, remove the buffer from that
|
||||
window's lists of previous and next buffers."
|
||||
(interactive "bDelete windows on (buffer):\nP")
|
||||
(let ((buffer (window-normalize-buffer buffer-or-name))
|
||||
;; Handle the "inverted" meaning of the FRAME argument wrt other
|
||||
|
@ -6256,9 +6256,11 @@ The function `kill-all-local-variables' runs this before doing anything else. *
|
||||
|
||||
DEFVAR_LISP ("buffer-list-update-hook", Vbuffer_list_update_hook,
|
||||
doc: /* Hook run when the buffer list changes.
|
||||
Functions running this hook are, `get-buffer-create',
|
||||
`make-indirect-buffer', `rename-buffer', `kill-buffer',
|
||||
`bury-buffer-internal' and `select-window'. */);
|
||||
Functions (implicitly) running this hook are `get-buffer-create',
|
||||
`make-indirect-buffer', `rename-buffer', `kill-buffer', `bury-buffer'
|
||||
and `select-window'. Functions run by this hook should avoid calling
|
||||
`select-window' with a nil NORECORD argument or `with-temp-buffer'
|
||||
since either may lead to infinite recursion. */);
|
||||
Vbuffer_list_update_hook = Qnil;
|
||||
DEFSYM (Qbuffer_list_update_hook, "buffer-list-update-hook");
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user