You only need keyfreq to find frequently used commands.
The frequently used commands should be assigned efficient key bindings.
But you need exclude already optimized commands or commands which cannot be optimized before starting keyfreq.
For example, commands like next-line/previous-line/forward-char/backward-char
could be excluded by tweaking variable keyfreq-excluded-commands
.
The minimum keyfreq setup,
(require 'keyfreq)
(setq keyfreq-excluded-commands
'(self-insert-command
abort-recursive-edit
forward-char
backward-char
previous-line
next-line))
(keyfreq-mode 1)
(keyfreq-autosave-mode 1)
My actual keyfreq setup is more complicated.
Below is the eight month keyfreq data of my office computer,
Times Percentage Command Key 4967 12.00% evilmi-jump-items % 2892 6.99% compile , o o 2178 5.26% find-file-in-project-by-selected , k k 1953 4.72% copy-to-x-clipboard , a a 1566 3.78% paste-from-x-clipboard , z z 1227 2.96% er/expand-region , x x 897 2.17% evil-repeat . 866 2.09% ido-find-file , x f, C-x C-f 819 1.98% toggle-full-window , f f 815 1.97% etags-select-find-tag-at-point C-], , h t 721 1.74% back-to-previous-buffer , b b 682 1.65% split-window-vertically , x 2 539 1.30% find-function , h f, C-h C-f 494 1.19% counsel-recentf-goto , r r 397 0.96% counsel-git-grep , g g 376 0.91% delete-other-windows , x 1, C-x 1 372 0.90% evilnc-comment-or-uncomment-lines , c i 351 0.85% eval-expression , e e, M-: 326 0.79% evilmi-select-items , s i 320 0.77% paredit-doublequote 307 0.74% evil-filepath-outer-text-object 300 0.72% steve-ido-choose-from-recentf 295 0.71% split-window-horizontally , x 3 283 0.68% git-add-current-file , x v a 279 0.67% winner-undo , x u, , s u, C-x 4 u 278 0.67% describe-function , h d, C-h f 278 0.67% evil-goto-mark-line ' 269 0.65% ido-kill-buffer , x k, C-x k 254 0.61% evil-goto-definition g d 253 0.61% pop-tag-mark M-* 251 0.61% git-messenger:popup-message , x v b, C-x v p 246 0.59% my-goto-next-hunk , n n 237 0.57% evilnc-comment-operator , , 235 0.57% flyspell-goto-next-error , f e, C-, 214 0.52% evil-exit-emacs-state 212 0.51% browse-kill-ring-forward 210 0.51% flyspell-buffer , f b 203 0.49% evil-ex-completion 195 0.47% narrow-or-widen-dwim , x n n 173 0.42% comint-send-input 173 0.42% beginning-of-defun , b f 170 0.41% evil-surround-region <visual-state> S 161 0.39% hippie-expand M-/ 151 0.36% describe-key , h k, C-h k 149 0.36% evil-space–evil-next-visual-line SPC 139 0.34% gnus-topic-select-group 138 0.33% js2-print-json-path , j p p 132 0.32% goto-line M-g g, M-g M-g 132 0.32% evil-avy-goto-subword-1 ; 127 0.31% ibuffer-mark-for-delete 127 0.31% evil-inner-single-quote 126 0.30% isearch-other-meta-char 124 0.30% term-send-up 118 0.29% isearch-other-control-char 116 0.28% evil-set-marker m 115 0.28% browse-kill-ring M-y, , y y 114 0.28% counsel-git-grep-yank-line , g l 114 0.28% evil-window-down C-w j 112 0.27% evil-jump-backward C-o 108 0.26% evil-visual-block C-v 108 0.26% evil-space–evil-previous-visual-line S-SPC 107 0.26% comint-previous-input 98 0.24% gnus-summary-exit 98 0.24% evil-search-word-backward # 98 0.24% forward-button 96 0.23% evil-paste-pop-next 95 0.23% ediff-next-difference 95 0.23% ido-imenu , i i 92 0.22% my-wg-switch-workgroup , w g g 90 0.22% counsel-git-find-file , g f 90 0.22% evilmi-delete-items , d i 87 0.21% gnus-summary-extract-mail-address 87 0.21% cliphist-paste-item , h h 84 0.20% subword-backward-kill <C-backspace> 84 0.20% paredit-backslash 83 0.20% my-yas-reload-all , y c r 81 0.20% pwd 80 0.19% previous-complete-history-element 80 0.19% wg-create-workgroup , w g t 78 0.19% evil-forward-WORD-end E 77 0.19% gnus-summary-scroll-up 76 0.18% gnus-summary-extract-cc-and-to 75 0.18% compile-goto-error 73 0.18% evil-find-char-to t 72 0.17% evil-repeat-find-char 69 0.17% evil-window-up C-w k 67 0.16% eval-last-sexp , x e, C-x C-e 66 0.16% evil-complete-next-line 66 0.16% exchange-point-and-mark C-x C-x 63 0.15% direx:previous-item 61 0.15% ediff-jump-to-difference 60 0.14% diredp-next-line 58 0.14% evilmr-replace-in-buffer , r b 58 0.14% counsel-imenu-goto , i m 56 0.14% evil-goto-mark ` 55 0.13% gnus-group-unsubscribe-current-group 55 0.13% ivy-bookmark-goto 55 0.13% evil-filepath-inner-text-object 54 0.13% describe-mode C-h m 54 0.13% recenter-top-bottom C-l 54 0.13% list-packages 52 0.13% gnus-topic-mark-topic 52 0.13% kill-line C-k, <deleteline> 51 0.12% find-and-ctags-update-all-tags-force 50 0.12% evil-paste-before P 49 0.12% execute-extended-command <execute>, C-x RET 49 0.12% etags-select-quit 49 0.12% evil-inner-WORD 48 0.12% find-tag g C-] 47 0.11% diredp-previous-line 46 0.11% paredit-close-square 44 0.11% paredit-open-square 44 0.11% evil-paste-last-insertion 42 0.10% evil-inner-double-quote 42 0.10% ivy-imenu-goto 40 0.10% counsel-git-find-my-file , g m 39 0.09% cp-filename-of-current-buffer , f n 39 0.09% gnus-article-read-summary-keys 39 0.09% isearch-nonincremental-exit-minibuffer 38 0.09% sh-assignment 38 0.09% mark-whole-buffer , x h, C-x h 38 0.09% evilmi-inner-text-object 36 0.09% evilnc-comment-or-uncomment-paragraphs , c p, C-c p 36 0.09% evil-toggle-input-method C-\ 35 0.08% org2nikola-export-subtree 35 0.08% subword-forward M-f, ESC <right> 34 0.08% evil-open-above O 34 0.08% compose-mail C-x m 33 0.08% evil-inner-paren 33 0.08% term-send-raw-meta 33 0.08% evil-invert-char ~ 32 0.08% evil-space–evil-repeat-find-char 32 0.08% httpd-restart-at-default-directory , w r d 32 0.08% cp-fullpath-of-current-buffer , f p 31 0.07% evil-forward-WORD-begin W 30 0.07% sort-lines , s l 30 0.07% bmkp-w3m-jump 30 0.07% evilnc-copy-and-comment-lines , c c, C-c c 29 0.07% toggle-company-ispell , t c i 29 0.07% top-level 28 0.07% package-menu-mark-upgrades 27 0.07% evil-numbers/dec-at-pt - 27 0.07% end-of-defun , e f, C-M-e 27 0.07% my-setup-develop-environment 26 0.06% evil-paste-pop 25 0.06% ediff-previous-difference 25 0.06% evil-backward-WORD-begin B 25 0.06% goto-char g o, M-g c 25 0.06% w3m-close-window 25 0.06% org-mime-htmlize 25 0.06% gnus-group-exit 24 0.06% git-gutter:toggle C-x C-g 23 0.06% my-gnus-group-list-subscribed-groups 23 0.06% find-directory-in-project-by-selected , f d 23 0.06% evil-inner-curly 22 0.05% org-edit-src-exit 22 0.05% string-edit-at-point , s e 22 0.05% package-menu-mark-delete 22 0.05% ido-magic-forward-char 22 0.05% run-js , r j s 22 0.05% git-gutter-reset-to-head-parent , g s h 21 0.05% counsel-read-history 21 0.05% rcirc-send-input 21 0.05% gnus-undo 21 0.05% subword-backward M-b 20 0.05% company-select-next 20 0.05% what-cursor-position g a, g 8, C-x = 20 0.05% my-grep , q q 20 0.05% hydra-gnus-summary/body 19 0.05% ansi-term 19 0.05% evil-window-right C-w l 19 0.05% debugger-jump 19 0.05% wg-switch-to-workgroup 19 0.05% yas-abort-snippet 19 0.05% tags-loop-continue M-, 19 0.05% swiper-the-thing , s s 18 0.04% my-wg-swich-to-workgroup 18 0.04% org-edit-special 17 0.04% lisp-complete-symbol 17 0.04% my-wg-switch-to-workgroup-at-index 17 0.04% test 17 0.04% ediff-scroll-vertically 16 0.04% w3m-view-previous-page 16 0.04% evil-window-left C-w h 16 0.04% isearch-yank-kill 16 0.04% my-goto-previous-hunk , p p 16 0.04% js-beautify , j b 16 0.04% hydra-launcher/body 16 0.04% read-only-mode C-x C-q 16 0.04% message-send-and-exit 16 0.04% etags-select-goto-tag 15 0.04% evil-next-match g n 15 0.04% js2r-kill , j j k 15 0.04% string-edit-conclude 15 0.04% delete-char 14 0.03% gnus-summary-limit-to-author 14 0.03% ediff-swap-buffers Comments powered byRetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4