#author("2023-04-28T16:54:28+09:00","","")
#author("2024-05-24T19:26:57+09:00","default:hirata","hirata")
*LaTeX Tips [#l0754212]
Contents:

#contents

**Links [#u5dc0663]
-[[角藤版TeX:http://www.fsci.fuk.kindai.ac.jp/~kakuto/win32-ptex/web2c75.html]]
-[[TeX Wiki:http://oku.edu.mie-u.ac.jp/~okumura/texwiki/?%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%28Windows%29]]
-[[TeXインストーラ3:http://www.ms.u-tokyo.ac.jp/~abenori/mycreate/index.html]]
-[ [[BiBTeXについて:http://park.zero.ad.jp/~zbc08106/tex/bibeco-ja.html]] |
[[BiBTeX関連:http://oku.edu.mie-u.ac.jp/~okumura/texwiki/?BibTeX%E9%96%A2%E9%80%A3%E3%83%84%E3%83%BC%E3%83%AB]] | [[JabRef:http://keijisaito.info/arc/biblio/jabref_jbib.htm]] ]

**dvipdfmxが死ぬほど遅い [#fe6416df]
 dvipdfmx -I 6 -C 0x20 foo.dvi
"-I 6"はキャッシュを6時間保持する。"-C 0x20"は,predictor filtersを無効化する(このフィルタによって著しく遅くなることがあるらしい)。

**ラベルを余白に表示する [#qa3e30c6]
**ラベルを余白に表示する(showkeys) [#c2aa0602]
 \usepackage{showkeys}
機能はshowlabelsとほぼ同じ

**ラベルを余白に表示する(showlabels) [#qa3e30c6]
 \usepackage[<options>]{showlabels}
-オプションはinlineが個人的にお勧め。
-amsmathなどと合わせて使う場合は,\usepackage{amsmath}の後に上記を記載する。

参考)
-https://www.ctan.org/pkg/showlabels
-http://konoyonohana.blog.fc2.com/blog-entry-299.html

**数式においてdisplayスタイルでの改ページを許可 [#rd83dd61]
 {\allowdisplaybreaks
 \begin{eqnarray}
  hoge
 \end{eqnarray}}

** 差分をわかりやすく表示する [#g846f3df]

 latexdiff old.tex new.tex > diff.tex

** includegraphicsで,デフォルトの画像フォルダを指定する。 [#nae0775a]

 \graphicspath{{./figures/}}

 \graphicspath{{./fig1/}{./fig2/}{./fig3/}} % 複数フォルダの場合

** graphicxとcolorを同時に使うとdvipdfmxでPDFにしたときに図がずれる [#tffe3c85]

対処方法)
\documentclassのオプションに指定する

 \documentclass[a4paper,dvipdfmx]{jsarticle} % ここで指定
 \usepackage{graphicx}                       % dvipdfmx は自動的に有効となる
 \usepackage{color}                          % dvipdfmx は自動的に有効となる

参考)~
https://qiita.com/zr_tex8r/items/442b75b452b11bee8049

旧対処方法)graphicx,colorの両方にdvipdfmxオプションをつける。

 \usepackage[dvipdfmx]{graphicx,color}

この方法だと,下記のエラーが出ることがある。
 ! LaTeX Error: Option clash for package color.
**ラベルをプリント [#s5ae94cb]

\labelを指定するところで
 \lbael{fig:test_a}
 \prtlabel{fig:test_a}
とするとラベル名「fig:test_a」が本文に埋め込まれる。マクロ中で使うことを想定。通常,ラベル名にアンダーバーが含まれ文字列を表示使用とすると,数式モードではないとのエラーが出るが,それを回避するようにしたもの。\meaningを使って展開。showkeys.styを参考にして作ったもの。
 % \prtlabel{label_strings}
 \def\@defmylabel#1>#2<{\def\@mylabel{#2}}
 \def\prtlabel#1{%
 \protected@edef\@tempa{#1<}
 \expandafter\@defmylabel\meaning\@tempa
 {\tt \@mylabel}}
**サーチパスの追加 [#ade258f3]

よく使うマクロは d:\home\tex\lib などにおいて,サーチパスを通している。パスの設定は,
 c:\w32tex\share\texmf\web2c\texmf.cnf
を書き換える。たとえば,$mypath を定義して,TEXINPUTS.platex209とTEXINPUTS.platexに$mypathを追記する。
 mypath=d:/home/tex/lib
 TEXINPUTS.platex209 = .;$mypath;$texroot/{platex209,jlatex209,latex209,}//;$srcinp
 TEXINPUTS.platex = .;$mypath;$texroot/{platex,latex,ptexgeneric,generic,platex209,latex209,}//;$srcinp
**PDFファイルを作りたい [#qce82ac5]
-http://oku.edu.mie-u.ac.jp/~okumura/texwiki/?PDF%E3%81%AE%E4%BD%9C%E3%82%8A%E6%96%B9
**ある文字列分のスペースを確保したい [#sc57614e]

プリアンブル(\begin{document}の前)で以下を定義

 \newlength{\mylength}
 \def\myspace#1{%
 \settowidth{\mylength}{#1}
 \hspace{\mylength}}

本文中で
 \myspace{abc}
とすると,文字列"abc"分のスペースが空く。
** 色を使う (2009-02-18)[#v9a85569]
 \usepackage{color}
として,本文中で
 {\color{red} hogehoge}
**mktexlsr (2007-12-25) [#a322ed1d]

新しいノートパソコン(Dynabook RX1)では,TeXのコンパイルが非常に遅い(5年前のノートPCに比べても明らかに遅い)。CPUはCore2 Duo U7600。TeX関連のファイルが膨大に増えたために,それを検索する時間がかかることで,遅くなるとの情報を見つけた。この場合,ファイルリストを texmf 以下に作成するコマンド mktexlsr を実行するとよいとのこと。早速試してみたところ,texのコンパイルが劇的に速くなった。近年,CPUやHDDが高速になったので,その必要はない,との意見も多々あったが,自分の環境では,大きな改善がみられた。

ls-R ファイルを作成した場合,そのリストを元に,ファイルを検索するので,新規ファイルを追加するたびごとに mktexlsr を実行する必要があるので,注意する。なお,ls-Rファイルを削除すれば,そのたびごとにファイル検索が行われることになる。
**インストール [#bb411645]
TeXインストーラ3を使用するのが便利。詳しくは,
[[TeXインストーラ3:http://www.ms.u-tokyo.ac.jp/~abenori/mycreate/index.html]]。
を参照。TeXに必要なソフトウエア一覧を自動的にダウンロードしてインストールできる。

** \long\def [#k1fa577a]

マクロコマンドを定義する\defは引数の中で改段落を行うとエラーになる。このような場合は\long\def を使う。
**enumerate拡張 [#e4fb1102]
 \usepackage{enumerate}
として
 \begin{enumerate}[A.]
  \item foo.
  \item bar.
  \item buzz.
 \end{enumerate}
とする。結果はお試しあれ。ただし,LaTeX2eに限る。
** キャプションの定義 [#x808a28d]
texmf\ptex\platex\base\jarticle.cls の該当部分を適宜書き換える
 \long\def\@makecaption#1#2{%
  \vskip\abovecaptionskip
  \iftdir\sbox\@tempboxa{#1\hskip1zw#2}%
    \else\sbox\@tempboxa{#1: #2}%
  \fi
  \ifdim \wd\@tempboxa >\hsize
    \iftdir #1\hskip1zw#2\relax\par
      \else #1: #2\relax\par\fi
  \else
    \global \@minipagefalse
    \hbox to\hsize{\hfil\box\@tempboxa\hfil}%
  \fi
  \vskip\belowcaptionskip}
** 図の配置に関するパラメータ [#x6f11b12]
 % 図の占める割合に関するパラメータ
 \renewcommand{\topfraction}{0.99}    % 上部出力図
 \renewcommand{\bottomfraction}{0.99} % 下部出力図
 \renewcommand{\textfraction}{0.01}   % 本文の最小割合
 % 出力できる図の数に関するパラメータ
 \setcounter{topnumber}{10}
 \setcounter{bottomnumber}{10}
 \setcounter{totalnumber}{10}
 % 図の上下のスペース
 \setlength{\floatsep}{10pt}        % 移動体間のスペース
 \setlength{\textfloatsep}{10pt}    % 本文と移動体間のスペース
 \setlength{\dblfloatsep}{10pt}     % 2段抜きの場合
 \setlength{\dbltextfloatsep}{10pt} % 2段抜きの場合

** subfigure.styにおける図のスペーシングパラメータ [#r7e280af]
 \renewcommand{\subfigtopskip}{0pt}     % Subfigure上部のスペース
 \renewcommand{\subfigcapskip}{10pt}    % subfigureとcaptionの間隔
 \renewcommand{\subfigbottomskip}{10pt} % captionの下部スペース
 \renewcommand{\subfigcapmargin}{0pt}   % captionのインデント幅(必ず正)
** 太線 [#se94afc8]
 % define bold line for table
 \def\hbline{\noalign{\hrule height 1pt}}
** 丸数字 [#zd8908e0]
 \newcommand{\MARU}[1]{
 {\ooalign{\hfil#1\/\hfil\crcr\raise.167ex\hbox{\mathhexbox20D}}}}


** section直後の改行の抑制 [#mc88b4d1]
C:\usr\local\share\texmf\tex\latex\base\latex.ltx
 \def\@afterheading{%
  \@nobreaktrue
  \@nobreakfalse <- ここ
  \everypar{%
    \if@nobreak
      \@nobreakfalse
      \clubpenalty \@M
      \if@afterindent \else
        {\setbox\z@\lastbox}%
      \fi
    \else
      \clubpenalty \@clubpenalty
      \everypar{}%
    \fi}}

** PowerPointやWordの図をEPSに変換する [#o1c970c6]

[[WMF2EPS:http://www.wmf2eps.de.vu/]]を使う。
以下などが参考になる。
-http://www.ppl.phys.chiba-u.jp/~ooba/win/wmf2eps.html
-http://www.mtl.t.u-tokyo.ac.jp/~iizuka/nt/eps/

トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS