aboutsummaryrefslogtreecommitdiffstats
path: root/doc/misc
diff options
context:
space:
mode:
authorJim Porter2023-08-21 18:23:11 -0700
committerJim Porter2023-08-21 18:23:11 -0700
commit357c2fba9825a44e27bf83ecd7a3527a32268a47 (patch)
treebf197ead3fc0fa89ad0f90436e0cc06a5b6fc550 /doc/misc
parent0df2efa4d6953fb3dbc50c5faa845e80154b447b (diff)
parent3296031ad74f8cdc9638ae948b5372a81a43a2d1 (diff)
downloademacs-357c2fba9825a44e27bf83ecd7a3527a32268a47.tar.gz
emacs-357c2fba9825a44e27bf83ecd7a3527a32268a47.zip
Merge from origin/emacs-29
3296031ad74 ; Another improvement for documentation of pixelwise scro... baeb2d71ae7 Support defun navigation for DEFUN in c-ts-mode (bug#64442) 781ddd7e7d8 Fix touchpad scrolling on MS-Windows c125bd060e2 Fix order in which package-vc dependencies are resolved 500ced133ad Fix building of VC package manuals with relative org link... 456ecabe9e8 Fix the documentation of 'cl-flet' f6ebd1ef0d0 ; * src/treesit.c (Ftreesit_node_parent): Improve comment... fac0e2d5334 Avoid false "wrong passphrase" messages in EPA 8f683b51d8b Fix jsx font-lock in older tree-sitter-js grammars d9af79ae39d Fix cloning 'face-remapping-alist' for indirect buffers 636fb267c46 Improve documentation of case transfer in replacement com... 7856d51436b Fix horizontal scrolling of images with C-f 8cf5659ec2f ; Fix defcustom in completion.el a8c8a4e3680 ; * src/fns.c (Fcopy_sequence): Doc fix. (Bug#64960) 205d87cdca0 Fix unpacking ZIP archives on MS-Windows 3712e8bc385 ; Fix typos in lisp/keymap.el doc strings (bug#65329). 21b2ecee661 Fix command example in Eshell manual 26949819df0 ; lisp/progmodes/csharp-mode.el (treesit-query-capture): ... 221ed70b90a ; Improve documentation of 'define-alternatives' 32280205e27 Add user options mentioned in the Eshell manual to the va... cf3145a486b * Add missing alias to `native-comp-enable-subr-trampolin... 922b6490286 * Add missing alias to `native-comp-enable-subr-trampolin... 6962823c83c ; * etc/PROBLEMS: Fix typo and clarify wording. # Conflicts: # doc/misc/eshell.texi
Diffstat (limited to 'doc/misc')
-rw-r--r--doc/misc/cl.texi13
-rw-r--r--doc/misc/eshell.texi36
2 files changed, 43 insertions, 6 deletions
diff --git a/doc/misc/cl.texi b/doc/misc/cl.texi
index 0284554ed9e..5de33350f4f 100644
--- a/doc/misc/cl.texi
+++ b/doc/misc/cl.texi
@@ -1238,10 +1238,15 @@ of variables.
1238 1238
1239@defmac cl-flet (bindings@dots{}) forms@dots{} 1239@defmac cl-flet (bindings@dots{}) forms@dots{}
1240This form establishes @code{let}-style bindings for functions rather 1240This form establishes @code{let}-style bindings for functions rather
1241than values. Each @var{binding} must be a list of the form 1241than values. Each @var{binding} must be a list of one of two forms:
1242@samp{(@var{name} @var{arglist} @var{body}@dots{})}. Within 1242either @w{@code{(@var{name} @var{expr})}} or @w{@code{(@var{name}
1243@var{forms}, any reference to the function @var{name} uses the local 1243@var{arglist} @var{body}@dots{})}}. The @var{name} is the name of the
1244definition instead of the global one. 1244function, @var{expr} is an expression which returns the function value
1245to which the corresponding @var{name} should be bound, and
1246@var{arglist} and @var{body} are the argument list and the body of the
1247function to bind to @var{name}. Within @var{forms}, any reference to
1248the function @var{name} uses the local definition provided by
1249@var{bindings} instead of the global one.
1245 1250
1246A ``reference'' to a function name is either a call to that function, 1251A ``reference'' to a function name is either a call to that function,
1247or a use of its name quoted by @code{function} to be passed on to, 1252or a use of its name quoted by @code{function} to be passed on to,
diff --git a/doc/misc/eshell.texi b/doc/misc/eshell.texi
index 59c07457158..29ffc3dc964 100644
--- a/doc/misc/eshell.texi
+++ b/doc/misc/eshell.texi
@@ -4,7 +4,7 @@
4@settitle Eshell: The Emacs Shell 4@settitle Eshell: The Emacs Shell
5@include docstyle.texi 5@include docstyle.texi
6@defindex cm 6@defindex cm
7@synindex vr fn 7@syncodeindex vr fn
8@c %**end of header 8@c %**end of header
9 9
10@copying 10@copying
@@ -141,7 +141,7 @@ computer frequently enough, it is more than worthwhile in the long run.
141Any tool you use often deserves the time spent learning to master it. 141Any tool you use often deserves the time spent learning to master it.
142@footnote{For the understandably curious, here is what that command 142@footnote{For the understandably curious, here is what that command
143looks like: But don't let it fool you; once you know what's going on, 143looks like: But don't let it fool you; once you know what's going on,
144it's easier than it looks: @code{ls -lt **/*.doc(Lk+50aM+5)}.} 144it's easier than it looks: @code{ls -lt **/*.doc(Lk+100aM+6)}.}
145 145
146@menu 146@menu
147* Contributors to Eshell:: People who have helped out! 147* Contributors to Eshell:: People who have helped out!
@@ -458,6 +458,7 @@ overwriting files. If both settings are non-@code{nil}, the commands
458always prompt. If both settings are @code{nil} (the default), the 458always prompt. If both settings are @code{nil} (the default), the
459commands signal an error. 459commands signal an error.
460 460
461@vindex eshell-default-target-is-dot
461Several commands observe the value of 462Several commands observe the value of
462@code{eshell-default-target-is-dot}. If non-@code{nil}, then the 463@code{eshell-default-target-is-dot}. If non-@code{nil}, then the
463default target for the commands @command{cp}, @command{mv}, and 464default target for the commands @command{cp}, @command{mv}, and
@@ -521,6 +522,8 @@ directory.
521With @kbd{cd -42}, you can access the directory stack slots by number. 522With @kbd{cd -42}, you can access the directory stack slots by number.
522 523
523@item 524@item
525@vindex eshell-cd-shows-directory
526@vindex eshell-list-files-after-cd
524If @code{eshell-cd-shows-directory} is non-@code{nil}, @command{cd} 527If @code{eshell-cd-shows-directory} is non-@code{nil}, @command{cd}
525will report the directory it changes to. If 528will report the directory it changes to. If
526@code{eshell-list-files-after-cd} is non-@code{nil}, then @command{ls} 529@code{eshell-list-files-after-cd} is non-@code{nil}, then @command{ls}
@@ -555,6 +558,8 @@ $*'}.
555Copy a file to a new location or copy multiple files to the same 558Copy a file to a new location or copy multiple files to the same
556directory. 559directory.
557 560
561@vindex eshell-cp-overwrite-files
562@vindex eshell-cp-interactive-query
558If @code{eshell-cp-overwrite-files} is non-@code{nil}, then 563If @code{eshell-cp-overwrite-files} is non-@code{nil}, then
559@command{cp} will overwrite files without warning. If 564@command{cp} will overwrite files without warning. If
560@code{eshell-cp-interactive-query} is non-@code{nil}, then 565@code{eshell-cp-interactive-query} is non-@code{nil}, then
@@ -572,6 +577,7 @@ Compare files using Emacs's internal @code{diff} (not to be confused
572with @code{ediff}). @xref{Comparing Files, , , emacs, The GNU Emacs 577with @code{ediff}). @xref{Comparing Files, , , emacs, The GNU Emacs
573Manual}. 578Manual}.
574 579
580@vindex eshell-plain-diff-behavior
575If @code{eshell-plain-diff-behavior} is non-@code{nil}, then this 581If @code{eshell-plain-diff-behavior} is non-@code{nil}, then this
576command does not use Emacs's internal @code{diff}. This is the same 582command does not use Emacs's internal @code{diff}. This is the same
577as using @samp{alias diff '*diff $@@*'}. 583as using @samp{alias diff '*diff $@@*'}.
@@ -599,6 +605,7 @@ Echoes its input. By default, this prints in a Lisp-friendly fashion
599prints a list of all the arguments; otherwise, it prints the empty 605prints a list of all the arguments; otherwise, it prints the empty
600string. 606string.
601 607
608@vindex eshell-plain-echo-behavior
602If @code{eshell-plain-echo-behavior} is non-@code{nil}, @command{echo} 609If @code{eshell-plain-echo-behavior} is non-@code{nil}, @command{echo}
603will try to behave more like a plain shell's @command{echo}, printing 610will try to behave more like a plain shell's @command{echo}, printing
604each argument as a string, separated by a space. 611each argument as a string, separated by a space.
@@ -619,6 +626,7 @@ cmd*}.
619 626
620@item exit 627@item exit
621@cmindex exit 628@cmindex exit
629@vindex eshell-kill-on-exit
622Exit Eshell and save the history. By default, this command kills the 630Exit Eshell and save the history. By default, this command kills the
623Eshell buffer, but if @code{eshell-kill-on-exit} is @code{nil}, then 631Eshell buffer, but if @code{eshell-kill-on-exit} is @code{nil}, then
624the buffer is merely buried instead. 632the buffer is merely buried instead.
@@ -644,6 +652,7 @@ The @command{grep} commands are compatible with GNU @command{grep},
644but use Emacs's internal @code{grep} instead. 652but use Emacs's internal @code{grep} instead.
645@xref{Grep Searching, , , emacs, The GNU Emacs Manual}. 653@xref{Grep Searching, , , emacs, The GNU Emacs Manual}.
646 654
655@vindex eshell-plain-grep-behavior
647If @code{eshell-plain-grep-behavior} is non-@code{nil}, then these 656If @code{eshell-plain-grep-behavior} is non-@code{nil}, then these
648commands do not use Emacs's internal @code{grep}. This is the same as 657commands do not use Emacs's internal @code{grep}. This is the same as
649using @samp{alias grep '*grep $@@*'}, though this setting applies to 658using @samp{alias grep '*grep $@@*'}, though this setting applies to
@@ -682,6 +691,8 @@ and @code{("foo" "bar")} both evaluate to @code{("foo" "bar")}.
682@cmindex ln 691@cmindex ln
683Create links to files. 692Create links to files.
684 693
694@vindex eshell-ln-overwrite-files
695@vindex eshell-ln-interactive-query
685If @code{eshell-ln-overwrite-files} is non-@code{nil}, @command{ln} 696If @code{eshell-ln-overwrite-files} is non-@code{nil}, @command{ln}
686will overwrite files without warning. If 697will overwrite files without warning. If
687@code{eshell-ln-interactive-query} is non-@code{nil}, then 698@code{eshell-ln-interactive-query} is non-@code{nil}, then
@@ -693,6 +704,7 @@ Alias to Emacs's @code{locate} function, which simply runs the external
693@command{locate} command and parses the results. 704@command{locate} command and parses the results.
694@xref{Dired and Find, , , emacs, The GNU Emacs Manual}. 705@xref{Dired and Find, , , emacs, The GNU Emacs Manual}.
695 706
707@vindex eshell-plain-locate-behavior
696If @code{eshell-plain-locate-behavior} is non-@code{nil}, then Emacs's 708If @code{eshell-plain-locate-behavior} is non-@code{nil}, then Emacs's
697internal @code{locate} is not used. This is the same as using 709internal @code{locate} is not used. This is the same as using
698@samp{alias locate '*locate $@@*'}. 710@samp{alias locate '*locate $@@*'}.
@@ -701,21 +713,25 @@ internal @code{locate} is not used. This is the same as using
701@cmindex ls 713@cmindex ls
702Lists the contents of directories. 714Lists the contents of directories.
703 715
716@vindex eshell-ls-use-colors
704If @code{eshell-ls-use-colors} is non-@code{nil}, the contents of a 717If @code{eshell-ls-use-colors} is non-@code{nil}, the contents of a
705directory is color-coded according to file type and status. These 718directory is color-coded according to file type and status. These
706colors and the regexps used to identify their corresponding files can 719colors and the regexps used to identify their corresponding files can
707be customized via @w{@kbd{M-x customize-group @key{RET} eshell-ls @key{RET}}}. 720be customized via @w{@kbd{M-x customize-group @key{RET} eshell-ls @key{RET}}}.
708 721
722@vindex eshell-ls-date-format
709The user option @code{eshell-ls-date-format} determines how the date 723The user option @code{eshell-ls-date-format} determines how the date
710is displayed when using the @option{-l} option. The date is produced 724is displayed when using the @option{-l} option. The date is produced
711using the function @code{format-time-string} (@pxref{Time Parsing,,, 725using the function @code{format-time-string} (@pxref{Time Parsing,,,
712elisp, GNU Emacs Lisp Reference Manual}). 726elisp, GNU Emacs Lisp Reference Manual}).
713 727
728@vindex eshell-ls-initial-args
714The user option @code{eshell-ls-initial-args} contains a list of 729The user option @code{eshell-ls-initial-args} contains a list of
715arguments to include with any call to @command{ls}. For example, you 730arguments to include with any call to @command{ls}. For example, you
716can include the option @option{-h} to always use a more human-readable 731can include the option @option{-h} to always use a more human-readable
717format. 732format.
718 733
734@vindex eshell-ls-default-blocksize
719The user option @code{eshell-ls-default-blocksize} determines the 735The user option @code{eshell-ls-default-blocksize} determines the
720default blocksize used when displaying file sizes with the option 736default blocksize used when displaying file sizes with the option
721@option{-s}. 737@option{-s}.
@@ -739,6 +755,8 @@ Make new directories.
739@cmindex mv 755@cmindex mv
740Move or rename files. 756Move or rename files.
741 757
758@vindex eshell-mv-overwrite-files
759@vindex eshell-mv-interactive-query
742If @code{eshell-mv-overwrite-files} is non-@code{nil}, @command{mv} 760If @code{eshell-mv-overwrite-files} is non-@code{nil}, @command{mv}
743will overwrite files without warning. If 761will overwrite files without warning. If
744@code{eshell-mv-interactive-query} is non-@code{nil}, @command{mv} 762@code{eshell-mv-interactive-query} is non-@code{nil}, @command{mv}
@@ -763,6 +781,8 @@ Print the arguments separated by newlines.
763Push the current directory onto the directory stack, then change to 781Push the current directory onto the directory stack, then change to
764another directory. 782another directory.
765 783
784@vindex eshell-pushd-dunique
785@vindex eshell-pushd-dextract
766If @code{eshell-pushd-dunique} is non-@code{nil}, then only unique 786If @code{eshell-pushd-dunique} is non-@code{nil}, then only unique
767directories will be added to the stack. If 787directories will be added to the stack. If
768@code{eshell-pushd-dextract} is non-@code{nil}, then @samp{pushd 788@code{eshell-pushd-dextract} is non-@code{nil}, then @samp{pushd
@@ -777,6 +797,8 @@ Prints the current working directory.
777Removes files, buffers, processes, or Emacs Lisp symbols, depending on 797Removes files, buffers, processes, or Emacs Lisp symbols, depending on
778the argument. 798the argument.
779 799
800@vindex eshell-rm-interactive-query
801@vindex eshell-rm-removes-directories
780If @code{eshell-rm-interactive-query} is non-@code{nil}, @command{rm} 802If @code{eshell-rm-interactive-query} is non-@code{nil}, @command{rm}
781will prompt before removing anything. If 803will prompt before removing anything. If
782@code{eshell-rm-removes-directories} is non-@code{nil}, then 804@code{eshell-rm-removes-directories} is non-@code{nil}, then
@@ -1081,6 +1103,7 @@ Tramp, may add extra information to this value.
1081@section Aliases 1103@section Aliases
1082 1104
1083@findex eshell-read-aliases-list 1105@findex eshell-read-aliases-list
1106@vindex eshell-aliases-file
1084Aliases are commands that expand to a longer input line. For example, 1107Aliases are commands that expand to a longer input line. For example,
1085@command{ll} is a common alias for @code{ls -l}. To define this alias 1108@command{ll} is a common alias for @code{ls -l}. To define this alias
1086in Eshell, you can use the command invocation @kbd{alias ll 'ls -l 1109in Eshell, you can use the command invocation @kbd{alias ll 'ls -l
@@ -1161,6 +1184,7 @@ the option @code{eshell-explicit-remote-commands} to @code{nil}.
1161@node History 1184@node History
1162@section History 1185@section History
1163@cmindex history 1186@cmindex history
1187@vindex eshell-history-size
1164The @samp{history} command shows all commands kept in the history ring 1188The @samp{history} command shows all commands kept in the history ring
1165as numbered list. If the history ring contains 1189as numbered list. If the history ring contains
1166@code{eshell-history-size} commands, those numbers change after every 1190@code{eshell-history-size} commands, those numbers change after every
@@ -1180,6 +1204,7 @@ command beginning with @code{foo}, and @samp{!?foo} to the last
1180command containing @code{foo}. The n-th argument of the last command 1204command containing @code{foo}. The n-th argument of the last command
1181beginning with @code{foo} is accessible by @code{!foo:n}. 1205beginning with @code{foo} is accessible by @code{!foo:n}.
1182 1206
1207@vindex eshell-history-file-name
1183The history ring is loaded from a file at the start of every session, 1208The history ring is loaded from a file at the start of every session,
1184and written back to the file at the end of every session. The file path 1209and written back to the file at the end of every session. The file path
1185is specified in @code{eshell-history-file-name}. Unlike other shells, 1210is specified in @code{eshell-history-file-name}. Unlike other shells,
@@ -1365,6 +1390,7 @@ to @code{$(@var{lisp})}, this is identical to @code{@{@var{command}@}}
1365when on its own, but the @code{$} allows it to be used inside double 1390when on its own, but the @code{$} allows it to be used inside double
1366quotes or as part of a string. 1391quotes or as part of a string.
1367 1392
1393@vindex eshell-convert-numeric-arguments
1368Normally, the output is split line-by-line, returning a list (or the 1394Normally, the output is split line-by-line, returning a list (or the
1369first element if there's only one line of output); if 1395first element if there's only one line of output); if
1370@code{eshell-convert-numeric-arguments} is non-@code{nil} and every 1396@code{eshell-convert-numeric-arguments} is non-@code{nil} and every
@@ -1473,6 +1499,7 @@ coming from Bash can still use Bash-style globbing, as there are no
1473incompatibilities. 1499incompatibilities.
1474 1500
1475@vindex eshell-glob-case-insensitive 1501@vindex eshell-glob-case-insensitive
1502@vindex eshell-glob-case-insensitive
1476Globs are case sensitive by default, except on MS-DOS/MS-Windows 1503Globs are case sensitive by default, except on MS-DOS/MS-Windows
1477systems. You can control this behavior via the 1504systems. You can control this behavior via the
1478@code{eshell-glob-case-insensitive} option. 1505@code{eshell-glob-case-insensitive} option.
@@ -1836,6 +1863,9 @@ garbage output, since the Eshell buffer is not a terminal emulator.
1836Eshell solves this problem by running such programs in Emacs's 1863Eshell solves this problem by running such programs in Emacs's
1837terminal emulator. 1864terminal emulator.
1838 1865
1866@vindex eshell-visual-commands
1867@vindex eshell-visual-subcommands
1868@vindex eshell-visual-options
1839Programs that need a terminal to display output properly are referred 1869Programs that need a terminal to display output properly are referred
1840to in this manual as ``visual commands'', because they are not simply 1870to in this manual as ``visual commands'', because they are not simply
1841line-oriented. You must tell Eshell which commands are visual, by 1871line-oriented. You must tell Eshell which commands are visual, by
@@ -2053,6 +2083,7 @@ modules.@footnote{ERC provides a similar module facility.}
2053@node Optional modules 2083@node Optional modules
2054@section Optional modules 2084@section Optional modules
2055 2085
2086@vindex eshell-modules-list
2056In addition to the various modules enabled by default (documented 2087In addition to the various modules enabled by default (documented
2057above), Eshell provides several other modules which are @emph{not} 2088above), Eshell provides several other modules which are @emph{not}
2058enabled by default. If you want to enable these, you can add them to 2089enabled by default. If you want to enable these, you can add them to
@@ -2080,6 +2111,7 @@ For example, it binds @kbd{C-u} to kill the current input text and
2080enabled, it also binds @kbd{C-p} and @kbd{C-n} to move through the 2111enabled, it also binds @kbd{C-p} and @kbd{C-n} to move through the
2081input history. 2112input history.
2082 2113
2114@vindex eshell-confine-point-to-input
2083If @code{eshell-confine-point-to-input} is non-@code{nil}, this module 2115If @code{eshell-confine-point-to-input} is non-@code{nil}, this module
2084prevents certain commands from causing the point to leave the input 2116prevents certain commands from causing the point to leave the input
2085area, such as @code{backward-word}, @code{previous-line}, etc. 2117area, such as @code{backward-word}, @code{previous-line}, etc.