Ubuntu Weekly Recipe

第823回軽量で期待どおりに動作するMarkdownエディター⁠ghostwriterを使用する

今回はKDE Gearに属するMarkdownエディター、ghostwriterを紹介します。

ghostwriterとは

ghostwriter、ライターにはちょっとドキッとしてしまう名称ですが、なかなかに歴史のあるMarkdownエディターです。

CHANGELOGによると、最初のリリースは2015年、パッケージのchangelogによると、Ubuntuのリポジトリに入ったのは19.04の頃です図1⁠。

図1 Ubuntu 19.04でインストールできるghostwriter。バージョンは1.7.4

実は過去にも紹介しようと思ったことはあったのですが、日本語で使う上での致命的な問題がありました。候補ウィンドウが変なところに表示されるのです図2⁠。これでは使い物になりません。

図2 Ubuntu 22.04 LTSのリポジトリにあるghostwriterをインストールして、日本語を入力中

風向きが変わったのは、ghostwriterがKDE Gearに移管されたタイミングです。KDE GearはKDEプロジェクトで開発しているアプリケーション集です。元の開発者から開発を引き継いだというのが実態のようです。2.2.0までは元の開発者によって開発され、その後はKDE Gearのアプリケーションとしてリリースされており、バージョンのスキームも変更されています。現在の最新版は24.05.2です。バージョンスキームはUbuntuと同じで、2024年5月にリリースされたKDE Gearの2番目のアップデートという意味です。

前述の候補ウィンドウの不具合も、KDE Gearに移管した最初のリリースの前に修正されています。

そんなghostwriterのいいところは、おおむね期待どおりに動作する、その1点です。Ubuntuで使用できるMarkdownエディターはたくさんありますが、実際に使用してみるとちょっとここが足りないんだよなぁと思えてくるのですが、ghostwriterにはそれがありません。必要な機能がひととおり揃っており、多少の不具合はあるものの、おおむね期待どおりに動作します。

筆者の原稿執筆環境

少し横道に逸れて、筆者の原稿執筆環境ですが、VS Codiumを使用してMarkdownで書いています。textlintでリアルタイムに校正する機能が手放せないのですが、なかなかに重量級なのですべてのPCで使用するのも現実的ではありません。具体的にはGPD MicroPCだといささか荷が重いです。今も「具体的にはGPD MicroPCにはいささか荷が重いです」と書いたら、⁠には」が2回以上使用されていると指摘してくれました。ありがとうtextlint。

そんなわけで長年もう少し手軽に使えるMarkdownエディターを探していました。ReTextもなかなかいいのですが、テーマの変更が難しく、どうしたものかと思っていたのです。

インストール

ghostwriterはUbuntuのリポジトリにDebianパッケージがあります。またFlathubにFlatpakパッケージもsnapcraftにsnapパッケージもありますが、筆者が試したところではFlatpakパッケージにはローカルの画像ファイルの扱いに問題があり、snapパッケージには日本語が入力できない(インプットメソッドが起動しない)という不具合を確認しています。

DebianパッケージだとKDE Frameworksのライブラリが大量にインストールされてしまうので、Ubuntu(GNOME)で使用する分にはあまり嬉しくありませんが、よしとしました。snapパッケージ版を修正するのが正しいような気もしますが。

Ubuntuのリポジトリ、特に22.04 LTSにあるghostwriterのバージョンは古いので、最新版をPPAに用意しました。22.04 LTS用と24.04 LTS用があります。

同時にPandocのパッケージもインストールしておくと、プレビューとエクスポートの選択肢が増えるのでおすすめです。

起動とカスタマイズ

ghostwriterを起動し、第821回の元になったMarkdownファイルを表示したのが図3です。

図3 ghostwriterの全貌

一番左側のペイン(サイドバー)には見出しが表示されていますが、タブになっており切り替えることができます。真ん中のペインが実際に執筆するエリアで、右のペインにはプレビューが表示されています。

カスタマイズは「Settings」にある項目で行えます。いくつかピックアップして見ていきましょう。

Font

フォントではデフォルトでモノスペースフォントが選択されています。⁠Noto Sans Mono CJK JP」にするのがおすすめです図4⁠。またはお気に入りのモノスペースフォントにするのもいいでしょう。

図4 フォントの変更例

Preview Options

前述のとおりPandocをインストールすると「Markdown Flavor」で選択できる項目が増えます。筆者は「PHP Markdown Extra」でMarkdownを書いているのでこれにしていますが図5⁠、⁠CommonMark」「GitHub-flavored Markdown」が広く使われているでしょうか[1]

図5 プレビューオプションの変更例

「Text Font」「Code Font」は、どうやら変更しても適用されないようです。

Preferences

全体の設定はPreferencesで行いますが、これといって変更すべき項目はありません。あえて挙げるとすれば「Editor」タブの「Tabulation」でしょうか。筆者の好みはTabではなくスペースで、幅は2文字なので「Insert spaces for tabs」にチェックを入れ、⁠Tabulation width」「2」に減らしました図6⁠。

図6 Preferencesの設定例

表示の切り替え

常時プレビューが出ている必要はないので、閉じたい場合は「View⁠⁠-⁠Preview in HTML」をクリックするか、Ctrl+Pキーを押します。あるいは右下の「</>」をクリックでもいいです。

図3の下中央にある「192 words」と書かれているところをクリックすると、候補が表示されてその中に文字数(characters)もあります。日本語ではあまり単語数は意味がないので[2]、文字数のほうが重要な場合が多いでしょう。

Markdownの記法を忘れてしまった場合は、F1キーを押すか、サイドバーの一番下のアイコンをクリックするとチートシートが表示されます図7⁠。

図7 Markdown記法をど忘れしたときに便利なチートシート

エクスポート

ghostwriterはエクスポート機能も強力です。⁠File⁠⁠-⁠Export」でダイアログを表示します。主にPandocのおかげで選択肢が多いですが、PDFに変換したい場合は事前に「wkhtmltopdf」パッケージをインストールした上で「PDF (wkhtmltopdf)」を選択してください[3]

図8はPDFに変換した例です。

図8 wkhtmltopdfを使用してMarkdownファイルをPDFにエクスポートした

おすすめ記事

記事・ニュース一覧