Logo wizaman's blog (legacy)

Markdownエディタ再検討

November 26, 2017
15 min read
Table of Contents

2015年に「Markdownエディタ色々」という記事で、Windowsのローカル環境で動作するMarkdownエディタを検討しました。

そのときは細かいバグや不満のあるHaroopadから脱却したかったのですが、他の選択肢がこなれていなかったので結局Haroopadの使用を継続する、という結果になっていました。当時ですらHaroopadの更新の遅さは気にしていたのですが、なんと、あれから一度も更新されませんでした。

GitHubでのコミット履歴を見ると、実質的に2013年から開発が止まっていることがわかります。たくさんの問題(Issues)報告があっても放置状態。未来がありません。

私もHaroopadを使い続ける気はない上、過去の記事がたまに参照されていて、未来のないツール利用者を増やすのも嫌だなと思い、改めてMarkdownエディタを再検討する記事をまとめることとしました。

やっとHaroopadを手放せる状況になったと思います。

現状

日本語の情報で俯瞰的なものをあまり見かけないので、英語ソースで軽く検索してみたところ、下記の記事がヒットしました。やったぜ、調べる手間が省けたよ(‘3’)

2017年7月27日の公開なので比較的新しいです。このSitePointというサイト自体、Web技術メディアとして世界的に有名だそうです(私はWeb系の人じゃないのでよく知らない)。

ここで紹介されている7つのツールの要点を書きます。

  • Texts
    • 有料(19ドル)。
    • 標準Markdown対応。
    • WYSIWYGスタイルで編集し、段落下げなどの機能を持つ。
    • どのようなMarkdown出力になるか編集中にわからない。
  • WriteMonkey
    • Markdown Extra対応。
    • .NET Framework 4.0で動作。
    • 余計なUIを表示しないシンプルなUI。フルスクリーンでテキストだけに集中できる、という思想。
    • シングルペインでMarkdownを直接編集し、シンタックスハイライトが働く。
  • Haroopad
    • GFM(GitHub Flavored Markdown)、MultiMarkdownなど対応。
    • 独自拡張も豊富。
    • 分割画面で編集。
    • 多くの問題を残しながら、長いこと更新する姿勢を見せていないので今オススメはできない。
    • しかし、愛用者が多いことは確かで、試したいなら使ってみるといい。
  • MarkPad
    • オープンソース。
    • .NET Framework 4.0で動作。WPFによる実装。
    • 標準Markdownにいくらかの機能を追加。
    • 分割画面で編集。
    • これも長年更新が止まっている。
  • MarkdownPad 2
    • Pro版は有料(14.95ドル)。
      • Pro版は、Markdown Extra、GFM(GitHub Flavored Markdown)対応を含む。
    • .NET Framework 4.0で動作。WPFによる実装。
    • 分割画面で編集。
    • これも長年更新が止まっているため、Pro版の購入を勧められない。
  • Typora
    • Markdown編集を進化させる現代的で活発なプロジェクト。
    • シングルペインのビジュアルエディタだが、その場で入力したMarkdownを反映する(純粋なWYSIWYGではない)。
      • 簡単なテーブル編集やコードのシンタックスハイライトが気が利いている。
    • 純粋なソースコードモードにしてMarkdownを直接編集することもできる。
    • まだベータ版であり、多くの問題が報告されているので、今後安定することが期待される。
  • Caret
    • 有料(29ドル)。試用版あり。
    • Parsedown(PHPのMarkdownパーサ)と同じ作者らによる開発。
    • Electronによる実装。
    • シングルペイン/デュアルペインで編集(プレビューの有無を切り替え)。
    • Markdownコードに対してきれいにシンタックスハイライトを適用してくれる。
    • こちらも多くの問題が報告されていて、今後安定することが期待される。

これまで有力候補だったHaroopadやMarkdownPad 2、MarkPadの開発が死んでるので、他の4つのツールを紹介した、とのことです。

特に現在のオススメはTyporaとCaretの2つで、どちらも開発中のためバグは色々あるけど、改善に取り組んでいるので期待できる、という印象です。Windows専用エディタという前提で始まりましたが、TyporaもCaretもマルチプラットフォーム対応(Win/Mac/Linux対応)というのが現代的で良いですね。SitePointの記者はCaret愛用者が多いようです。

今回評価したツールの他にも、下記のものもあるよ、とのこと。興味あれば調べてみてください。

調べてみた印象

先程の記事を踏まえた上での私の抱いた印象をまとめます。えぇ、はい、実際に使ってみての所感ではないです。全部試す気力はなかったし、実質2択で個性も異なるなら、触る前から答えが明確でした。

Typora

WYSIWYGベースにMarkdown編集機能を統合するというTyporaのアプローチは非常に面白いと思います。

しかし、Markdownコードを見ながら編集しないと個人的には気持ち悪いです。そもそもWYSIWYGってMarkdown使いには嫌悪されてきたはずです。WYSIWYGによる出力コードが汚い/意図に反する、という伝統的な問題に悩まされて、見やすさ/書きやすさ/管理しやすさを兼ね備えた最強のプレーンテキストとしてMarkdownの地位が築かれた、と私は思っています。だからこそ、私はWordPressのビジュアルエディタを信用しないし、Markdownでブログ記事を書くのです。

Typoraなら面倒なテーブルの記述を楽しくできそう、とは思うのですが、それ以上に怖いんですよね・・・。

ソースコードモードで編集することもできますが、それではTyporaの魅力を活かしきれませんし、それこそCaret使え、ということになります。Typoraを採用するには、ビジュアルエディタを採用する目的が必要です。

WYSIWYGとして安定して使えるのなら、それはMarkdownエディタの進化系というよりは、WYSIWYGの進化系として価値があるのではないでしょうか。それはそれでとても良いことです。実際、軽く試し打ちしてみた感じはまずいコードは出力されないです。改行はまとめるというMarkdown本来の仕様を無視しているところとか気にしない限り。

今の私にはTyporaの思想が受け入れられないだけで、とてもいいエディタだとは思います。少なくとも、問題だらけなのに何年もメンテされてないエディタを使うよりは圧倒的に良いです。MarkdownビューアやHTML/PDF変換ツールとして利用する、という選択もアリです。

Typoraは日本語情報もいくらかあるので調べてみるといいです。下記の記事はTyporaの特徴をよくまとめていると思います。

Caret

私がTyporaを思想的に受け入れられないことを説明しましたが、Caretは対照的な存在です。

Caretはプレビューに頼らずとも、編集しているMarkdownそのものを装飾するので、シングルペインでも成り立ちます。それでいて、何を編集しているのかすべて把握・管理が可能でもあるので、私は安心して編集できます。

使いたければプレビューも使えるというのも最終確認するのに都合が良いでしょう。Haroopadなどを使っていて思ったのは、プレビューに頼り切った分割画面を前提にした編集作業は、スクロール同期のズレなどでどうしてもストレスを抱えてしまう、ということです。普段の編集作業はシングルペインで完結するのが大正解なのだと思います。その点では、Typoraも同じ考えを持つのでしょう。

また、Caretは、日付が明記されたリリースノートを見ると、活発な開発が可視化されていることも実感できます。そこも期待度と安心感が強い。

これこそ私の求めていたものだ、と思いました。やっと手に馴染むエディタが登場して感動です。何故か日本語情報が全然見当たらないので、英語ソースから調べてよかった。

ひととおり触ってみて、使い方を別の記事にまとめたので、興味あれば読んでみてください。

ただ、Typoraと違ってCaretは有料アプリケーションです。大した額ではないですが、ちょっと手を出しにくいかもしれませんね。試用版があるので、ひとまず触れてみるのが良いでしょう。

汎用テキストエディタ

SitePointではMarkdownを扱える汎用テキストエディタに対する言及がありませんでした。具体的には下記のテキストエディタが候補として考えられるはずです。

これらは以前の私の記事でも触れたもので、当時、Sublime Text以外のテキストエディタをMarkdownエディタとして利用するのはイマイチ、という話でした。多分、今なら状況は改善していると思われますが、きちんと確認していません。特にVisual Studio Codeは当時ベータ版でしたので、正式リリースによりかなり使えるようになっていると思います。

ただ、私はあまりテキストエディタにこだわりがありません。IDE(Visual Studio)とMarkdownエディタでほとんどのテキスト編集が完了するため、汎用テキストエディタをカスタムすることに時間をかけるモチベがありません。パッケージ管理や保守が面倒なんですよ。数年後にはまた状況が変わってるし。

それに、汎用エディタよりも専用エディタの方が、Markdownに特化した機能を作れるし、他の汎用機能と衝突するみたいな事情もなく、シンプルにまとまります。当時、Haroopadが一番良かったのはショートカットが充実していたから、というシンプルな理由が大きいです。そして、シングルペインでのMarkdown編集に特化したTyporaとCaretが登場した今、Markdown編集のためだけに汎用テキストエディタをカスタムするのは、余計なことに時間を消費しているように感じられます。

もちろん、愛用のテキストエディタに一本化した方が編集効率がいい、という明確な目的のある人は好きなようにカスタムすれば良いと思います。そのための情報は調べれば色々と出てくると思いますので、私の方からは触れません。

まとめ

Caretは良いぞ。WYSIWYGでよければTyporaも良いぞ。