Macのvim-latexの設定
下記を合わせて参考。
MacPortsでLaTeXの導入とvim-latex - adragoonaの日記
設定ファイル
せっかちな人の為に、設定ファイルをまずのせておく。以下を.vimrc
に記載する。
filetype plugin on filetype indent on set grepprg=grep\ -nH\ $* let g:tex_flavor='latex' "自動折りたたみ無効 let g:TeX_AutoFolding = 0 let g:Tex_Folding = 0 let g:Imap_UsePlaceHolders = 1 let g:Imap_DeleteEmptyPlaceHolders = 1 let g:Imap_StickyPlaceHolders = 0 let g:Tex_DefaultTargetFormat = 'pdf' let g:Tex_FormatDependency_pdf = 'dvi,pdf' let g:Tex_FormatDependency_ps = 'dvi,ps' let g:Tex_MultipleCompileFormats = 'pdf' let g:Tex_CompileRule_dvi = 'uplatex -synctex=1 -interaction=nonstopmode -file-line-error-style $*' let g:Tex_CompileRule_ps = 'dvips -Ppdf -o $*.ps $*.dvi' let g:Tex_CompileRule_pdf = 'dvipdfmx $*.dvi' let g:Tex_BibtexFlavor = 'upbibtex' let g:Tex_MakeIndexFlavor = 'mendex -U $*.idx' let g:Tex_UseEditorSettingInDVIViewer = 1 let g:Tex_ViewRule_pdf = 'open -a Preview.app' let g:Tex_ViewRule_ps = 'open' let g:Tex_ViewRule_dvi = 'open' let g:Tex_IgnoreLevel = 9 let g:Tex_IgnoredWarnings = \"Underfull\n". \"Overfull\n". \"specifier changed to\n". \"You have requested\n". \"Missing number, treated as zero.\n". \"There were undefined references\n". \"Citation %.%# undefined\n". \"LaTeX Font Warning: Font shape `%s' undefined\n". \"LaTeX Font Warning: Some font shapes were not available, defaults substituted."
補足
let g:Tex_DefaultTargetFormat = 'pdf'
\ll
でコンパイルする場合の出力の拡張子。\ll
でコンパイルした場合に、pdfファイルになるまでコンパイルされる。.tex
ファイルがどのようにコンパイルされるかは、以下の設定による。
let g:Tex_FormatDependency_pdf = 'dvi,pdf'
g:Tex_FormatDependency_<format>
は<format>
の拡張子のファイルを得るためのコンパイル順序を表す。上記の例だと、.tex->.dvi->.pdf
に変換される。
let g:Tex_FormatDependency_ps = 'dvi,ps'
の場合は、.tex->.dvi->.ps
の順序でコンパイルされる。
コンパイルの方法は以下の設定による。
let g:Tex_CompileRule_dvi = 'uplatex -synctex=1 -interaction=nonstopmode -file-line-error-style $*' let g:Tex_CompileRule_ps = 'dvips -Ppdf -o $*.ps $*.dvi' let g:Tex_CompileRule_pdf = 'dvipdfmx $*.dvi'
g:Tex_CompileRule_<format>
は<format>
のコンパイル方法を指定している。コマンドの$*
は拡張子を抜いたファイル名を表す。
この設定では、\ll
を押した場合の動作は次のようになる。
g:Tex_DefaultTargetFormat
がpdf
なので、pdfへの変換を試みる。g:Tex_FromatDepedency_pdf
がdvi,pdf
なので、.tex->.dvi->.pdf
の順序でコンパイルをする。g:Tex_CompileRule_dvi
及びg:Tex_CompileRule_pdf
で指定されたコマンドを順に実行する。
let g:Tex_ViewRule_pdf = 'open -a Preview.app'
g:Tex_ViewRule_<format>
は\lv
で`
let g:Tex_MultipleCompileFormats = 'pdf'
texでcitationやreferenceを書く場合に、2回コンパイルしないと参照番号やcitationが表示されない場合がある。そのような時のため、vim-latexでは\ll
を押した場合に2回コンパイルを実行するようにすることができる。
pdf
を指定している場合は、コンパイル先にpdfを含む場合は、そのコンパイルをもう一度繰り返す。上記の例では、1->2->3->1->2->3
で実行される。
複数のformatを指定することも可能。
LaTex Font Warning
vim-latexは\ll
でのコンパイル時にwarningが出ると、途中でコンパイルを終了していしまう。latexのwarningでありがちな以下のタイプのエラー時にはやや面倒なことになる。
LaTeX Font Warning: Font shape `JT2/mc/m/it' undefined (Font) using `JT2/mc/m/n' instead on input line 238. LaTeX Font Warning: Font shape `JY2/mc/m/it' undefined (Font) using `JY2/mc/m/n' instead on input line 238.
vim-latexでは、warningを無視する設定を追加できる。
let g:Tex_IgnoreLevel = 9 let g:Tex_IgnoredWarnings = \"Underfull\n". \"Overfull\n". \"specifier changed to\n". \"You have requested\n". \"Missing number, treated as zero.\n". \"There were undefined references\n". \"Citation %.%# undefined\n". \"LaTeX Font Warning: Font shape `%s' undefined\n". \"LaTeX Font Warning: Some font shapes were not available, defaults substituted."
g:Tex_IGnoredWarnings
は、texのコンパイル時の無視する警告を指定している。上記のUnderfull
からCitation...
までは、デフォルトで指定されている項目である。
LaTeX Font Warning:
から始まる2行が新しく追加したもので、これを含むwarningを無視する。(%s
は任意の文字列を表す)
g:Tex_IgnoreLevel
は、g:Tex_IgnoredWarnings
で指定したwarningを何行目まで無視するかである。この場合、上から9行目のLaTeX Font Warning: Some font shapes were not available, defaults substituted.
のwarningまで無視する。
おまけ
uplatexでコンパイルする場合は、documentclass
にオプションでuplatex
をつけないと駄目な場合がある。
以下のようにdocumentclass
を変更する。
\documentclass[uplatex,12pt]{jsbook}