aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEli Zaretskii2018-02-16 12:46:32 +0200
committerEli Zaretskii2018-02-16 12:46:32 +0200
commite9c7ddc64b676cfd58a2bce301b1014d2f34f254 (patch)
tree95b0fdc71f3a23c4595eb03ea57af8823c7feda3
parent6ddb4bd39ac0629e4e06221a41120aee7c18f548 (diff)
downloademacs-e9c7ddc64b676cfd58a2bce301b1014d2f34f254.tar.gz
emacs-e9c7ddc64b676cfd58a2bce301b1014d2f34f254.zip
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.
-rw-r--r--doc/emacs/msdos.texi113
1 files changed, 79 insertions, 34 deletions
diff --git a/doc/emacs/msdos.texi b/doc/emacs/msdos.texi
index 27f9667e38b..2790d56e01c 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
69``Shortcut'' tab modify the ``Start in'' field to your liking. 69``Shortcut'' tab modify the ``Start in'' field to your liking.
70 70
71@item 71@item
72@cindex pinning Emacs to Windows task bar
73From a task-bar shortcut icon, by clicking once the left mouse button.
74Windows versions since Vista allow you to create such shortcuts by
75@dfn{pinning} the icon of a running program that appears in the task
76bar. You can do that with Emacs, but afterwards you will have to
77change the properties of the pinned shortcut to run
78@file{runemacs.exe}, @emph{not} of @file{emacs.exe}. You can also pin
79Emacs to the task bar by clicking the right mouse button on its icon
80in the Start menu, then selecting @samp{Pin to taskbar}. Once again,
81be sure to specify @file{runemacs.exe} as the program to run. You can
82control where Emacs starts by setting the ``Start in'' field of the
83shortcut's Properties.
84
85@item
72From the Command Prompt window, by typing @kbd{emacs @key{RET}} at the 86From the Command Prompt window, by typing @kbd{emacs @key{RET}} at the
73prompt. The Command Prompt window where you did that will not be 87prompt. The Command Prompt window where you did that will not be
74available for invoking other commands until Emacs exits. In this 88available for invoking other commands until Emacs exits. In this
@@ -81,6 +95,12 @@ immediately available for invoking other commands. In this case,
81Emacs will start in the current directory of the Windows shell. 95Emacs will start in the current directory of the Windows shell.
82 96
83@item 97@item
98From the Windows @code{Run} dialog (normally reached by clicking the
99@code{Start} button). Typing @kbd{runemacs @key{RET}} into the dialog
100will start Emacs in the parent directory of the Windows equivalent of
101your user's @code{HOME} directory, see @ref{Windows HOME}.
102
103@item
84@cindex invoking Emacs from Windows Explorer 104@cindex invoking Emacs from Windows Explorer
85@pindex emacsclient.exe 105@pindex emacsclient.exe
86@pindex emacsclientw.exe 106@pindex emacsclientw.exe
@@ -204,8 +224,8 @@ designates directory @file{\foo} on drive Z as an untranslated file
204system. 224system.
205 225
206 Most often you would use @code{add-untranslated-filesystem} in your 226 Most often you would use @code{add-untranslated-filesystem} in your
207@file{.emacs} file, or in @file{site-start.el} so that all the users at 227@file{.emacs} or @file{init.el} init file, or in @file{site-start.el}
208your site get the benefit of it. 228so that all the users at your site get the benefit of it.
209 229
210@findex remove-untranslated-filesystem 230@findex remove-untranslated-filesystem
211 To countermand the effect of @code{add-untranslated-filesystem}, use 231 To countermand the effect of @code{add-untranslated-filesystem}, use
@@ -215,8 +235,8 @@ previously with @code{add-untranslated-filesystem}.
215 235
216 Designating a file system as untranslated does not affect character 236 Designating a file system as untranslated does not affect character
217set conversion, only end-of-line conversion. Essentially, it directs 237set conversion, only end-of-line conversion. Essentially, it directs
218Emacs to create new files with the Unix-style convention of using 238Emacs to default to creating new files with the Unix-style convention
219newline at the end of a line. @xref{Coding Systems}. 239of using newline at the end of a line. @xref{Coding Systems}.
220 240
221@node Windows Files 241@node Windows Files
222@section File Names on MS-Windows 242@section File Names on MS-Windows
@@ -229,7 +249,9 @@ backslash, and also knows about drive letters in file names.
229 249
230@cindex file-name completion, on MS-Windows 250@cindex file-name completion, on MS-Windows
231 On MS-DOS/MS-Windows, file names are case-insensitive, so Emacs by 251 On MS-DOS/MS-Windows, file names are case-insensitive, so Emacs by
232default ignores letter-case in file names during completion. 252default ignores letter-case in file names during completion. To this
253end, the default value of @code{read-file-name-completion-ignore-case}
254is non-@code{nil} on MS-DOS/MS-Windows. @xref{Completion Options}.
233 255
234@vindex w32-get-true-file-attributes 256@vindex w32-get-true-file-attributes
235 The variable @code{w32-get-true-file-attributes} controls whether 257 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
311does support: @option{-A}, @option{-a}, @option{-B}, @option{-C}, 333does support: @option{-A}, @option{-a}, @option{-B}, @option{-C},
312@option{-c}, @option{-G}, @option{-g}, @option{-h}, @option{-i}, @option{-n}, 334@option{-c}, @option{-G}, @option{-g}, @option{-h}, @option{-i}, @option{-n},
313@option{-R}, @option{-r}, @option{-S}, @option{-s}, @option{-t}, @option{-U}, 335@option{-R}, @option{-r}, @option{-S}, @option{-s}, @option{-t}, @option{-U},
314@option{-u}, and @option{-X}. The @option{-F} switch is partially 336@option{-u}, @option{v}, and @option{-X}. The @option{-F} switch is
315supported (it appends the character that classifies the file, but does 337partially supported (it appends the character that classifies the
316not prevent symlink following). 338file, but does not prevent symlink following).
317 339
318@vindex ls-lisp-use-insert-directory-program 340@vindex ls-lisp-use-insert-directory-program
319 On MS-Windows and MS-DOS, @file{ls-lisp.el} is preloaded when Emacs 341 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
323will revert to using an external program named by the variable 345will revert to using an external program named by the variable
324@code{insert-directory-program}. 346@code{insert-directory-program}.
325 347
348@cindex Dired sorting order, on MS-Windows/MS-DOS
349 The order in which @file{ls-lisp.el} sorts files depends on several
350customizable options described below.
351
352@vindex ls-lisp-use-string-collate
353 The default sorting order follows locale-specific rules derived from
354your system locale. You can make the order locale-independent by
355customizing @code{ls-lisp-use-string-collate} to a @code{nil} value.
356
357@cindex Unicode Collation Algorithm (UCA), and @file{ls-lisp.el}
358@vindex ls-lisp-UCA-like-collation
359 On GNU and Unix systems, when the locale's encoding is UTF-8, the
360collation order follows the Unicode Collation Algorithm
361(@acronym{UCA}). To have a similar effect on MS-Windows, the variable
362@code{ls-lisp-UCA-like-collation} should have a non-@code{nil} value
363(this is the default). The resulting sorting order ignores
364punctuation, symbol characters, and whitespace characters, so
365@file{.foobar}, @file{foobar} and @w{@file{foo bar}} will appear
366together rather than far apart.
367
326@vindex ls-lisp-ignore-case 368@vindex ls-lisp-ignore-case
327 By default, @file{ls-lisp.el} uses a case-sensitive sort order for 369 By default, @file{ls-lisp.el} uses a case-sensitive sort order for
328the directory listing it produces; this is so the listing looks the 370the 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
371@item MS-Windows 413@item MS-Windows
372Emulate MS-Windows. Sets @code{ls-lisp-ignore-case} and 414Emulate MS-Windows. Sets @code{ls-lisp-ignore-case} and
373@code{ls-lisp-dirs-first} to @code{t}, and @code{ls-lisp-verbosity} to 415@code{ls-lisp-dirs-first} to @code{t}, and @code{ls-lisp-verbosity} to
374@code{(links)} on Windows NT/2K/XP/2K3 and to @code{nil} on Windows 9X@. 416@code{nil} on Windows 9X and to @code{t} on modern versions of
375Note that the default emulation is @emph{not} @code{MS-Windows}, even 417Windows. Note that the default emulation is @emph{not}
376on Windows, since many users of Emacs on those platforms prefer the 418@code{MS-Windows}, even on Windows, since many users of Emacs on those
377@sc{gnu} defaults. 419platforms prefer the @sc{gnu} defaults.
378@end table 420@end table
379 421
380@noindent 422@noindent
@@ -421,6 +463,8 @@ formats file time stamps according to what
421@code{ls-lisp-format-time-list} specifies. The @samp{%}-sequences in 463@code{ls-lisp-format-time-list} specifies. The @samp{%}-sequences in
422@code{ls-lisp-format-time-list} produce locale-dependent month and day 464@code{ls-lisp-format-time-list} produce locale-dependent month and day
423names, which might cause misalignment of columns in Dired display. 465names, which might cause misalignment of columns in Dired display.
466The default value of @code{ls-lisp-use-localized-time-format} is
467@code{nil}.
424@end ifnottex 468@end ifnottex
425 469
426@node Windows HOME 470@node Windows HOME
@@ -453,7 +497,8 @@ default @code{HOME} location, and will not look in the application
453data directory, even if it exists. Note that only @file{.emacs} is 497data directory, even if it exists. Note that only @file{.emacs} is
454looked for in @file{C:\}; the older name @file{_emacs} (see below) is 498looked for in @file{C:\}; the older name @file{_emacs} (see below) is
455not. This use of @file{C:\.emacs} to define @code{HOME} is 499not. This use of @file{C:\.emacs} to define @code{HOME} is
456deprecated. 500deprecated; Emacs will display a warning about its use during
501startup.
457 502
458 Whatever the final place is, Emacs sets the internal value of the 503 Whatever the final place is, Emacs sets the internal value of the
459@env{HOME} environment variable to point to it, and it will use that 504@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
467~/.emacs @key{RET}} (assuming the file's name is @file{.emacs}). 512~/.emacs @key{RET}} (assuming the file's name is @file{.emacs}).
468 513
469@cindex init file @file{.emacs} on MS-Windows 514@cindex init file @file{.emacs} on MS-Windows
470 The home directory is where your init file is stored. It can have 515 Your init file can have any name mentioned in @ref{Init File}.
471any name mentioned in @ref{Init File}.
472 516
473@cindex @file{_emacs} init file, MS-Windows 517@cindex @file{_emacs} init file, MS-Windows
474 Because MS-DOS does not allow file names with leading dots, and 518 Because MS-DOS does not allow file names with leading dots, and
475older Windows systems made it hard to create files with such names, 519older Windows systems made it hard to create files with such names,
476the Windows port of Emacs supports an init file name @file{_emacs}, if 520the Windows port of Emacs supports an init file name @file{_emacs}, if
477such a file exists in the home directory and @file{.emacs} does not. 521such a file exists in the home directory and @file{.emacs} does not.
478This name is considered obsolete. 522This name is considered obsolete, so Emacs will display a warning if
523it is used.
479 524
480@node Windows Keyboard 525@node Windows Keyboard
481@section Keyboard Usage on MS-Windows 526@section Keyboard Usage on MS-Windows
@@ -491,7 +536,9 @@ Emacs key bindings. (These Emacs key bindings were established years
491before Microsoft was founded.) Examples of conflicts include 536before Microsoft was founded.) Examples of conflicts include
492@kbd{C-c}, @kbd{C-x}, @kbd{C-z}, @kbd{C-a}, and @kbd{W-@key{SPC}}. 537@kbd{C-c}, @kbd{C-x}, @kbd{C-z}, @kbd{C-a}, and @kbd{W-@key{SPC}}.
493You can redefine some of them with meanings more like the MS-Windows 538You can redefine some of them with meanings more like the MS-Windows
494meanings by enabling CUA Mode (@pxref{CUA Bindings}). 539meanings by enabling CUA Mode (@pxref{CUA Bindings}). Another
540optional feature which will make Emacs behave like other Windows
541applications is Delete Selection mode (@pxref{Using Region}).
495 542
496@iftex 543@iftex
497@inforef{Windows Keyboard, , emacs}, for information about additional 544@inforef{Windows Keyboard, , emacs}, for information about additional
@@ -690,16 +737,14 @@ is non-@code{nil}, the roles of these two buttons are reversed.
690@cindex subprocesses on MS-Windows 737@cindex subprocesses on MS-Windows
691 738
692@cindex DOS applications, running from Emacs 739@cindex DOS applications, running from Emacs
693 Emacs compiled as a native Windows application (as opposed to the DOS 740 Emacs compiled as a native Windows application (as opposed to the
694version) includes full support for asynchronous subprocesses. 741DOS version) includes full support for asynchronous subprocesses. In
695In the Windows version, synchronous and asynchronous subprocesses work 742the Windows version, synchronous and asynchronous subprocesses work
696fine on both 743fine on all versions of MS-Windows, as long as you run only 32-bit or
697Windows 9X/ME and Windows NT/2K/XP/Vista/7/8/10 as long as you run 74464-bit Windows applications. However, when you run a DOS application
698only 32-bit or 64-bit Windows 745in a subprocess, you may encounter problems or be unable to run the
699applications. However, when you run a DOS application in a subprocess, 746application at all; and if you run two DOS applications at the same
700you may encounter problems or be unable to run the application at all; 747time in two subprocesses, you may have to reboot your system.
701and if you run two DOS applications at the same time in two
702subprocesses, you may have to reboot your system.
703 748
704Since the standard command interpreter (and most command line utilities) 749Since the standard command interpreter (and most command line utilities)
705on Windows 9X are DOS applications, these problems are significant when 750on 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.
724 769
725@cindex kill DOS application 770@cindex kill DOS application
726If you can go to the first subprocess, and tell it to exit, the second 771If you can go to the first subprocess, and tell it to exit, the second
727subprocess should continue normally. However, if the second subprocess 772subprocess should continue normally. However, if the second
728is synchronous, Emacs itself will be hung until the first subprocess 773subprocess is synchronous, Emacs itself will be hung until the first
729finishes. If it will not finish without user input, then you have no 774subprocess finishes. If it will not finish without user input, then
730choice but to reboot if you are running on Windows 9X@. If you are 775you have no choice but to reboot if you are running on Windows 9X@.
731running on Windows NT/2K/XP, you can use a process viewer application to kill 776If you are running on Windows NT and later, you can use a process
732the appropriate instance of NTVDM instead (this will terminate both DOS 777viewer application to kill the appropriate instance of NTVDM instead
733subprocesses). 778(this will terminate both DOS subprocesses).
734 779
735If you have to reboot Windows 9X in this situation, do not use the 780If you have to reboot Windows 9X in this situation, do not use the
736@code{Shutdown} command on the @code{Start} menu; that usually hangs the 781@code{Shutdown} command on the @code{Start} menu; that usually hangs the