evil VS doom-emacs

Compare evil vs doom-emacs and see what are their differences.

evil

The extensible vi layer for Emacs. (by emacs-evil)

doom-emacs

An Emacs framework for the stubborn martian hacker [Moved to: https://github.com/doomemacs/doomemacs] (by hlissner)
Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
evil doom-emacs
105 271
3,210 13,953
2.0% -
8.0 9.9
26 days ago almost 2 years ago
Emacs Lisp Emacs Lisp
GNU General Public License v3.0 only MIT License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

evil

Posts with mentions or reviews of evil. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-02-22.
  • From Doom to Vanilla Emacs
    6 projects | dev.to | 22 Feb 2024
    evil mode
  • Packages that you would like to be in emacs core ?
    10 projects | /r/emacs | 11 Dec 2023
    Since we already have vyper-mode, why not add Evil to the stack?
  • Ask HN: Does anyone Lisp without Emacs?
    4 projects | news.ycombinator.com | 7 Nov 2023
    2 stripe blue belt here! I used to use Vim for everything other than Java development and have now adopted Emacs in the same way. I am using it for Clojure and Common Lisp development along with org mode, irc, rss, git and file management

    I started with Evil mode and then moved to Xah fly keys before sticking to the emacs bindings. Having the caps lock key bound to CTRL helped me a lot. I don't know if it makes that much of a difference for Emacs but using the DVORAK layout has helped my fingers

    There are other bindings you can try like Meow or God mode but I don't know what the adoption rate is like for them. Emacs gives you the flexibility to set it up as you please. As others have mentioned, there may be other keyboard options that might be more helpful as well

    https://github.com/emacs-evil/evil

  • Emacs Is My New Window Manager
    9 projects | news.ycombinator.com | 1 Aug 2023
    If you already know Vim, you should probably not use Emacs without Evil:

    https://github.com/emacs-evil/evil

    It gives you comprehensive Vim bindings so what you need to learn to be comfortable in Emacs is very little. As a bonus, it also keeps your RSI risk unchanged.

  • Is orgmode really that much better than an equivalent workflow using vim + other tools?
    14 projects | /r/orgmode | 29 May 2023
    I would *highly* recommend using vim keybindings if you're just getting into it (Doom or just evil). I switched from vim to emacs and tried to rough it with the default keybindings thinking that otherwise I wasn't /really/ using emacs, but I was wrong! I've been using org-mode/emacs for ~2 years now and I've slowly been migrating everything into it as I find useful tools/modes/etc (and now thanks to u/ilemming I have ~12 more to experiment with 😂)
  • Switching from Emacs. My experience
    20 projects | /r/neovim | 24 May 2023
    Despite using Emacs as my main editor, I was extremely familiar with Vim since I also used it frequently, and was able to use it quite well, especially because I also used [evil](https://github.com/emacs-evil/evil) in Emacs since Emacs's native keybindings are uncomfortable to use. I never used Vim as my primary editor though because it was cumbersome to configure. As many people say, Vimscript just feels wrong, so I gave up on trying to customize Vim.
  • Is it possible to use vim like navigation and control everywhere on the windows/mac applications?
    4 projects | /r/vim | 14 May 2023
    uhm... this maybe? https://github.com/emacs-evil/evil
  • evil-set-leader vs general.el for SPC based keybindings
    2 projects | /r/emacs | 26 Apr 2023
    ;; (setq debug-on-error t) (setq warning-minimum-level :error) ; don't show warning buffer unless error ;; REQUIRE PACKAGES AND CONFIGURE THEM (require 'package) (add-to-list 'package-archives '("melpa" . "https://melpa.org/packages/")) (package-initialize) ;; no littering (keep ~/.emacs.d from being generated so ~/.config path used) (require 'no-littering) ;; KEEP FILES UP TO DATE (GOOD FOR GIT BRANCHES) (global-auto-revert-mode t) ;; CONFIGURE BACKUP FILE BEHAVIOR (setq backup-dir (getenv "EMACS_BACKUP_DIR")) (setq backup-by-copying t) ; don't clobber symlinks (setq version-control t) ; use versioned backups (setq kept-old-versions 2) (setq kept-new-versions 4) (setq delete-old-versions t) (setq backup-directory-alist `((".*" . ,backup-dir))) ;(setq auto-save-file-name-transforms ; `((".*" ,backup-dir t))) ;; ORG MODE ; allow TAB to control folding in org-mode, see: ; https://jeffkreeftmeijer.com/emacs-evil-org-tab/ (setq evil-want-C-i-jump nil) ; needed before evil loaded (add-hook 'org-mode-hook 'org-indent-mode) ; always pretty indent ;; EVIL MODE (setq evil-want-integration t) ; optional since already t by default (setq evil-want-keybinding nil) (require 'evil) (when (require 'evil-collection nil t) (evil-collection-init)) (evil-mode 1) (evil-set-undo-system 'undo-redo) ; built-in undo-redo as evil backend ; start terminals in normal state by default so leader buffer navigation is more ; consistent ;(evil-set-initial-state 'term-mode 'normal) ; absolute garbage ; fix "v$" to exlcude newline (https://github.com/emacs-evil/evil/issues/897) (setq evil-v$-excludes-newline t) ; replace only in visual selection (setq evil-ex-visual-char-range t) ; built in solution for single line ; solution for visual block mode uses leader key below (evil-visual-replace-visual-bindings) ; leader key (largely used to replace C-x commands) (evil-set-leader nil (kbd "SPC")) ; window movement (evil-define-key 'normal 'global (kbd "o") 'other-window) (evil-define-key 'normal 'global (kbd "wh") 'windmove-left) (evil-define-key 'normal 'global (kbd "wj") 'windmove-down) (evil-define-key 'normal 'global (kbd "wk") 'windmove-up) (evil-define-key 'normal 'global (kbd "wl") 'windmove-right) ; buffer select, buffer list, find file, delete window (evil-define-key 'normal 'global (kbd "b") 'switch-to-buffer) (evil-define-key 'normal 'global (kbd "B") 'list-buffers) (evil-define-key 'normal 'global (kbd "f") 'find-file) (evil-define-key 'normal 'global (kbd "0") 'delete-window) ; definition jumping (gd already goes to definition) (evil-define-key 'normal 'global (kbd "gD") 'xref-pop-marker-stack) ; allow replacement only in selection for visual block mode (evil-define-key 'visual 'global (kbd "vbr") 'evil-visual-replace-replace-regexp) ; commenting (evil-define-key '(normal visual) 'global (kbd "gc") 'smart-comment) ; indentation (evil-define-key '(normal visual) 'global (kbd "gi") 'indent-region) ; statusline commands (available as ":") (evil-ex-define-cmd "done" 'save-buffers-kill-emacs) (evil-ex-define-cmd "at" 'open-ansi-term) (evil-ex-define-cmd "rb" 'rename-buffer) (evil-ex-define-cmd "hsp" 'split-window-below) (evil-ex-define-cmd "sw" 'rotate-frame) (evil-ex-define-cmd "tp" 'transpose-frame) (evil-ex-define-cmd "rshp" 'reshape-window)
  • 916 Days of Emacs
    12 projects | news.ycombinator.com | 13 Apr 2023
    I just stopped worry and succumbed to https://github.com/emacs-evil/evil.
  • How do I take priority from Evil's escape key?
    2 projects | /r/emacs | 5 Apr 2023
    I am currently using evil and corfu, but I want to configure such that pressing a single escape will invoke corfu-quit when its UI is active (because pressing "C-g" is harder).

doom-emacs

Posts with mentions or reviews of doom-emacs. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-10-23.
  • trouble downloading D.E. on emacs flatpak
    2 projects | /r/DoomEmacs | 23 Oct 2023
    $ rm -rf ~/.config/emacs # Remove the existing directory if necessary git clone --depth 1 https://github.com/hlissner/doom-emacs ~/.config/emacs ~/.config/emacs/bin/doom install
  • Zed – A high-performance, multiplayer code editor written in Rust. Now in public beta
    10 projects | /r/rust | 15 Mar 2023
    Sounds like what you want is emacs, but preconfigured. In that case, have you tried Doom Emacs, Spacemacs or any of the myriad of others like those?
  • How to specify formatter for LSP mode?
    2 projects | /r/DoomEmacs | 7 Sep 2022
    `;; Needed to add javascript-eslint to the the next-checker after lsp so that it would actually load, as that wasn’t happening by deafult ;; also needed to runit after the lsp-afer-initalize-hook because otherwise ‘lsp wasn’t a valid checker (add-hook ‘lsp-after-initialize-hook (lambda () (flycheck-add-next-checker ‘lsp ‘javascript-eslint))) ;; https://github.com/hlissner/doom-emacs/issues/1530 ;; Potential alternative to the above ;; (after! (:and lsp-mode flycheck) ;; (flycheck-add-next-checker ‘lsp ‘javascript-eslint))
  • Emacs for Professionals
    11 projects | news.ycombinator.com | 3 May 2022
    The performance lag of Spacemacs was addressed by Doom Emacs ( https://github.com/hlissner/doom-emacs ). Have you tried Doom Emacs by any chance. After syncing everything, the performance is stellar in my opinion.
  • Please help me in translating my vimrc to emacs equivalents.
    4 projects | /r/emacs | 27 Apr 2022
    but I just realized, you're probably better off using doom emacs. The defaults are sane, customizations are almost always optional and the community's really active/helpful. (Disclaimer: I'm a doom emacs user with ~2k lines of config)
  • Just discovered emacs as a long term vim user and it's incredible
    13 projects | /r/vim | 26 Apr 2022
    While Doom is more opinionated, it's not too difficult make Emacs your own, most of the choices are optimized anyway. Currently the head of Spacemacs devs is not active on the project anymore. Also I don't think it's hard to upstream code to Doom, as long as the code is thoroughly written, take a similar example on both sides: the introduction of a completion engine as layer/module (same packages are installed): - https://github.com/syl20bnr/spacemacs/pull/14901: 23 comments, 7 participants - https://github.com/hlissner/doom-emacs/pull/4664: 576 comments, 20 participants
    13 projects | /r/vim | 26 Apr 2022
    You should definitely mention Doom Emacs - it will make Vimmers instantly feel at home.
  • What would you consider a modern lisp workflow/toolchain?
    10 projects | /r/lisp | 25 Apr 2022
    Also Doom emacs has one. https://github.com/hlissner/doom-emacs https://github.com/hlissner/doom-emacs/tree/master/modules/lang/common-lisp
  • Windows, Frames... great...but sessions?!
    6 projects | /r/emacs | 23 Apr 2022
    In doom emacs I use workspaces https://github.com/hlissner/doom-emacs/blob/develop/modules/ui/workspaces/autoload/workspaces.el
  • Does anyone use Emacs to development big Golang project like Kubernetes?
    4 projects | /r/emacs | 19 Apr 2022
    I've been using Emacs(Doom Emacs) for Golang development for a while and everything is good so far, but I really have troubles when I use it to explore Kubernetes source code today, everything is very very slow which makes the entire editor almost unusable: gopls seems not respond at all, guru eats all of the CPU but all features just not working, and I even got the following error messages for simple saving:

What are some alternatives?

When comparing evil and doom-emacs you can also consider the following projects:

spacemacs - A community-driven Emacs distribution - The best editor is neither Emacs nor Vim, it's Emacs *and* Vim!

Visual Studio Code - Visual Studio Code

neovim - Vim-fork focused on extensibility and usability

prelude - Prelude is an enhanced Emacs 25.1+ distribution that should make your experience with Emacs both more pleasant and more powerful.

LunarVim - 🌙 LunarVim is an IDE layer for Neovim. Completely free and community driven.

helm - Emacs incremental completion and selection narrowing framework

emacs-ipython-notebook - Jupyter notebook client in Emacs

logseq - A local-first, non-linear, outliner notebook for organizing and sharing your personal knowledge base. Use it to organize your todo list, to write your journals, or to record your unique life.

source-code-pro - Monospaced font family for user interface and coding environments

vscode-neovim - Vim mode for VSCode, powered by Neovim

NvChad - Blazing fast Neovim config providing solid defaults and a beautiful UI, enhancing your neovim experience.

pylance-release - Documentation and issues for Pylance