まずは読もう¶
チートシート¶


bibtex (参考文献)¶
#153: 2019年度 創成課題/cloudlatex上でのbibtexの使い方
ACMのbibtexでエラー¶
対処方法
- doiを消す
- seriesを消す
- urlを消す
bibtexでURL¶
bibitex使ってURL貼り付ける方法 ftp://blackknight.ics.nara-wu.ac.jp/pub/doc/bibtex.pdf
@Misc{Weisstein,
author = "Weisstein, Eric W.",
title = "Delta Function",
note = "A Wolfram Web Resource (2017年2月8日閲覧)",
howpublished = "{\url{http://mathworld.wolfram.com/DeltaFunction.html}}",
}
\usepackage{url} の追加は必須
newblock~エラー出たら下記を追加
\newcommand\newblock{\hskip .11em\@plus.33em\@minus.07em}
bitexのスタイルファイルを使わない場合¶
LaTeX で URL を書くには次のようにするのがよさそう。
- スラッシュ / の代わりに \slash を使う。
- チルダ (~) の代わりに \~{} を使う。
URL を構成する他の文字との区切りには {} を使う。そうすると、先の例は以下のようになる。
http:\slash\slash{}www.ss.iij4u.or.jp\slash\~{}sassano\slash{}ja\slash{}log\slash
適切に空白を使う書き方ももちろん OK。以下でも可。
http:\slash\slash www.ss.iij4u.or.jp\slash\~{}sassano\slash ja\slash log\slash
\~{} の {} は必ず書く。これを省くと、チルダが次の文字の上に来てしまう。
bibtexでurl.sty を使う場合¶
LaTeX 2e の多くの環境では url.sty が使えるでしょうか。その場合は以下のように書けば大丈夫のはず。
\usepackage{url}
\url{http://www.ss.iij4u.or.jp/~sassano/ja/log/}
参考文献の参照をまとめて表記¶
https://ameblo.jp/h-krkr/entry-10915143691.html
[1],[2],[3]を[1,2,3]にする
% これを追記する
\usepackage{cite}
\cite{paper:LCFG, paper:lucie, paper:grid_system_install}
項目つき箇条書き¶

\begin{description}
\item[マグロ]\mbox{}\\
ほげほげほげほげ
\item[カツオ]\mbox{}\\
ほげほげほげほげ
\item[サンマ]\mbox{}\\
ほげほげほげほげほげ
\end{description}
http://www.shaco-o.com/latex-itemizeenumerate
## 表
captionとlabelの順序を変えると,番号が狂うことがあるので注意する(実体験)
\begin{table}[htb]
\caption{1ツイートに含まれる要素}
\label{tab:tweet}
\centering
\begin{tabular}{|l|l|ll}\hline
要素名 & 説明 \\\hline
text & ツイートの本文 \\
date & ツイートの日時 \\
retweets & リツイートされた数 \\
favorites & お気に入りに追加された数 \\
hashtags & "\#"から始まるタグ \\
geo & 地理情報が付与されていた場合の緯度経度\\ \hline
\end{tabular}
\end{table}
参照する時は ref{tab:tweet} を使う.
表を楽につくる¶
表作成が楽にできるWebサービスがある.
https://www.tablesgenerator.com/latex_tables
使い方は以下を参考にする.
LaTeXの表を生成できるサイトTables Generator - muscle_keisukeの日記
画像¶
\usepackage[dvipdfmx]{graphicx}
\usepackage[dvipdfmx]{color}
\begin{figure}[htbp]
\includegraphics[scale=0.3]{figures/software.png}
\caption{ソフトウェア構成図}
\label{fig:software}
\end{figure}
画像を横幅ぴったりに貼りたい時は,width=\linewidth を指定する.
\includegraphics[width=\linewidth]{hoge.eps}
倍率を指定する場合には係数をつける。
\includegraphics[width=0.9\linewidth]{hoge.eps}
texで文章の幅に合わせて画像を貼りたい - odenのメモ帳
記号¶
丸数字¶
①のような丸数字を使いたい場合は1の部分の数字を書き換えて使う
\textcircled{\scriptsize 1}
数式¶
基本的な書き方はチートシートを参照.
% 数式
\usepackage{amsmath}
\usepackage{amsfonts}
\begin{equation} \label{eq-nodes}
\mathbb{N} = \{n_i \mid 1 \le i \le N'\}
\end{equation}
式\ref{eq-nodes}に示す.

数式内に日本語を入れる場合¶
mbox{}を挟む. https://kmuto.jp/latex/node41.html
\mbox{カレー} = \mbox{人参} + \mbox{じゃがいも} + \mbox{玉ねぎ} + \mbox{豚肉}
余白¶
[!WARNING] 基本的にはテンプレートを変更しない方がよいです。
http://pyopyopyo.hatenablog.com/entry/20120416/p1
% 図と図の間の余白
\setlength\floatsep{0pt}
% 本文と図の間の余白
\setlength\textfloatsep{0pt}
% 本文中の図の余白
\setlength\intextsep{0pt}
% 図とキャプションの間の余白
\setlength\abovecaptionskip{0pt}
http://kwikwi.cocolog-nifty.com/blog/tex/
% 図とキャプションの間の余白
\setlength\abovecaptionskip{0pt}
% ページの上下に出力される図と図の間のスペース
\setlength\floatsep{0pt}
% ページの上下に出力される図と本文の間のスペース
\setlength\textfloatsep{5pt} %dbltextfloatsep
% ページの途中に出力される図と本文の間のスペース
\setlength\intextsep{5pt}
% 表の余白
\tabcolsep=1pt
箇条書きの余白の構造¶
https://note.com/yuw/n/nb7c3bf1c5a70

enumerateの行間を埋める¶
% enumerateの行間を減らす
\let\oldenumerate\enumerate
\renewcommand{\enumerate}{
\oldenumerate
\setlength{\itemsep}{1.2pt} % 項目(item)間
\setlength{\parskip}{0pt} % リスト(itemize)の前後の段落間
\setlength{\parsep}{0pt} % 項目(item)内の段落間
}
itemizeの行間を埋める¶
% itemizeの行間を減らす
\let\olditemize\itemize
\renewcommand{\itemize}{
\olditemize
\setlength{\itemsep}{1.2pt} % 項目(item)間
\setlength{\parskip}{0pt} % リスト(itemize)の前後の段落間
\setlength{\parsep}{0pt} % 項目(item)内の段落間
}
ソースコード¶
基本的な使い方 minted¶
\documentclass{article}
\usepackage{minted} % これを入れる
\begin{document}
% コードを以下で書く.言語がない場合は python の部分に text を指定する.
\begin{minted}[frame=single, fontsize=\footnotesize, linenos]{python}
def is_contain_word(keyword, items):
if keyword in items:
return True
return False
\end{minted}
\end{document}
基本的な使い方 listings (オススメ)¶
\usepackage{listings, jlisting}
\begin{lstlisting}[caption=example-config.yaml, label=config]{}
juice:
- apple
- orange
- grape
\end{lstlisting}
jlisting.styがない場合はアップロードする.
ソースコードのキャプション前の余白を小さく
\begin{lstlisting}[caption=ログの例, label=code1, columns=fullflexible, breaklines=true, aboveskip=0pt, belowskip=0pt]
23.92.36.0 - - [27/Oct/2020:20:23:11 +0900] "GET / HTTP/1.1" 200 612 "-" "Java/1.8.0_265"
\end{lstlisting}
二段組でソースコードのキャプションが崩れる場合
情報処理学会のテンプレートで崩れる場合がある.この場合の対処は以下を行う.
\usepackage{here}
\usepackage{listings, jlisting}[language=yaml]
\begin{figure}[H]
\begin{lstlisting}[caption=example-config.yaml, label=config]{}
\end{lstlisting}
\end{figure}
lstsetの完成版
これを使えば大丈夫です.
\lstset{
xrightmargin=1zw,
xleftmargin=2zw,
tabsize=2,
stringstyle={\small\ttfamily},
stepnumber=1,
sensitive=false,
numbersep=1zw,
numbers=left,
ndkeywordstyle={\small},
lineskip=-0.5ex,
keywordstyle={\small\bfseries},
identifierstyle={\small},
framexleftmargin=1mm,
frame=single,
emphstyle={\bfseries\small},
commentstyle={\small\itshape},
columns=[l]{fullflexible},
breaklines=true,
breakindent=0pt,
breakatwhitespace=false,
belowskip=0pt,
basicstyle={\ttfamily\small},
aboveskip=0pt,
}
ソースコードで折り返しに失敗¶
以下の記事をもとに修正をする
https://qiita.com/takahashim/items/2234c7881fc84f7b5139
\makeatletter
\def\lst@lettertrue{\let\lst@ifletter\iffalse}
\makeatother
(...)
\begin{document}
ソースコードの一部を強調¶
LaTeXのフォントは \ttfamily で等幅フォントになる.\bfseriesで太字になる.
フォントの性質上 \ttfamily と \bfseries は併用できない.
そこで,黒魔術を使ってフォントの入れ替えを行う.
https://stackoverflow.com/a/7492295 https://stackoverflow.com/a/9438643
% bfseriesとttfamilyを併用する黒魔術
\DeclareFontShape{OT1}{cmtt}{bx}{n}{<5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>cmttb10}{}
\lstset{
basicstyle={\ttfamily\small}, %書体の指定 [ここ重要]
frame=single , %フレームの指定
breaklines=true, %行が長くなった場合の改行
breakatwhitespace=false,
tabsize=2, %Tabを何文字幅にするかの指定
numbers=left, % 行番号の表示(left, none)
stepnumber=1, % 行番号の増加数
emph={baz,foo}, % 強調したい文字列をカンマ区切りで渡す [ここ重要]
emphstyle={\bfseries\small}, % 強調するときの書体の指定 [ここ重要]
alsoletter={-|":}, % 記号が含まれる場合に単語として認識しない対策
sensitive=false, % case sensitive(大文字小文字を区別)の有無
}
listingやソースコードを別名に¶
以下は Algorithm を Code へ変更している.
\renewcommand\lstlistingname{プログラム}
\renewcommand\lstlistlistingname{プログラム}
latex - How to change title in listings? - Stack Overflow
小山の設定例¶
\lstset{
basicstyle={\ttfamily\small}, %書体の指定
frame=single, % フレームの指定
breaklines=true, % 行が長くなった場合の改行
breakatwhitespace=true, % 空白で改行
breakindent=0pt, % 改行したときのインデント
tabsize=2, % Tabを何文字幅にするかの指定
numbers=none, %left, % 行番号の表示
stepnumber=1, % 行番号の増加数
framexleftmargin=6mm, % 行場号を枠内に表示
numbersep=5mm, % 行番号と本文の間隔 10pt
emphstyle={\bfseries\small}, % 強調のスタイル
sensitive=false,
}
擬似コード¶
以下にまとめた.
algorithmicxを使いLaTeXに擬似コードを追加 - Qiita
脚注¶
I'm writing something here to test \footnote{footnotes working fine}
https://www.overleaf.com/learn/latex/Footnotes
図表を2段組み¶
\begin{figure}[htbp]
\begin{minipage}{0.5\hsize}
% 環境
\begin{center}
\includegraphics[width=\linewidth]{images/evaluation-environment.png}
\caption{Experiment environments.}
\label{fig:evaluation-env}
\end{center}
\end{minipage}
\begin{minipage}{0.5\hsize}
% 測定の方法
\begin{center}
\includegraphics[width=\linewidth]{images/evaluation-method.png}
\caption{The way to measure the response time.}
\label{fig:evaluation-method}
\end{center}
\end{minipage}
\end{figure}