hexo-tag-detailsを公開しました
HexoにHTML5の detailsタグ^1を記事に埋め込むためのプラグインを作成して、npmに公開しました。この記事はそのプラグインの紹介記事です。
hexo-tag-detailsについて
hexo-tag-detailsはブログ構築ツールHexoのプラグインで、投稿にHTML5のdetailsタグを埋め込むためのタグを提供します。detailsタグを使うと以下のようなUIを追加できます。
猫は好きですか?
- 好き
- 大好き
- 愛している
インストール
npmコマンドでインストールしてください。
1 |
|
使い方
要約文と詳細文を書くだけです。ページを表示したしたときに詳細文を開いておく場合には、mode:open
を指定します。指定しない場合は詳細文は閉じて表示されます。mode:close
は後で説明する設定でデフォルトを詳細文を開くにした場合に利用します。
1 |
|
例1:
1 |
|
上の例は以下のようなHTMLを生成します。
1 |
|
表示は以下のようになります。
あなたの出身はどこですか?
私は地球出身です。 水の惑星です!
例2(mode:open
を指定した場合):
1 |
|
上の例は以下のようなHTMLを生成します。
1 |
|
表示は以下のようになります。
あなたの好きな食べ物は何ですか?
- お寿司
- 天ぷら
- すき焼き
設定
className
className
はCSSクラス名を指定します。 (デフォルト: なし)
open
open
は最初から詳細文を開いておくかどうかを指定します(デフォルト: false
)
1 |
|
リポジトリ
以下のリポジトリで開発しています。バグ報告、ご要望はIssuesへどうぞ。プルリクエストも歓迎です。
最後に
このタグを作ったきっかけは「10の質問」をこのサイトでやってみようと思ったことです。
10の質問をやろうと思うと質問の解答が質問よりボリュームが多くて全体的に見づらくなることが分かりました。そこで質問の解答部分を折り畳めるようにしようとおもったのですが、HTML5の`details`タグを直接HexoのMarkdownに埋め込むとうまく動作しないことが分かりました。改行を有効にしていたので途中で``が入ってしまったのです。
もしかしたら、すでにdetails
のタグプラグインを作っている人がいるかも知れないと思って探して見ましたが、なかったので自分で作ってしまいました。大したことないタグですが、使って頂ければ幸いです。