エディタをAtomからVisual Studio Code(VS code)に移行してしばらくたった。環境はそれなりに整ってきた気がする。
私の場合,プログラマーではないので,原稿を書くのにエディタを使っている。Wordを使うのがふつうなのだろうが,Wordにはどうしても馴染めない。それに,前世紀からTeXにあこがれていて,数式を記述するならTeXでと思っている。
VS codeにも,LaTeX Workshopという拡張機能で,TeXの環境をつくってある。でも,文書全体をTeXで書くよりも,Markdown+TeXの方が手っ取り早い。Markdown Preview Enhancedという拡張機能は,TeXの記述も,MathJaxまたはKaTeXでプレビューしてくれるので便利だ。数式メインではない原稿は,これを使って書くのがマイブームになっている。
そこで本題,Markdown Preview EnhancedのKaTeX設定の記録。設定ファイルは,~/.mume/katex_config.jsで,次のようにしている。
module.exports = { delimiters: [ {left: "$$", right: "$$", display: true}, {left: "\\[", right: "\\]", display: true}, {left: "$", right: "$", display: false}, {left: "\\(", right: "\\)", display: false}, ], fleqn: true, macros: { "\\unit": "\\,\\mathrm{#1}", "\\unitbf": "\\,\\mathbf{#1}", "\\chemf": "\\mathsf{#1}", "\\chemfbf": "\\mathbf{#1}", }, }
これは,ウェブ用のKaTeX設定とほぼ同じ。数式の太字についても加えたいと思っている。
また,~/.mume/style.less ファイルを次のようにして,やや大きく感じる数式のサイズを調節し,タイトルまわりを好みに合わせてくっきりさせた。
.markdown-preview.markdown-preview { color: black; h1 { margin: 0.5em 0em; color: white; text-align: center; padding: 0.25em; background-color: #0099ff; border-radius: 0.25em; } h2 { margin: 0.5em 0em; color: #007ac6; border-bottom: medium dotted; border-color: #007ac6; padding: 0.15em; padding-left: 1em; } h3 { margin: 0.5em 0em; padding: 0.3em; padding-left: 0.5em; /*border-left: 20px solid;*/ color: #007ac6; border-color: #007ac6; background-color: #ccebff; border-radius: 0.25em; } h3:before { content: '▶'; color: white; margin-right: 4px; } h4 { padding: 0.3em; padding-left: 1em; background-color: #ccebff; border-radius: 0.25em; } h5 { border-left: 8px solid; padding: 0em; padding-left: 0.3em; } h6 { text-decoration: underline; } .katex { font-size: 1.1em !important; } }
なお,TeXで書いた原稿はPDF,Markdownで書いた原稿はHTMLにし,プリントアウトして組み上がりイメージを固定。その組み上がりイメージとともに,組版先に合わせた文字データに変換して渡す。実際には,素のテキストに変換するのがほとんどで,何だかもったいない気がする。
そう言えば,ワープロ専用機で原稿を書き始めたとき,組版先に文字テキストも渡せるのに,プリントアウトだけでよいと言われたときがあった。プリントアウトをもとに,タグ付きテキストで打ち直すらしい。文字テキストにタグを追加する方が面倒だと。ワークフローを変えるのは大変なのだろう。でも,これはすぐに変わった。いくら何でも,全部打ち直す方が無駄だ。しかも,タグだって単純なものなら,正規表現を使った置換などで機械的にも追加できる。実際に追加して渡したら,驚くほど組版速度が上がった。
TeXやMarkdownファイルを組版につなげられるようにしたい。でも,これは事前の打ち合わせをしっかりとしないといけないし,それなりのボリュームがないとメリットが生かせないだろう。私もそろそろ引退なので,やっても意味がないとあきらめている。
そもそもDTPシステムで組版をする必要があるのか。TeX経由PDFにできるし,HTMLへの変換も簡単にできる。ウェブでのコンテンツ作成がいつかはメインになるだろうから,TeXやMarkdownのしっかりとした書式をつくっておけば,なんにでも生かせるように思う。