早崎トップ 研究(気候気象) 研究(大気汚染) データリスト Linux Tips Mac Tips

TeX_personal_memo (hysk)

TeX 個人的メモ

私は論文作成に TeX を使用している. ここでは,TeX による論文作成の個人的メモを記す.

投稿準備

 原稿準備

  • まずは,投稿先が TeX 原稿を受け付けてくれるのか,これが第一チェック.
  • 次に,共著者が認めてくれるのか. 「MS Word の変更履歴機能を使って校正する」と言われたら, それに従うしかなかろう.

 英文校閲

  • 語数により料金が違う. TeX 原稿はそのままだと語数カウントが難しいので, TeXcount という perl script を使用した. 今のところ約2000語だが,どうやら2000語は超過しそう. textcheck.com だと,標準料金で 7円/語(revised なら,その半額. revised の定義は,初稿からの文章修正量が50%未満であること)

 スペルチェック

  • submit する前に,必ずスペルチェックをかけよう. MS Word などだと, default で注意喚起してくれるが,TeX ではそうはいかない. 使うコマンドは aspell, 使用例は下記
  • 使い始めは,専門用語が多数ひっかかる. 最初のスペルチェックでは非常に煩わしく感じるだろうが,一度登録してしまえば 次回からは引っかからない
  • 一部のTeX コマンドもチェックしてしまう事がある. これは,aspell のオプションや個人設定 (~/.aspell.conf)で回避可能. See also Aspell (奥村先生の TeX Wiki 内)
aspell --mode=tex -c paper.tex

TeX ファイルだけでなく,通常の ASCII text ファイルもチェック対象とすることがあるので, mode はコマンド実行時に手動設定している. 私の ~/.aspell.conf は以下の通り.

lang en
add-tex-command citea p
add-tex-command bibliography p
add-tex-command bibliographystyle p

TeX Live セットアップ

CentOS 6.5 にて,TeX Live のインストーラを使って実施. ptexlive でのインストールがうまくいかなくなったので(2014-02-22).

参考: MacOS でのTeX設定 = Mac tips # MacTeXセットアップ

手順は全てTeX Live のインストール: Linux (奥村先生(三重大)の TeX Wiki) を参照.

記載事項は奥村先生のページと全く同一手順にした(つもり). 自分PC環境の実行メモとして,コマンドだけ羅列.

$ wget http://ring.nict.go.jp/pub/text/CTAN/systems/texlive/tlnet/install-tl-unx.tar.gz
$ tar xzf install-tl-unx.tar.gz
$ cd install-tl-YYYYMMDD
  (memo: YYYYMMDD = date. 今回は 20140221 だった)

$ sudo ./install-tl
...
Actions:
 <I> start installation to hard disk
 <H> help
 <Q> quit

Enter command: 
  (memo: Enter "I")

...
... (memo: Wait xx-minutes...)
...

----- (memo: final messages)
 See
   /usr/local/texlive/2013/index.html
 for links to documentation.  The TeX Live web site
 contains updates and corrections: http://tug.org/texlive.

 TeX Live is a joint project of the TeX user groups around the world;
 please consider supporting it by joining the group best for you. The
 list of user groups is on the web at http://tug.org/usergroups.html.


 Add /usr/local/texlive/2013/texmf-dist/doc/info to INFOPATH.
 Add /usr/local/texlive/2013/texmf-dist/doc/man to MANPATH
   (if not dynamically found).

 Most importantly, add /usr/local/texlive/2013/bin/x86_64-linux
 to your PATH for current and future sessions.

 Welcome to TeX Live!
Logfile: /usr/local/texlive/2013/install-tl.log
----- (memo: End of final messages)

$ sudo /usr/local/texlive/2013/bin/x86_64-linux/tlmgr path add

----- Restart installation: インストール途中で停止した場合など.
$ sudo ./install-tl --profile installation.profil
----- 

  (memo: アップデートしたい時)
$ sudo tlmgr update --self --all


  (memo: Append extractbb)
    (memo: TEXMFLOCAL を確認)
$ kpsewhich -var-value TEXMFLOCAL
/usr/local/texlive/2013/../texmf-local

  (memo: Make "/usr/local/texlive/texmf-local/web2c/texmf.cnf")
$ sudo mkdir -p /usr/local/texlive/texmf-local/web2c
$ sudo touch /usr/local/texlive/texmf-local/web2c/texmf.cnf
$ sudo vi /usr/local/texlive/texmf-local/web2c/texmf.cnf

--- Begin of "/usr/local/texlive/texmf-local/web2c/texmf.cnf"
shell_escape_commands = \
bibtex,bibtex8,bibtexu,upbibtex,biber,\
kpsewhich,\
makeindex,mendex,texindy,\
mpost,upmpost,\
repstopdf,epspdf,extractbb
--- End of "/usr/local/texlive/texmf-local/web2c/texmf.cnf"

  (memo: mktexlsr を実行)
$ sudo mktexlsr

 TeX Live 2013 移行時の注意

  • インストール先は /usr/local/texlive/2013/ 以下. 今回(2014-02-20)実施したデフォルト設定では,約3.5GB 消費する. インストールするものを選択すれば容量は減らせるだろうが, 私は選別できるだけの知識もないので,そのまま入れた.
  • graphicx 使うときは,dvipdfm でなく dvipdfmx を指定すべし.SOLA のスタイルファイルとか.
  • slashbox など「なんとかbox」系のものが入ってない.

ptexlive セットアップ

以下の説明は,2011年6月下旬時点での情報. 現在(2014-02-22)では,CentOS (v6.5) でもパッケージインストールで問題ない... はず. パッケージで不具合・不足事項があっても,TeXLive のインストーラ実行すればうまくいくはず. See TeXLive セットアップ

細かい解説は,他のweb上にある. ここでは,手順のコマンドだけをメモ.

 texlive のインストール

wget -c http://www.dnsbalance.ring.gr.jp/pub/text/CTAN/systems/texlive/Images/texlive2009-20091107.iso
mount -o loop texlive2009-20091107.iso /mnt/tmp01
cd /mnt/tmp01
sudo ./install-tl
("Enter command:" 部分で "I"; 大文字の i アイを入力)

以下は,インストール後の最終メッセージである. MANPATH や INFOPATH を指示通りに追加

(多くの表示メッセージあるが,ほとんど略)
 See
   /usr/local/texlive/2009/index.html
 for links to documentation.  The TeX Live web site
 contains updates and corrections: http://tug.org/texlive.

 TeX Live is a joint project of the TeX user groups around the world;
 please consider supporting it by joining the group best for you. The
 list of groups is available on the web at http://tug.org/usergroups.html.

 Add /usr/local/texlive/2009/texmf/doc/man to MANPATH, if not dynamically determined.
 Add /usr/local/texlive/2009/texmf/doc/info to INFOPATH.

 Most importantly, add /usr/local/texlive/2009/bin/x86_64-linux
 to your PATH for current and future sessions.

 Welcome to TeX Live!
Logfile: /usr/local/texlive/2009/install-tl.log

 ptexlive のインストール

CentOS 5.8 だと,make test の -DNOKANJI あたりで失敗する. 実用上は(少なくとも私の個人的経験では)無視してインストールしても問題ない. 実害を伴う動作不良は体験したことない.

wget http://tutimura.ath.cx/~nob/tex/ptexlive/ptexlive-20110322.tar.gz
tar xzf ptexlive-20110322.tar.gz
cd ptexlive-20110322
cp ptexlive.sample.en ptexlive.cfg
vi ptexlive.cfg

(必要箇所の変更.といっても,デフォルトからの修正は下記の1箇所だけ)
ISO_DIR=/mnt/tmp01

KANJI_CODE は,デフォルトが既に UTF8指定になっている(see common.sh).
準備が出来たら,make & make install, gs のエラーは無視.
インストール後は,お掃除(distclean)しておく.

make 
make install 
make distclean

インストール後のメッセージは下記.

`which bash` ./9realloc.sh install refresh
------------------------------------------------------------------------
[reading]    ./ptexlive.cfg
copying files '/dev/shm/ptexlive2009' -> '/usr/local/texlive/p2009' ...
------------------------------
'ptexlive' was installed.

for sh/bash user
export PATH=/usr/local/texlive/p2009/bin/x86_64-unknown-linux-gnu:$PATH

for csh/tcsh user
setenv PATH /usr/local/texlive/p2009/bin/x86_64-unknown-linux-gnu:$PATH

To uninstall
make uninstall
(or 'rm -rf /usr/local/texlive/p2009')
------------------------------
finishing ...

 インストール後の環境設定

上記に従い,PATHを追加しておく. 私の場合,個人設定でなくシステム標準設定に入れる (/etc/profile に追記). これは私の運用方針の問題なので,個人設定ファイル (~/.bashrc など) に追記しても何の問題もない.

# for TeX (texlive & ptexlive)
export PATH="/usr/local/texlive/p2009/bin/x86_64-unknown-linux-gnu:$PATH"
export MANPATH="/usr/local/texlive/2009/texmf/doc/man:$MANPATH"

雑記

日本人が出しにくい文字(欧文文字,アクセント記号)

昔は umlaut なら \"{u} だとかやってたが,最近はUTF8を使うので,そういう情報もほぼ不要になった. 今では,特殊キーとの組合せで,普通に入力できる.

しかし,(MacOSでの)入力方法をよく忘れるので, よく使う文字を copy & paste 出来るようにしておく.

çüÖéîöøñæ˚∂å≤≥µ

ギリシャ文字や数学記号も混入したが,まぁいいだろう.

MacOS 上なら,umlaut は option+u の後に付加したい文字で入力できる. この他にも,option+(何かのキー)にて,特殊文字を入力できるようだ (Mac tips (hysk)#キー入力). option + shift +(何かのキー)という組合せも入れると, 普通の日本人だと見慣れない(入力に困る)欧文文字がいろいろと入力できる.

MacOS (OS X 10.10.3 Yosemiteの場合には, 入力メニューから「キーボードビューアを表示」を選択. メニューに出ていなければ,システム環境設定 > キーボード において,「メニューバーにキーボードビューアと文字ビューアを表示」をonにしておく.

下記にMacOS での入力手順をまとめる.これで私が使うレベルの欧文文字・アクセント記号のほぼ全てをカバーできるはず.

入力方法 読み 表示文字,例
option + u + (対象文字) umlaut (ウムラウト) üöäëï
option + e + (対象文字) acute (アキュート・アクセント) éóáí
option + _ (日本語キーボードなら「ろ」) + (対象文字) grave (グレイブ・アクセント; アクサン・グラーブ) èòàì
option + e + (対象文字) tilde (チルダ) õñ; El Niño; La Niña; España
option + c cédille (セディーユ); cedilla (セディラ) ç
option + o (読み方知らない.o とスラッシュの組合せ?) ø
option + m mu, micro (ミュー,接頭詞マイクロ) µ; µg/m3
option + d delta (デルタ,偏微分記号) ∂; ∂T/∂t
option + k degree symbol (角度表記とかの「度」.○を右上づきにするのとは違う) ˚; 36˚C; 40˚N, 140˚E

PDF 作成 (dvipdfmx)

dvipdfmx コマンドを使った 1ページだけ抜き出したPDFファイルの作成. 学会発表要旨の作成などで使用.
既存の bbl やら aux, log などを消去した上で, platex や pbibtex を2回ずつかけている.

下記ファイルを "mkdvipdf" と名付けて $HOME/bin/ 以下に保管. TeX ファイルからPDFファイルを作成.

#!/bin/sh
# Give a TeX filename (w/o extension), make PDF file using "dvipdfmx" command.
#
# last update: 2013-10-21
# last update: 2012-11-02
# 1st release: 2011-01-28
#
#   M. Hayasaki (Kyushu Univ., Japan)
target_file_base=$1
tex_file=${target_file_base}.tex
dvi_file=${target_file_base}.dvi
pdf_file=${target_file_base}.pdf

for i in bbl blg aux log ; do
  j=${target_file_base}.${i}
  if [ -f $j ]; then \rm -f $j ; fi
done

platex ${target_file_base}
platex ${target_file_base}
pbibtex ${target_file_base}
pbibtex ${target_file_base}
platex ${target_file_base}
platex ${target_file_base}

mk_pdf_opt=" -d 5 -p a4 -r 720 -o ${pdf_file} "
mk_pdf_opt=" -d 5 -p a4 -r 600 -o ${pdf_file} "
mk_pdf_opt=" -d 5 -p a4 -r 600 -s 1 -o ${pdf_file} "
##mk_pdf_opt=" -d 5 -p a4 -r 720 -s 1 -o ${pdf_file} "  ## 1st page only
dvipdfmx ${mk_pdf_opt}  $dvi_file
#\rm $1.{aux,log}
exit

web への記述日は 2016-02-02.なお,上記のコマンド化は 2011-01-28 より. dvips を使ったもの(2003-04-02 版)は下記.もう何年も使ってない.

#!/bin/sh
platex $1
dvips -o $1.ps $1.dvi
#rm $1.{aux,log}
exit

TeX を使う理由

理由は簡単. 論文の内容を考える以外の事で時間を費したくないから. TeX を使うには面倒な事柄も数多くあるが, それを補って余りある便利な点もある. 何より重要な事は,参考文献リストの利用. 参考文献リストは,論文執筆するたびに使いこまれて正確なデータベースとなるばかりか, 自分用の研究ノートの一つにもなる点 (See also 気候気象関連 > 学術雑誌・論文情報#論文管理ツール). これは,商用のワープロソフトには絶対に期待できない機能.

個人的な意見だが,学術論文などを一度しか書かないような人 (例: 学部で卒業して社会人となるような学生)にはお薦めしない. 少なくとも2回以上,参考文献リスト作成を伴う文章書きをする機会がある人なら, 使って損は無いと思う. 卒論・修論とそれ以外の何かを書く機会があるような人なら, 使うと良いかもしれない.

しかし,TeX も開発されてからずいぶん年数が経過した. そろそろ,これに代わる論文作成ツール群が出来てもいい頃だが. データベースやHTMLなどを組み合わせた統合プロダクトを論文作成用に特化すれば, 現代ではかなりの物が作れると思うが, 自分で作れるような代物では無いだろう. つくづく思う. Knuth さんは偉大だ.

TeX 関連外部リンク

更新履歴

更新日 内容
2015-08-30 リンク切れの修正, W3C の HTML checker での文法チェックを受けた.
2014-02-22 ptexlive が CentOS v6.5 にてパッケージインストールできることを確認.
2011-06-XX 多分,このくらいの頃に記述開始.