【Emacs】helmを使う

スポンサーリンク

「helm」とは? いろんな機能があるようなので一言では難しいが、情報源からの絞り込みインタフェース。
私がよく使うのは、過去開いた履歴一覧から選択してファイルを開くとか、helmを使うことでファイルを開く操作が格段に楽になった。
その他いろんな場面で便利になるよう。helmを導入した備忘録を残す。

前記事で紹介した「recentf」は入れておいた方がいい。

準備

helmパッケージをインストール。

M-x package-install<RET>
helm

Emacsの設定

下記を初期設定に追加。
尚、私はinit-loaderを利用しており、~/.emacs.d/inits/35_helm.elファイルを作成。

;;; helmの設定
;;(require 'helm-config)
(require 'helm)
(helm-mode 1)
;;(helm-migemo-mode 1)

;; C-hで前の文字削除
(define-key helm-map (kbd "C-h") 'delete-backward-char)
(define-key helm-find-files-map (kbd "C-h") 'delete-backward-char)

;; TABとC-zを入れ替える
(define-key helm-map (kbd "<tab>") 'helm-execute-persistent-action)   ; rebind tab to run persistent action
(define-key helm-map (kbd "C-i") 'helm-execute-persistent-action)       ; make TAB work in terminal
(define-key helm-map (kbd "C-z")  'helm-select-action)            ; list actions using C-z
;;(define-key helm-find-files-map (kbd "TAB") 'helm-execute-persistent-action)
;;(define-key helm-read-file-map (kbd "TAB") 'helm-execute-persistent-action)

;; キーバインド
(global-set-key (kbd "C-c h") 'helm-mini)
(global-set-key (kbd "<f10>") 'helm-mini)
(define-key global-map (kbd "C-x b")   'helm-buffers-list)
;;(define-key global-map (kbd "C-x b") 'helm-for-files)
(define-key global-map (kbd "C-x C-f") 'helm-find-files)
(define-key global-map (kbd "M-x")     'helm-M-x)
(define-key global-map (kbd "M-y")     'helm-show-kill-ring)

C-c hキーで、過去開いたファイルの一覧から選択できるようになる。

補足

  • helm-find-fileで、TABキーを押すとデフォルトでは実行メニューがでる。bashではTABキーが補完なのだが、helmではC-zになっているので、TABC-zのキーを入れ替えた。スペースで区切って絞り込んでいけばいいが、思わず指が動く事もあるので(^^;)。

追記(2023/8/10)

いろいろ更新したら、下記エラーが発生。

Cannot open load file: No such file or directory, helm-config

どうやら、helm-config.elが削除されて、(require 'helm) でよくなったらしい。

参照記事

参考

  1. 初心者〜初級者のためのEmacs-Helm事始め : 前編 – Qiita
  2. helm-find-files でタブ補完を効かせる – 理系学生日記
  3. モダンなEmacsを求めて (5) helmをつかいはじめる – block_given?
  4. おすすめの helm拡張 – syohex’s diary
  5. #11 Emacs に革命を起こすパッケージ「helm」 (Software Design 2015年3月号掲載記事) Emacs helm インストール 設定 使い方
  6. 君は誰とEmacsる? (補完インターフェイス紹介篇) – Qiita
  7. 更新したHelmが起動しない問題の解決法 – Qiita

コメント

タイトルとURLをコピーしました