1

主にノートにemacsを使っています。すべてのメモは次の場所にあります: ~/Dropbox/Uni/Notes

キーボード ショートカット (C-f12 など) を結び付けて、ソース バッファーとは無関係に上記のディレクトリで常に開始される helm-find を実行したいと考えています。

私が試してみました:

(global-set-key (kbd "C-<f2>") (lambda () (interactive) (helm-find "~/Dropbox/Uni/Notes/")))

しかし、実行すると、通常は現在のバッファと同じ「DefaultDirectory」の入力を求められます。

?

[編集]
ハックアラウンドを作成しました:

(global-set-key (kbd "<C-f2>")
    (lambda ()
      (interactive)
      (find-file "~/Dropbox/Uni/Notes/leo.org")
      (helm-find nil)))

これでファイルが開き、helm-find を実行すると、それは leo.org の場所を基準にしています。しかし、より良い解決策が望ましいでしょう。

[編集] 以下のソリューションは完全に機能します。

4

1 に答える 1

1

どうぞ:

(defmacro helm-find-note (dir)
  `(defun ,(intern (format "helm-find-note-%s" dir)) ()
     (interactive)
     (let ((default-directory ,dir))
       (helm-find nil))))

(global-set-key (kbd "C-M-3") (helm-find-note "~/Downloads"))
于 2015-01-27T16:35:57.197 に答える