use-package VS evil

Compare use-package vs evil and see what are their differences.

use-package

A use-package declaration for simplifying your .emacs (by jwiegley)

evil

The extensible vi layer for Emacs. (by emacs-evil)
Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
use-package evil
67 105
4,363 3,210
- 2.0%
2.3 8.0
about 2 months ago 25 days ago
Emacs Lisp Emacs Lisp
GNU General Public License v3.0 only GNU General Public License v3.0 only
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.

use-package

Posts with mentions or reviews of use-package. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-06-29.
  • Use-Package & different key bindings based on host computer
    2 projects | /r/emacs | 29 Jun 2023
    Another way would be to redefine parts of the bind-key macro or its use-package support functions
    2 projects | /r/emacs | 29 Jun 2023
    I am not sure but the maybe the solution in this issue would point you to the right direction.
  • Can't remove Emacs as "cask emacs is not installed"
    2 projects | /r/emacs | 1 Jun 2023
    The package-install call installs use-package that provides a utility of the same name to make it easier to manage packages. It's admittedly a little overkill for this specific config, but it's a cheap investment that sets you up for later success.
  • symbols function definition is void: map!
    2 projects | /r/emacs | 22 May 2023
    Granted, the Doom macro makes your code looks nice and compact. But you can get very close to that just by using do-list and define-key together. Or by using the bind-key.el package, which is included with Use-package.
  • Clojure Turns 15 panel discussion video
    24 projects | news.ycombinator.com | 13 Feb 2023
    > Deps is well documented.

    > The issue I personally found is that I needed to look at a bunch of OS project's deps.edn to see how people commonly structure things. Other than that it is a simple tool.

    This strikes me as a contradiction, because if it was well documented you wouldn’t need to look at other people’s configs to see how to use it.

    My experience with deps.edn is that every time I start a project and make a deps.edn file, I immediately draw a blank and don’t know how to structure it, so I open ones from other projects to start lifting stuff out of them.

    I still don’t know how to reliably configure a project to use nrepl or socket repl without just using an editor plugin. I definitely have no idea how to use those in conjunction with a tool like reveal.

    To me, none of that is simple. Simple would be like Emacs’ use-package. With that I know how to add dependencies, specify keybinds, and do initialization and configuration off the top of my head. And it has really nice documentation with tons of examples.

    https://github.com/jwiegley/use-package

  • Newbie here! Need Help!
    6 projects | /r/emacs | 29 Jan 2023
    Since you are doing code development, the first things to go for would be setting up your emacs packaging (installing use-package and melpa (use-package's documentation covers this) so you have more packages to choose from (do be careful to not just pick things willy nilly but research them a bit first)) and then setting up lsp-mode. lsp-mode lets you use LSP servers for the specific programming languages you work with in a somewhat unified fashion. You then need to install and setup the LSP servers for the languages you use, and possibly install language specific Emacs packages as support (note, Emacs has builtin functionality for many).
  • Unable to display ligatures in Emacs
    2 projects | /r/emacs | 6 Jan 2023
    I'm using use-package as my package manager and the package ligature for the ligatures.
  • Boilerplate config
    9 projects | /r/emacs | 4 Jan 2023
    I have been crafting my emacs config for about 10 years. I started with vanilla and intentionally stayed away from frameworks. About two years ago I declared config bankruptcy and went down for a rewrite using use-package and straight.
  • what is basic alghoritm/logic of installation packages to emacs?
    2 projects | /r/emacs | 18 Dec 2022
    ref: https://github.com/radian-software/straight.el https://github.com/jwiegley/use-package
  • Visual code folding?
    8 projects | /r/emacs | 27 Nov 2022
    use-package! is a macro over use-package, and respect its syntax, with a few additions. Useful reference on use-package keywords.

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).

What are some alternatives?

When comparing use-package and evil you can also consider the following projects:

leaf.el - Flexible, declarative, and modern init.el package configuration

doom-emacs - An Emacs framework for the stubborn martian hacker [Moved to: https://github.com/doomemacs/doomemacs]

straight.el - 🍀 Next-generation, purely functional package manager for the Emacs hacker.

emacs-overlay - Bleeding edge emacs overlay [maintainer=@adisbladis]

nano-emacs - GNU Emacs / N Λ N O - Emacs made simple

org-super-agenda - Supercharge your Org daily/weekly agenda by grouping items

melpa - Recipes and build machinery for the biggest Emacs package repo

emacs-which-key - Emacs package that displays available keybindings in popup

general.el - More convenient key definitions in emacs

lsp-mode - Emacs client/library for the Language Server Protocol

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