ポイント下のファイル/URLをチラ見するquick-preview.elを作りました


ファイル等のいろいろな情報をチラ見したいというのは、よくあるケースだと思います。

Helm のpersistent actionは、まさにチラ見そのものですし、dired上のチラ見アプリとしては、bf-modeやpeep-diredなどがあります。

Meadow/Emacs memo: ディレクトリ表示 ― dired など
emacs-jp/bf-mode
Emacs – peep-diredを使ってみた – Qiita

こういったツールは、Emacsで完結するものばかりなんですが、チラ見に特化した外部プログラムというものも、いろいろとあります。

こういった外部プログラムをうまく使役するというのもEmacsが得意とする分野の一つであり、Emacsらしい使い方だと思っています。

外部プログラムとの連携について、深く知りたい方は松山さんが書かれた素晴らしい文書を読まれることをおすすめします。

5年も前のものですが、非常に読み応えのある文書です。

Emacsは死んだ

quick-preview.el は100行にも満たない短いコード片ですが、そういった外部プログラムとEmacsをうまく繋げて素敵なチラ見ライフを演出するツールです。

インストール

MELPAにぷるりくを出しているのですが、マージしてもらってません。 最近Steveさんもお忙しいみたいですね。。。いずれマージしてもらえるとは思いますが、マージまで待てないという方は、ファイルをダウンロードして良きにインストールしてください。

myuhe/quick-preview.el

対応している外部プログラム

今のところ、以下の三つに対応しています。

  • GNOME Sushi
  • Gloobus preview
  • Quick Look

    Windowsでも同種のツールがないかと探してみたのですが、見つけられませんでした。もし、ご存知の方いたら教えてください。

    デフォルトでは、Linuxだと GNOME Sushiに MacだとQuick Lookに設定されます。

    Mac対応と動作確認には@syohexさんに協力してもらいました。ありがとうございます!!

コマンド

提供しているコマンドは、 quick-preview-at-point の一つだけです。

quick-preview-at-point は、ポイント下にあるファイル名やURLを quick-preview-method で設定された外部プログラムによってチラ見します。

GNOME Sushiでチラ見すると以下のようになります。

image.png

web.png

QuickLookを使った時のスクリーンショットもREADMEに載せたいのですが、いかんせんMacを持っていないので、できません。

心優しいMacユーザーの方からの御提供、お待ちしています。

設定例

設定は、次のようになるかと思います。自分のところでは押しやすいキーにバインドして常用しています。

(require quick-preview)
(setq quick-preview-method 'gloobus)

;;Setting for key bindings
(global-set-key (kbd "C-c q") 'quick-preview-at-point)
(define-key dired-mode-map (kbd "Q") 'quick-preview-at-point)

Emacsらしさって外部プログラムとの連携だ

冒頭で述べたようにEmacsには実に豊富な外部プログラムとのインターフェイスが準備されています。

この短いコードの中でも、QuickLookやGloobusではコマンドラインインターフェイス、SushiではD-busインターフェイスと二つのインターフェイスが使われています。

quick-preview.el がそういった豊富な外部プログラムとの連携について知る機会となれば幸いです。