ナッパさん。

自宅で働いてるエンジニアがなんか書くところ

JSで開発したMarkdownコンバータ RichMD v1.1.0 の機能解説

本日12/28にJSライブラリRichMD v1.1.0をリリースしました 🎉

 

www.npmjs.com

 

MarkdownからHTMLに変換してくれるコンバータですが、

Markdownらしさを残しつつ、Markdownを超える機能を提供する

をコンセプトに開発しました。

 

本来MarkdownMarkdown記法をHTML記法に変換するのみで、クラス指定やスタイルシートの読み込みなどは管轄外でしたが、RichMDはスタイルシートの読み込みや特定のHTMLタグ作成&クラス指定にも対応しています。

 

今日はRichMDならではの独自機能を解説していきたいと思います。

数式(TeX記法)

RichMDはTeX記法にも対応しており、数式を作ることができます。

 

f:id:bebeji_nappa:20201228172817p:plain

 参考: https://github.com/bebeji-nappa/richmd/blob/HEAD/docs/md-syntax.md#mathematical-formula-block-use-katex

 

カラーブロック

色のついたブロック内にテキストを書くことができます。デフォルトでは5色定義されています。メッセージを強調したい時に便利な機能です。

f:id:bebeji_nappa:20201228173222p:plain

参考: https://github.com/bebeji-nappa/richmd/blob/HEAD/docs/md-syntax.md#color-block

 

ドロップダウン

Markdownでは以下のドロップダウン機能を実装する際、直接HTMLを記述していましたが、RichMDでは独自記法を設定して実装しています。

これでドロップダウン機能の記述が簡単になります。

f:id:bebeji_nappa:20201228173609p:plain

参考: https://github.com/bebeji-nappa/richmd/blob/HEAD/docs/md-syntax.md#dropdown-details

 

RichMD CLI実装 & RichMD fileの誕生

そして、RichMDの大きな特徴は独自のCLIを搭載しているところです。

拡張子を .richmd で作成されたファイル(RichMD fileと名付けています)を読み込んで、HTMLに変換しています。

もちろん、先ほど紹介した独自記法にも対応しております。

これにより、下記の点ができるようになりました。

  • 各自用意したCSSを独自記法で読み込む
  • 特定のHTMLを独自記法で作成する

また v1.1.0 からファイルパスにディレクトリ指定することで、複数のRichMDファイルを同時にHTML変換・出力する事ができるようになりました。

これで RichMDファイルの使いやすさが格段に上がりました。

詳しい使い方は以下のURLにて。

richmd/usage-cli.md at master · bebeji-nappa/richmd · GitHub

 

なぜ、このようなことが出来るのか?

RichMDは他ライブラリに依存せず、Markdown(独自記法含む)パーサー&HTML変換を全て行うように開発されています。

このことにより、RichMD CLIなどの実装や独自記法の定義も可能になります。

当初RichMDファイルでHTML変換した場合、

TeXの数式描画やコードブロックのシンタックスハイライトは他ライブラリに依存していたため、変換後はCDNで呼び出すようにしていましたが、現在はRichMD側で呼び出している形式にしています。

 

今後の課題

RichMDにもまだ課題があります。それは、

React & Vue で RichMDファイルで使えるようにする

ことです。

現在では、RichMDファイルでの変換とReact & Vue でRichMDを使用した際の処理パターンが違うため、React & Vue で RichMDファイルが使えない状態になっています。
また、React & Vue で RichMDファイルを使うにはまだまだ解消しなければいけない壁が多いのも現状です。

今後はこちらを解消して、より使いやすいRichMDになるように開発を進めていきます。

 

GitHub

github.com

社内LT大会で純粋にラブライブを布教した話

ども、ナッパです。

Twitter はこちら↓

twitter.com

 

今日からこのブログをやっていきますので、よろしくです。

 

さて、先日記念すべき第1回社内LT開催されまして、

新人ながら、登壇させていただきました。

 

しかも、内容はラブライブ!というどっぷり趣味に浸かったプレゼンをしました。

実際のプレゼン資料のタイトル↓

f:id:bebeji_nappa:20201003162155p:plain

 

私含め、5人プレゼンしたのですが、

他の方のLTは真面目な内容プレゼンしていて、内心かなりヒヤヒヤしましたが、

プレゼン内容は概ね好評で良かったです。

またフィードバックでは、「LT大会が少々固い空気だったので、ナッパくんのLTでいい感じに盛り上がったからよかった」という意見を頂きました。めっちゃ、嬉しいです!

 

プレゼンした内容

 

ラブライバーのエンジニア多い説

社内LTではライフハック系ではOKという感じだったので、(おまけ感覚で)ラブライバーになることでどれだけお得ポイントが出るのかというのを話しました。

f:id:bebeji_nappa:20201003215638p:plain

いや、マジでこの業界はラブライバー多いんですよ。

ラブライバーのエンジニアと会うと「推しは誰ですか?」は挨拶代わりに最初に聞きますね。

ちなみに、僕はμ'sの南ことりちゃんが好きです!

f:id:bebeji_nappa:20201003220010p:plain

 

最後に

ラブライブ、すごい良いアニメなので、ぜひ見てほしいですね。

f:id:bebeji_nappa:20201003220145p:plain

ただの布教ブログになってしまった...