Edited at

マークダウンビュワー Markn v0.1.1 リリース

More than 3 years have passed since last update.

Electron製のマークダウンビュワーアプリ Markn v0.1.1 をリリース。リアルタイムプレビューのCPUコストが低めなのが特徴。とりあえずビュワーとして最低限ぽい機能を実装したのでマイナーバージョンを上げてリリースした。

こういうアイコン ->


作ったきっかけ


この四日間に何があったのか?

5000行オーバーのマークダウンを編集しようとしたらフリーズした。Atomのマークダウンプレビューはファイルに変更がある度にマークダウンをHTMLにコンパイルし全要素を再レンダリングするのでそのコストが半端無く、CPU使用率が激増した模様。1


目指してるところ


  • 大きなマークダウンを編集しながらプレビューできる

  • 大きなマークダウンを縦断するための検索機能がある2


技術的な話



  • atom/electron: はじめ Chrome extension を書いていたがファイルシステムがないのでローカルファイルの監視がすごくつらいことになった。Node+Chromium が手軽にユーザー環境にダウンロードできる現代すごい。


  • facebook/react: リアルタイムな更新性の高いHTMLをレンダリングするのに最適な答えと思う。


  • facebook/flux: やってみてる。冗長という感じは自分はあまりしない。イベントリスンとメソッドコールがこんがらがりがちなアプリケーションのコードが超絶に整頓されるのでやって良かったという感想しかない。


  • mizchi/md2react: Kobito for Windows で使われているマークダウンをReactエレメントに変換してくれるやつ。これがなかったらアプリを作ろうとは思わなかった。


  • babel/babel: ES6とES7のasync/awaitで書いてみている。非同期処理を見通しよく書けて楽しい。CoffeeScriptからJavaScriptに戻ってきたのだけど、ArrowFunctionとかあるのでそんなに書き味も悪くないという感想。3


まとめ


  • react+md2react 最高だった。


  • minodisk/markn へのプルリクお待ちしております。





  1. 扱っているマークダウンの大きさが異常なだけで、常識的な大きさのマークダウンだとすごく良いマークダウンエディタだと思う。 



  2. 現状、大きなファイルで検索すると重いという課題がある。 



  3. 悪くないという程度で CoffeeScript のが圧倒的にサクサク書けるのだけど。