私はターミナルから LaTeX ファイルをコンパイルしていますが、毎回ターミナルで次のコマンドを使用するのは少し面倒です。
xelatex "file-path"
Vim 内からこれを行う方法はありますか?
答え1
カップルvim
+について真剣に考えている場合latex
、カップルlatexxmk
+ LaTeXBox を使用することをお勧めします。
latexmk
は実際にはエディターから独立しています --- これは、LaTeX ドキュメントをコンパイルするために必要なファイルを監視し、必要に応じてコンパイルを再実行するスクリプトです。設定は少し複雑ですが、非常に便利なツールです。たとえば、私の設定では、次のようなファイル (同じディレクトリ内)xelatex
がありますlatexmkrc
。
$pdf_previewer = "start evince";
$pdf_pdf_update_method = 0;
$dvi_mode = 0;
$pdf_mode = 1;
$preview_continuous_mode = 1;
$pdflatex = "xelatex %O %S";
これで、(同じディレクトリから!) 実行できlatexmk file-name
、ファイル (または図面や参考文献などの依存ファイル) を変更するたびに、自動的にバックグラウンドでコンパイルされます。ファイルを保存するだけで、プレビューが自動的に更新されます。
latexmk
の中に宇宙リポジトリなので、これを有効にしている場合は、 で簡単にインストールできますsudo apt-get install latexmk
。
LaTeX-Boxvim
は、LaTeX ファイルの編集を簡素化し、コンパイルに使用するプラグインですlatexmk
。リンク先のページの指示に従ってインストールし、以下を に追加します.vimrc
。
" add a <comment> vim: set spelllang=es: to change language
" LaTeX:
let g:tex_flavor='latex'
autocmd FileType tex set spell wrap linebreak
let g:LatexBox_latexmk_async=1
let g:LatexBox_latexmk_preview_continuously=1
let g:LatexBox_quickfix=2
let g:LaTeXBox_output_type='' "Let latexmkrc choose the type
vim
(お好みに合わせて変更してください)。次に、コマンドを使用してバックグラウンド コンパイルを開始します\ll
。
答え2
次のようなことを試してください:
command C !xelatex %
あなたの で~/.vimrc
。
次に、次の操作を実行します。
:C
vim でファイルをコンパイルします。
関数を使用すると、より複雑な操作を実行できます。
function WriteCompileTex()
write
:! xelatex %
endfunction
command WC :call WriteCompileTex()
ユーザー定義のコマンドと関数は大文字で始まる必要があることに注意してください。
以下のこともできます:
au BufWritePost *.tex ! xelatex %
.tex
これにより、ファイルに書き込まれるたびにこのコマンドが実行されるので、 を実行するだけ:w
で、保存後に Tex ファイルがコンパイルされます。