HTMLでkbdタグをExportしたい Emacs OrgMode
kbd
というHTMLタグがあり、CSSによっては <kbd>Ctrl-A</kbd>
とするとKeybordの押下を表現してくれる。
Ctrl-A という具合に。Org Modeで書いたテキストからExportでこのタグを使いたいと思っていたら、
うまく実現する方法を書いている記事を見つけた。
通常のExport
デフォルトではverbatimとcodeは同じタグを出力する。
(org-export-string-as "=code= ~kbd~" 'html)
... <code>code</code> <code>kbd</code> ...
ちょっともったいないですね。
変換される対象のHTML TAGは org-html-text-markup-alist
変数を見ればわかる。
((bold . "<b>%s</b>") (code . "<code>%s</code>") (italic . "<i>%s</i>") (strike-through . "<del>%s</del>") (underline . "<span class=\"underline\">%s</span>") (verbatim . "<code>%s</code>"))
codeを kbd
タグで出力してほしいところ。
解決策
冒頭で紹介した記事で、まさにこれを解決してくれている。 まあ、上述の内容はこれを踏まえて噛み砕いて書いたものなのだが。
https://endlessparentheses.com/inserting-the-kbd-tag-in-org-mode.html(eval-after-load 'ox-html ;; If you prefer to use ~ for <code> tags. Replace "code" with ;; "verbatim" here, and replace "~" with "=" below. '(push '(code . "<kbd>%s</kbd>") org-html-text-markup-alist))