![]() Hydra even makes numbers work as digit arguments, so you can do 9k as you would in vim. Now you can enter the helm-like-unite hydra with escape in helm and then use j and k to navigate up and down and space to mark candidates. (key-chord-define minibuffer-local-map "jk" 'helm-like-unite/body) or with key-chord.el suggested by ReneFroger (define-key helm-map (kbd "") 'helm-like-unite/body) With hydra there’s no evil involved, and it’s as easy as this: Spacemacs has a more simple way to do things if you want to extract it, but I prefer hydra. It works, but it’s ugly, long (>60 lines), and you have to define a new evil state each time. ![]() I originally created mini-states using the same method evil-lisp-state uses. One thing I sometimes miss when using Helm is the ability to switch from insert to normal to do things like mark or move between candidates. Helm is pretty much the emacs equivalent of unite except even more integrated. It even makes a “color” distinction where a head with the color blue will exit the state while those that are red (default) will not. It does everything one would initially hope for and allows for global hydras as well as hydras in specific major modes. Hydra has other convenience features, such as allowing for help text for each key or “head” in the hydra to be printed in the echo area. A better one would be the example given by Oleh Krehel (hydra’s author) and bcarell for switching between splits. ![]() However, it’s generally simpler to just use the dot operator for repeating single actions. ![]() There have already been evil plugins such as evil-lisp-state and code in spacemacs that create mini-states for more specific tasks, but hydra makes the creation of these much simpler.Ī commonly given example of when one might use a hydra is when repeating an action over and over, such as scrolling or zooming. The equivalent of a vim-submode would be a hydra. The equivalent of a vim mode in emacs is basically an evil state (using the evil plugin). I use the word “state” because the word “mode” has a very different different meaning in emacs (kind of like “yank” does). If you’re going to be performing multiple related actions in a sequence, it is more efficient to enter a state where you can execute those actions using only single keys. The point is the same as that behind modal editing. The hydra package for emacs basically provides an extremely convenient way to create custom, persistent states where single keys will have a different effect than they normally would. ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |