Là một người mới sử dụng Emacs, tôi đã tìm thấy IDO và yêu thích nó vì nó giúp việc tìm kiếm các tệp nhanh hơn rất nhiều. Sau khi dành một chút thời gian trên trang web này, tôi đã đọc nhiều hơn về Helm và tôi đang lên kế hoạch thực hiện chuyển đổi. Một số câu hỏi của tôi là:
- Sự khác biệt lớn nhất là gì?
- Cụ thể, quy trình làm việc của tôi nên thay đổi như thế nào khi tìm tệp, chuyển đổi bộ đệm hoặc gọi lệnh mới?
Tôi đã sử dụng bài đăng này để thiết lập Helm, nhưng tìm kiếm tệp của tôi ( C-x C-f
) và bộ chuyển đổi bộ đệm ( C-x b
) trông khá giống như trước đây.
Đây là cấu hình của tôi:
(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)