Description #
Eshell is a shell written entirely in Emacs Lisp that runs inside the Emacs text editor, providing a hybrid shell and editor environment for Unix-like systems.
History #
Eshell was developed as part of the GNU Emacs project starting in the 1990s, aiming to offer a shell tightly integrated with Emacs features and buffers.
Hello World Code #
echo "Hello, World!"
How to Run #
Option 1: Online
(Requires Emacs environment; online Emacs is rare)
Option 2: Local
Open Emacs and run:
M-x eshell
Type commands directly in the Eshell buffer.
Key Concepts #
- Written entirely in Emacs Lisp
- Integrates shell and text editor capabilities
- Supports standard shell commands and Lisp evaluation
- Customizable with Emacs scripting
- Runs inside Emacs buffer
- Supports command history and completion
- Can invoke Emacs functions as shell commands
- Cross-platform on any system supporting Emacs
- Combines shell and programming environment
- Ideal for Emacs users wanting shell access
Try It Online #
Emacs Online Editor (run M-x eshell
after loading)
Fun Facts #
- Eshell can run Lisp code and shell commands interchangeably.
- It allows seamless editing of command history with Emacs keybindings.
- Unlike traditional shells, Eshell can interact directly with Emacs buffers and files.
- Eshell supports asynchronous commands within the editor.
- It blurs the line between shell scripting and text editing.