あちこちに書き散らして忘れるので、自分のためにまとめておく。
目次とか章タイトルのノンブル
jsbook.clsのここにある。ヘッダーとかフッターを上書きしても意図しない出力があるときはここを見てみる。
\def\@evenhead{% \if@mparswitch \hss \fi %\hbox to \fullwidth{\textbf{\thepage}\hfil}% \hbox to \fullwidth{ %\textbf{\thepage} \hfil}% \if@mparswitch\else \hss \fi}% \def\@oddhead{% %\hbox to \fullwidth{\hfil\textbf{\thepage}}\hss}} \hbox to \fullwidth{\hfil %\textbf{\thepage} }\hss}}
pandocのおまじない
pandoc in.md --chapters -o out.tex -V documentclass=ltjarticle --latex-engine=lualatex --listings
--chapters:Chapterから始める
--listings:listingを反映する
強調
jsbook.clsを使っているとき、和文:ゴシック体、欧文:セリフ体の組み合わせにする。
\sfffamily, \textsf
listingと見出し
見出し直後にlistingがあると行間が狂う。見出しとlistingの間にネームがあるときには問題は起こらない。
見出しの行どりを保つには、直後のlistingを枠で囲む。
\section{見出し}\label{見出し} \begin{mdframed}[ linewidth=0, ] \begin{lstlisting}[ language=C++, aboveskip=0.0zw, belowskip=-1.0zw, xleftmargin=0.0zw ] Hello. \end{lstlisting} \end{mdframed}
ここでlistingの再定義をするには、\lstnewenvironmentを使う必要がある。
\lstnewenvironment{newlisting} {\lstset{ language=C++, aboveskip=0.0zw, belowskip=-1.0zw, xleftmargin=0.0zw }} {}
こちらを参照。
と、こんな面倒なことをしなくてもよさげ。
\bgroup, \egroupでくくればよい。
といっても、Listingの再設定は必要かも。
listingとlstinline
Markdownの`code`の指定は、pandocを通すと、
\lstinline!code!
と変換される(デフォルト)。
\lstinlineの設定は、\lstsetが反映される。
本文中でリストの折り返しが出てくるときの指定は
breaklines=true or false
でコントロールできる。と言っても、次の行に送られる(折り返される)場所の確認が必要。
参考:この本を底本にしながら学習中。
参考:
CTAN: The Comprehensive Archive Network
CTAN: Comprehensive TeX Archive Network