[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] master 47106da: Merge from origin/emacs-26
From: |
Glenn Morris |
Subject: |
[Emacs-diffs] master 47106da: Merge from origin/emacs-26 |
Date: |
Fri, 16 Feb 2018 12:44:13 -0500 (EST) |
branch: master
commit 47106da23ac2b19ad994eed95cdcb0d33535281d
Merge: 4ba3285 a06a8ed
Author: Glenn Morris <address@hidden>
Commit: Glenn Morris <address@hidden>
Merge from origin/emacs-26
a06a8ed (origin/emacs-26) ; * lisp/vc/vc-git.el (vc-git--program-vers...
edc06ad Make 'byte-compile-error-on-warn' a safe file variable
9f5d8da ; * lisp/textmodes/flyspell.el (flyspell-auto-correct-word): ...
f73905a Fix the doc string of flyspell-auto-correct-word
e9c7ddc Improve the MS-Windows appendix of the Emacs manual
6ddb4bd Fix 'vc-git--program-version'
63c93f7 Fix typos and wording in the Emacs manual
42f15b0 * doc/emacs/programs.texi (Semantic): Order programming langu...
b46be29 More improvements for the Emacs manual
874c0ed Minor wording change in Emacs manual
53511f9 Another set of changes for the manual
78426b8 Improvements on tramp.texi
0dca618 Tramp minor doc fixes
Conflicts:
doc/misc/tramp.texi
---
doc/emacs/building.texi | 10 +--
doc/emacs/custom.texi | 8 ---
doc/emacs/dired.texi | 9 +--
doc/emacs/files.texi | 11 +--
doc/emacs/fortran-xtra.texi | 42 +++++++-----
doc/emacs/help.texi | 2 +-
doc/emacs/killing.texi | 2 +-
doc/emacs/maintaining.texi | 2 +-
doc/emacs/msdos.texi | 116 ++++++++++++++++++++++----------
doc/emacs/programs.texi | 159 +++++++++++++++++++++++++-------------------
doc/emacs/regs.texi | 2 +-
doc/emacs/search.texi | 4 +-
doc/emacs/text.texi | 8 +--
doc/emacs/windows.texi | 2 +-
doc/lispref/display.texi | 21 +++---
doc/misc/tramp.texi | 122 ++++++++++++++++++---------------
lisp/emacs-lisp/bytecomp.el | 5 ++
lisp/textmodes/flyspell.el | 5 +-
lisp/vc/vc-git.el | 7 +-
19 files changed, 322 insertions(+), 215 deletions(-)
diff --git a/doc/emacs/building.texi b/doc/emacs/building.texi
index 878d2f5..b6b664d 100644
--- a/doc/emacs/building.texi
+++ b/doc/emacs/building.texi
@@ -649,7 +649,7 @@ Set a breakpoint on the source line that point is on.
buffer, sets a debugger breakpoint on the current source line. This
command is available only after starting address@hidden If you call it in a
buffer that is not associated with any debugger subprocess, it signals
-a error.
+an error.
@kindex C-x C-a @r{(GUD)}
The following commands are available both in the GUD interaction
@@ -1096,9 +1096,9 @@ display the corresponding buffer in a new frame.
When you create a buffer showing information about some specific
thread, it becomes bound to that thread and keeps showing actual
information while you debug your program. The mode indicator for each
-GDB buffer shows the number of thread it is showing information about.
-The thread number is also included in the buffer name of bound
-buffers.
+GDB buffer shows the number of the thread whose information that
+buffer displays. The thread number is also included in the name of
+each bound buffer.
Further commands are available in the GDB Threads buffer which
depend on the mode of GDB that is used for controlling execution of
@@ -1449,7 +1449,7 @@ buffer). To disable this feature, change the variable
@vindex load-dangerous-libraries
@cindex Lisp files byte-compiled by XEmacs
By default, Emacs refuses to load compiled Lisp files which were
-compiled with XEmacs, a modified versions of Emacs---they can cause
+compiled with XEmacs, a modified version of Emacs---they can cause
Emacs to crash. Set the variable @code{load-dangerous-libraries} to
@code{t} if you want to try loading them.
diff --git a/doc/emacs/custom.texi b/doc/emacs/custom.texi
index e27760b..2726690 100644
--- a/doc/emacs/custom.texi
+++ b/doc/emacs/custom.texi
@@ -2567,11 +2567,3 @@ instance:
@noindent
Type @kbd{C-q}, followed by the key you want to bind, to insert @var{char}.
-
- @strong{Warning:} if you change the keyboard encoding, or change
-between multibyte and unibyte mode, or anything that would alter which
-code @kbd{C-q} would insert for that character, this key binding may
-stop working. It is therefore advisable to use one and only one
-coding system, for your init file as well as the files you edit. For
-example, don't mix the @samp{latin-1} and @samp{latin-9} coding
-systems.
diff --git a/doc/emacs/dired.texi b/doc/emacs/dired.texi
index 71aea90..3fa35f1 100644
--- a/doc/emacs/dired.texi
+++ b/doc/emacs/dired.texi
@@ -579,9 +579,10 @@ might be inconsistent with the file on disk if its
contents have changed
since it was last visited. If you don't want this, you may wish to
revert the files you have visited in your buffers, or to turn on
the @code{auto-revert} mode in those buffers, before invoking this
-command. @xref{Reverting}. If you prefer that this command always revisit
-the file, without having to revert the file or enable @code{auto-revert}
-mode, you might want to set @code{dired-always-read-filesystem} to
address@hidden
+command. @xref{Reverting}. If you prefer that this command always
+revisits the file, without having to revert the file or enable
address@hidden mode, you might want to set
address@hidden to address@hidden
@item C-/
@itemx C-x u
@@ -1184,7 +1185,7 @@ without having to remove the Dired marks on files in those
subdirectories.
@xref{Subdirectories in Dired}, for how to insert a subdirectory
-listing, and @pxref{Dired Updating} for how delete it.
+listing, and see @ref{Dired Updating}, for how to delete it.
@node Dired Updating
@section Updating the Dired Buffer
diff --git a/doc/emacs/files.texi b/doc/emacs/files.texi
index 37d9056..bd772e9 100644
--- a/doc/emacs/files.texi
+++ b/doc/emacs/files.texi
@@ -694,11 +694,12 @@ Otherwise, renaming is the default choice.
When a file is managed with a version control system (@pxref{Version
Control}), Emacs does not normally make backups in the usual way for
-that file. But check-in and check-out are similar in some ways to
-making backups. One unfortunate similarity is that these operations
-typically break hard links, disconnecting the file name you visited from
-any alternate names for the same file. This has nothing to do with
-Emacs---the version control system does it.
+that file. But @dfn{committing} (a.k.a.@: @dfn{checking in},
address@hidden Concepts}) new versions of files is similar in some ways
+to making backups. One unfortunate similarity is that these
+operations typically break hard links, disconnecting the file name you
+visited from any alternate names for the same file. This has nothing
+to do with Emacs---the version control system does it.
@node Customize Save
@subsection Customizing Saving of Files
diff --git a/doc/emacs/fortran-xtra.texi b/doc/emacs/fortran-xtra.texi
index 98ff825..859c613 100644
--- a/doc/emacs/fortran-xtra.texi
+++ b/doc/emacs/fortran-xtra.texi
@@ -158,11 +158,14 @@ the required columns.
@item C-M-j
Break the current line at point and set up a continuation line
(@code{fortran-split-line}).
+
@item M-^
Join this line to the previous line (@code{fortran-join-line}).
+
@item C-M-q
Indent all the lines of the subprogram that point is in
(@code{fortran-indent-subprogram}).
+
@item M-q
Fill a comment block or statement (using @code{fortran-fill-paragraph}
or @code{fortran-fill-statement}).
@@ -185,7 +188,7 @@ lines.
@kindex M-^ @r{(Fortran mode)}
@kindex C-c C-d @r{(Fortran mode)}
@findex fortran-join-line
- @kbd{M-^} or @kbd{C-c C-d} runs the command @code{fortran-join-line},
+ @kbd{M-^} or @kbd{C-c C-d} run the command @code{fortran-join-line},
which joins a continuation line back to the previous line, roughly as
the inverse of @code{fortran-split-line}. The point must be on a
continuation line when this command is invoked.
@@ -203,7 +206,9 @@ point is in. This removes any excess statement
continuations.
If the first non-space character on a line is in column 5, then that
line is a continuation of the previous line. We call this @dfn{fixed
form}. (In GNU Emacs we always count columns from 0; but note that
-the Fortran standard counts from 1.) The variable
+the Fortran standard counts from 1. You can customize the variable
address@hidden to make the column display
+Fortran-like; @pxref{Optional Mode Line}.) The variable
@code{fortran-continuation-string} specifies what character to put in
column 5. A line that starts with a tab character followed by any digit
except @samp{0} is also a continuation line. We call this style of
@@ -229,10 +234,10 @@ accordingly.
If the text on a line starts with the Fortran continuation marker
@samp{$}, or if it begins with any non-whitespace character in column
5, Fortran mode treats it as a continuation line. When you indent a
-continuation line with @key{TAB}, it converts the line to the current
-continuation style. When you split a Fortran statement with
address@hidden, the continuation marker on the newline is created according
-to the continuation style.
+continuation line with @address@hidden, it converts the line to the
+current continuation style. When you split a Fortran statement with
address@hidden, the continuation marker on the newline is created
+according to the continuation style.
The setting of continuation style affects several other aspects of
editing in Fortran mode. In fixed form mode, the minimum column
@@ -247,7 +252,9 @@ column 8 must consist of one tab character.
If a number is the first non-whitespace in the line, Fortran
indentation assumes it is a line number and moves it to columns 0
-through 4. (Columns always count from 0 in Emacs.)
+through 4. (Columns always count from 0 in Emacs, but setting
address@hidden to @code{nil} can change
+that, @pxref{Optional Mode Line}.)
@vindex fortran-line-number-indent
Line numbers of four digits or less are normally indented one space.
@@ -320,7 +327,7 @@ Extra indentation within each level of @samp{structure},
@samp{union},
Extra indentation for bodies of continuation lines (default 5).
@item fortran-check-all-num-for-matching-do
-In Fortran 77, a numbered @samp{do} statement is ended by any statement
+In Fortran 77, a numbered @samp{do} statement is terminated by any statement
with a matching line number. It is common (but not compulsory) to use a
@samp{continue} statement for this purpose. If this variable has a
address@hidden value, indenting any numbered statement must check for a
@@ -330,7 +337,7 @@ then you can speed up indentation by setting this variable
to
@code{nil} (the default).
@item fortran-blink-matching-if
-If this is @code{t}, indenting an @samp{endif} (or @samp{enddo}
+If this is @code{t}, indenting an @samp{endif} (or @samp{enddo})
statement moves the cursor momentarily to the matching @samp{if} (or
@samp{do}) statement to show where it is. The default is @code{nil}.
@@ -386,7 +393,7 @@ Fortran mode as in other modes.
When a new comment must be inserted, if the current line is blank, a
full-line comment is inserted. On a non-blank line, a nonstandard @samp{!}
-comment is inserted if you have said you want to use them. Otherwise a
+comment is inserted if you have said you want to use them. Otherwise, a
full-line comment is inserted on a new line before the current line.
Nonstandard @samp{!} comments are aligned like comments in other
@@ -434,7 +441,7 @@ distinctive font-locking.
The normal Emacs comment command @kbd{C-x ;} (@code{comment-set-column})
has not been redefined. If you use @samp{!} comments, this command
-can be used with them. Otherwise it is useless in Fortran mode.
+can be used with them. Otherwise, it is useless in Fortran mode.
@kindex C-c ; @r{(Fortran mode)}
@findex fortran-comment-region
@@ -457,9 +464,9 @@ minor mode that automatically splits statements as you
insert them
when they become too wide. Splitting a statement involves making
continuation lines using @code{fortran-continuation-string}
(@pxref{ForIndent Cont}). This splitting happens when you type
address@hidden, @key{RET}, or @key{TAB}, and also in the Fortran
-indentation commands. You activate Auto Fill in Fortran mode in the
-normal way.
address@hidden@key{SPC}}, @address@hidden, or @address@hidden, and also in the
+Fortran indentation commands. You activate Auto Fill in Fortran mode
+in the normal way.
@iftex
@xref{Auto Fill,,, emacs, the Emacs Manual}.
@end iftex
@@ -501,15 +508,18 @@ will confuse font-lock.)
@item C-c C-r
Display a column ruler momentarily above the current line
(@code{fortran-column-ruler}).
+
@item C-c C-w
Split the current window horizontally temporarily so that it is
@code{fortran-line-length} columns wide
(@code{fortran-window-create-momentarily}). This may help you avoid
making lines longer than the limit imposed by your Fortran compiler.
+
@item C-u C-c C-w
Split the current window horizontally so that it is
@code{fortran-line-length} columns wide (@code{fortran-window-create}).
You can then continue editing.
+
@item M-x fortran-strip-sequence-nos
Delete all text in column @code{fortran-line-length} and beyond.
@end table
@@ -523,7 +533,9 @@ Fortran programs. Square brackets show the limits of the
columns for line
numbers, and curly brackets show the limits of the columns for the
statement body. Column numbers appear above them.
- Note that the column numbers count from zero, as always in GNU Emacs.
+ Note that the column numbers count from zero, as always in GNU Emacs
+(but customizing @code{column-number-indicator-zero-based} can change
+column display to match that of Fortran; @pxref{Optional Mode Line}).
As a result, the numbers may be one less than those you are familiar
with; but the positions they indicate in the line are standard for
Fortran.
diff --git a/doc/emacs/help.texi b/doc/emacs/help.texi
index 2ed2642..6c093f1 100644
--- a/doc/emacs/help.texi
+++ b/doc/emacs/help.texi
@@ -642,7 +642,7 @@ Display information about where to get external packages
@item C-h C-f
Display the Emacs frequently-answered-questions list (@code{view-emacs-FAQ}).
@item C-h g
-Visit a @uref{https://www.gnu.org} page with information about the GNU
+Visit the @uref{https://www.gnu.org, page} with information about the GNU
Project (@code{describe-gnu-project}).
@item C-h C-m
Display information about ordering printed copies of Emacs manuals
diff --git a/doc/emacs/killing.texi b/doc/emacs/killing.texi
index 3416db5..19aa907 100644
--- a/doc/emacs/killing.texi
+++ b/doc/emacs/killing.texi
@@ -675,7 +675,7 @@ use to alter a buffer, then point is always at the end.
@kbd{M-x prepend-to-buffer} is just like @code{append-to-buffer}
except that point in the other buffer is left before the copied text, so
-successive prependings add text in reverse order. @kbd{M-x
+successive uses of this command add text in reverse order. @kbd{M-x
copy-to-buffer} is similar, except that any existing text in the other
buffer is deleted, so the buffer is left containing just the text newly
copied into it.
diff --git a/doc/emacs/maintaining.texi b/doc/emacs/maintaining.texi
index 127c27c..1234db8 100644
--- a/doc/emacs/maintaining.texi
+++ b/doc/emacs/maintaining.texi
@@ -2203,7 +2203,7 @@ In Ada, the same name can be used for different kinds of
entity
(e.g., for a procedure and for a function). Also, for things like
packages, procedures and functions, there is the spec (i.e., the
interface) and the body (i.e., the implementation). To make it
-easier to pick the definition you want, Ada tag name have suffixes
+easier to pick the definition you want, Ada tag names have suffixes
indicating the type of entity:
@table @samp
diff --git a/doc/emacs/msdos.texi b/doc/emacs/msdos.texi
index dd368ad..2790d56 100644
--- a/doc/emacs/msdos.texi
+++ b/doc/emacs/msdos.texi
@@ -69,6 +69,20 @@ right-click on the shortcut, select ``Properties'', and in
the
``Shortcut'' tab modify the ``Start in'' field to your liking.
@item
address@hidden pinning Emacs to Windows task bar
+From a task-bar shortcut icon, by clicking once the left mouse button.
+Windows versions since Vista allow you to create such shortcuts by
address@hidden the icon of a running program that appears in the task
+bar. You can do that with Emacs, but afterwards you will have to
+change the properties of the pinned shortcut to run
address@hidden, @emph{not} of @file{emacs.exe}. You can also pin
+Emacs to the task bar by clicking the right mouse button on its icon
+in the Start menu, then selecting @samp{Pin to taskbar}. Once again,
+be sure to specify @file{runemacs.exe} as the program to run. You can
+control where Emacs starts by setting the ``Start in'' field of the
+shortcut's Properties.
+
address@hidden
From the Command Prompt window, by typing @kbd{emacs @key{RET}} at the
prompt. The Command Prompt window where you did that will not be
available for invoking other commands until Emacs exits. In this
@@ -81,6 +95,12 @@ immediately available for invoking other commands. In this
case,
Emacs will start in the current directory of the Windows shell.
@item
+From the Windows @code{Run} dialog (normally reached by clicking the
address@hidden button). Typing @kbd{runemacs @key{RET}} into the dialog
+will start Emacs in the parent directory of the Windows equivalent of
+your user's @code{HOME} directory, see @ref{Windows HOME}.
+
address@hidden
@cindex invoking Emacs from Windows Explorer
@pindex emacsclient.exe
@pindex emacsclientw.exe
@@ -204,8 +224,8 @@ designates directory @file{\foo} on drive Z as an
untranslated file
system.
Most often you would use @code{add-untranslated-filesystem} in your
address@hidden file, or in @file{site-start.el} so that all the users at
-your site get the benefit of it.
address@hidden or @file{init.el} init file, or in @file{site-start.el}
+so that all the users at your site get the benefit of it.
@findex remove-untranslated-filesystem
To countermand the effect of @code{add-untranslated-filesystem}, use
@@ -215,8 +235,8 @@ previously with @code{add-untranslated-filesystem}.
Designating a file system as untranslated does not affect character
set conversion, only end-of-line conversion. Essentially, it directs
-Emacs to create new files with the Unix-style convention of using
-newline at the end of a line. @xref{Coding Systems}.
+Emacs to default to creating new files with the Unix-style convention
+of using newline at the end of a line. @xref{Coding Systems}.
@node Windows Files
@section File Names on MS-Windows
@@ -229,7 +249,9 @@ backslash, and also knows about drive letters in file names.
@cindex file-name completion, on MS-Windows
On MS-DOS/MS-Windows, file names are case-insensitive, so Emacs by
-default ignores letter-case in file names during completion.
+default ignores letter-case in file names during completion. To this
+end, the default value of @code{read-file-name-completion-ignore-case}
+is address@hidden on MS-DOS/MS-Windows. @xref{Completion Options}.
@vindex w32-get-true-file-attributes
The variable @code{w32-get-true-file-attributes} controls whether
@@ -311,9 +333,9 @@ it doesn't support all of them. Here's the list of the
switches it
does support: @option{-A}, @option{-a}, @option{-B}, @option{-C},
@option{-c}, @option{-G}, @option{-g}, @option{-h}, @option{-i}, @option{-n},
@option{-R}, @option{-r}, @option{-S}, @option{-s}, @option{-t}, @option{-U},
address@hidden, and @option{-X}. The @option{-F} switch is partially
-supported (it appends the character that classifies the file, but does
-not prevent symlink following).
address@hidden, @option{v}, and @option{-X}. The @option{-F} switch is
+partially supported (it appends the character that classifies the
+file, but does not prevent symlink following).
@vindex ls-lisp-use-insert-directory-program
On MS-Windows and MS-DOS, @file{ls-lisp.el} is preloaded when Emacs
@@ -323,6 +345,26 @@ platforms. If you have a ported @code{ls}, setting
will revert to using an external program named by the variable
@code{insert-directory-program}.
address@hidden Dired sorting order, on MS-Windows/MS-DOS
+ The order in which @file{ls-lisp.el} sorts files depends on several
+customizable options described below.
+
address@hidden ls-lisp-use-string-collate
+ The default sorting order follows locale-specific rules derived from
+your system locale. You can make the order locale-independent by
+customizing @code{ls-lisp-use-string-collate} to a @code{nil} value.
+
address@hidden Unicode Collation Algorithm (UCA), and @file{ls-lisp.el}
address@hidden ls-lisp-UCA-like-collation
+ On GNU and Unix systems, when the locale's encoding is UTF-8, the
+collation order follows the Unicode Collation Algorithm
+(@acronym{UCA}). To have a similar effect on MS-Windows, the variable
address@hidden should have a address@hidden value
+(this is the default). The resulting sorting order ignores
+punctuation, symbol characters, and whitespace characters, so
address@hidden, @file{foobar} and @address@hidden bar}} will appear
+together rather than far apart.
+
@vindex ls-lisp-ignore-case
By default, @file{ls-lisp.el} uses a case-sensitive sort order for
the directory listing it produces; this is so the listing looks the
@@ -371,10 +413,10 @@ Emulate address@hidden Sets @code{ls-lisp-ignore-case}
to @code{t}, and
@item MS-Windows
Emulate MS-Windows. Sets @code{ls-lisp-ignore-case} and
@code{ls-lisp-dirs-first} to @code{t}, and @code{ls-lisp-verbosity} to
address@hidden(links)} on Windows NT/2K/XP/2K3 and to @code{nil} on Windows
address@hidden
-Note that the default emulation is @emph{not} @code{MS-Windows}, even
-on Windows, since many users of Emacs on those platforms prefer the
address@hidden defaults.
address@hidden on Windows 9X and to @code{t} on modern versions of
+Windows. Note that the default emulation is @emph{not}
address@hidden, even on Windows, since many users of Emacs on those
+platforms prefer the @sc{gnu} defaults.
@end table
@noindent
@@ -421,6 +463,8 @@ formats file time stamps according to what
@code{ls-lisp-format-time-list} specifies. The @samp{%}-sequences in
@code{ls-lisp-format-time-list} produce locale-dependent month and day
names, which might cause misalignment of columns in Dired display.
+The default value of @code{ls-lisp-use-localized-time-format} is
address@hidden
@end ifnottex
@node Windows HOME
@@ -453,7 +497,8 @@ default @code{HOME} location, and will not look in the
application
data directory, even if it exists. Note that only @file{.emacs} is
looked for in @file{C:\}; the older name @file{_emacs} (see below) is
not. This use of @file{C:\.emacs} to define @code{HOME} is
-deprecated.
+deprecated; Emacs will display a warning about its use during
+startup.
Whatever the final place is, Emacs sets the internal value of the
@env{HOME} environment variable to point to it, and it will use that
@@ -467,15 +512,15 @@ first line. Likewise, to visit your init file, type
@kbd{C-x C-f
~/.emacs @key{RET}} (assuming the file's name is @file{.emacs}).
@cindex init file @file{.emacs} on MS-Windows
- The home directory is where your init file is stored. It can have
-any name mentioned in @ref{Init File}.
+ Your init file can have any name mentioned in @ref{Init File}.
@cindex @file{_emacs} init file, MS-Windows
Because MS-DOS does not allow file names with leading dots, and
older Windows systems made it hard to create files with such names,
the Windows port of Emacs supports an init file name @file{_emacs}, if
such a file exists in the home directory and @file{.emacs} does not.
-This name is considered obsolete.
+This name is considered obsolete, so Emacs will display a warning if
+it is used.
@node Windows Keyboard
@section Keyboard Usage on MS-Windows
@@ -491,7 +536,9 @@ Emacs key bindings. (These Emacs key bindings were
established years
before Microsoft was founded.) Examples of conflicts include
@kbd{C-c}, @kbd{C-x}, @kbd{C-z}, @kbd{C-a}, and @address@hidden
You can redefine some of them with meanings more like the MS-Windows
-meanings by enabling CUA Mode (@pxref{CUA Bindings}).
+meanings by enabling CUA Mode (@pxref{CUA Bindings}). Another
+optional feature which will make Emacs behave like other Windows
+applications is Delete Selection mode (@pxref{Using Region}).
@iftex
@inforef{Windows Keyboard, , emacs}, for information about additional
@@ -690,16 +737,14 @@ is address@hidden, the roles of these two buttons are
reversed.
@cindex subprocesses on MS-Windows
@cindex DOS applications, running from Emacs
- Emacs compiled as a native Windows application (as opposed to the DOS
-version) includes full support for asynchronous subprocesses.
-In the Windows version, synchronous and asynchronous subprocesses work
-fine on both
-Windows 9X/ME and Windows NT/2K/XP/Vista/7/8/10 as long as you run
-only 32-bit or 64-bit Windows
-applications. However, when you run a DOS application in a subprocess,
-you may encounter problems or be unable to run the application at all;
-and if you run two DOS applications at the same time in two
-subprocesses, you may have to reboot your system.
+ Emacs compiled as a native Windows application (as opposed to the
+DOS version) includes full support for asynchronous subprocesses. In
+the Windows version, synchronous and asynchronous subprocesses work
+fine on all versions of MS-Windows, as long as you run only 32-bit or
+64-bit Windows applications. However, when you run a DOS application
+in a subprocess, you may encounter problems or be unable to run the
+application at all; and if you run two DOS applications at the same
+time in two subprocesses, you may have to reboot your system.
Since the standard command interpreter (and most command line utilities)
on Windows 9X are DOS applications, these problems are significant when
@@ -724,13 +769,13 @@ first one finishes, even if either or both of them are
asynchronous.
@cindex kill DOS application
If you can go to the first subprocess, and tell it to exit, the second
-subprocess should continue normally. However, if the second subprocess
-is synchronous, Emacs itself will be hung until the first subprocess
-finishes. If it will not finish without user input, then you have no
-choice but to reboot if you are running on Windows address@hidden If you are
-running on Windows NT/2K/XP, you can use a process viewer application to kill
-the appropriate instance of NTVDM instead (this will terminate both DOS
-subprocesses).
+subprocess should continue normally. However, if the second
+subprocess is synchronous, Emacs itself will be hung until the first
+subprocess finishes. If it will not finish without user input, then
+you have no choice but to reboot if you are running on Windows address@hidden
+If you are running on Windows NT and later, you can use a process
+viewer application to kill the appropriate instance of NTVDM instead
+(this will terminate both DOS subprocesses).
If you have to reboot Windows 9X in this situation, do not use the
@code{Shutdown} command on the @code{Start} menu; that usually hangs the
@@ -1033,7 +1078,8 @@ the system default antialiasing.
@node Windows Misc
@section Miscellaneous Windows-specific features
- This section describes miscellaneous Windows-specific features.
+ This section describes Windows-specific features that don't fit
+anywhere else.
@vindex w32-use-visible-system-caret
@cindex screen reader software, MS-Windows
diff --git a/doc/emacs/programs.texi b/doc/emacs/programs.texi
index d7041a0..d0aa6a0 100644
--- a/doc/emacs/programs.texi
+++ b/doc/emacs/programs.texi
@@ -73,23 +73,27 @@ mode for the C programming language is @code{c-mode}.
@cindex Python mode
@cindex Ruby mode
@cindex Simula mode
address@hidden Verilog mode
@cindex VHDL mode
@cindex M4 mode
@cindex Shell-script mode
address@hidden Scheme mode
@cindex OPascal mode
@cindex PostScript mode
@cindex Conf mode
@cindex DNS mode
@cindex Javascript mode
address@hidden Awk mode
Emacs has programming language modes for Lisp, Scheme, the
Scheme-based DSSSL expression language, Ada, ASM, AWK, C, C++,
-Fortran, Icon, IDL (CORBA), IDLWAVE, Java, Javascript, Metafont
-(@TeX{}'s companion for font creation), Modula2, Object Pascal, Objective-C,
-Octave, Pascal, Perl, Pike, PostScript, Prolog, Python, Ruby, Simula, Tcl,
-and address@hidden An alternative mode for Perl is called CPerl mode. Modes
are
-also available for the scripting languages of the common GNU and Unix
-shells, and MS-DOS/MS-Windows @samp{BAT} files, and for makefiles,
-DNS master files, and various sorts of configuration files.
+Fortran, Icon, IDL (CORBA), IDLWAVE, Java, Javascript, M4, Makefiles,
+Metafont (@TeX{}'s companion for font creation), Modula2, Object
+Pascal, Objective-C, Octave, Pascal, Perl, Pike, PostScript, Prolog,
+Python, Ruby, Simula, SQL, Tcl, Verilog, and address@hidden An alternative
+mode for Perl is called CPerl mode. Modes are also available for the
+scripting languages of the common GNU and Unix shells, and
+MS-DOS/MS-Windows @samp{BAT} files, and for makefiles, DNS master
+files, and various sorts of configuration files.
Ideally, Emacs should have a major mode for each programming
language that you might want to edit. If it doesn't have a mode for
@@ -100,12 +104,13 @@ distributed with Emacs (@pxref{Packages}); or you can
contribute one.
@findex backward-delete-char-untabify
In most programming languages, indentation should vary from line to
line to illustrate the structure of the program. Therefore, in most
-programming language modes, typing @key{TAB} updates the indentation
-of the current line (@pxref{Program Indent}). Furthermore, @key{DEL}
-is usually bound to @code{backward-delete-char-untabify}, which
-deletes backward treating each tab as if it were the equivalent number
-of spaces, so that you can delete one column of indentation without
-worrying whether the whitespace consists of spaces or tabs.
+programming language modes, typing @address@hidden updates the
+indentation of the current line (@pxref{Program Indent}).
+Furthermore, @address@hidden is usually bound to
address@hidden, which deletes backward treating
+each tab as if it were the equivalent number of spaces, so that you
+can delete one column of indentation without worrying whether the
+whitespace consists of spaces or tabs.
@cindex mode hook, and major modes
@vindex c-mode-hook
@@ -122,13 +127,14 @@ For instance, entering C mode runs the hooks
@code{prog-mode-hook} and
@ifnottex
Separate manuals are available for the modes for Ada (@pxref{Top,,
Ada Mode, ada-mode, Ada Mode}), C/C++/Objective C/Java/Corba
-IDL/Pike/AWK (@pxref{Top, , CC Mode, ccmode, CC Mode}), and IDLWAVE
-(@pxref{Top,, IDLWAVE, idlwave, IDLWAVE User Manual}).
+IDL/Pike/AWK (@pxref{Top, , CC Mode, ccmode, CC Mode}), Octave, VHDL,
+and IDLWAVE (@pxref{Top,, IDLWAVE, idlwave, IDLWAVE User Manual}).
@end ifnottex
@iftex
The Emacs distribution contains Info manuals for the major modes for
-Ada, C/C++/Objective C/Java/Corba IDL/Pike/AWK, and address@hidden For
-Fortran mode, @pxref{Fortran,,, emacs-xtra, Specialized Emacs Features}.
+Ada, C/C++/Objective C/Java/Corba IDL/Pike/AWK, Octave, VHDL, and
address@hidden For Fortran mode, @pxref{Fortran,,, emacs-xtra, Specialized
+Emacs Features}.
@end iftex
@node Defuns
@@ -328,6 +334,7 @@ language modes.
@cindex pretty-printer
Emacs also provides a Lisp pretty-printer in the @code{pp} package,
which reformats Lisp objects with nice-looking indentation.
address@hidden Functions, pp,, elisp, The Emacs Lisp Reference Manual}.
@node Basic Indent
@subsection Basic Program Indentation Commands
@@ -342,16 +349,18 @@ Insert a newline, then adjust indentation of following
line
@kindex TAB @r{(programming modes)}
@findex indent-line-function
- The basic indentation command is @key{TAB}
+ The basic indentation command is @address@hidden
(@code{indent-for-tab-command}), which was documented in
address@hidden In programming language modes, @key{TAB} indents
-the current line, based on the indentation and syntactic content of
-the preceding lines; if the region is active, @key{TAB} indents each
-line within the region, not just the current line.
address@hidden In programming language modes, @address@hidden
+indents the current line, based on the indentation and syntactic
+content of the preceding lines; if the region is active,
address@hidden@key{TAB}} indents each line within the region, not just the
+current line.
- The command @key{RET} (@code{newline}), which was documented in
address@hidden Text}, does the same as @kbd{C-j} followed by
address@hidden: it inserts a new line, then adjusts the line's indentation.
+ The command @address@hidden (@code{newline}), which was documented
+in @ref{Inserting Text}, does the same as @kbd{C-j} followed by
address@hidden@key{TAB}}: it inserts a new line, then adjusts the line's
+indentation.
When indenting a line that starts within a parenthetical grouping,
Emacs usually places the start of the line under the preceding line
@@ -360,7 +369,7 @@ manually give one of these lines a nonstandard indentation
(e.g., for
aesthetic purposes), the lines below will follow it.
The indentation commands for most programming language modes assume
-that a open-parenthesis, open-brace or other opening delimiter at the
+that an open-parenthesis, open-brace or other opening delimiter at the
left margin is the start of a function. If the code you are editing
violates this assumption---even if the delimiters occur in strings or
comments---you must set @code{open-paren-in-column-0-is-defun-start}
@@ -372,7 +381,7 @@ Paren}.
Sometimes, you may want to reindent several lines of code at a time.
One way to do this is to use the mark; when the mark is active and the
-region is non-empty, @key{TAB} indents every line in the region.
+region is non-empty, @address@hidden indents every line in the region.
Alternatively, the command @kbd{C-M-\} (@code{indent-region}) indents
every line in the region, whether or not the mark is active
(@pxref{Indentation Commands}).
@@ -400,19 +409,19 @@ grouping, without affecting its overall indentation
(i.e., the
indentation of the line where the grouping starts). The function that
@kbd{C-M-q} runs depends on the major mode; it is
@code{indent-pp-sexp} in Lisp mode, @code{c-indent-exp} in C mode,
-etc. To correct the overall indentation as well, type @key{TAB}
+etc. To correct the overall indentation as well, type @address@hidden
first.
@kindex C-u TAB
If you like the relative indentation within a grouping but not the
indentation of its first line, move point to that first line and type
@kbd{C-u @key{TAB}}. In Lisp, C, and some other major modes,
address@hidden with a numeric argument reindents the current line as usual,
-then reindents by the same amount all the lines in the parenthetical
-grouping starting on the current line. It is clever, though, and does
-not alter lines that start inside strings. Neither does it alter C
-preprocessor lines when in C mode, but it does reindent any
-continuation lines that may be attached to them.
address@hidden@key{TAB}} with a numeric argument reindents the current line as
+usual, then reindents by the same amount all the lines in the
+parenthetical grouping starting on the current line. It is clever,
+though, and does not alter lines that start inside strings. Neither
+does it alter C preprocessor lines when in C mode, but it does
+reindent any continuation lines that may be attached to them.
@findex indent-code-rigidly
The command @kbd{M-x indent-code-rigidly} rigidly shifts all the
@@ -454,7 +463,7 @@ expression.
You can override the standard pattern in various ways for individual
functions, according to the @code{lisp-indent-function} property of
the function name. This is normally done for macro definitions, using
-the @code{declare} construct. @xref{Defining Macros,,, elisp, the
+the @code{declare} construct. @xref{Defining Macros,,, elisp, The
Emacs Lisp Reference Manual}.
@node C Indent
@@ -462,7 +471,7 @@ Emacs Lisp Reference Manual}.
Here are special features for indentation in C mode and related modes:
address@hidden @code
address@hidden @kbd
@item C-c C-q
@kindex C-c C-q @r{(C mode)}
@findex c-indent-defun
@@ -884,9 +893,9 @@ also do spell checking on comments with Flyspell Prog mode
comments. For example, in Lisp code, comments starting with two
semicolons are indented as if they were lines of code, while those
starting with three semicolons are supposed to be aligned to the left
-margin and are often used for sectioning purposes. Emacs understand
-these conventions; for instance, typing @key{TAB} on a comment line
-will indent the comment to the appropriate position.
+margin and are often used for sectioning purposes. Emacs understands
+these conventions; for instance, typing @address@hidden on a comment
+line will indent the comment to the appropriate position.
@example
;; This function is just an example.
@@ -915,14 +924,16 @@ will indent the comment to the appropriate position.
Insert or realign comment on current line; if the region is active,
comment or uncomment the region instead (@code{comment-dwim}).
@item @kbd{C-x C-;}
-Comment or uncomment the current line (@code{comment-line}).
+Comment or uncomment the current line (@code{comment-line}). If the
+region is active, comment or uncomment the lines in the region
+instead.
@item @kbd{C-u M-;}
Kill comment on current line (@code{comment-kill}).
@item @kbd{C-x ;}
Set comment column (@code{comment-set-column}).
@item @kbd{C-M-j}
@itemx @kbd{M-j}
-Like @key{RET} followed by inserting and aligning a comment
+Like @address@hidden followed by inserting and aligning a comment
(@code{comment-indent-new-line}). @xref{Multi-Line Comments}.
@item @kbd{M-x comment-region}
@itemx @kbd{C-c C-c} (in C-like modes)
@@ -952,8 +963,8 @@ negative argument @var{-n} removes @var{n} delimiters.
current line, @kbd{M-;} adds a new comment to the current line. If
the line is blank (i.e., empty or containing only whitespace
characters), the comment is indented to the same position where
address@hidden would indent to (@pxref{Basic Indent}). If the line is
-non-blank, the comment is placed after the last non-whitespace
address@hidden@key{TAB}} would indent to (@pxref{Basic Indent}). If the line
+is non-blank, the comment is placed after the last non-whitespace
character on the line; normally, Emacs tries putting it at the column
specified by the variable @code{comment-column} (@pxref{Options for
Comments}), but if the line already extends past that column, it puts
@@ -1002,8 +1013,7 @@ region, even if the mark is inactive. In C mode and
related modes,
this command is bound to @kbd{C-c C-c}. The command @kbd{M-x
uncomment-region} uncomments each line in the region; a numeric prefix
argument specifies the number of comment delimiters to remove
-(negative arguments specify the number of comment to delimiters to
-add).
+(negative arguments specify the number of comment delimiters to add).
For C-like modes, you can configure the exact effect of @kbd{M-;} by
setting the variables @code{c-indent-comment-alist} and
@@ -1108,8 +1118,8 @@ comment or for aligning an existing comment. It is set
differently by
various major modes. The function is called with no arguments, but with
point at the beginning of the comment, or at the end of a line if a new
comment is to be inserted. It should return the column in which the
-comment ought to start. For example, the default hook function bases
-its decision on how many comment characters begin an existing comment.
+comment ought to start. For example, the default function bases its
+decision on how many comment characters begin an existing comment.
Emacs also tries to align comments on adjacent lines. To override
this, the function may return a cons of two (possibly equal) integers
@@ -1140,10 +1150,10 @@ buffer at point. For example, in C mode this looks for
the symbol in
the C Library Manual. The command only works if the appropriate
manual's Info files are installed.
- The major mode determines where to look for documentation for the
-symbol---which Info files to look in, and which indices to search.
-You can also use @kbd{M-x info-lookup-file} to look for documentation
-for a file name.
+ Emacs determines where to look for documentation for the
+symbol---which Info files to look in, and which indices to
+search---based on the major mode. You can also use @kbd{M-x
+info-lookup-file} to look for documentation for a file name.
If you use @kbd{C-h S} in a major mode that does not support it,
it asks you to specify the symbol help mode. You should enter
@@ -1213,6 +1223,10 @@ several manual pages by the same name exist in different
sections, it
pops up a window with possible candidates asking you to choose one of
them.
+ Note that @kbd{M-x woman} doesn't yet support the latest features of
+modern man pages, so we recommend using @kbd{M-x man} if that is
+available on your system.
+
For more information about setting up and using @kbd{M-x woman}, see
@ifinfo
@ref{Top, WoMan, Browse UN*X Manual Pages WithOut Man, woman, The
@@ -1293,7 +1307,7 @@ Hide all top-level blocks (@code{hs-hide-all}).
@item C-c @@ C-M-s
@itemx C-c @@ C-a
Show all blocks in the buffer (@code{hs-show-all}).
address@hidden C-c @@ C-l
address@hidden C-u @var{n} C-c @@ C-l
Hide all blocks @var{n} levels below this block
(@code{hs-hide-level}).
@end table
@@ -1415,8 +1429,8 @@ the menu item named @samp{Source Code Parsers (Semantic)}
in the
When Semantic mode is enabled, Emacs automatically attempts to
parse each file you visit. Currently, Semantic understands C, C++,
-Scheme, Javascript, Java, HTML, and Make. Within each parsed buffer,
-the following commands are available:
+HTML, Java, Javascript, Make, Python, Scheme, SRecode, and Texinfo.
+Within each parsed buffer, the following commands are available:
@table @kbd
@item C-c , j
@@ -1433,10 +1447,10 @@ parsed, and move point there
(@code{semantic-complete-jump}).
@kindex C-c , SPC
Display a list of possible completions for the symbol at point
(@code{semantic-complete-analyze-inline}). This also activates a set
-of special key bindings for choosing a completion: @key{RET} accepts
-the current completion, @kbd{M-n} and @kbd{M-p} cycle through possible
-completions, @key{TAB} completes as far as possible and then cycles,
-and @kbd{C-g} or any other key aborts completion.
+of special key bindings for choosing a completion: @address@hidden
+accepts the current completion, @kbd{M-n} and @kbd{M-p} cycle through
+possible completions, @address@hidden completes as far as possible and
+then cycles, and @kbd{C-g} or any other key aborts completion.
@item C-c , l
@kindex C-c , l
@@ -1460,7 +1474,7 @@ is idle.
programs are useful for that nonetheless.
The Emacs commands that operate on words, sentences and paragraphs
-are useful for editing code. Most symbols names contain words
+are useful for editing code. Most symbol names contain words
(@pxref{Words}), while sentences can be found in strings and comments
(@pxref{Sentences}). As for paragraphs, they are defined in most
programming language modes to begin and end at blank lines
@@ -1635,8 +1649,9 @@ electric characters are @address@hidden, @address@hidden,
@kbd{:}, @kbd{#},
You might find electric indentation inconvenient if you are editing
chaotically indented code. If you are new to CC Mode, you might find
it disconcerting. You can toggle electric action with the command
address@hidden C-l}; when it is enabled, @samp{/l} appears in the mode line
-after the mode name:
address@hidden C-l}; when it is enabled, @samp{/@var{c}l} appears in the
+mode line after the mode name (where @var{c}, if present, is @samp{*}
+or @samp{/}):
@table @kbd
@item C-c C-l
@@ -1649,8 +1664,8 @@ negative one it disables it.
Electric characters insert newlines only when, in addition to the
electric state, the @dfn{auto-newline} feature is enabled (indicated
-by @samp{/la} in the mode line after the mode name). You can turn
-this feature on or off with the command @kbd{C-c C-a}:
+by @samp{/@var{c}la} in the mode line after the mode name). You can
+turn this feature on or off with the command @kbd{C-c C-a}:
@table @kbd
@item C-c C-a
@@ -1694,10 +1709,11 @@ Delete the entire block of whitespace after point
(@code{c-hungry-delete-forward
@end table
As an alternative to the above commands, you can enable @dfn{hungry
-delete mode}. When this feature is enabled (indicated by @samp{/h} in
-the mode line after the mode name), a single @key{DEL} deletes all
-preceding whitespace, not just one space, and a single @kbd{C-d}
-(but @emph{not} plain @key{Delete}) deletes all following whitespace.
+delete mode}. When this feature is enabled (indicated by @samp{h}
+after a @samp{/} in the mode line after the mode name), a single
address@hidden@key{DEL}} deletes all preceding whitespace, not just one space,
+and a single @kbd{C-d} (but @emph{not} plain @address@hidden)
+deletes all following whitespace.
@table @kbd
@item M-x c-toggle-hungry-state
@@ -1720,14 +1736,14 @@ hungry-delete feature is enabled.
@findex c-context-line-break
This command inserts a line break and indents the new line in a manner
appropriate to the context. In normal code, it does the work of
address@hidden (@code{newline}), in a C preprocessor line it additionally
address@hidden@key{RET}} (@code{newline}), in a C preprocessor line it
additionally
inserts a @samp{\} at the line break, and within comments it's like
@kbd{M-j} (@code{c-indent-new-comment-line}).
@code{c-context-line-break} isn't bound to a key by default, but it
needs a binding to be useful. The following code will bind it to
address@hidden We use @code{c-initialization-hook} here to make sure
-the keymap is loaded before we try to change it.
address@hidden@key{RET}}. We use @code{c-initialization-hook} here to make
+sure the keymap is loaded before we try to change it.
@example
(defun my-bind-clb ()
@@ -1852,11 +1868,14 @@ defines these commands:
@item @key{TAB}
@code{tab-to-tab-stop}.
@c FIXME: Maybe this should be consistent with other programming modes.
+
@item C-j
Insert a newline and then indent using @code{tab-to-tab-stop}.
+
@item :
Insert a colon and then remove the indentation from before the label
preceding colon. Then do @code{tab-to-tab-stop}.
+
@item ;
Insert or align a comment.
@end table
diff --git a/doc/emacs/regs.texi b/doc/emacs/regs.texi
index dd9e4d7..8ff36ca 100644
--- a/doc/emacs/regs.texi
+++ b/doc/emacs/regs.texi
@@ -18,7 +18,7 @@ or a number (such as @samp{1}); case matters, so register
@samp{a} is
not the same as register @samp{A}. You can also set a register in
non-alphanumeric characters, for instance @samp{*} or @samp{C-d}.
Note, it's not possible to set a register in @samp{C-g} or @samp{ESC},
-because these keys are reserved to terminate interactive commands.
+because these keys are reserved for quitting (@pxref{Quitting}).
@findex view-register
A register can store a position, a piece of text, a rectangle, a
diff --git a/doc/emacs/search.texi b/doc/emacs/search.texi
index 51a0685..319f64f 100644
--- a/doc/emacs/search.texi
+++ b/doc/emacs/search.texi
@@ -1,3 +1,4 @@
address@hidden -*- coding: utf-8 -*-
@c This is part of the Emacs manual.
@c Copyright (C) 1985-1987, 1993-1995, 1997, 2000-2018 Free Software
@c Foundation, Inc.
@@ -902,7 +903,8 @@ starting and ending characters with a @samp{-} between
them. Thus,
@samp{[a-z]} matches any lower-case @acronym{ASCII} letter. Ranges may be
intermixed freely with individual characters, as in @samp{[a-z$%.]},
which matches any lower-case @acronym{ASCII} letter or @samp{$}, @samp{%} or
-period.
+period. As another example, @samp{[α-ωί]} matches all lower-case
+Greek letters.
You can also include certain special @dfn{character classes} in a
character set. A @samp{[:} and balancing @samp{:]} enclose a
diff --git a/doc/emacs/text.texi b/doc/emacs/text.texi
index 58c5920..d32bb3c 100644
--- a/doc/emacs/text.texi
+++ b/doc/emacs/text.texi
@@ -1694,7 +1694,7 @@ when you type the corresponding one.
@node TeX Print
@subsection @TeX{} Printing Commands
- You can invoke @TeX{} as an subprocess of Emacs, supplying either
+ You can invoke @TeX{} as a subprocess of Emacs, supplying either
the entire contents of the buffer or just part of it (e.g., one
chapter of a larger document).
@@ -1746,7 +1746,7 @@ C-p} (@code{tex-print}) to print a hardcopy of the output
file.
output of @TeX{} also goes in this directory. To run @TeX{} in a
different directory, change the variable @code{tex-directory} to
the desired directory. If your environment variable @env{TEXINPUTS}
-contains relative names, or if your files contains
+contains relative names, or if your files contain
@samp{\input} commands with relative file names, then
@code{tex-directory} @emph{must} be @code{"."} or you will get the
wrong results. Otherwise, it is safe to specify some other directory,
@@ -2017,7 +2017,7 @@ used as a cheap preview (@code{sgml-tags-invisible}).
@findex nxml-mode
@cindex XML schema
The major mode for editing XML documents is called nXML mode. This
-is a powerful major mode that can recognize many existing XML schema
+is a powerful major mode that can recognize many existing XML schemas
and use them to provide completion of XML elements via
@address@hidden, as well as on-the-fly XML
validation with error highlighting. To enable nXML mode in an
@@ -2290,7 +2290,7 @@ Prompt for a color, and apply it as a background color.
@end table
@noindent
-These command are also available via the Text Properties menu.
+These commands are also available via the Text Properties menu.
A self-inserting character normally inherits the face properties
(and most other text properties) from the preceding character in the
diff --git a/doc/emacs/windows.texi b/doc/emacs/windows.texi
index 945b7cb..9f3b1b6 100644
--- a/doc/emacs/windows.texi
+++ b/doc/emacs/windows.texi
@@ -465,7 +465,7 @@ bottom of the selected frame, regardless of the number of
windows
already shown on that frame.
If you prefer Emacs to display a temporary buffer in a different
-fashion, we recommend to customize the variable
+fashion, we recommend customizing the variable
@code{display-buffer-alist} (@pxref{Choosing Window,,Choosing a Window
for Display, elisp, The Emacs Lisp Reference Manual}). For example,
to display @file{*Completions*} by splitting a window as described in
diff --git a/doc/lispref/display.texi b/doc/lispref/display.texi
index 7bf03b8..64b8c0a 100644
--- a/doc/lispref/display.texi
+++ b/doc/lispref/display.texi
@@ -6966,14 +6966,16 @@ means to use the default for that slot, as stated below.
@table @asis
@item 0
The glyph for the end of a truncated screen line (the default for this
-is @samp{$}). @xref{Glyphs}. On graphical terminals, Emacs uses
-arrows in the fringes to indicate truncation, so the display table has
-no effect.
+is @samp{$}). @xref{Glyphs}. On graphical terminals, Emacs by
+default uses arrows in the fringes to indicate truncation, so the
+display table has no effect, unless you disable the fringes
+(@pxref{Fringes,, Window Fringes, emacs, the Gnu Emacs Manual}).
@item 1
The glyph for the end of a continued line (the default is @samp{\}).
-On graphical terminals, Emacs uses curved arrows in the fringes to
-indicate continuation, so the display table has no effect.
+On graphical terminals, Emacs by default uses curved arrows in the
+fringes to indicate continuation, so the display table has no effect,
+unless you disable the fringes.
@item 2
The glyph for indicating a character displayed as an octal character
@@ -6988,9 +6990,12 @@ default is @samp{...}). @xref{Selective Display}.
@item 5
The glyph used to draw the border between side-by-side windows (the
-default is @samp{|}). @xref{Splitting Windows}. This takes effect only
-when there are no scroll bars; if scroll bars are supported and in use,
-a scroll bar separates the two windows.
+default is @samp{|}). @xref{Splitting Windows}. This currently has
+effect only on text terminals; on graphical terminals, if vertical
+scroll bars are supported and in use, a scroll bar separates the two
+windows, and if there are no vertical scroll bars and no dividers
+(@pxref{Window Dividers}), Emacs uses a thin line to indicate the
+border.
@end table
For example, here is how to construct a display table that mimics
diff --git a/doc/misc/tramp.texi b/doc/misc/tramp.texi
index e21df5a..0dd82c5 100644
--- a/doc/misc/tramp.texi
+++ b/doc/misc/tramp.texi
@@ -1,18 +1,16 @@
\input texinfo @c -*- mode: texinfo; coding: utf-8 -*-
@setfilename ../../info/tramp.info
@c %**start of header
address@hidden TRAMP User Manual
@include docstyle.texi
address@hidden %**end of header
-
address@hidden This is *so* much nicer :)
address@hidden end
-
@c In the Tramp repository, the version number is auto-frobbed from
@c configure.ac, so you should edit that file and run
@c "autoconf && ./configure" to change the version number.
-
@include trampver.texi
address@hidden @value{tramp} @value{trampver} User Manual
address@hidden %**end of header
+
address@hidden This is *so* much nicer :)
address@hidden end
@c Macro for formatting a file name according to the respective
@c syntax. Macro arguments should not have any leading or trailing
@@ -48,7 +46,7 @@ copy and modify this GNU manual.''
@end direntry
@titlepage
address@hidden @value{tramp} version @value{trampver} User Manual
address@hidden @value{tramp} @value{trampver} User Manual
@author by Daniel Pittman
@author based on documentation by Kai Großjohann
@end titlepage
@@ -57,9 +55,9 @@ copy and modify this GNU manual.''
@node Top, Overview, (dir), (dir)
address@hidden @value{tramp} version @value{trampver} User Manual
address@hidden @value{tramp} @value{trampver} User Manual
-This file documents @value{tramp} version @value{trampver}, a remote file
+This file documents @value{tramp} @value{trampver}, a remote file
editing package for Emacs.
@value{tramp} stands for ``Transparent Remote (file) Access, Multiple
@@ -320,7 +318,7 @@ behind the scenes when you open a file with @value{tramp}.
@chapter Obtaining @value{tramp}
@cindex obtaining @value{tramp}
address@hidden is included as part of Emacs (since Emacs version 22.1).
address@hidden is included as part of Emacs (since Emacs 22.1).
@value{tramp} is also freely packaged for download on the Internet at
@uref{https://ftp.gnu.org/gnu/tramp/}.
@@ -1462,8 +1460,8 @@ server.
Both ssh and PuTTY support such proxy settings, using an HTTP tunnel
via the @command{CONNECT} command (conforming to RFC 2616, 2817
-specifications). Proxy servers using HTTP version 1.1 or later
-protocol support this command.
+specifications). Proxy servers using HTTP 1.1 or later protocol
+support this command.
@subsection Tunneling with ssh
@@ -1501,6 +1499,7 @@ proxy server @samp{proxy.your.domain} on port 3128.
@cindex using non-standard methods
@cindex create your own methods
address@hidden tramp-methods
The @code{tramp-methods} variable currently has an exhaustive list of
predefined methods. Any part of this list can be modified with more
suitable settings. Refer to the Lisp documentation of that variable,
@@ -1511,8 +1510,8 @@ accessible with @kbd{C-h v tramp-methods @key{RET}}.
@section Selecting config files for user/host name completion
@cindex customizing completion
@cindex selecting config files
address@hidden tramp-completion-function-alist
address@hidden tramp-completion-function-alist
@code{tramp-completion-function-alist} uses predefined files for user
and host name completion (@pxref{File name completion}). For each
method, it keeps a set of configuration files and a function that can
@@ -1650,8 +1649,8 @@ the need.
@anchor{Using an authentication file}
@subsection Using an authentication file
address@hidden auth-sources
address@hidden auth-sources
The package @file{auth-source.el}, originally developed for No Gnus,
reads passwords from different sources, @xref{Help for users, ,
auth-source, auth}. The default authentication file is
@@ -1697,7 +1696,6 @@ Set @code{password-cache} to @code{nil} to disable
password caching.
@node Connection caching
@section Reusing connection related information
@cindex caching
address@hidden tramp-persistency-file-name
@vindex tramp-persistency-file-name
For faster initial connection times, @value{tramp} stores previous
@@ -1721,11 +1719,11 @@ connection related information for that host and
creates a new entry.
@node Predefined connection information
@section Setting own connection related information
address@hidden tramp-connection-properties
For more precise customization, parameters specified by
@code{tramp-methods} can be overwritten manually.
address@hidden tramp-connection-properties
Set @option{tramp-connection-properties} to manually override
@code{tramp-methods}. Properties in this list are in the form
@code{(@var{regexp} @var{property} @var{value})}. @var{regexp}
@@ -1900,7 +1898,6 @@ prompts, for which @value{tramp} uses
@option{tramp-wrong-passwd-regexp}.
@item @command{tset} and other questions
@cindex unix command @command{tset}
@cindex @command{tset} unix command
address@hidden tramp-terminal-type
@vindex tramp-terminal-type
To suppress inappropriate prompts for terminal type, @value{tramp}
@@ -1981,9 +1978,9 @@ shell-specific config files. For example, bash can use
@value{tramp} redefines the remote shell prompt internally for robust
parsing. This redefinition affects the looks of a prompt in an
-interactive remote shell through commands, such as @kbd{M-x
-shell}. Such prompts, however, can be reset to something more readable
-and recognizable using these @value{tramp} variables.
+interactive remote shell through commands, such as @kbd{M-x shell
address@hidden Such prompts, however, can be reset to something more
+readable and recognizable using these @value{tramp} variables.
@value{tramp} sets the @env{INSIDE_EMACS} variable in the startup
script file @file{~/.emacs_SHELLNAME}.
@@ -2096,8 +2093,8 @@ directory for temporary files:
@item
Open a remote connection with the command @kbd{C-x C-f
address@hidden,192.168.0.26#2222,}}, where @command{sshd} is listening
-on port @samp{2222}.
address@hidden,192.168.0.26#2222,} @key{RET}}, where @command{sshd} is
+listening on port @samp{2222}.
To add a corresponding entry to the @file{~/.ssh/config} file
(recommended), use this:
@@ -2124,7 +2121,7 @@ the previous example, fix the connection properties as
follows:
@noindent
Open a remote connection with a more concise command @kbd{C-x C-f
address@hidden,android,}}.
address@hidden,android,} @key{RET}}.
@end itemize
@@ -2132,8 +2129,8 @@ Open a remote connection with a more concise command
@kbd{C-x C-f
@section Auto-save and Backup configuration
@cindex auto-save
@cindex backup
address@hidden backup-directory-alist
address@hidden backup-directory-alist
To avoid @value{tramp} from saving backup files owned by @samp{root}
to locations accessible to others, default backup settings in
@option{backup-directory-alist} have to be altered.
@@ -2176,7 +2173,6 @@ Disabling backups can be targeted to just the @option{su}
and
@end group
@end lisp
address@hidden backup-directory-alist
@vindex tramp-backup-directory-alist
Another option is to create better backup file naming with user and
host names prefixed to the file name. For example, transforming
@@ -2237,8 +2233,9 @@ This section is incomplete. Please share your solutions.
@cindex @option{sshx} method with cygwin
Cygwin's @command{ssh} works only with a Cygwin version of Emacs. To
-check for compatibility: type @kbd{M-x eshell}, and start @kbd{ssh
-test.host}. Incompatibilities trigger this message:
+check for compatibility: type @kbd{M-x eshell @key{RET}}, and start
address@hidden test.host @key{RET}}. Incompatibilities trigger this
+message:
@example
Pseudo-terminal will not be allocated because stdin is not a terminal.
@@ -2555,8 +2552,8 @@ remote host name and file name. For example, hopping
over a single
proxy @samp{bird@@bastion} to a remote file on @samp{you@@remotehost}:
@example
address@hidden @kbd{C-x C-f @address@hidden@@bastion|ssh,you,remotehost,/path}}
address@hidden C-f @address@hidden@@bastion|address@hidden@@address@hidden/path}
address@hidden @kbd{C-x C-f @address@hidden@@bastion|ssh,you,remotehost,/path}
@key{RET}}
address@hidden C-f @address@hidden@@bastion|address@hidden@@address@hidden/path
@key{RET}}
@end example
Proxies can take patterns @code{%h} or @code{%u}.
@@ -2671,9 +2668,9 @@ this. You could overwrite this behavior by evaluating
@end lisp
In addition to @option{tramp-remote-process-environment}, you can set
-environment variables for invidivual remote process calls by
-let-binding @code{process-environment}. @value{tramp} will apply any
-entries which are not present in the global default value of
+environment variables for individual remote process calls by
+let-binding @code{process-environment}. @value{tramp} applies any
+entries not present in the global default value of
@code{process-environment} (overriding
@option{tramp-remote-process-environment} settings, if they conflict).
For example:
@@ -2778,14 +2775,15 @@ host. Example:
@example
@group
@kbd{C-x C-f @trampfn{sudo,,} @key{RET}}
address@hidden tail -f /var/log/syslog.log & @key{RET}}
address@hidden& tail -f /var/log/syslog.log @key{RET}}
@end group
@end example
@command{tail} command outputs continuously to the local buffer,
@file{*Async Shell Command*}
address@hidden auto-revert-tail-mode} runs similarly showing continuous output.
address@hidden auto-revert-tail-mode @key{RET}} runs similarly showing
+continuous output.
@subsection Running @code{eshell} on a remote host
@@ -2794,8 +2792,8 @@ host. Example:
@value{tramp} is integrated into @file{eshell.el}, which enables
interactive eshell sessions on remote hosts at the command prompt.
You must add the module @code{em-tramp} to @code{eshell-modules-list}.
-Here's a sample interaction after opening @kbd{M-x eshell} on a remote
-host:
+Here's a sample interaction after opening @kbd{M-x eshell @key{RET}}
+on a remote host:
@example
@group
@@ -2876,7 +2874,7 @@ calls include:
@end group
@end example
-Just the local part of a remote file name, such as @kbd{perl -d
+Just the local part of a remote file name, such as @command{perl -d
/home/user/myprog.pl}, is not possible.
Arguments of the program to be debugged must be literal, can take
@@ -2896,8 +2894,8 @@ command. Powershell V2.0 on the remote host is required
to run
processes triggered from @value{tramp}.
@option{explicit-shell-file-name} and @option{explicit-*-args} have to
-be set properly so @kbd{M-x shell} can open a proper remote shell on a
-MS Windows host. To open @command{cmd}, set it as follows:
+be set properly so @kbd{M-x shell @key{RET}} can open a proper remote
+shell on a MS Windows host. To open @command{cmd}, set it as follows:
@lisp
@group
@@ -3189,9 +3187,9 @@ Before sending a bug report, run the test suite first
@ref{Testing}.
Check if the bug or problem is already addressed in @xref{Frequently
Asked Questions}.
-Run @kbd{M-x tramp-bug} to generate a buffer with details of the
-system along with the details of the @value{tramp}
-installation. Please include these details with the bug report.
+Run @kbd{M-x tramp-bug @key{RET}} to generate a buffer with details of
+the system along with the details of the @value{tramp} installation.
+Please include these details with the bug report.
The bug report must describe in as excruciating detail as possible the
steps required to reproduce the problem. These details must include
@@ -3317,7 +3315,7 @@ put the cursor at the top of the buffer, and then apply
the following
expression:
@example
address@hidden: (re-search-forward (concat tramp-shell-prompt-pattern "$"))}
address@hidden: (re-search-forward (concat tramp-shell-prompt-pattern "$"))
@key{RET}}
@end example
If the cursor has not moved to the prompt at the bottom of the buffer,
@@ -3521,9 +3519,10 @@ the following code in @file{~/.emacs} file.
How to get a Visual Warning when working with @samp{root} privileges?
Host indication in the mode line?
address@hidden @value{tramp} theme
@vindex tramp-theme-face-remapping-alist
Install @file{tramp-theme} from GNU ELPA via Emacs' Package Manager.
-Enable it via @kbd{M-x load-theme @key{RET} tramp}. Further
+Enable it via @kbd{M-x load-theme @key{RET} tramp @key{RET}}. Further
customization is explained in user option
@option{tramp-theme-face-remapping-alist}.
@@ -3598,6 +3597,24 @@ is @address@hidden,news@@news.my.domain,/opt/news/etc}},
then:
@enumerate
@item
+Use simplified syntax:
+
+If you always apply the default method (@pxref{Default Method}), you
+could use the simplified @value{tramp} syntax (@pxref{Change file name
+syntax}):
+
address@hidden
address@hidden
+(customize-set-variable 'tramp-default-method "ssh")
+(tramp-change-syntax 'simplified)
address@hidden group
address@hidden lisp
+
+The reduced typing: @kbd{C-x C-f
address@hidden@value{prefix}news@@address@hidden/opt/news/etc}
address@hidden
+
address@hidden
Use default values for method name and user name:
You can define default methods and user names for hosts,
@@ -3611,11 +3628,12 @@ You can define default methods and user names for hosts,
@end group
@end lisp
-The reduced typing: @kbd{C-x C-f @trampfn{-,news.my.domain,/opt/news/etc}}.
+The reduced typing: @kbd{C-x C-f
address@hidden,news.my.domain,/opt/news/etc} @key{RET}}.
@strong{Note} that there are some useful shortcuts already. Accessing
your local host as @samp{root} user, is possible just by @kbd{C-x C-f
address@hidden,,}}.
address@hidden,,} @key{RET}}.
@item
Use configuration options of the access method:
@@ -3632,7 +3650,7 @@ Host xy
@end group
@end example
-The reduced typing: @kbd{C-x C-f @trampfn{ssh,xy,/opt/news/etc}}.
+The reduced typing: @kbd{C-x C-f @trampfn{ssh,xy,/opt/news/etc} @key{RET}}.
Depending on the number of files in the directories, host names
completion can further reduce key strokes: @kbd{C-x C-f
@@ -3800,8 +3818,8 @@ Load @file{bbdb} in Emacs:
@end group
@end lisp
-Create a BBDB entry with @kbd{M-x bbdb-create-ftp-site}. Then specify
-a method and user name where needed. Examples:
+Create a BBDB entry with @kbd{M-x bbdb-create-ftp-site @key{RET}}.
+Then specify a method and user name where needed. Examples:
@example
@group
@@ -3937,8 +3955,8 @@ To disable both @value{tramp} (and Ange FTP), set
@code{tramp-mode} to
@end lisp
@item
-To unload @value{tramp}, type @kbd{M-x tramp-unload-tramp}. Unloading
address@hidden resets Ange FTP plugins also.
+To unload @value{tramp}, type @kbd{M-x tramp-unload-tramp @key{RET}}.
+Unloading @value{tramp} resets Ange FTP plugins also.
@end itemize
@end itemize
diff --git a/lisp/emacs-lisp/bytecomp.el b/lisp/emacs-lisp/bytecomp.el
index a64c88c..1bf6d04 100644
--- a/lisp/emacs-lisp/bytecomp.el
+++ b/lisp/emacs-lisp/bytecomp.el
@@ -295,6 +295,11 @@ The information is logged to `byte-compile-log-buffer'."
"If true, the byte-compiler reports warnings with `error'."
:group 'bytecomp
:type 'boolean)
+;; This needs to be autoloaded because it needs to be available to
+;; Emacs before the byte compiler is loaded, otherwise Emacs will not
+;; know that this variable is marked as safe until it is too late.
+;; (See https://lists.gnu.org/archive/html/emacs-devel/2018-01/msg00261.html )
+;;;###autoload(put 'byte-compile-error-on-warn 'safe-local-variable 'booleanp)
(defconst byte-compile-warning-types
'(redefine callargs free-vars unresolved
diff --git a/lisp/textmodes/flyspell.el b/lisp/textmodes/flyspell.el
index 1d7dc99..353d435 100644
--- a/lisp/textmodes/flyspell.el
+++ b/lisp/textmodes/flyspell.el
@@ -1917,7 +1917,10 @@ before point that's highlighted as misspelled."
;;*---------------------------------------------------------------------*/
(defun flyspell-auto-correct-word ()
"Correct the current word.
-This command proposes various successive corrections for the current word."
+This command proposes various successive corrections for the
+current word. If invoked repeatedly on the same position, it
+cycles through the possible corrections of the word at or near
+that position."
(interactive)
;; If we are not in the construct where flyspell should be active,
;; invoke the original binding of M-TAB, if that was recorded.
diff --git a/lisp/vc/vc-git.el b/lisp/vc/vc-git.el
index 47172dd..9274714 100644
--- a/lisp/vc/vc-git.el
+++ b/lisp/vc/vc-git.el
@@ -243,8 +243,11 @@ Should be consistent with the Git config value
i18n.logOutputEncoding."
(vc-git--run-command-string nil "version")))
(setq vc-git--program-version
(if (and version-string
- (string-match "git version \\([0-9.]+\\)$"
- version-string))
+ ;; Git for Windows appends ".windows.N" to the
+ ;; numerical version reported by Git.
+ (string-match
+ "git version \\([0-9.]+\\)\\(\.windows.[0-9]+\\)?$"
+ version-string))
(match-string 1 version-string)
"0")))))