2019年1月2日水曜日

BBEditのPreviewフィルタ

以前にも書きましたが BBEdit の Preview 機能で拡張版の Markdown を表示できます。以前は、 Markdown の拡張版 MultiMarkdown でも利用でき、表も描画できることをご紹介しました。

少し工夫することで kramdown でも Preview に表示できます。kramdownは C や Python などのプログラム コードを色づけしたHTMLを出力できます。kramdownのインストールに関してはこのページを参照してください。macOSはRuby 2.x がインストールされていますので、上記ページの Mac OS X 項目にある命令を一つ実行するだけです。

kramdownのインストールが終わったとして・・・まず、~/Library/Application Support/BBEdit/ の中に Preview Filters という名前でディレクトリを作ります。既に Preview Filters がある場合はそのディレクトリを使ってください。

次に、Ruby を使ったShell Scriptを書きます。Shell Script の書き方や設定は他のサイトを参照してください。BBEditで以下のコードを書いて(コピー ペーストして)保存します。ここではファイル名を kramdown にします。保存先は先ほどの~/Library/Application Support/BBEdit//Preview Filters/ の中です。
#!/usr/bin/ruby
require 'kramdown'
markdown = $stdin.read
markdown = +markdown
markdown.force_encoding("UTF-8")
print Kramdown::Document.new(markdown).to_html
インストールの作業は以上です。

Preview で見るには、Markdown ファイルをBBEditで開き、[Markup > Preview in BBEdit] を選択します。次に、Preview ウィンドウ内にある[Filter]タブのプルダウンメニューから kramdown を選択します。

なお Kramdown の Option を設定する場合には最後の行のKramdown::Document.new(markdown).to_htmlのなかのnew(markdown の後に ', {}' を入れて、{}の中にOption を設定してください。Kramdown の Option は Google などで検索すると、この書式と共に色々と出てきます。

0 件のコメント: