adbird(広告鳥) 備忘録

LaTeXの細かい設定(再定義)

元のclsファイルなどを検索

使用している、元となるclsファイルなどがどこにあるかを $ kpsewhich 〜.cls で探す。例えば、Lualatex(LuaTeX-ja)で ltjsarticle.cls の場合。

$ kpsewhich ltjsarticle.cls
/usr/local/texlive/2018/texmf-dist/tex/luatex/luatexja/ltjsarticle.cls

自分のstyファイルを作成する。

原稿.texのプリアンブルで再定義してもいいのだけど、できるだけ内容と装飾は分離して、原稿.texのほうはすっきりさせたいので、自分のstyファイルを作成する。

1.前述の ltjsarticle.cls ファイルをテキストエディタ(僕の場合、geany)で開く。

$ geany /usr/local/texlive/2018/texmf-dist/tex/luatex/luatexja/ltjsarticle.cls

2.変えたい設定の定義のところっぽいところを見つけて、コピー。

3.コピーした箇所を、新規ファイルにペーストして、任意のスタイルファイル(例:adbird.sty など)にして保存。保存先はコンパイルする原稿.texと同じフォルダ内でOK。

変更したい箇所が

\def\@〜{
…
…
}

のように@を含む場合、直前に makeatletter を直後に makeatother を書く。

\makeatletter
\def\@〜{
…
…
}
\makeatother

LaTeX文書のプリアンブルなどで「@」を含むようなコマンドが現れるような定義・再定義を行う場合には、その定義・再定義の部分に \makeatletter を置く必要があり、定義・再定義が済んだら、\makeatother を用いて \makeatletter の効果を取り消すことになるという点に注意してください。(吉永 徹美『LaTeX2e辞典~用法・用例逆引きリファレンス』翔泳社、2009)

\newcommand{\〜}{〜}

の箇所は

\renewcommand{\〜}{〜}

にする。

あとは根気よくトライ・アンド・エラーを繰り返しながら、スタイルファイルをいじっていく。

原稿.tex

\documentclass[11pt,a4paper]{ltjsarticle}

\usepackage{adbird}%作成したstyファイル名を書く(拡張子は必要ない)

\title{}
\date{}
\author{}

\begin{document}

\end{document}