mirror of
https://github.com/masscollaborationlabs/emacs.git
synced 2025-07-06 20:29:36 +00:00
Improve the MS-Windows appendix of the Emacs manual
* doc/emacs/msdos.texi (Windows Startup): Describe the pinned shortcuts for starting Emacs. (Text and Binary): Minor wording changes. (Windows Files): Mention 'read-file-name-completion-ignore-case'. (ls in Lisp): Update the list of supported 'ls' switches. Document 'ls-lisp-use-string-collate' and 'ls-lisp-UCA-like-collation'. (Windows HOME): Mention warnings displayed at startup when deprecated locations of HOME and/or deprecated names for init files are used. (Windows Keyboard): Mention delete-selection-mode.
This commit is contained in:
parent
6ddb4bd39a
commit
e9c7ddc64b
1 changed files with 79 additions and 34 deletions
|
@ -68,6 +68,20 @@ directory specified by the shortcut. To control where that is,
|
||||||
right-click on the shortcut, select ``Properties'', and in the
|
right-click on the shortcut, select ``Properties'', and in the
|
||||||
``Shortcut'' tab modify the ``Start in'' field to your liking.
|
``Shortcut'' tab modify the ``Start in'' field to your liking.
|
||||||
|
|
||||||
|
@item
|
||||||
|
@cindex 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
|
||||||
|
@dfn{pinning} 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
|
||||||
|
@file{runemacs.exe}, @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.
|
||||||
|
|
||||||
@item
|
@item
|
||||||
From the Command Prompt window, by typing @kbd{emacs @key{RET}} at the
|
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
|
prompt. The Command Prompt window where you did that will not be
|
||||||
|
@ -80,6 +94,12 @@ the prompt. The Command Prompt window where you did that will be
|
||||||
immediately available for invoking other commands. In this case,
|
immediately available for invoking other commands. In this case,
|
||||||
Emacs will start in the current directory of the Windows shell.
|
Emacs will start in the current directory of the Windows shell.
|
||||||
|
|
||||||
|
@item
|
||||||
|
From the Windows @code{Run} dialog (normally reached by clicking the
|
||||||
|
@code{Start} 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}.
|
||||||
|
|
||||||
@item
|
@item
|
||||||
@cindex invoking Emacs from Windows Explorer
|
@cindex invoking Emacs from Windows Explorer
|
||||||
@pindex emacsclient.exe
|
@pindex emacsclient.exe
|
||||||
|
@ -204,8 +224,8 @@ designates directory @file{\foo} on drive Z as an untranslated file
|
||||||
system.
|
system.
|
||||||
|
|
||||||
Most often you would use @code{add-untranslated-filesystem} in your
|
Most often you would use @code{add-untranslated-filesystem} in your
|
||||||
@file{.emacs} file, or in @file{site-start.el} so that all the users at
|
@file{.emacs} or @file{init.el} init file, or in @file{site-start.el}
|
||||||
your site get the benefit of it.
|
so that all the users at your site get the benefit of it.
|
||||||
|
|
||||||
@findex remove-untranslated-filesystem
|
@findex remove-untranslated-filesystem
|
||||||
To countermand the effect of @code{add-untranslated-filesystem}, use
|
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
|
Designating a file system as untranslated does not affect character
|
||||||
set conversion, only end-of-line conversion. Essentially, it directs
|
set conversion, only end-of-line conversion. Essentially, it directs
|
||||||
Emacs to create new files with the Unix-style convention of using
|
Emacs to default to creating new files with the Unix-style convention
|
||||||
newline at the end of a line. @xref{Coding Systems}.
|
of using newline at the end of a line. @xref{Coding Systems}.
|
||||||
|
|
||||||
@node Windows Files
|
@node Windows Files
|
||||||
@section File Names on MS-Windows
|
@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
|
@cindex file-name completion, on MS-Windows
|
||||||
On MS-DOS/MS-Windows, file names are case-insensitive, so Emacs by
|
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 non-@code{nil} on MS-DOS/MS-Windows. @xref{Completion Options}.
|
||||||
|
|
||||||
@vindex w32-get-true-file-attributes
|
@vindex w32-get-true-file-attributes
|
||||||
The variable @code{w32-get-true-file-attributes} controls whether
|
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},
|
does support: @option{-A}, @option{-a}, @option{-B}, @option{-C},
|
||||||
@option{-c}, @option{-G}, @option{-g}, @option{-h}, @option{-i}, @option{-n},
|
@option{-c}, @option{-G}, @option{-g}, @option{-h}, @option{-i}, @option{-n},
|
||||||
@option{-R}, @option{-r}, @option{-S}, @option{-s}, @option{-t}, @option{-U},
|
@option{-R}, @option{-r}, @option{-S}, @option{-s}, @option{-t}, @option{-U},
|
||||||
@option{-u}, and @option{-X}. The @option{-F} switch is partially
|
@option{-u}, @option{v}, and @option{-X}. The @option{-F} switch is
|
||||||
supported (it appends the character that classifies the file, but does
|
partially supported (it appends the character that classifies the
|
||||||
not prevent symlink following).
|
file, but does not prevent symlink following).
|
||||||
|
|
||||||
@vindex ls-lisp-use-insert-directory-program
|
@vindex ls-lisp-use-insert-directory-program
|
||||||
On MS-Windows and MS-DOS, @file{ls-lisp.el} is preloaded when Emacs
|
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
|
will revert to using an external program named by the variable
|
||||||
@code{insert-directory-program}.
|
@code{insert-directory-program}.
|
||||||
|
|
||||||
|
@cindex 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.
|
||||||
|
|
||||||
|
@vindex 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.
|
||||||
|
|
||||||
|
@cindex Unicode Collation Algorithm (UCA), and @file{ls-lisp.el}
|
||||||
|
@vindex 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
|
||||||
|
@code{ls-lisp-UCA-like-collation} should have a non-@code{nil} value
|
||||||
|
(this is the default). The resulting sorting order ignores
|
||||||
|
punctuation, symbol characters, and whitespace characters, so
|
||||||
|
@file{.foobar}, @file{foobar} and @w{@file{foo bar}} will appear
|
||||||
|
together rather than far apart.
|
||||||
|
|
||||||
@vindex ls-lisp-ignore-case
|
@vindex ls-lisp-ignore-case
|
||||||
By default, @file{ls-lisp.el} uses a case-sensitive sort order for
|
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
|
the directory listing it produces; this is so the listing looks the
|
||||||
|
@ -371,10 +413,10 @@ Emulate macOS@. Sets @code{ls-lisp-ignore-case} to @code{t}, and
|
||||||
@item MS-Windows
|
@item MS-Windows
|
||||||
Emulate MS-Windows. Sets @code{ls-lisp-ignore-case} and
|
Emulate MS-Windows. Sets @code{ls-lisp-ignore-case} and
|
||||||
@code{ls-lisp-dirs-first} to @code{t}, and @code{ls-lisp-verbosity} to
|
@code{ls-lisp-dirs-first} to @code{t}, and @code{ls-lisp-verbosity} to
|
||||||
@code{(links)} on Windows NT/2K/XP/2K3 and to @code{nil} on Windows 9X@.
|
@code{nil} on Windows 9X and to @code{t} on modern versions of
|
||||||
Note that the default emulation is @emph{not} @code{MS-Windows}, even
|
Windows. Note that the default emulation is @emph{not}
|
||||||
on Windows, since many users of Emacs on those platforms prefer the
|
@code{MS-Windows}, even on Windows, since many users of Emacs on those
|
||||||
@sc{gnu} defaults.
|
platforms prefer the @sc{gnu} defaults.
|
||||||
@end table
|
@end table
|
||||||
|
|
||||||
@noindent
|
@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} specifies. The @samp{%}-sequences in
|
||||||
@code{ls-lisp-format-time-list} produce locale-dependent month and day
|
@code{ls-lisp-format-time-list} produce locale-dependent month and day
|
||||||
names, which might cause misalignment of columns in Dired display.
|
names, which might cause misalignment of columns in Dired display.
|
||||||
|
The default value of @code{ls-lisp-use-localized-time-format} is
|
||||||
|
@code{nil}.
|
||||||
@end ifnottex
|
@end ifnottex
|
||||||
|
|
||||||
@node Windows HOME
|
@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
|
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
|
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
|
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
|
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
|
@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}).
|
~/.emacs @key{RET}} (assuming the file's name is @file{.emacs}).
|
||||||
|
|
||||||
@cindex init file @file{.emacs} on MS-Windows
|
@cindex init file @file{.emacs} on MS-Windows
|
||||||
The home directory is where your init file is stored. It can have
|
Your init file can have any name mentioned in @ref{Init File}.
|
||||||
any name mentioned in @ref{Init File}.
|
|
||||||
|
|
||||||
@cindex @file{_emacs} init file, MS-Windows
|
@cindex @file{_emacs} init file, MS-Windows
|
||||||
Because MS-DOS does not allow file names with leading dots, and
|
Because MS-DOS does not allow file names with leading dots, and
|
||||||
older Windows systems made it hard to create files with such names,
|
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
|
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.
|
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
|
@node Windows Keyboard
|
||||||
@section Keyboard Usage on MS-Windows
|
@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
|
before Microsoft was founded.) Examples of conflicts include
|
||||||
@kbd{C-c}, @kbd{C-x}, @kbd{C-z}, @kbd{C-a}, and @kbd{W-@key{SPC}}.
|
@kbd{C-c}, @kbd{C-x}, @kbd{C-z}, @kbd{C-a}, and @kbd{W-@key{SPC}}.
|
||||||
You can redefine some of them with meanings more like the MS-Windows
|
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
|
@iftex
|
||||||
@inforef{Windows Keyboard, , emacs}, for information about additional
|
@inforef{Windows Keyboard, , emacs}, for information about additional
|
||||||
|
@ -690,16 +737,14 @@ is non-@code{nil}, the roles of these two buttons are reversed.
|
||||||
@cindex subprocesses on MS-Windows
|
@cindex subprocesses on MS-Windows
|
||||||
|
|
||||||
@cindex DOS applications, running from Emacs
|
@cindex DOS applications, running from Emacs
|
||||||
Emacs compiled as a native Windows application (as opposed to the DOS
|
Emacs compiled as a native Windows application (as opposed to the
|
||||||
version) includes full support for asynchronous subprocesses.
|
DOS version) includes full support for asynchronous subprocesses. In
|
||||||
In the Windows version, synchronous and asynchronous subprocesses work
|
the Windows version, synchronous and asynchronous subprocesses work
|
||||||
fine on both
|
fine on all versions of MS-Windows, as long as you run only 32-bit or
|
||||||
Windows 9X/ME and Windows NT/2K/XP/Vista/7/8/10 as long as you run
|
64-bit Windows applications. However, when you run a DOS application
|
||||||
only 32-bit or 64-bit Windows
|
in a subprocess, you may encounter problems or be unable to run the
|
||||||
applications. However, when you run a DOS application in a subprocess,
|
application at all; and if you run two DOS applications at the same
|
||||||
you may encounter problems or be unable to run the application at all;
|
time in two subprocesses, you may have to reboot your system.
|
||||||
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)
|
Since the standard command interpreter (and most command line utilities)
|
||||||
on Windows 9X are DOS applications, these problems are significant when
|
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
|
@cindex kill DOS application
|
||||||
If you can go to the first subprocess, and tell it to exit, the second
|
If you can go to the first subprocess, and tell it to exit, the second
|
||||||
subprocess should continue normally. However, if the second subprocess
|
subprocess should continue normally. However, if the second
|
||||||
is synchronous, Emacs itself will be hung until the first subprocess
|
subprocess is synchronous, Emacs itself will be hung until the first
|
||||||
finishes. If it will not finish without user input, then you have no
|
subprocess finishes. If it will not finish without user input, then
|
||||||
choice but to reboot if you are running on Windows 9X@. If you are
|
you have no choice but to reboot if you are running on Windows 9X@.
|
||||||
running on Windows NT/2K/XP, you can use a process viewer application to kill
|
If you are running on Windows NT and later, you can use a process
|
||||||
the appropriate instance of NTVDM instead (this will terminate both DOS
|
viewer application to kill the appropriate instance of NTVDM instead
|
||||||
subprocesses).
|
(this will terminate both DOS subprocesses).
|
||||||
|
|
||||||
If you have to reboot Windows 9X in this situation, do not use the
|
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
|
@code{Shutdown} command on the @code{Start} menu; that usually hangs the
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue