スキップしてメイン コンテンツに移動

Vim で LaTeX を編集する on Ubuntu

Vim で LaTeX を編集する環境を構築してみる。
Tex についての日本語の情報は次のサイトにまとまっている。
TeX Wiki https://texwiki.texjp.org/

環境は Ubuntu。

LaTeX環境の構築のため、コマンドラインからTeXliveをインストールする。
$ sudo apt install texlive

下記コマンドでバージョンが表示されればインストールされている。
$ platex -version

ここでは latexmk を使うのでこのコマンドがあることも確認する。
次を実行してバージョンが表示されれば良い。
$ latexmk -v


latexmk の 動作設定ファイルを作成。
次の内容のファイル ( ~/.latexmkrc )を作成する。
===
#!/usr/bin/perl
$latex = 'platex -kanji=utf-8 -synctex=1 %S';
$dvipdf = 'dvipdfmx %S';
$bibtex = 'pbibtex';
$pdf_mode = 3; # use dvipdf
$pdf_update_method = 2;
$pdf_previewer = "start mupdf %O %S";
$max_repeat       = 5;
# Prevent latexmk from removing PDF after typeset.
$pvc_view_file_via_temporary = 0;
===

カレントディレクトリの不要なファイルを次のコマンドで消してくれるのが便利である。
$ latexmk -c

[参考]
VimでLaTeX編集!vim-quickrunとlatexmkで自動コンパイルと部分コンパイル
https://qiita.com/ssh0/items/4aea2d3849667717b36d




Vim に導入するプラグインは次の3つ。
vimtex は LaTeX 文書を作成するときの補助を行う。
vim-quickrun は LaTeX ソースコードのタイプセットを行うときの補助を行う。

vimtex はダウンロードしておくだけだが、
vim-quickrunは ~/.vimrc に以下の内容を追加で記述した。
===
""
"" quickrun
""
let g:quickrun_config = {
\   'tex': {
\       'command': 'latexmk',
\       'exec': ['%c -gg -pdfdvi %s', 'xdg-open %s:r.pdf']
\   },
\}
===

deoplete は補完をするプラグイン。
動作させるために次の2つのプラグインが必要。
その上で、~/.vimrc に次を追加すると補完が働くようになる。
===
""
"" deoplete
""
let g:deoplete#enable_at_startup = 1
===




vimtex は 挿入モードで C-x C-o を入力すると補完が働く。
C-n 、C-p で候補を選ぶことが出来る。

quickrun は ノーマルモードで \r を入力するとタイプセットされ pdf が表示される。
ただし、カレントディレクトリ内に tex ソースを保存している状態でないとエラーが出る。

[参考]
vimtex - TeX Wiki
https://texwiki.texjp.org/?vimtex

quickrun - TeX Wiki
https://texwiki.texjp.org/?quickrun



ノーマルモードで :setf tex でtexモードになる。

ノーマルモードで :QuickRun tex でタイプセットできる。

コメント

このブログの人気の投稿

Ubuntu で RAIDディスクをマウントする

謎のHDDが見つかった。 データを確認するためWindowsにつなぐもマウントされず。 これは extとかffsの辺りかなと思い、Linux(Ubuntu)に繋ぐ。 しかし、自動マウントされない。 取り敢えずマウントする。 # mount /dev/sdb1 /mnt/disk すると'linux_raid_member'とエラー表示された。 ということで、まずファイルシステムを確認。 # parted -l このコマンドでファイルシステムが表示される。 また、Gparted でも表示される。 そこでRAIDディスクを扱うためにmdadmパッケージをインストール。 # apt install mdadm ネットでは mountコマンドの -t オプションで明示的にファイルシステムを指定するとマウントできると書いてあったのでそれを試すとマウントできた。 # mount -t ext3 /dev/sdb1 /mnt/disk 内容を確認すると不要なデータだったのでデータを削除する。 # shred -v /deb/sdb この処理はとても時間がかかるので普段使わないコンピュータで処理をした。

Perl/Tk の基本的なこと

X を利用したアプリケーションを作る方法は色々あるが、Tk を用いると簡単に出来る。 Tk - Wikipedia https://ja.wikipedia.org/wiki/Tk_(ツールキット) Tk で作るWindowをどの言語で書くかによって変わってくるが、Tcl/Tkが最も有名かもしれない。 Tcl/Tk - Wikipedia https://ja.wikipedia.org/wiki/Tcl/Tk wish (Windowing Shell) を用いてスクリプトを組むことでグラフィカルなアプリを作れる。 Tclはこのwishで使われるプログラミング言語であり、簡単に使える。かなり多くのシステムに導入されていることもあり、特に何かをインストールせずとも使うことが出来る。 このTclの部分をperlに置き換えたものがPerl/Tkである。 Perl/Tk インストール Perl/Tk は Tcl/Tk と違いデフォルトでインストールされていないことが多い。 ubuntuだと perl-tk をインストールすると使えるようになる。 # apt install perl-tk 取り敢えず作ってみる 次のようなサンプルファイル sample.pl を作る。 sample.pl use utf8; use Tk; # トップウィンドウを作る $top = MainWindow->new(); # ウィンドウ内に文字(ラベル)を表示する $label = $top->Label(-text => "ここに文字を書く")->pack(); # ウィンドウを生成する MainLoop(); ちなみに文字コードは UTF-8 になってる。 $ file sample.pl sample.pl: UTF-8 Unicode text 次のコマンドで実行する。 $ perl sample.pl 実行できる形の sample.pl Shebang を書いて実行ファイルとしても実行できる。 たぶん次のようなファイルになる。 一行目のShebangは環境によって異なるが多くのシステムは多分これで通る。 #!/usr/bin/perl use utf8; use...

自動ログイン on Lubuntu

Lubuntu 19.04 の 自動ログインを設定してみた。 グラフィカルログインを自動で行うようにしたいが、 ユーザー設定 の中に自動ログインの設定がない。 そこでコマンドラインから設定してみた。 まず、ログインをするときに使用しているディスプレイマネージャを確認する。 $ cat /etc/X11/default-display-manager /usr/bin/sddm sddm を使っているので、sddm の自動ログインを設定する。 OSは systemd で動いていると設定ファイルがないようなので作成する。 # sddm --example-config > /etc/sddm.conf.d/sddm.conf この設定ファイルに Autologin について書いてあるのでここにユーザ名を入力。 $ head /etc/sddm.conf.d/sddm.conf [Autologin] # Whether sddm should automatically log back into sessions when they exit Relogin=false # Name of session file for autologin session (if empty try last logged in) Session= # Username for autologin session User= ここの User= にユーザ名を書き込み保存後、再起動すると自動でログインされる。