使い勝手のいいLatexのマクロ集


普段Latexを使っていますか?自分は使っています!
LaTeXはいいですよね, LaTeXの記法に慣れちゃえばいいかんじに見えるようにかけるのでとても便利です.

そんな便利なLaTeXをより便利にしてくれるものとしてマクロという機能があります.マクロでは自分であらかじめコマンドを作っておくことで複雑な命令を簡単に定義することができます.

今回は自分がよく使うマクロをまとめていきたいと思います.

はじめに

マクロを宣言する場所は, \begin{document}よりも前です.
usepackage{}を書いているところ(プリアセンブル)です!

参照系

LaTeXでは\label{ラベル名}でラベルづけしたものに対して\ref{ラベル名}をすると,自動で全体を通しての番号を取得する機能があります.

例えばこんな感じで

\begin{tabular}{|c|c|}
  \hline
    セル1 & セル2 \\ \hline
    セル3 & セル4 \\ \hline
    セル5 & セル6 \\ \hline
\end{tabular}
\label{tb:table1}\ref{tb:table1}では$\cdots$

書いてあげると, コンパイルした結果は,

みたいな感じで,通し番号の1が自動的に補完されます. \refをよく使う場面としては,式番号,表番号,図番号があると思います.

\refのダメなところとして,数字は自動で保管してくれますが,「図」や「式」などの数字の前の言葉は,自分で書かないといけません.これはめんどくさいですよね?

そこで自分は次のマクロを使っています.

% 図の参照
\newcommand{\Zu}[1]{\ref{fig:#1}}

% 表の参照
\newcommand{\Hyou}[1]{\ref{tb:#1}}

% 式の参照
\newcommand{\Shiki}[1]{\eqref{eq:#1}}

使い方としては,

\begin{align}
  y = \sin x  \label{eq:sin}
\end{align}

%=====以下,使うときの書き方
\Shiki{sin}はサインカーブです

のようにすると,

な感じで「式」も一緒に入るようになります. 図や表の時も同じように使うことができます!
漢字ではなくfig:1,table:1のようにしたいときは,マクロの漢字を変えたいものに書き換えれば良いです.

数学系

ベクトルや行列のときにボールドイタリックにしたいときに数式環境にするのめんどくさいですよね?

次のは数式環境下にしなくてもできるようにするマクロです.

% ボールド
\newcommand{\bi}[1]{\ensuremath{\boldsymbol{#1}}}

% 転置記号
\newcommand{\T}{\ensuremath{^{\text{T}}}}

% argmax, argmin ※argmax, argminは数式環境下!!
\newcommand{\argmax}{\mathop{\rm arg~max}\limits}
\newcommand{\argmin}{\mathop{\rm arg~min}\limits}

% =====以下,使うときの書き方

$x$はベクトルだから\bi{x}にしたい.

行列\bi{A}の転置は,\T{\bi{A}}ってかきたい.

$\underset{x \in\{0,1\}} \argmax{3x}=\{1\}$

$\underset{x \in \mathbb{N}}{\arg \min } \frac{1}{x}=\emptyset$

出力結果は,

さいごに

今回挙げたマクロたちが毎回のようにつかっていくので, テンプレートにとりあえずいれています.
もっとマクロについて興味を持っている方は,https://qiita.com/zr_tex8r/items/5067307890d36c0e4882 に詳しく書いてあるので見るといいと思います.

LaTeXで数式を打ちたくないときは,mathpixがとてもとっても便利です!