* eshell.text (What is Eshell?): Add section about what not to use Eshell for.

This commit is contained in:
Aidan Gauland 2014-01-02 22:27:46 +13:00
parent 5cd63720ce
commit 94ee87197f
2 changed files with 33 additions and 9 deletions

View file

@ -1,3 +1,8 @@
2014-01-02 Aidan Gauland <aidalgol@amuri.net>
* eshell.text (What is Eshell?): Add section about what not to use
Eshell for.
2013-12-23 Teodor Zlatanov <tzz@lifelogs.com>
* emacs-gnutls.texi (Help For Users): Document `gnutls-verify-error'.

View file

@ -61,19 +61,19 @@ modify this GNU manual.''
@node Top
@top Eshell
Eshell is a shell-like command interpreter
implemented in Emacs Lisp. It invokes no external processes except for
those requested by the user. It is intended to be a functional
replacement for command shells such as @command{bash}, @command{zsh},
@command{rc}, or @command{4dos}; since Emacs itself is capable of
handling the sort of tasks accomplished by those tools.
Eshell is a shell-like command interpreter implemented in Emacs Lisp.
It invokes no external processes except for those requested by the
user. It is intended to be an alternative to the @xref{Lisp
Interaction, IELM, , elisp, The Emacs Lisp Reference Manual} REPL for
Emacs @emph{and} with an interface similar to command shells such as
@command{bash}, @command{zsh}, @command{rc}, or @command{4dos}.
@c This manual is updated to release 2.4 of Eshell.
@insertcopying
@end ifnottex
@menu
* What is Eshell?:: A brief introduction to the Emacs Shell.
* Introduction:: A brief introduction to the Emacs Shell.
* Command basics:: The basics of command usage.
* Commands::
* Expansion::
@ -87,8 +87,9 @@ handling the sort of tasks accomplished by those tools.
* Key Index::
@end menu
@node What is Eshell?
@chapter What is Eshell?
@node Introduction
@chapter Introduction
@section What is Eshell?
@cindex what is Eshell?
@cindex Eshell, what it is
@ -139,6 +140,24 @@ Any tool you use often deserves the time spent learning to master it.
looks like: But don't let it fool you; once you know what's going on,
it's easier than it looks: @code{ls -lt **/*.doc(Lk+50aM+5)}.}
@section What Eshell is not
@cindex Eshell, what it is not
@cindex what Eshell is not
@cindex what isn't Eshell?
Eshell is @emph{not} a replacement for system shells such as
@command{bash} or @command{zsh}. Use Eshell when you want to move
text between Emacs and external processes; if you only want to pipe
output from one external process to another, to another, use a system
shell, because Emacs's IO system is buffer oriented, not stream
oriented, and is very inefficient at such tasks. If you want to write
shell scripts in Eshell, don't; either write an elisp library or use a
system shell.
Some things Eshell just doesn't do well. It fills the niche between
IELM and your system shell, where the peculiar use-cases lie, and it
is less than ideal outside that niche.
@menu
* Contributors to Eshell:: People who have helped out!
@end menu