相互参照・リンク・カスタムコマンド ― label, ref, url, newcommand
Folioの相互参照・リンク機能を完全ガイド.\label/\refによる定理・数式への参照,\url/\hrefによるリンク,\footnoteによる脚注,\newcommandによるマクロ定義,リスト環境の詳細を解説する.
1 ラベルと相互参照
\label と \ref で記事内の要素を参照できる.
1.1 定理環境の参照
\begin{theorem}[中間値の定理]
\label{thm:ivt}
...
\end{theorem}
定理 \ref{thm:ivt} より...
1.2 数式の参照
equation 環境に \label を付けて \eqref で参照する:
\begin{equation}
\label{eq:euler}
e^{i\theta} = \cos\theta + i\sin\theta
\end{equation}
式 \eqref{eq:euler} はオイラーの公式として知られる.
表示結果:
式 (1) はオイラーの公式として知られる.を代入するとオイラーの等式が得られる.
1.3 図表の参照
\begin{figure}
\centering
\begin{mermaid}
graph LR
A["label"] --> B["ref"]
A --> C["eqref"]
A --> D["cref"]
\end{mermaid}
\caption{Folioの相互参照コマンド}
\label{fig:ref-commands}
\end{figure}
図 \ref{fig:ref-commands} に相互参照コマンドの関係を示す.
表示結果:
graph LR
A["label"] --> B["ref"]
A --> C["eqref"]
A --> D["cref"]図 1 に相互参照コマンドの関係を示す.
1.4 \cref コマンド
\cref は参照先の種類(定理,式,図など)を自動で判別して名前を付ける:
\cref{thm:ivt} % → 「定理 1」のように表示
\cref{eq:euler} % → 「式 (1)」のように表示
2 リンク
2.1 URL リンク
\url はURLをそのまま表示してリンクにする:
\url{https://interconnectd.app}
表示結果:https://interconnectd.app
2.2 テキスト付きリンク
\href はリンクテキストをカスタマイズできる:
\href{https://interconnectd.app}{Folioのサイト}
表示結果:Folioのサイト
2.3 記事間リンク
Folioの別記事へリンクするには,記事のURLパスを使う:
\href{/articles/記事ID}{記事タイトル}
/articles/ で始まるパスは内部リンクとして認識され,SPA遷移で表示される.
3 脚注
\footnote で脚注を作成する:
オイラー\footnote{Leonhard Euler, 1707--1783}はスイスの数学者である.
表示結果:オイラー1はスイスの数学者である.
脚注は自動で番号が振られ,記事の下部にまとめて表示される.数式も使える:
ガウス積分2は重要な定積分である.
4 文献引用
Folioでは,ダッシュボードから文献を登録すると,全記事で \cite{} の自動補完に文献が表示される.BibTeXファイルを使わないが,\cite,\citep,\citet の記法はそのまま使える.
\cite{einstein1905} % → [1] や (Einstein, 1905) 等
\citep{knuth1997} % → 括弧付き引用
\citet{dijkstra1959} % → テキスト中の引用
引用スタイル(numeric / author-year / alpha)はSettingsから選択できる.文献リストは記事末尾に自動生成される.
5 カスタムコマンドの詳細
Folioでは,\newcommand 等のマクロ定義をSettingsのプリアンブルエディタに登録すると,全記事に自動で反映される.記事ごとにプリアンブルを書く必要はない.もちろん,特定の記事でのみ使うコマンドは記事内に直接書いてもよい.
5.1 基本的な \newcommand
% 引数なし
\newcommand{\R}{\mathbb{R}}
\newcommand{\Z}{\mathbb{Z}}
\newcommand{\Q}{\mathbb{Q}}
\newcommand{\C}{\mathbb{C}}
\newcommand{\N}{\mathbb{N}}
% 引数1つ
\newcommand{\abs}[1]{\left| #1 \right|}
\newcommand{\norm}[1]{\left\| #1 \right\|}
% 引数2つ
\newcommand{\inner}[2]{\left\langle #1, #2 \right\rangle}
\newcommand{\set}[2]{\left\{ #1 \mid #2 \right\}}
登録後は \abs{x} が,\set{x \in \mathbb{R}}{\abs{x} < 1} がのように展開される.
5.2 \DeclareMathOperator
標準的な数学関数名を定義する:
\DeclareMathOperator{\tr}{tr} % トレース
\DeclareMathOperator{\rank}{rank} % ランク
\DeclareMathOperator{\Hom}{Hom} % 準同型集合
\DeclareMathOperator{\End}{End} % 自己準同型
\DeclareMathOperator{\Aut}{Aut} % 自己同型
\DeclareMathOperator{\Im}{Im} % 像
\DeclareMathOperator{\Ker}{Ker} % 核
これによりやが正しいフォント(ローマン体)で表示される.
5.3 \def コマンド
シンプルなマクロには \def も使える:
\def\eps{\varepsilon}
登録後は \eps がに展開される.例:任意のに対して...
6 リスト環境の詳細
6.1 ネストしたリスト
リストは入れ子にできる:
\begin{enumerate}
\item 群論の基本概念
\begin{itemize}
\item 群の公理
\item 部分群
\item 正規部分群
\end{itemize}
\item 線形代数の基本概念
\begin{itemize}
\item ベクトル空間
\item 線形写像
\item 固有値と固有ベクトル
\end{itemize}
\end{enumerate}
表示結果:
群論の基本概念
群の公理
部分群
正規部分群
線形代数の基本概念
ベクトル空間
線形写像
固有値と固有ベクトル
6.2 description 環境
用語の説明に適した環境:
\begin{description}
\item[\texttt{theorem}] 数学的な定理を記述する環境.
\item[\texttt{definition}] 数学的な定義を記述する環境.
\item[\texttt{proof}] 証明を記述する環境.
\end{description}
表示結果:
theorem- 数学的な定理を記述する環境.本文はイタリック体で表示される.
definition- 数学的な定義を記述する環境.本文はローマン体で表示される.
proof- 証明を記述する環境.末尾にQED記号が自動で付く.
7 配置と整列
7.1 centering
\begin{center}
中央揃えのテキスト
\end{center}
7.2 ボックスコマンド
\fbox でテキストを枠で囲む:
\fbox{枠で囲まれたテキスト}
表示結果:
枠で囲まれたテキスト
8 まとめ
この記事では,Folioにおける相互参照(\label/\ref),リンク(\url/\href),脚注(\footnote),カスタムコマンド(\newcommand/\DeclareMathOperator),リスト環境,配置コマンドを解説した.
これで「Folio LaTeX ガイド」シリーズ全6回が完了した.各機能の対応状況は「Folio LaTeX記法まとめ」で一覧できる.