やってみる

アウトプットすべく己を導くためのブログ。その試行錯誤すらたれ流す。

Node.jsでマークダウンをパースする環境構築

前回の環境を継承して。

成果物

github.com

前回まで

今回は前回を継承した環境作成。

概要

適当にプラグインを探して確かめた。

モジュール version 概要 問題
markdown-it 8.4.1 パーサ本体。
highlightjs 9.10.0 <pre><code>をハイライトする
markdown-it-anchor 4.0.0 <a id="見出し"> チェーンアイコンがなくURLを取得できない
markdown-it-deflist 2.0.3 <dl><dt><dl> 値を横表示にするにはCSS必須?
markdown-it-kbd 1.1.1 <kbd> [[ some ]] ネストできず<kbd><kbd>Ctrl</kbd>+<kbd>V</kbd></kbd>が表現できない
markdown-it-multimd-table 3.1.2 <table>の空列を結合 行結合は左列のみ
markdown-it-ruby 0.1.1 <ruby> 振り仮名。でんでんマークダウン記法

f:id:ytyaru:20180426152316p:plainf:id:ytyaru:20180426152322p:plainf:id:ytyaru:20180426152326p:plain

使用感

Markdownの貧弱さ

基本的には軽快に書けて素晴らしいのだが機能不足。かといってAsciiDocは可読性が下がりすぎて書きたくない。せめて<kbd><kbd>Ctrl</kbd>+<kbd>V</kbd></kbd>マークアップがしたいのだが。

ブラウザ自動更新が残念

なぜかうまく反映されない。原因不明。最初はブラウザのキャッシュが残っているせいかと思ったが違うと思う。ブラウザのメニューから履歴削除しても反映されなかったから。また、再起動しても同様。gulpコマンド実行後、ローカルサーバをCtrl+Cで終了し、再起動しても変わらず。

試行錯誤しているうちに、反映される手順をみつけた。それが以下。だが、無駄な操作が多くて時間がかかる。

  1. ./src/js/など、変更されたら再ビルドする設定になっているファイルをvimで開く
  2. wqで閉じる
  3. ブラウザのリロード完了を待つ(20秒)
  4. 上記を3回ほどくりかえす
  5. 反映される

なぜか何度も書込をくりかえさねば反映されない。謎。手順3は必ず待機しないとダメ。横着して即:wqを3回くりかえしても反映されなかった。

開発環境

ファイルサイズ約110MiB。

  • Raspberry Pi 3 Model B
    • Raspbian GNU/Linux 8.0 (jessie)
      • vim 7.4
      • Chromium 56.0.2924.84
      • Node.js 9.4.0
        • npm 5.6.0
          • n 2.1.7
          • Gulp 3.9.1
            • work系
              • gulp-plumber 1.2.0
              • gulp-notify 3.2.0
              • browser-sync 2.23.7
            • HTML
              • gulp-pug 4.0.1
            • CSS
              • gulp-stylus 2.7.0
            • JS
              • webpack 4.6.0
              • webpack-stream 4.0.3
              • gulp-babel 7.0.1
              • babel 6.23.0
              • babel-preset-env 1.6.1
              • babel-polyfill 6.26.0
            • Markdown