doomemacs/modules/term/eshell
Henrik Lissner 10d0b60f5d
refactor(lib): deprecate pushnew!
In the spirit of 6f40ad5, I'm deprecating this macro because it doesn't
provide enough value to exist and serves only to complicate a casual
reader's understanding of Doom's modules.

Ref: 6f40ad55f5
2026-03-01 18:10:43 -05:00
..
autoload fix(eshell): +eshell-switch-workspace-fn: update signature 2025-08-11 01:36:52 +02:00
.doommodule feat: add .doommodule files 2024-09-14 20:47:39 -04:00
config.el refactor(lib): deprecate pushnew! 2026-03-01 18:10:43 -05:00
packages.el refactor(eshell): swap out {fish,bash}-completion for pcmpl-args 2026-02-22 00:45:39 -05:00
README.org docs(*): replace all-the-icons with nerd-icons 2023-09-16 20:19:11 +02:00

:term eshell

Description   unfold

This module provides additional features for the built-in Emacs Shell

The Emacs Shell or doom-package:eshell is a shell-like command interpreter implemented in Emacs Lisp. It is an alternative to traditional shells such as bash, zsh, fish, etc. that is built into Emacs and entirely cross-platform.

Module flags

This module has no flags.

Hacks

  • Even with fish-completion-fallback-on-bash-p non-nil, fish must be installed for bash completion to work. This has been circumvented.
  • doom-package:eshell-did-you-mean does not work on first invocation, so we manually invoke it once.

TODO Changelog

This module does not have a changelog yet.

Installation

Enable this module in your doom! block.

This module requires either Fish shell or Bash for code completion.

TODO Usage

󱌣 This module's usage documentation is incomplete. Complete it?

  • Command completion with Company
  • fish-style prompt with Git integration
  • z-like directory jumping
  • Command-not-found recommendations

TODO Configuration

󱌣 This module's configuration documentation is incomplete. Complete it?

TERM name

By default, doom-package:eshell sets the $TERM variable to "xterm-256color", which helps with rendering various colours. As eshell is not a terminal emulator, these will not always work 100%. Modifying eshell-term-name to your liking may help.

Troubleshooting

There are no known problems with this module. Report one?

Frequently asked questions

This module has no FAQs yet. Ask one?

TODO Appendix

󱌣 This module has no appendix yet. Write one?