れんてゃんの備忘録

とりあえず何かしらをアウトプットしていきたい所存

少し幸せになれるかもしれない環境の話

琉大 Advent Calendar 2019 6日目

adventar.org

はじめに

どうも琉大 Advent Calendar 2019の5日目ぶりです。琉大 Advent Calendar 2019の6日目が空いていたので2連チャンで書くことにしました(良かったのかなぁ...)。

前回は推しメンの話をしたんですけど、今回は少し幸せになれるかもしれない環境の話をしていこうかなと思います。

アドバイスなどがあれば、コメントやTwitterで教えてくれると凄く嬉しいです。

それでは本編へ!

この記事の対象者

  • vimTexを書きたい人
  • Texのテンプレを毎回コピペするのがめんどくさい人
  • 初めてTexを使うけど環境構築がよくわからない人

使用環境

macOS Mojave 10.14.5

Homebrew 2.2.0

Texを使うための設定

とりあえずはTexのinstall

brew cask install mactex-no-gui

no-guiguiなしでinstallです。普通にguiありでinstallしても大丈夫です。

次にTeX Live のパッケージ管理ツールの更新

sudo tlmgr update --self --all

上記コマンドを実行するとPasswordを求められると思うので、自分のMacのPasswordをうち込んでください。

打ち込むと色々と更新が始まるので終わるまで気長に待ちましょう。

更新が終わったらデフォルトの用紙サイズをA4用紙に設定します。

sudo tlmgr paper a4

このコマンドもさっきと同様に(ry

理由は分かりませんが、sudo tlmgr update --self --allsudo tlmgr paper a4は上手くいかない時があります。 ターミナルを再起動したり、何度か実行してみたら上手くいったので、上手くいかない場合はこれらをすれば大丈夫だとと思います(多分...)。

PDFビューワーを入れる

他にも色々なPDFビューワーがあるのですが、今回はSkimというソフトを選びました。Skimを使うと色々と幸せになれるっぽいので。

brew cask install skim

latexmkの設定

latexmkを設定するのですが、MacTeXにくっついているのでインストール自体は不要です。

まずは下記コマンドで設定ファイルを作ります。

vim ~/.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;
$pdf_previewer    = "open -ga /Applications/Skim.app";
# Prevent latexmk from removing PDF after typeset.
$pvc_view_file_via_temporary = 0;

$pdf_previewer = "open -ga /Applications/Skim.app";は各自のPDFビューワーに直してください。Skimを使うならこのままでOKです!

vimで楽にTexをかく

vimの設定ファイルを作る

vim ~/.vimrc

作った設定ファイルに以下の1文を記述します。

autocmd BufNewFile *.tex 0r ~/.vim/template/tmp.tex

他にも色々な便利設定があるのですが、今回は割愛させてもらいます。気になる人は調べてみてください!

mkdirコマンドで~/.vim/templateディレクトリを作ったら、 次にcdコマンドで~/.vim/template/に移動してここでtmp.texを作ります。ここに各自のTexのテンプレ内容を書き込んで下さい。ちなみに僕のはこんな感じ

\documentclass[a4paper,11pt,dvipdfmx]{jsarticle}
\usepackage{amsmath,amssymb}
\usepackage{bm}
\usepackage[dvipdfmx]{graphicx}
\usepackage{listings}
\usepackage{url}

%テキストの表示領域の調節
\setlength{\textwidth}{\paperwidth}
\addtolength{\textwidth}{-40truemm}
\setlength{\textheight}{\paperheight}
\addtolength{\textheight}{-45truemm}

%余白の調節
\setlength{\topmargin}{-10.4truemm}
\setlength{\evensidemargin}{-5.4truemm}
\setlength{\oddsidemargin}{-5.4truemm}
\setlength{\headheight}{17pt}
\setlength{\headsep}{10mm}
\addtolength{\headsep}{-17pt}
\setlength{\footskip}{5mm}

\title{report1}
\date{\today}
\author{学籍番号\\名前}

\begin{document}
\maketitle
\newpage

%コード
\begin{verbatim}
\end{verbatim}

%画像
\begin{figure}[htbp]
\centering
\includegraphics[clip,width=10.0cm]{hikaku}
\caption{左:元画像、右:入れ替え後}
\end{figure}

\begin{thebibliography}{4}
  \bibitem{キー1}  \\
  \url{}
\end{thebibliography}
\end{document}

これで、適当なtexファイルを作るとテンプレ通りのコードができると思います。あとはそのファイルに対して

latexmk -pvc hoge.tex

と入力すると、ソースや関連ファイルが更新されるたびに、PDFファイルも逐一更新されます。

f:id:ie_renren:20191205152410p:plain

か〜ら〜の

f:id:ie_renren:20191205152556p:plain

イェイ

おまけ

各自の設定ファイル(.zshrcとか)に以下のコードを書くとlmk hoge.texとうつだけで上と同じ挙動をしてくれます。

alias lmk="latexmk -pvc"

まとめ

vimTexどうですか?

vimの便利なコマンドも使いながら、めんどくさいTexコンパイラやテンプレのコピペをせずにレポートが書けるってすごく便利ですよね!

この記事をみてくれた方これを機にvimを使いながらTexを書いてみてはいかがでしょう!

琉大 Advent Calendar 2019 5日目の人

ie-renren.hatenablog.com

琉大 Advent Calendar 2019 7日目の人

makudara.hatenablog.jp