emacs-which-key VS helm

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

emacs-which-key

Emacs package that displays available keybindings in popup (by justbur)

helm

Emacs incremental completion and selection narrowing framework (by emacs-helm)
InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
emacs-which-key helm
37 48
1,703 3,347
- 0.1%
8.3 9.7
22 days ago 8 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.

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?

helm

Posts with mentions or reviews of helm. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-06-09.
  • lsp-treemacs icons not showing in Mac Terminal
    1 project | /r/emacs | 18 Oct 2023
    (setq inhibit-startup-message t) (setq visible-bell t) (setq make-backup-files nil) ; Disable the creation of ~ files (setq auto-save-default nil) ;; stop creating those #auto-save# files (setq display-line-numbers-mode t) ;(scroll-bar-mode -1) ; Disable visible scrollbar. Only for visual GUI ;(tool-bar-mode -1) ; Disable the toolbar. Only for visual GUI ;(tooltip-mode -1) ; Disable tooltips (menu-bar-mode -1) ; Disable the menu bar. Only for visual GUI ;(set-fringe-mode 10) ;(setq visible-bell t) ; Mac OSX specific ;mac-function-modifier ;mac-control-modifier) ;mac-command-modifier ;mac-option-modifier ;mac-right-command-modifier ;mac-right-control-modifier ;mac-right-option-modifier ;; key bindings (when (eq system-type 'darwin) ;; mac specific settings (set-terminal-coding-system 'utf-8) (set-keyboard-coding-system 'utf-8) (prefer-coding-system 'utf-8) (setq mac-command-modifier 'meta) (setq mac-control-modifier 'control) (global-set-key [kp-delete] 'delete-char) ;; sets fn-delete to be right-delete ) ;; ORG Mode (global-set-key (kbd "C-c l") #'org-store-link) (global-set-key (kbd "C-c a") #'org-agenda) (global-set-key (kbd "C-c c") #'org-capture) ;; packages (require 'package) (add-to-list 'package-archives '("melpa" . "https://melpa.org/packages/")) ;; Comment/uncomment this line to enable MELPA Stable if desired. See `package-archive-priorities` ;; and `package-pinned-packages`. Most users will not need or want to do this. ;;(add-to-list 'package-archives '("melpa-stable" . "https://stable.melpa.org/packages/") t) (package-initialize) ;; LSP-mode config (setq package-selected-packages '(lsp-mode yasnippet lsp-treemacs helm-lsp projectile hydra flycheck company avy which-key helm-xref dap-mode)) (when (cl-find-if-not #'package-installed-p package-selected-packages) (package-refresh-contents) (mapc #'package-install package-selected-packages)) ;; sample `helm' configuration use https://github.com/emacs-helm/helm/ for details (helm-mode) (require 'helm-xref) (define-key global-map [remap find-file] #'helm-find-files) (define-key global-map [remap execute-extended-command] #'helm-M-x) (define-key global-map [remap switch-to-buffer] #'helm-mini) (which-key-mode) (add-hook 'c-mode-hook 'lsp) (add-hook 'c++-mode-hook 'lsp) (lsp-treemacs-sync-mode 1) (setq gc-cons-threshold (* 100 1024 1024) read-process-output-max (* 1024 1024) treemacs-space-between-root-nodes nil company-idle-delay 0.0 company-minimum-prefix-length 1 lsp-idle-delay 0.1) ;; clangd is fast (with-eval-after-load 'lsp-mode (add-hook 'lsp-mode-hook #'lsp-enable-which-key-integration) (require 'dap-cpptools) (yas-global-mode)) ;; theme (load-theme 'modus-vivendi t)
  • How can I temporarily bypass helm and put free text
    2 projects | /r/emacs | 9 Jun 2023
    Oh wow wow wow! I just checked your commit on the repository. That's so amazing. I really appreciate that. And I also found a convenient donation link.
  • Looking Back On Helm (secure email appliance)
    1 project | news.ycombinator.com | 24 May 2023
  • Best emacs configs for Javascript and/or users who don't like to memorize keybindings?
    5 projects | /r/emacs | 24 Apr 2023
    Next you "only" have to remember (elisp) function names. "Completion UIs" like ivy/counsel, icomplete, helm or vertico/consult, give you a nice auto completion list on M-x (choose the one of them, you like the most). Some of those Completion UIs will display existing keybindings and a short documentation for commands, near the auto complete candidates. So you will start to remember more keybindings without "learning sessions", just because invoking functions via keybindings is much faster (more convenient).
  • org-SUPER-sparse-tree?
    3 projects | /r/emacs | 20 Apr 2023
    I use imenu, and helm-imenu to filter out the list interactively. Instead of scrolling through, you "jump" to an item via completion like helm-imenu, which filters all headings interactively in real-time as you type.
  • Is There A Buffer Package Like Vertico Pos-Frame That Makes A Rectangle Frame In The Middle For Dired Mode?
    2 projects | /r/emacs | 23 Mar 2023
    I personally use Helm, so I can manage all files (open, delete, copy, rename, etc) all from completing prompt directly, I don't need to open Dired for that.
  • What are the benefits of Vertico over Helm or Ivy?
    3 projects | /r/emacs | 21 Feb 2023
    Helm 1.2 release was in September 2011: https://github.com/emacs-helm/helm/releases/tag/v1.2
  • (require 'ffap) after bug fix #2574 in helm-lib.el?
    1 project | /r/emacs | 15 Feb 2023
    I updated helm recently and when trying to use it after startup I was hitting "Defining as dynamic an already lexical var" . debugger showed me it was due to `ffap-machine-p-local` not being defined yet, digging into helm-lib.el i found that it is due to the ffap let bindings added recently to `helm-guess-filename-at-point` - the first one was to address this issue https://github.com/emacs-helm/helm/issues/2574 and more recently two more ffaps were let bound. I can fix by adding `(require 'ffap)` in the helm `use-package` `:config` -- wondering if this is the recommended way or if it might be something worth living inside helm-lib.el near the top where it requires cl-lib already?
  • Drastic slowdown in Helm+auctex
    1 project | /r/emacs | 22 Dec 2022
    Related to https://github.com/emacs-helm/helm/discussions/2577
  • Completion command for common file moving/copying commands
    4 projects | /r/emacs | 27 Oct 2022
    Yes, Helm. Probably others like Embark.

What are some alternatives?

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

hydra - make Emacs bindings that stick around

vertico - :dizzy: vertico.el - VERTical Interactive COmpletion

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.

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

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

consult - :mag: consult.el - Consulting completing-read

use-package - A use-package declaration for simplifying your .emacs

selectrum - 🔔 Better solution for incremental narrowing in Emacs.

general.el - More convenient key definitions in emacs

fzf - :cherry_blossom: A command-line fuzzy finder

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

company-mode - Modular in-buffer completion framework for Emacs