use-package VS emacs-which-key

Compare use-package vs emacs-which-key and see what are their differences.

emacs-which-key

Emacs package that displays available keybindings in popup (by justbur)
Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
use-package emacs-which-key
67 37
4,365 1,690
- -
2.3 7.8
3 months ago 9 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
  • 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.
  • 'org' is already installed (use-package)
    1 project | /r/emacs | 24 Feb 2023
  • 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.

emacs-which-key

Posts with mentions or reviews of emacs-which-key. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-12-20.
  • Improving Emacs Isearch Usability with Transient
    2 projects | news.ycombinator.com | 20 Dec 2023
    I think which-key already solves exactly that: https://github.com/justbur/emacs-which-key
  • Evil mode's kinda hacky
    4 projects | /r/emacs | 27 Jun 2023
    As for the "complicated keybindings general" -- I assume because remembering things like C-x C-s is hard because of the shifted keystrokes? I get that, and there is in fact a solution for less used keybindings which I love, called 'which-key' https://github.com/justbur/emacs-which-key
  • Should I start with vanilla Emacs?
    2 projects | /r/emacs | 21 Jun 2023
    I would recommend installing the which-key package, which is a fantastic discoverability aid. If you ever want an example config to get some inspiration, I have one here: Emacs Bedrock
  • Best emacs configs for Javascript and/or users who don't like to memorize keybindings?
    5 projects | /r/emacs | 24 Apr 2023
    Make sure you have which-key installed and turned on. When using a keybinding that has a prefix (like C-x or C-c), it displays all the keybindings that start with that prefix.
  • Doom -> vanilla emacs 29
    8 projects | /r/emacs | 14 Apr 2023
    which-key for the shortcut menus
  • Switched to Emacs a week ago, really thrilled so far. Looking for help on a few (somewhat advanced) questions.
    5 projects | /r/emacs | 1 Apr 2023
    there are some packages to help with the keybings, which-key shows a list of keybind and its command and (guru-mode)[https://github.com/bbatsov/guru-mode] enforces to use the "best" keybind, for exemple, it forces you to use C-n to move the cursor, blocking you to use the down key, and if you press the down key, it show a text in minibuffer to the best keybind.
  • Is anyone able to resize which-key side-window?
    1 project | /r/DoomEmacs | 18 Mar 2023
    Thanks for confirming, I think it's an issue in which-key itself: https://github.com/justbur/emacs-which-key/pull/166
  • Too many keybindings
    4 projects | /r/emacs | 7 Mar 2023
    If you haven't already, definitely check out the package which-key.
  • Tell HN: Vim users, `:x` is like `:wq` but writes only when changes are made
    7 projects | news.ycombinator.com | 7 Jan 2023
    > even though I'm a terminal user ... I really like the discoverability of GUIs, and that's where a good GUI is unbeatable by CLI.

    CLI has poor discoverability? Sure; but even on the terminal, discoverability can still be good:

    A couple of nice examples of discoverability in keyboard-focused programs:

    - emacs' which-key[0]; there's a vim port[1] too. This shows you (some) of the available keybindings for the next input, and a short label. So you don't have to remember what `SPC h p ...` or all the options under `SPC f...`.. but it still helps to recall that `SPC h` is for 'help' related commands, `SPC f` for file related commands.

    - emacs' magit[2][3]. Magit is so good at discoverability, that I'd rate it as the best tool for using git with. I've learned more about git from using it.

    [0] https://github.com/justbur/emacs-which-key

    [1] https://github.com/liuchengxu/vim-which-key

    [2] https://magit.vc/

    [3] https://emacsair.me/2017/09/01/magit-walk-through/

  • Creating and displaying cheatsheets of keybindings
    6 projects | /r/emacs | 2 Nov 2022
    Am I right in thinking this is quite similar to which-key?

What are some alternatives?

When comparing use-package and emacs-which-key you can also consider the following projects:

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

hydra - make Emacs bindings that stick around

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

tokyonight.nvim - 🏙 A clean, dark Neovim theme written in Lua, with support for lsp, treesitter and lots of plugins. Includes additional themes for Kitty, Alacritty, iTerm and Fish.

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

k9s - 🐶 Kubernetes CLI To Manage Your Clusters In Style!

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

general.el - More convenient key definitions in emacs

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

evil-collection - A set of keybindings for evil-mode

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

helpful - A better Emacs *help* buffer