Markdownで数式を表示する設定を調べても、ほとんどがMac環境での設定で、Windows環境での設定に手こずったので、今回はそれを整理したいと思います🐜
→間違いを見つけたので修正しました!(2020/02/28)
環境
私の環境は以下の通りです。
項目 | 内容 |
---|---|
OS | Windows 10 64bit |
vim | Kaoriya vim1 |
なお、dein.vimを使用し、そのディレクトリは以下に置きます。
C:\freeware\vim81-kaoriya-win64\vimfiles\bundles\repos\github.com\Shougo\dein.vim
dein.vimなどWindowsでのVimの設定は、以下の記事を参考にしてください。
Kaoriya GVimの設定方法|Git for Windowsインストール手順からおすすめプラグインやvimrcを紹介 - ari23の研究ノート
設定
以下の2つのファイルに数行追加します。
C:\freeware\vim81-kaoriya-win64\vimfiles\bundles\.cache\_vimrc\.dein\preview\_\index.html
C:\freeware\vim82-kaoriya-win64\vimfiles\bundles\repos\github.com\kannokanno\previm\preview\_\index.html
このファイルのheadに、以下のMathjax StartからMathjax Endまでをコピペします
<html> <head> <meta charset="UTF-8"> <title>Preview</title> <link type="text/css" href="css/previm.css" rel="stylesheet" media="all" /> <link type="text/css" href="../_/css/lib/mermaid.min.css" rel="stylesheet" media="all" /> <!-- Mathjax Start --> <script src='https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/MathJax.js?config=TeX-MML-AM_CHTML' async></script> <!-- Mathjax End --> <style> /* Fix #43 */
C:\freeware\vim81-kaoriya-win64\vimfiles\bundles\.cache\_vimrc\.dein\preview\_\js\previm.js
C:\freeware\vim82-kaoriya-win64\vimfiles\bundles\repos\github.com\kannokanno\previm\preview\_\js\previm.js
このファイルのfunction loadPreview()の下の方に、以下のMathjax StartからMathjax Endまでをコピペします。
if (needReload && (typeof getContent === 'function') && (typeof getFileType === 'function')) { var beforePageYOffset = _win.pageYOffset; _doc.getElementById('preview').innerHTML = transform(getFileType(), getContent()); mermaid.init(); Array.prototype.forEach.call(_doc.querySelectorAll('pre code'), hljs.highlightBlock); autoScroll('body', beforePageYOffset); style_header(); /* Mathjax Start */ MathJax.Hub.Config({ tex2jax: { inlineMath: [['$','$'], ["\\(","\\)"]] } }); // added1 MathJax.Hub.Queue(["Typeset",MathJax.Hub]); //added2 autoScroll('body'); /* Mathjax End */ }
以下追記内容(2020/02/28)
最後にdein.vimのキャッシュをクリアします。
GVimまたはVimで以下のコマンドを叩きます。
:call dein#recache_runtimepath()
これでわざわざキャッシュファイルを編集することはありません。
数式の書き方
markdownファイルで、$で数式を挟むとインライン表示できます。
$X[n] = \sum_{k=0}^{N-1}x[k] \exp({-j\frac{2\pi nk}{N}})$は重要な数式です。
は重要な数式です。
また、$$で挟むと中央揃えで表示されます。
$$ X[n] = \sum_{k=0}^{N-1}x[k] \exp({-j\frac{2\pi nk}{N}}) $$
ちょっと癖があったりしますが、基本的にはLaTexの数式と同じ記法です。
おわりに
2017年くらいに1回やってダメで、もう一回試したらできるようになりました。
編集するファイルパスが違うことに気づくのが難しかったです。
でも、これでMarkdownで数式がかけるようになったので、いよいよ研究ノートが不要になりそうです。
参考になれば幸いです(^^)