Como novato en Emacs, encontré IDO y me encantó, ya que hizo que la búsqueda de archivos fuera mucho más rápida. Después de pasar un tiempo en este sitio, he leído más y más sobre Helm y planeo hacer el cambio. Algunas de mis preguntas son:
- ¿Cuáles son las mayores diferencias?
- Específicamente, ¿cómo debería cambiar mi flujo de trabajo al encontrar archivos, cambiar buffers o llamar a nuevos comandos?
Utilicé esta publicación para configurar Helm, pero mis búsquedas de archivos ( C-x C-f
) y los interruptores del búfer ( C-x b
) se parecen bastante a los de antes.
Aquí está mi configuración:
(require 'helm)
(require 'helm-config)
;; The default "C-x c" is quite close to "C-x C-c", which quits Emacs.
;; Changed to "C-c h". Note: We must set "C-c h" globally, because we
;; cannot change `helm-command-prefix-key' once `helm-config' is loaded.
(global-set-key (kbd "C-c h") 'helm-command-prefix)
(global-unset-key (kbd "C-x c"))
(define-key helm-map (kbd "<tab>") 'helm-execute-persistent-action) ; rebihnd tab to do persistent action
(define-key helm-map (kbd "C-i") 'helm-execute-persistent-action) ; make TAB works in terminal
(define-key helm-map (kbd "C-z") 'helm-select-action) ; list actions using C-z
(when (executable-find "curl")
(setq helm-google-suggest-use-curl-p t))
(setq helm-quick-update t ; do not display invisible candidates
helm-split-window-in-side-p t ; open helm buffer inside current window, not occupy whole other window
helm-buffers-fuzzy-matching t ; fuzzy matching buffer names when non--nil
helm-move-to-line-cycle-in-source t ; move to end or beginning of source when reaching top or bottom of source.
helm-ff-search-library-in-sexp t ; search for library in `require' and `declare-function' sexp.
helm-scroll-amount 8 ; scroll 8 lines other window using M-<next>/M-<prior>
helm-ff-file-name-history-use-recentf t)
(helm-mode 1)