Helm is terrific. I switched to it from ido in the past 6 months and it's really increased my efficiency. In particular helm + projectile allows me to really quickly switch between projects and navigate to the file I need. I remapped some of the most-used emacs commands to their helm equivalent's and haven't looked back:
(global-set-key (kbd "C-x r l") 'helm-bookmarks)
(global-set-key (kbd "M-x") 'helm-M-x)
(global-set-key (kbd "M-y") 'helm-show-kill-ring)
(global-set-key (kbd "C-x b") 'helm-mini)
(global-set-key (kbd "C-x C-f") 'helm-find-files)
(global-set-key (kbd "C-c g") 'helm-git-grep)
(global-set-key (kbd "C-c C-.") 'helm-git-grep-at-point)
(global-set-key (kbd "C-x C-d") 'helm-browse-project)
My one complaint is getting used to C-z to drill into a directory when navigating the file system with helm-find-files. I haven't et figured out a way to map RET to do anything other than open the selected directory in Dired.
Re:A CEO's Guide to Emacs
by CodyReichert on Sunday November 29, 2015 @12:25PM
(#10645272)
Does TAB not work for you to drill into a directory? I never have to use C-z in helm-find-files, just a simple `C-x f`, type a few characters, TAB expands the directory, and ENTER opens the file or directory.
Toying with helm led me to discover decipher-mode, unrelated but worth mentionning.
I've switched from ace-jump to avy with De Bruijn hints; it shows all the hints at once rather than in sequence, even if the hints overlap with one another.
The downside is that, sometimes, the hints are longer, but I've found it faster to know right away to type "wxyz" than to receive "w", "x", then "y" one at a time.
Ivy, part of swiper, is also good and more light weight, it's what I use for completion now. (though I used helm for ages and really liked it too).
https://github.com/emacs-helm/helm
Ace Jump is pretty incredible. All editors and IDE's should be required to implement it. Here's a video demo:
https://www.youtube.com/watch?v=UZkpmegySnc
Easy Motion does the same thing in vim: http://www.vim.org/scripts/script.php?script_id=3526