aboutsummaryrefslogtreecommitdiffstats
path: root/doc
diff options
context:
space:
mode:
authorJohn Wiegley2016-02-03 23:56:08 -0800
committerJohn Wiegley2016-02-03 23:56:08 -0800
commit0608bf1c3d91196bcf06a6da96243f0fac119089 (patch)
treed79a6c43cd10c681445b75f859545c9f88e41899 /doc
parent91ab66201cedbcd2e4e8533a7152f6736ad08731 (diff)
parentee7399792f865905d393df05c3d4e5ec309aa06c (diff)
downloademacs-0608bf1c3d91196bcf06a6da96243f0fac119089.tar.gz
emacs-0608bf1c3d91196bcf06a6da96243f0fac119089.zip
Merge from origin/emacs-25
ee73997 Make erc work better when encountering unknown prefix chars b99141d Make erc completion case-insensitive again 66c4620 Make complection in erc use consistent casing 8c562b2 Make /QUIT in erc more robust d93d2c5 Make tracking faces in Emacs work more reliably af6ab7e Make shr not bug out on images on non-graphical displays 3311f40 Fix bookmark display widths d90ab1e Fix typo in eww-make-unique-file-name 7f81825 Make it possible to TAB to input fields a43a1dc Insert complete alt texts when images are disabled 56ed4e1 Allow eww text fields to grow 66b315c Make erc work when subword-mode is switched on 255b68f Fix IMAP doc example 91557f5 Quoting fixes in doc strings and diagnostics 2c0dc9f Fix warning message in hack-local-variables 504696d Etags: yet another improvement in Ruby tags 8784ebf Fix x-popup-menu on TTYs without a mouse 8b87ecb * lisp/emacs-lisp/map.el: Improvements to the docstring of the pcase macro 6191003 Use pop-to-buffer-same-window in eww fe321fd * autogen.sh: Revert all recent changes. 74ebd4a * make-dist: Updates related to nt/. 737193a * make-dist: Add modules/. 3696bf2 * make-dist: Update for super-special file that can't live in etc/. a4278e2 Fix failure to compile ns-win.el in parallel builds 860da4d Fix names of tags generated for Ruby accessors f6213ce Fix file-name recognition in 'etags' e42e662 Change Ruby file names and extensions recognized by 'etags' 58bfb6a More improvements for Ruby support in 'etags' c04e911 Add --git-config option to autogen.sh 5713466 Fix editing undo changes in eww fields 51362d6 Allow the user more control of popping up the eww window ee0fbd8 Make eww-browse-url with new-window parameter work again 9c3142d Clean up eww code slightly cb035f3 Don't insert nil faces in shr 4c3fae3 ; * lisp/progmodes/prolog.el: Remove some obsolete commentary. 93f2153 Improve the custom type of some user options. 9f60d7e Mark some risky calendar variables. 1d07dcd Highlight two additional SCSS keywords ee8b466 Recommend enabling integrity-checking in git e639e10 Some corrections in Elisp manual d766ca8 Chatter when autogen.sh changes Git configuration 3b734e1 * org/org-compat.el (org-font-lock-ensure): Fix bogus test (bug#22399) 43cb9f8 Omit unnecessary history from Lisp intro 2fbd1da * etc/HISTORY: Add some more history, plus git tags. c90e1b4 Improve elisp “Security Considerations” doc cedd7ca autogen.sh now arranges for git to check hashes 86ce76b ; Fix ChangeLog.2 commit ID. 7b1d2b1 Fix (c & 040) typo in emergency escapes a8273da Fix display of overlay strings with 'display' and 'box' property fc48106 Fix imap-starttls-open cdecbed Fix return value of imap-starttls-open 20c7e34 ; * etc/NEWS: Fix renamed command name 98bdbdb Correct reference to DARWIN_OS preprocessor symbol b250d29 Spelling fix b920a0e Spelling fixes 93b144b Pacify GCC on C library without glibc API
Diffstat (limited to 'doc')
-rw-r--r--doc/lispintro/emacs-lisp-intro.texi44
-rw-r--r--doc/lispref/buffers.texi10
-rw-r--r--doc/lispref/debugging.texi4
-rw-r--r--doc/lispref/display.texi21
-rw-r--r--doc/lispref/frames.texi4
-rw-r--r--doc/lispref/keymaps.texi19
-rw-r--r--doc/lispref/minibuf.texi10
-rw-r--r--doc/lispref/modes.texi8
-rw-r--r--doc/lispref/os.texi27
-rw-r--r--doc/lispref/strings.texi5
-rw-r--r--doc/lispref/text.texi9
-rw-r--r--doc/lispref/windows.texi24
-rw-r--r--doc/misc/gnus.texi2
-rw-r--r--doc/misc/tramp.texi2
14 files changed, 96 insertions, 93 deletions
diff --git a/doc/lispintro/emacs-lisp-intro.texi b/doc/lispintro/emacs-lisp-intro.texi
index 6c4f305d86d..78c1865703e 100644
--- a/doc/lispintro/emacs-lisp-intro.texi
+++ b/doc/lispintro/emacs-lisp-intro.texi
@@ -4309,38 +4309,18 @@ documentation, an optional interactive declaration, and the body of
4309the definition. 4309the definition.
4310 4310
4311@need 1250 4311@need 1250
4312For example, in an early version of Emacs, the function definition was 4312For example, in Emacs the function definition of
4313as follows. (It is slightly more complex now that it seeks the first 4313@code{dired-unmark-all-marks} is as follows.
4314non-whitespace character rather than the first visible character.)
4315 4314
4316@smallexample 4315@smallexample
4317@group 4316@group
4318(defun back-to-indentation () 4317(defun dired-unmark-all-marks ()
4319 "Move point to first visible character on line." 4318 "Remove all marks from all files in the Dired buffer."
4320 (interactive) 4319 (interactive)
4321 (beginning-of-line 1) 4320 (dired-unmark-all-files ?\r))
4322 (skip-chars-forward " \t"))
4323@end group 4321@end group
4324@end smallexample 4322@end smallexample
4325 4323
4326@ignore
4327In GNU Emacs 22,
4328
4329(defun backward-to-indentation (&optional arg)
4330 "Move backward ARG lines and position at first nonblank character."
4331 (interactive "p")
4332 (forward-line (- (or arg 1)))
4333 (skip-chars-forward " \t"))
4334
4335(defun back-to-indentation ()
4336 "Move point to the first non-whitespace character on this line."
4337 (interactive)
4338 (beginning-of-line 1)
4339 (skip-syntax-forward " " (line-end-position))
4340 ;; Move back over chars that have whitespace syntax but have the p flag.
4341 (backward-prefix-chars))
4342@end ignore
4343
4344@item interactive 4324@item interactive
4345Declare to the interpreter that the function can be used 4325Declare to the interpreter that the function can be used
4346interactively. This special form may be followed by a string with one 4326interactively. This special form may be followed by a string with one
@@ -9123,13 +9103,12 @@ deleted@footnote{More precisely, and requiring more expert knowledge
9123to understand, the two integers are of type @code{Lisp_Object}, which can 9103to understand, the two integers are of type @code{Lisp_Object}, which can
9124also be a C union instead of an integer type.}. 9104also be a C union instead of an integer type.}.
9125 9105
9126In early versions of Emacs, these two numbers were thirty-two bits 9106Integer widths depend on the machine, and are typically 32 or 64 bits.
9127long, but the code is slowly being generalized to handle other 9107A few of the bits are used to specify the type of information; the
9128lengths. Three of the available bits are used to specify the type of 9108remaining bits are used as content.
9129information; the remaining bits are used as content.
9130 9109
9131@samp{XINT} is a C macro that extracts the relevant number from the 9110@samp{XINT} is a C macro that extracts the relevant number from the
9132longer collection of bits; the three other bits are discarded. 9111longer collection of bits; the type bits are discarded.
9133 9112
9134@need 800 9113@need 800
9135The command in @code{delete-and-extract-region} looks like this: 9114The command in @code{delete-and-extract-region} looks like this:
@@ -18724,10 +18703,7 @@ Even though it is short, @code{split-line} contains expressions
18724we have not studied: @code{skip-chars-forward}, @code{indent-to}, 18703we have not studied: @code{skip-chars-forward}, @code{indent-to},
18725@code{current-column} and @code{insert-and-inherit}. 18704@code{current-column} and @code{insert-and-inherit}.
18726 18705
18727Consider the @code{skip-chars-forward} function. (It is part of the 18706Consider the @code{skip-chars-forward} function.
18728function definition for @code{back-to-indentation}, which is shown in
18729@ref{Review, , Review}.)
18730
18731In GNU Emacs, you can find out more about @code{skip-chars-forward} by 18707In GNU Emacs, you can find out more about @code{skip-chars-forward} by
18732typing @kbd{C-h f} (@code{describe-function}) and the name of the 18708typing @kbd{C-h f} (@code{describe-function}) and the name of the
18733function. This gives you the function documentation. 18709function. This gives you the function documentation.
diff --git a/doc/lispref/buffers.texi b/doc/lispref/buffers.texi
index e56d77c7b92..1f7f263fb21 100644
--- a/doc/lispref/buffers.texi
+++ b/doc/lispref/buffers.texi
@@ -755,10 +755,14 @@ When disabling Read Only mode, it disables View mode if View mode was
755enabled. 755enabled.
756@end deffn 756@end deffn
757 757
758@defun barf-if-buffer-read-only 758@defun barf-if-buffer-read-only &optional position
759This function signals a @code{buffer-read-only} error if the current 759This function signals a @code{buffer-read-only} error if the current
760buffer is read-only. @xref{Using Interactive}, for another way to 760buffer is read-only. If the text at @var{position} (which defaults to
761signal an error if the current buffer is read-only. 761point) has the @code{inhibit-read-only} text property set, the error
762will not be raised.
763
764@xref{Using Interactive}, for another way to signal an error if the
765current buffer is read-only.
762@end defun 766@end defun
763 767
764@node Buffer List 768@node Buffer List
diff --git a/doc/lispref/debugging.texi b/doc/lispref/debugging.texi
index 3f1574fac6c..98c47052cb0 100644
--- a/doc/lispref/debugging.texi
+++ b/doc/lispref/debugging.texi
@@ -141,7 +141,7 @@ If @code{eval-expression-debug-on-error} is @code{nil}, then the value
141of @code{debug-on-error} is not changed during @code{eval-expression}. 141of @code{debug-on-error} is not changed during @code{eval-expression}.
142@end defopt 142@end defopt
143 143
144@defvar debug-on-signal 144@defopt debug-on-signal
145Normally, errors caught by @code{condition-case} never invoke the 145Normally, errors caught by @code{condition-case} never invoke the
146debugger. The @code{condition-case} gets a chance to handle the error 146debugger. The @code{condition-case} gets a chance to handle the error
147before the debugger gets a chance. 147before the debugger gets a chance.
@@ -158,7 +158,7 @@ course of affairs, and you may not even realize that errors happen
158there. If you need to debug code wrapped in @code{condition-case}, 158there. If you need to debug code wrapped in @code{condition-case},
159consider using @code{condition-case-unless-debug} (@pxref{Handling 159consider using @code{condition-case-unless-debug} (@pxref{Handling
160Errors}). 160Errors}).
161@end defvar 161@end defopt
162 162
163@defopt debug-on-event 163@defopt debug-on-event
164If you set @code{debug-on-event} to a special event (@pxref{Special 164If you set @code{debug-on-event} to a special event (@pxref{Special
diff --git a/doc/lispref/display.texi b/doc/lispref/display.texi
index aa98ed40ee5..323895927a9 100644
--- a/doc/lispref/display.texi
+++ b/doc/lispref/display.texi
@@ -47,8 +47,9 @@ that Emacs presents to the user.
47contents of a given frame (@pxref{Frames}). This is useful if the 47contents of a given frame (@pxref{Frames}). This is useful if the
48screen is corrupted. 48screen is corrupted.
49 49
50@defun redraw-frame frame 50@defun redraw-frame &optional frame
51This function clears and redisplays frame @var{frame}. 51This function clears and redisplays frame @var{frame}. If @var{frame}
52is omitted or nil, it redraws the selected frame.
52@end defun 53@end defun
53 54
54 Even more powerful is @code{redraw-display}: 55 Even more powerful is @code{redraw-display}:
@@ -2686,8 +2687,14 @@ considered, until a specified attribute is found. To ensure that the
2686return value is always specified, use a value of @code{default} for 2687return value is always specified, use a value of @code{default} for
2687@var{inherit}. 2688@var{inherit}.
2688 2689
2689@defun face-font face &optional frame 2690@defun face-font face &optional frame character
2690This function returns the name of the font of face @var{face}. 2691This function returns the name of the font of face @var{face}.
2692
2693If the optional argument @var{frame} is specified, it returns the name
2694of the font of @var{face} for that frame. If @var{frame} is omitted or
2695@code{nil}, the selected frame is used. And, in this case, if the
2696optional third argument @var{character} is supplied, it returns the font
2697name used for @var{character}.
2691@end defun 2698@end defun
2692 2699
2693@defun face-foreground face &optional frame inherit 2700@defun face-foreground face &optional frame inherit
@@ -5324,7 +5331,7 @@ returned. If no specification is satisfied, @code{nil} is returned.
5324The image is looked for in @code{image-load-path}. 5331The image is looked for in @code{image-load-path}.
5325@end defun 5332@end defun
5326 5333
5327@defvar image-load-path 5334@defopt image-load-path
5328This variable's value is a list of locations in which to search for 5335This variable's value is a list of locations in which to search for
5329image files. If an element is a string or a variable symbol whose 5336image files. If an element is a string or a variable symbol whose
5330value is a string, the string is taken to be the name of a directory 5337value is a string, the string is taken to be the name of a directory
@@ -5343,7 +5350,7 @@ should specify the image as follows:
5343@example 5350@example
5344(defimage foo-image '((:type xpm :file "foo/bar.xpm"))) 5351(defimage foo-image '((:type xpm :file "foo/bar.xpm")))
5345@end example 5352@end example
5346@end defvar 5353@end defopt
5347 5354
5348@defun image-load-path-for-library library image &optional path no-error 5355@defun image-load-path-for-library library image &optional path no-error
5349This function returns a suitable search path for images used by the 5356This function returns a suitable search path for images used by the
@@ -6899,12 +6906,12 @@ provided the terminal's Termcap entry defines the visible bell
6899capability (@samp{vb}). 6906capability (@samp{vb}).
6900@end defopt 6907@end defopt
6901 6908
6902@defvar ring-bell-function 6909@defopt ring-bell-function
6903If this is non-@code{nil}, it specifies how Emacs should ring the 6910If this is non-@code{nil}, it specifies how Emacs should ring the
6904bell. Its value should be a function of no arguments. If this is 6911bell. Its value should be a function of no arguments. If this is
6905non-@code{nil}, it takes precedence over the @code{visible-bell} 6912non-@code{nil}, it takes precedence over the @code{visible-bell}
6906variable. 6913variable.
6907@end defvar 6914@end defopt
6908 6915
6909@node Window Systems 6916@node Window Systems
6910@section Window Systems 6917@section Window Systems
diff --git a/doc/lispref/frames.texi b/doc/lispref/frames.texi
index b98e3a5cdd1..15a9bd911ff 100644
--- a/doc/lispref/frames.texi
+++ b/doc/lispref/frames.texi
@@ -847,7 +847,7 @@ With some window managers you may have to set this to non-@code{nil} in
847order to make a frame appear truly maximized or full-screen. 847order to make a frame appear truly maximized or full-screen.
848@end defopt 848@end defopt
849 849
850@defun set-frame-size frame width height pixelwise 850@defun set-frame-size frame width height &optional pixelwise
851This function sets the size of the text area of @var{frame}, measured in 851This function sets the size of the text area of @var{frame}, measured in
852terms of the canonical height and width of a character on @var{frame} 852terms of the canonical height and width of a character on @var{frame}
853(@pxref{Frame Font}). 853(@pxref{Frame Font}).
@@ -2236,7 +2236,7 @@ parameters. @xref{Management Parameters}.
2236terminal frames. On each text terminal, only the top frame is 2236terminal frames. On each text terminal, only the top frame is
2237displayed at any one time. 2237displayed at any one time.
2238 2238
2239@defun tty-top-frame terminal 2239@defun tty-top-frame &optional terminal
2240This function returns the top frame on @var{terminal}. @var{terminal} 2240This function returns the top frame on @var{terminal}. @var{terminal}
2241should be a terminal object, a frame (meaning that frame's terminal), 2241should be a terminal object, a frame (meaning that frame's terminal),
2242or @code{nil} (meaning the selected frame's terminal). If it does not 2242or @code{nil} (meaning the selected frame's terminal). If it does not
diff --git a/doc/lispref/keymaps.texi b/doc/lispref/keymaps.texi
index 354be3cdd92..0ea30283d7d 100644
--- a/doc/lispref/keymaps.texi
+++ b/doc/lispref/keymaps.texi
@@ -950,22 +950,25 @@ are used before @code{minor-mode-map-alist} and
950@end defvar 950@end defvar
951 951
952@cindex transient keymap 952@cindex transient keymap
953@defun set-transient-map keymap &optional keep 953@defun set-transient-map keymap &optional keep-pred on-exit
954This function adds @var{keymap} as a @dfn{transient} keymap, which 954This function adds @var{keymap} as a @dfn{transient} keymap, which
955takes precedence over other keymaps for one (or more) subsequent keys. 955takes precedence over other keymaps for one (or more) subsequent keys.
956 956
957Normally, @var{keymap} is used just once, to look up the very next 957Normally, @var{keymap} is used just once, to look up the very next key.
958key. If the optional argument @var{pred} is @code{t}, the map stays 958If the optional argument @var{keep-pred} is @code{t}, the map stays
959active as long as the user types keys defined in @var{keymap}; when 959active as long as the user types keys defined in @var{keymap}; when the
960the user types a key that is not in @var{keymap}, the transient keymap 960user types a key that is not in @var{keymap}, the transient keymap is
961is deactivated and normal key lookup continues for that key. 961deactivated and normal key lookup continues for that key.
962 962
963The @var{pred} argument can also be a function. In that case, the 963The @var{keep-pred} argument can also be a function. In that case, the
964function is called with no arguments, prior to running each command, 964function is called with no arguments, prior to running each command,
965while @var{keymap} is active; it should return non-@code{nil} if 965while @var{keymap} is active; it should return non-@code{nil} if
966@var{keymap} should stay active. 966@var{keymap} should stay active.
967 967
968This function works by adding and removing @code{keymap} from the 968The optional argument @var{on-exit}, if non-nil, specifies a function
969that is called, with no arguments, after @var{keymap} is deactivated.
970
971This function works by adding and removing @var{keymap} from the
969variable @code{overriding-terminal-local-map}, which takes precedence 972variable @code{overriding-terminal-local-map}, which takes precedence
970over all other active keymaps (@pxref{Searching Keymaps}). 973over all other active keymaps (@pxref{Searching Keymaps}).
971@end defun 974@end defun
diff --git a/doc/lispref/minibuf.texi b/doc/lispref/minibuf.texi
index e24d2cd643a..6f41090ebea 100644
--- a/doc/lispref/minibuf.texi
+++ b/doc/lispref/minibuf.texi
@@ -272,7 +272,7 @@ History}). If it is omitted or @code{nil}, the history list defaults
272to @code{regexp-history}. 272to @code{regexp-history}.
273@end defun 273@end defun
274 274
275@defvar read-regexp-defaults-function 275@defopt read-regexp-defaults-function
276The function @code{read-regexp} may use the value of this variable to 276The function @code{read-regexp} may use the value of this variable to
277determine its list of default regular expressions. If non-@code{nil}, 277determine its list of default regular expressions. If non-@code{nil},
278the value of this variable should be either: 278the value of this variable should be either:
@@ -288,7 +288,7 @@ or a list of strings.
288 288
289@noindent 289@noindent
290See @code{read-regexp} above for details of how these values are used. 290See @code{read-regexp} above for details of how these values are used.
291@end defvar 291@end defopt
292 292
293@defvar minibuffer-allow-text-properties 293@defvar minibuffer-allow-text-properties
294If this variable is @code{nil}, then @code{read-from-minibuffer} 294If this variable is @code{nil}, then @code{read-from-minibuffer}
@@ -2336,11 +2336,11 @@ This is like @code{minibuffer-contents}, except that it does not copy text
2336properties, just the characters themselves. @xref{Text Properties}. 2336properties, just the characters themselves. @xref{Text Properties}.
2337@end defun 2337@end defun
2338 2338
2339@defun delete-minibuffer-contents 2339@deffn Command delete-minibuffer-contents
2340This function erases the editable contents of the minibuffer (that is, 2340This command erases the editable contents of the minibuffer (that is,
2341everything except the prompt), if a minibuffer is current. Otherwise, 2341everything except the prompt), if a minibuffer is current. Otherwise,
2342it erases the entire current buffer. 2342it erases the entire current buffer.
2343@end defun 2343@end deffn
2344 2344
2345@node Recursive Mini 2345@node Recursive Mini
2346@section Recursive Minibuffers 2346@section Recursive Minibuffers
diff --git a/doc/lispref/modes.texi b/doc/lispref/modes.texi
index 2b621e4337b..66f7a352023 100644
--- a/doc/lispref/modes.texi
+++ b/doc/lispref/modes.texi
@@ -1943,11 +1943,11 @@ Its default value displays the buffer name, padded with spaces to at
1943least 12 columns. 1943least 12 columns.
1944@end defvar 1944@end defvar
1945 1945
1946@defopt mode-line-position 1946@defvar mode-line-position
1947This variable indicates the position in the buffer. Its default value 1947This variable indicates the position in the buffer. Its default value
1948displays the buffer percentage and, optionally, the buffer size, the 1948displays the buffer percentage and, optionally, the buffer size, the
1949line number and the column number. 1949line number and the column number.
1950@end defopt 1950@end defvar
1951 1951
1952@defvar vc-mode 1952@defvar vc-mode
1953The variable @code{vc-mode}, buffer-local in each buffer, records 1953The variable @code{vc-mode}, buffer-local in each buffer, records
@@ -1956,11 +1956,11 @@ and, if so, which kind. Its value is a string that appears in the mode
1956line, or @code{nil} for no version control. 1956line, or @code{nil} for no version control.
1957@end defvar 1957@end defvar
1958 1958
1959@defopt mode-line-modes 1959@defvar mode-line-modes
1960This variable displays the buffer's major and minor modes. Its 1960This variable displays the buffer's major and minor modes. Its
1961default value also displays the recursive editing level, information 1961default value also displays the recursive editing level, information
1962on the process status, and whether narrowing is in effect. 1962on the process status, and whether narrowing is in effect.
1963@end defopt 1963@end defvar
1964 1964
1965@defvar mode-line-remote 1965@defvar mode-line-remote
1966This variable is used to show whether @code{default-directory} for the 1966This variable is used to show whether @code{default-directory} for the
diff --git a/doc/lispref/os.texi b/doc/lispref/os.texi
index 8e3720eb947..c5e3672a35a 100644
--- a/doc/lispref/os.texi
+++ b/doc/lispref/os.texi
@@ -2959,34 +2959,40 @@ Buffers}.
2959 2959
2960@item Authentication 2960@item Authentication
2961Emacs has several functions that deal with passwords, e.g., 2961Emacs has several functions that deal with passwords, e.g.,
2962@code{password-read}. Although these functions do not attempt to 2962@code{read-passwd}. @xref{Reading a Password}.
2963Although these functions do not attempt to
2963broadcast passwords to the world, their implementations are not proof 2964broadcast passwords to the world, their implementations are not proof
2964against determined attackers with access to Emacs internals. For 2965against determined attackers with access to Emacs internals. For
2965example, even if Elisp code attempts to scrub a password from 2966example, even if Elisp code uses @code{clear-string} to scrub a password from
2966its memory after using it, remnants of the password may still reside 2967its memory after using it, remnants of the password may still reside
2967in the garbage-collected free list. 2968in the garbage-collected free list. @xref{Modifying Strings}.
2968 2969
2969@item Code injection 2970@item Code injection
2970Emacs can send commands to many other applications, and applications 2971Emacs can send commands to many other applications, and applications
2971should take care that strings sent as operands of these commands are 2972should take care that strings sent as operands of these commands are
2972not misinterpreted as directives. For example, when sending a shell 2973not misinterpreted as directives. For example, when using a shell
2973command to rename a file @var{a} to @var{b}, do not simply use the 2974command to rename a file @var{a} to @var{b}, do not simply use the
2974string @code{mv @var{a} @var{b}}, because either file name might start 2975string @code{mv @var{a} @var{b}}, because either file name might start
2975with @samp{-}, or might contain shell metacharacters like @samp{;}. 2976with @samp{-}, or might contain shell metacharacters like @samp{;}.
2976Although functions like @code{shell-quote-argument} can help avoid 2977Although functions like @code{shell-quote-argument} can help avoid
2977this sort of problem, they are not panaceas; for example, on a POSIX 2978this sort of problem, they are not panaceas; for example, on a POSIX
2978platform @code{shell-quote-argument} quotes shell metacharacters but 2979platform @code{shell-quote-argument} quotes shell metacharacters but
2979not leading @samp{-}. @xref{Shell Arguments}. 2980not leading @samp{-}. @xref{Shell Arguments}. Typically it is safer
2981to use @code{call-process} than a subshell. @xref{Synchronous
2982Processes}. And it is safer yet to use builtin Emacs functions; for
2983example, use @code{(rename-file "@var{a}" "@var{b}" t)} instead of
2984invoking @command{mv}. @xref{Changing Files}.
2980 2985
2981@item Coding systems 2986@item Coding systems
2982Emacs attempts to infer the coding systems of the files and network 2987Emacs attempts to infer the coding systems of the files and network
2983connections it accesses. If it makes a mistake, or if the other 2988connections it accesses. @xref{Coding Systems}.
2984parties to the network connection disagree with Emacs's deductions, 2989If Emacs infers incorrectly, or if the other
2990parties to the network connection disagree with Emacs's inferences,
2985the resulting system could be unreliable. Also, even when it infers 2991the resulting system could be unreliable. Also, even when it infers
2986correctly, Emacs often can use bytes that other programs cannot. For 2992correctly, Emacs often can use bytes that other programs cannot. For
2987example, although to Emacs the NUL (all bits zero) byte is just a 2993example, although to Emacs the null byte is just a
2988character like any other, many other applications treat it as a string 2994character like any other, many other applications treat it as a string
2989terminator and mishandle strings or files containing NUL bytes. 2995terminator and mishandle strings or files containing null bytes.
2990 2996
2991@item Environment and configuration variables 2997@item Environment and configuration variables
2992POSIX specifies several environment variables that can affect how 2998POSIX specifies several environment variables that can affect how
@@ -2998,7 +3004,7 @@ environment variables (e.g., @env{PATH}, @env{POSIXLY_CORRECT},
2998@env{SHELL}, @env{TMPDIR}) need to have properly-configured values in 3004@env{SHELL}, @env{TMPDIR}) need to have properly-configured values in
2999order to get standard behavior for any utility Emacs might invoke. 3005order to get standard behavior for any utility Emacs might invoke.
3000Even seemingly-benign variables like @env{TZ} may have security 3006Even seemingly-benign variables like @env{TZ} may have security
3001implications. 3007implications. @xref{System Environment}.
3002 3008
3003Emacs has customization and other variables with similar 3009Emacs has customization and other variables with similar
3004considerations. For example, if the variable @code{shell-file-name} 3010considerations. For example, if the variable @code{shell-file-name}
@@ -3025,6 +3031,7 @@ other applications do. For example, even when
3025@code{(file-readable-p "foo.txt")} returns @code{t}, it could be that 3031@code{(file-readable-p "foo.txt")} returns @code{t}, it could be that
3026@file{foo.txt} is unreadable because some other program changed the 3032@file{foo.txt} is unreadable because some other program changed the
3027file's permissions between the call to @code{file-readable-p} and now. 3033file's permissions between the call to @code{file-readable-p} and now.
3034@xref{Testing Accessibility}.
3028 3035
3029@item Resource limits 3036@item Resource limits
3030When Emacs exhausts memory or other operating system resources, its 3037When Emacs exhausts memory or other operating system resources, its
diff --git a/doc/lispref/strings.texi b/doc/lispref/strings.texi
index 091db5e4ebb..9d6613c522c 100644
--- a/doc/lispref/strings.texi
+++ b/doc/lispref/strings.texi
@@ -145,11 +145,12 @@ This returns a string containing the characters @var{characters}.
145@end example 145@end example
146@end defun 146@end defun
147 147
148@defun substring string start &optional end 148@defun substring string &optional start end
149This function returns a new string which consists of those characters 149This function returns a new string which consists of those characters
150from @var{string} in the range from (and including) the character at the 150from @var{string} in the range from (and including) the character at the
151index @var{start} up to (but excluding) the character at the index 151index @var{start} up to (but excluding) the character at the index
152@var{end}. The first character is at index zero. 152@var{end}. The first character is at index zero. With one argument,
153this function just copies @var{string}.
153 154
154@example 155@example
155@group 156@group
diff --git a/doc/lispref/text.texi b/doc/lispref/text.texi
index 41991c9482c..4c3a1a01e7d 100644
--- a/doc/lispref/text.texi
+++ b/doc/lispref/text.texi
@@ -303,7 +303,7 @@ there, the function returns @code{nil}. Otherwise, a nearby symbol or
303word on the same line is acceptable. 303word on the same line is acceptable.
304@end defun 304@end defun
305 305
306@defun thing-at-point thing 306@defun thing-at-point thing &optional no-properties
307Return the @var{thing} around or next to point, as a string. 307Return the @var{thing} around or next to point, as a string.
308 308
309The argument @var{thing} is a symbol which specifies a kind of syntactic 309The argument @var{thing} is a symbol which specifies a kind of syntactic
@@ -311,6 +311,9 @@ entity. Possibilities include @code{symbol}, @code{list}, @code{sexp},
311@code{defun}, @code{filename}, @code{url}, @code{word}, @code{sentence}, 311@code{defun}, @code{filename}, @code{url}, @code{word}, @code{sentence},
312@code{whitespace}, @code{line}, @code{page}, and others. 312@code{whitespace}, @code{line}, @code{page}, and others.
313 313
314When the optional argument @var{no-properties} is non-@code{nil}, this
315function strips text properties from the return value.
316
314@example 317@example
315---------- Buffer: foo ---------- 318---------- Buffer: foo ----------
316Gentlemen may cry ``Pea@point{}ce! Peace!,'' 319Gentlemen may cry ``Pea@point{}ce! Peace!,''
@@ -804,7 +807,7 @@ A blank line is defined as a line containing only tabs and spaces.
804@code{delete-blank-lines} returns @code{nil}. 807@code{delete-blank-lines} returns @code{nil}.
805@end deffn 808@end deffn
806 809
807@deffn Command delete-trailing-whitespace start end 810@deffn Command delete-trailing-whitespace &optional start end
808Delete trailing whitespace in the region defined by @var{start} and 811Delete trailing whitespace in the region defined by @var{start} and
809@var{end}. 812@var{end}.
810 813
@@ -1763,7 +1766,7 @@ is value of @code{indent-line-function} in Paragraph-Indent Text mode.
1763 1766
1764@defopt left-margin 1767@defopt left-margin
1765This variable specifies the base left margin column. In Fundamental 1768This variable specifies the base left margin column. In Fundamental
1766mode, @kbd{RET} indents to this column. This variable automatically 1769mode, @key{RET} indents to this column. This variable automatically
1767becomes buffer-local when set in any fashion. 1770becomes buffer-local when set in any fashion.
1768@end defopt 1771@end defopt
1769 1772
diff --git a/doc/lispref/windows.texi b/doc/lispref/windows.texi
index 771bd4eeb29..f61f08a7f24 100644
--- a/doc/lispref/windows.texi
+++ b/doc/lispref/windows.texi
@@ -2415,9 +2415,10 @@ If this function chooses a window on another frame, it makes that frame
2415visible and, unless @var{alist} contains an @code{inhibit-switch-frame} 2415visible and, unless @var{alist} contains an @code{inhibit-switch-frame}
2416entry (@pxref{Choosing Window Options}), raises that frame if necessary. 2416entry (@pxref{Choosing Window Options}), raises that frame if necessary.
2417 2417
2418If @var{alist} has a non-nil @code{frame-predicate} entry, its value is a 2418If @var{alist} has a non-@code{nil} @code{frame-predicate} entry, its
2419function taking one argument (a frame), returning non-nil if the 2419value is a function taking one argument (a frame), returning
2420frame is a candidate; this function replaces the default predicate. 2420non-@code{nil} if the frame is a candidate; this function replaces the
2421default predicate.
2421 2422
2422If @var{alist} has a non-@code{nil} @code{inhibit-same-window} entry, 2423If @var{alist} has a non-@code{nil} @code{inhibit-same-window} entry,
2423the selected window is used; thus if the selected frame has a single 2424the selected window is used; thus if the selected frame has a single
@@ -2637,10 +2638,11 @@ and return either a new window (which will be used to display the
2637desired buffer) or @code{nil} (which means the splitting failed). 2638desired buffer) or @code{nil} (which means the splitting failed).
2638@end defopt 2639@end defopt
2639 2640
2640@defun split-window-sensibly window 2641@defun split-window-sensibly &optional window
2641This function tries to split @var{window}, and return the newly 2642This function tries to split @var{window}, and return the newly created
2642created window. If @var{window} cannot be split, it returns 2643window. If @var{window} cannot be split, it returns @code{nil}. If
2643@code{nil}. 2644@var{window} is omitted or @code{nil}, it defaults to the selected
2645window.
2644 2646
2645This function obeys the usual rules that determine when a window may 2647This function obeys the usual rules that determine when a window may
2646be split (@pxref{Splitting Windows}). It first tries to split by 2648be split (@pxref{Splitting Windows}). It first tries to split by
@@ -2671,9 +2673,9 @@ to split this way.
2671@end defopt 2673@end defopt
2672 2674
2673@defopt even-window-sizes 2675@defopt even-window-sizes
2674This variable, if non-nil, causes @code{display-buffer} to even window 2676This variable, if non-@code{nil}, causes @code{display-buffer} to even
2675sizes whenever it reuses an existing window and that window is adjacent 2677window sizes whenever it reuses an existing window and that window is
2676to the selected one. 2678adjacent to the selected one.
2677 2679
2678If its value is @code{width-only}, sizes are evened only if the reused 2680If its value is @code{width-only}, sizes are evened only if the reused
2679window is on the left or right of the selected one and the selected 2681window is on the left or right of the selected one and the selected
@@ -3161,7 +3163,7 @@ text will end if scrolling is not required.
3161@end defun 3163@end defun
3162 3164
3163@vindex window-group-end-function 3165@vindex window-group-end-function
3164@defun window-group-end window update 3166@defun window-group-end &optional window update
3165This function is like @code{window-end}, except that when @var{window} 3167This function is like @code{window-end}, except that when @var{window}
3166is a part of a group of windows (@pxref{Window Group}), 3168is a part of a group of windows (@pxref{Window Group}),
3167@code{window-group-end} returns the end position of the entire group. 3169@code{window-group-end} returns the end position of the entire group.
diff --git a/doc/misc/gnus.texi b/doc/misc/gnus.texi
index ab96684eb62..8dd0c1ba9d5 100644
--- a/doc/misc/gnus.texi
+++ b/doc/misc/gnus.texi
@@ -14325,7 +14325,7 @@ Here's a complete example @code{nnimap} backend with a client-side
14325@example 14325@example
14326(nnimap "imap.example.com" 14326(nnimap "imap.example.com"
14327 (nnimap-inbox "INBOX") 14327 (nnimap-inbox "INBOX")
14328 (nnimap-split-methods 14328 (nnimap-split-fancy
14329 (| ("MailScanner-SpamCheck" "spam" "spam.detected") 14329 (| ("MailScanner-SpamCheck" "spam" "spam.detected")
14330 (to "foo@@bar.com" "foo") 14330 (to "foo@@bar.com" "foo")
14331 "undecided"))) 14331 "undecided")))
diff --git a/doc/misc/tramp.texi b/doc/misc/tramp.texi
index 54b98260111..16ff76b887d 100644
--- a/doc/misc/tramp.texi
+++ b/doc/misc/tramp.texi
@@ -1961,7 +1961,7 @@ of the secretfile is now owned by the user logged in from
1961When @code{backup-directory-alist} is @code{nil} (the default), such 1961When @code{backup-directory-alist} is @code{nil} (the default), such
1962problems do not occur. 1962problems do not occur.
1963 1963
1964To ``turns off'' the backup feature for @value{tramp} files and stop 1964To ``turn off'' the backup feature for @value{tramp} files and stop
1965@value{tramp} from saving to the backup directory, use this: 1965@value{tramp} from saving to the backup directory, use this:
1966 1966
1967@lisp 1967@lisp