Hatena::ブログ(Diary)

備忘録とか あと あれとか それとか

2013-08-16

latexdiffでの改行コードによるエラー

latexdiffがエラーばっかり吐いているので,それの対処法.


いつの間にかtexの改行コードがLFからCRに変更してしまったらしく,

Missing characters near word 1352 character index: 8492-8497 Length: 4 Match: |The | (expected match marked above).

というようなエラーを大量に吐くようになってしまった.


改行コードを直したらすぐ治りました.

nkfだと,

nkf -Lu --overwrite hoge.tex

という感じで改行コードを変更することが出来る.

2012-01-18

LaTeX環境

僕のMacにおけるLaTeX環境がほとんど完成を迎えたのでメモしておく.

Macにおいて,LaTeXを使う人でなんとなくTeXShopが好きになれない人は参考になると思う.


MacTeXといえば,TeXShopがかなり快適な環境を提供してくる.

エディタにあまりこだわらない人はTeXShopを使えば良い.


僕はMacVimTotalTerminal小川版pTeX+Preview.appで環境を作っている.

この環境では,編集,コンパイルにおいてマウスを使う必要がなく,保存(2打)+端末呼び出し(1打)+コマンド呼び出し(1打)で,コンパイルまで行える.

これは慣れるとかなり素早くコンパイルできる.

マウスを使うときは,Preview.appでページをスクロールするときくらい.


環境はMac OS 10.6(Snow Leopard).

実はLionだとPreview.appの振る舞いが変わるので,少し工夫が必要かもしれないが,それは無視する.

以下が詳細.


LaTeXインストール

たぶん,インストール小川版pTeXが一番楽だと思う.

Ghostscriptは9.02も提供されているのだが,EPS画像ファイルにフォントが埋め込まれないので,7.07.1を使っている.

こだわりがなければ9.02でも問題無い.

インストールが終わったら~/.profileなどに,

export PATH=/Applications/UpTeX.app/teTeX/bin/:$PATH

を加える.~/.profileがなければつくる.

これで,どこからでもlatexコマンドが使えるようになる.


MacVimの設定

MacVimは香り屋さんパッチが当ててあるものである.

macvim-kaoriya - MacVim KaoriYa - Google Project Hosting

これを使っている理由は,インプットモードからコマンドモードに移ったときに自動的にIMEがOFFになってくれるところだ.

したがって,日本語の文書を売っているときに.コマンドモードで日本語を打ってしまって時間を無駄にすることがない.


プラグインvim-latexを使っている.

補完とかはあまり使ってないが,起動時に自動でsection,subsection,figure,table環境を折りたたんだりしてくれる.

参考URL

俺がVIM-LaTeXについて書くしかない(1) VIM-LaTeXについて

インストールしたら,.vimrcか.gvimrcに以下を書いておく.

filetype plugin on
filetype indent on

" スペルチェック(拡張子がTeXのときON)
autcmd FileType tex set spell


その他のプラグインは,

を使っている.

TotalTerminalで端末をすぐ呼び出す

TotalTerminalホットキーですぐ端末画面を呼び出すTerminal.appの拡張機能

ホットキーを押せばいつでもどこでも端末が現れ,もう一度ホットキーを押すと消える.

僕はホットキーにCtl-Tを振っている.

シェルスクリプト

次のシェルスクリプトを~/.zshrcに書く(なければつくる.bashな人は~/.bashrc)に書く.

function tex2pdf(){
	platex $1.tex;
	dvipdfmx $1.dvi;
	open -a /Applications/Preview.app
	open -a /Applications/MacVim.app
}



現在作業中のディレクトリをtest,編集中のLaTeXソースをsample.texとして,tex2pdfを作業ディレクトリ実行する.

$ cd test
$ tex2pdf sample

すると,platexdviができてdvipdfmxでpdfができる.

openコマンドで-aをつけた場合

$ open -a アプリケーション名

そのアプリケーションが最前面にでる(アクティブになる)ので,sample.pdfをPreview.appで表示しておけば,最新の内容に表示が更新される.

最終的にMacVim.appが自動で最前面に来るので,コンパイルが終われば編集がすぐに始められる.


tex2pdfを

function tex2pdf(){
	platex $1.tex;
	dvipdfmx $1.dvi;
	open -a /Applications/Preview.app $1.pdf
	open -a /Applications/MacVim.app $1.tex
}

としておけば,あらかじめpdfを開いておかなくても,自動で開くようになるのだけど,Snow LeopardのPreview.appの場合は一番最初のページに戻ってしまう.

Leopardな人はこれでも良い.

まとめ

$ cd test
$ open -a /Applications/MacVim.app sample.tex # Finderから開いても構わない
$ open -a /Applications/Preview.app sample.pdf # Finderから開いても構わない
  • MacVimでsample.texを編集.
  • 保存(:w)
  • TotalTerminalをホットキーで呼び出す.
  • tex2pdfを実行(履歴をたどれば一発で出せるだろう)
$ tex2pdf sample
  • MacVimでsample.texを編集....

2011-10-05

\maketitleのフィールドを消す

\maketitleとすると\titile{}や\author{},\date{}などに書いたものが良い感じで挿入される.

ここで,最低限の変数を指定していないとエラーが出たり,タイトルに変な空白ができたりする.

しかも,\date{}を指定しないと今日の日付が指定されてしまう.


もし,いらないフィールドがある(フィールドを消す)場合は,

\documentclass{jarticle}

\title{タイトル}
\author{\empty}
\date{\empty}

\begin{document}
\maketitle
\end{document}

と\emptyを入れれば,エラーも出ないし,最初からそのフィールドがなかったことになる.

2011-09-20

ps2epsをインストール

ps2epsを使えば,PSファイルを簡単にEPSに変換することができる.

インストール手順のメモ.

環境はMac OS 10.6.


以下から,ps2eps-1.68.tar.gzをダウンロード.

PS2EPS - Tool for generating Encapsulated Postscript Format (EPS,EPSF) files from one-page Postscript documents


tarボールを解凍.

$ tar -xvzof ps2eps-1.68.tar.gz 

パスが通るところにバイナリをコピー.

$ sudo cp ps2eps/bin/ps2eps /usr/local/bin
$ sudo chown a+x /usr/local/bin/ps2eps

一度,実行してみる.

$ ps2eps hoge.ps

エラーなく変換できたら終わり.

以下のエラーが出て,できなかったら,bboxをインストールする.

Calculating Bounding Box...sh: bbox: command not found
Error: Could not determine bounding box!

コンパイルし,パスが通るところにコピー.

$ cd ps2eps/src/C
$ cc -o bbox bbox.c
$ sudo cp bbox /usr/local/bin
$ sudo chown a+x /usr/local/bin/bbox

以上でたぶんできる.

2011-09-18

UpTeX.appのhiragino.mapを編集する

UpTeX.appを使っているのだが,本文はヒラギノ明朝 Pro W3なのに,太字指定するとヒラギノ角ゴ Pro W6が埋め込まれるようだ.

それはそれでいいんだけど,W3とW6だと少し違和感を感じる.

なので,太字フォントをヒラギノ角ゴ Pro W3に変更する.

そのためには,UpTeX.app内のteTeX/share/texmf/fonts/map/dvipdfm/hiragino.mapを編集する.


$ vim /Applications/UpTeX.app/teTeX/share/texmf/fonts/map/dvipdfm/hiragino.map

として,

gdm HiraKakuPro-W6

gdm HiraKakuPro-W3

にしてしまう.


dvipdfmxを使う人は次のようにできる,

hiragino.mapを作業ディレクトリにコピーし,

$ dvipdfmx -f hiragino.map hoge.dvi

とする.

"-f"で呼び出すmapを変えることで,いろいろできるんではないかと思います.