スクリプトのお勉強

Markdown to HTML(grip)

投稿日:

1.はじめに

最近の文書はほとんどMarkdownで書くのですが、それをHTMLに変換する方法を調べました。

ただし、私がMarkdownと思っている文法は「github-flavored-markdown」であって、微妙にMarkdownではないようです。

なんとなくPython

変換するだけなので、なんでもいいのですが、とりあえずPythonで考えました。

2.grip

gripというのがよさそうだったので使用してみました。

実行方法

インストールから実行までは以下の通りです。

$ pipenv install grip
$ pipenv run grip tech-data-2020-01-python3-aes-encryption.md --export tech-data-2020-01-python3-aes-encryption.html
Exporting to tech-data-2020-01-python3-aes-encryption.html

ただし、inline(CSSをHTMLファイルに含む)にしているので、無駄なCSS群が入ります。必要であれば削除したほうがいいでしょう。

3.HTML内容

HTMLはすべて1ファイルで生成されます。
内容そのものはかなりいい感じです。

わたしが使用するのは以下なのですが。

  • 箇条書き(2段以上)
  • 引用(「“`」)(的に使用する)

以下の感じのMarkdownは

"```"
"```"
- A
  - B

以下の感じになります。

<pre>タグや、箇条書きが二段にわたって表示されているのが分かります。

4.おわりに

「github-flavored-markdown」をちゃんと取り扱えるのは意外に少ないような気がしました。
ここらへんは実際に自分のMarkdownを持ってこないとなかなか参考にならないのが難しい所です。

参考

  • https://stackoverflow.com/questions/7694887/is-there-a-command-line-utility-for-rendering-github-flavored-markdown

-スクリプトのお勉強

執筆者:

関連記事

Python3/ある日付から日付までの月/日/時間ごとの時刻を算出する

小ネタです。 要するに、時刻A と 時刻B を指定したときの、各時間間隔での時刻取得したかったです。 当初はdateutilを使う方法でなく、自前で実装しようと思ったのですが、面倒なことに気づきました …

Certbot(snap版)の起動が失敗した件

certbotの起動が失敗した 小ネタです。 なぜかSSL証明書が更新されず、Let’s Encrypt Expiry Botからたくさんメールが来るなーと思ったらcertbotの起動が失 …

Python3でMongoDBを使ってみる(MongoEngine)

仕事している過程で、ふと疑問に思うことがありました。非同期についてです。 非同期問題を解決する方法はたくさんあると思いますが、MongoDBで解決できるのかが気になったので試してみました。 非同期問題 …

Githubからお告げ

Githubからお告げが来た お告げってのは大げさですが。 Github にpackage-lock.jsonを置いておくと、Githubが脆弱性検査をして、メールを知らせてくれます。 js-yaml …

Mojolicious XML-RPC Pluginの開発(1)

はじめに 最近、お仕事関連で、perlとWebアプリケーションを触っています。 両方一度にお勉強、ということで、perlのWAF(Webアプリケーションフレームワーク)を調べてみようと思いました。 こ …

google オプトアウト Click here to opt-out.