2
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

neotree-mode における quicklook(チラ見)をMacOSの Quick Lookで実装した

Last updated at Posted at 2020-08-20

neotreeというパッケージを用いることでファイルやフォルダをツリー表示できる。本パッケージについては多くの先人が参考記事を書いているので、ここでパッケージの詳細は述べない。

neotree-modeではSPCキーに、neotree-quicklookというチラ見のための関数がバインドされている。この関数はカーソル下のアイテムがファイルならばそれを別ウィンドウに開き、フォルダであれば展開することができる。ただ開いたファイルはそのままバッファとして残り続けるため、バッファを消すのが少々手間という問題がある。

一方、MacOSのFinderではSPCキーにQuick Lookがバインドされており、ファイル固有のアプリケーションを開かずとも、内容をプレビューできる優れものである。

本記事の主旨は表題の通りであり、MacOSのQuick Lookをneotree-modeでも利用可能にするものである。

以下がそのコードである。


(require 'neotree)

(defun neotree-ql-dwim(file-path &optional arg)
  (interactive)
  (neo-global--select-mru-window nil)
  (call-process-shell-command
   (format "qlmanage %s -p\"$@\" &>/dev/null" file-path) nil 0))   

(defun neotree-quick-look2 ()
  "Quick Look like NeoTree open event."
  (interactive)
  (neo-buffer--execute nil 'neotree-ql-dwim 'neo-open-dir)
  (neo-global--select-window))

(with-eval-after-load "neotree"
  (define-key neotree-mode-map (kbd "SPC") 'neotree-quick-look2))

追記 (2024/07/08):

Ubuntuで同様の機能を実現する記事を書いた:

追記 (2024/07/13):
コードを見直し、Async Shell Command バッファのポップ周りのごちゃごちゃした操作をなくした。

2
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?