山内のサイト

LaTexメモ

インストール

公式ページにはネットインストールと書いてあるけれど、結局ISO古イメージをダウンロードしてしまった。

同じようなページ

それでアップデートは

tlmgr update --self --all

テストは

platex -v
platex test.tex

Latex コマンド

大分忘れとる。

JBOOK

\documentclass[a4j]{jbook}
\begin{document}
\chapter{\LaTeXの書き方}
これはテストです。
初めての\LaTeX。
\end{document}

使い方コマンド

platex test.tex
dvipdfmx test.dvi
ghostscript test.pdf    事前にリモートXを起動

分割コンパイル

\input{chapter1}     拡張子不要
% \input{chapter2}   テストコンパイル時に、使わない部分をコメントアウト

main.texでいちいちinputをコメントアウトするのが嫌なとき

分割した LaTeX ファイルを subfiles を使ってコンパイルする

main.tex側を

\documentclass{jsarticle}

\usepackage{subfiles}
\usepackage[dvipdfmx]{graphicx}
\graphicspath{{images/}{../images/}}

\title{分割した{\LaTeX}ファイルを\texttt{subfiles}を使ってコンパイルする}
\author{sankichi92}
\date{2016年12月30日}

\begin{document}

\maketitle
 
% \input{introduction}

\subfile{sections/body}

\end{document}

sections/body.texを (sectionsサブディレクトリを作っておくこと)

\documentclass[../main]{subfiles}

\setcounter{section}{1}
\begin{document}

\section{\texttt{subfiles}を用いたファイル分割}

\texttt{subfiles}を用いると,プリアンブルを共有したうえで,分割した{\LaTeX}ファイルを個別にコンパイルすることができる.

\end{document}

とすると、

platex main.tex

もできるし、

cd sections
platex body.tex

もできるので、部分コンパイルが簡単で便利という話。

プログラムリスティング

\lstset{
	%プログラム言語(複数の言語に対応,C,C++も可)
 	language = Python,
 	%背景色と透過度
 	backgroundcolor={\color[gray]{.90}},
 	%枠外に行った時の自動改行
 	breaklines = true,
 	%自動改行後のインデント量(デフォルトでは20[pt])	
 	breakindent = 10pt,
 	%標準の書体
 	basicstyle = \ttfamily\scriptsize,
 	%コメントの書体
 	commentstyle = {\itshape \color[cmyk]{1,0.4,1,0}},
 	%関数名等の色の設定
 	classoffset = 0,
 	%キーワード(int, ifなど)の書体
 	keywordstyle = {\bfseries \color[cmyk]{0,1,0,0}},
 	%表示する文字の書体
 	stringstyle = {\ttfamily \color[rgb]{0,0,1}},
 	%枠 "t"は上に線を記載, "T"は上に二重線を記載  
	%他オプション:leftline,topline,bottomline,lines,single,shadowbox
 	frame = TBrl,
 	%frameまでの間隔(行番号とプログラムの間)
 	framesep = 5pt,
 	%行番号の位置
 	numbers = left,
	%行番号の間隔
  	stepnumber = 1,
	%行番号の書体
 	numberstyle = \tiny,
	%タブの大きさ
 	tabsize = 4,
 	%キャプションの場所("tb"ならば上下両方に記載)
 	captionpos = t
}

lstlistingで全体を線で囲む

begin{lstlisting}[frame=single]

lstlistingで文字列中の空白を「空白字」で表すのでなく、本物の空白にする

lstlistingでプログラムリストを表示するとき、文字列の中の空白を「空白字」にするが、 それがうっとうしい時、language=Cとかしても変えられない。(普通の言語は文字列が" ... "で その中に出てくる空白を空白字にする)

それを強制的に、文字通りの空白にするには、

\begin{lstlisting}[showstringspace=false]
print("This is a pen.")
\end{lstlisting}

全体をこのようにしたければ、上記lstsetで設定できる(はず)。

図を入れる

Tex Wiki 〜 LaTeX入門/図表

\begin{figure}
  \centering
  \includegraphics[width=5cm]{apple.png}
  \caption{林檎の図}
\end{figure}

図を横に並べる
図の挿入   Latexコマンド集〜図・表の配置

\begin{figure}[htbp]
\begin{minipage}{0.5\hsize}
 \begin{center}
  \includegraphics[width=70mm]{fig1.eps}
 \end{center}
 \caption{一つめの図}
 \label{fig:one}
\end{minipage}
\begin{minipage}{0.5\hsize}
 \begin{center}
  \includegraphics[width=70mm]{fig2.eps}
 \end{center}
 \caption{二つめの図}
 \label{fig:two}
\end{minipage}
\end{figure}

図を縦横に並べる

\begin{figure}[htbp]
%% \fbox{   ここに入れると上下分割のminipageが効かなくなるので入れてはいけない
\begin{minipage}   % minipageを入れ子にできるらしい 上段開始
 \begin{minipage}{0.5\hsize}  % 上段左
 ......
 \end{minipage}
 \begin{minipage}{0.5\hsize}  % 上段右
 ......
 \end{minipage}
\end{minipage}  % 上段終わり

     % 空行で段落分け

\begin{minipage}   % 下段開始
 \begin{minipage}{0.5\hsize}  % 下段左
 ......
 \end{minipage}
 \begin{minipage}{0.5\hsize}  % 下段右
 \end{minipage}
\end`{minipage}
%% }  % 入れてはいけないfboxの終わり
\caption{  } % 全体のキャプション  
\end{figure}

プログラムリストを図として入れる

Latexにプログラムっぽいフォントでソースコードを載せる簡単な方法

\begin{figure}[h]
\begin{lstlisting}[basicstyle=\ttfamily]
 私は太郎に次郎にもらった本を渡した。
     私は---------D
     太郎に---D   |
       次郎に-D   |
       もらった-D |
             本を-D
           渡した。
     EOS
\end{lstlisting}
\caption{日本語の文の係り受け解析の例。}
\end{figure}

表組みを作る

表組みの基本
表組み - 複数のセルにまたがる表
表組

最小限は、

\begin{table}[htb]
  \begin{tabular}{|l|c|r||r|} \hline
    メニュー & サイズ & 値段 & カロリー \\ \hline \hline
    牛丼 & 並盛 & 500円 & 600 kcal \\
    牛丼 & 大盛 & 1,000円 & 800 kcal \\
    牛丼 & 特盛 & 1,500円 & 1,000 kcal \\ \hline
    牛皿 & 並盛 & 300円 & 250 kcal \\
    牛皿 & 大盛 & 700円 & 300 kcal \\
    牛皿 & 特盛 & 1,000円 & 350 kcal \\ \hline
  \end{tabular}
\end{table}

Too many unprocessed floats

適当なタイミングで、\clearpageを置けば、そこで吐き出す。

囲み(itembox)

ページ分割できる囲み(breakbox)

章番号を入れたくない(「序章」などにしたい)

\chapter*{序章 統計とPython}  % 序章の「第0章」をやめる
\addcontentsline{toc}{chapter}{序章 統計とPython}

footnoteの中にverb/verbatimを入れたい

[LaTeX] cprotect --- マクロ引数に verbatimテキスト などを許可する

\usepackage{cprotect}
\cprotect\footnote{ .... }

\cprotectのあとに括弧はいらない。


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2017-09-10 (日) 13:08:10 (94d)