From 6a0fda530d1d76374f72f8dfb2a0a3d50023e64d Mon Sep 17 00:00:00 2001 From: Aidan Gauland Date: Tue, 19 Feb 2013 07:27:51 +1300 Subject: Documented Eshell's insert output-redirection operator --- ChangeLog | 5 +++++ doc/misc/eshell.texi | 17 ++++++++++++----- 2 files changed, 17 insertions(+), 5 deletions(-) diff --git a/ChangeLog b/ChangeLog index 9db5d2c3f3..e59e0646cb 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2013-02-18 Aidan Gauland + + * doc/misc/eshell.texi: Added documentation for Eshell insert + output redirection operator, >>>. + 2013-02-15 Paul Eggert Fix AIX port (Bug#13650). diff --git a/doc/misc/eshell.texi b/doc/misc/eshell.texi index 94093dc15c..3bef6a4595 100644 --- a/doc/misc/eshell.texi +++ b/doc/misc/eshell.texi @@ -709,11 +709,17 @@ which commands need to be run in a terminal, add them to the list @var{eshell-visual-commands}. Redirection is mostly the same in Eshell as it is in other command -shells. The output redirection operators @code{>} and @code{>>} as well -as pipes are supported, but there is not yet any support for input -redirection. Output can also be redirected to Elisp functions, using +shells. The output redirection operators @code{>} and @code{>>} as +well as pipes are supported, but there is not yet any support for +input redirection. Output can also be redirected to buffers, using +the @code{>>>} redirection operator, and Elisp functions, using virtual devices. +The buffer redirection operator, @code{>>>}, expects a buffer object +on the right-hand side, into which it inserts the output of the +left-hand side. e.g., @samp{echo hello >>> #} +inserts the string @code{"hello"} into the @code{*scratch*} buffer. + @var{eshell-virtual-targets} is a list of mappings of virtual device names to functions. Eshell comes with two virtual devices: @file{/dev/kill}, which sends the text to the kill ring, and @@ -725,8 +731,9 @@ by adding a list of the form @code{("/dev/name" function mode)} to @code{function} may be either a lambda or a function name. If @code{mode} is nil, then the function is the output function; if it is non-nil, then the function is passed the redirection mode as a -symbol--@code{overwrite}, @code{append}, or @code{insert}--and the -function is expected to return the output function. +symbol--@code{overwrite} for @code{>}, @code{append} for @code{>>}, or +@code{insert} for @code{>>>}--and the function is expected to return +the output function. The output function is called once on each line of output until @code{nil} is passed, indicating end of output. -- cgit v1.2.3