MarkdownをリアルタイムプレビューするためにGrip及びgrip-modeを試す。 Org-modeファイルも使えるため、今回はorg-modeを例とするが、基本的に使い 方は同じである。
Grip及びgrip-modeをインストールする
grip-modeは内部でGripというツールを使用している。このGripがリアルタイ ムレンダリングの機能を提供している。GripはPythonで実装されているので、 pipを用いてインストールする。
pip install grip
さらに grip-mode
をインストールする。 grip-mode
はMELPAからインス
トールできる。
(use-package grip-mode :ensure t :defer t)
リアルタイムプレビューを実行する
MarkdownやOrg-modeをカレントバッファの状態にして M-x
grip-browse-preview
を実行する。するとEmacsのバッファ上でリアルタイム
プレビューが開始される。
grip-browse-previewはXwidget Webkitをバッファに貼り付ける
grip-browse-preview
は内部で xwidget-webkit-browse-url
を使う実装
になっている。=xwidget-webkit-browse-url= はEmacs上のバッファにWebkit
を貼り付けることができる。それを用いてリアルタイムプレビューを実現して
いる。
(defun grip--browse-url (url)
"Ask the browser to load URL.
Use default browser unless `xwidget' is available."
(if (and grip-preview-use-webkit
(featurep 'xwidget-internal))
(progn
(xwidget-webkit-browse-url url)
(let ((buf (xwidget-buffer (xwidget-webkit-current-session))))
(when (buffer-live-p buf)
(and (eq buf (current-buffer)) (quit-window))
(pop-to-buffer buf))))
(grip--browser url)))