textext の分数の横棒が太すぎる

概要

textext で作った数式の分数の横棒が太すぎる. pdf2svg で変換すると太くなるようだ.

左図が pdf2svg, 右図が pstoedit で変換した図.

直し方

デフォルトの変換方法を pstoedit に変更すれば直る. 変換方法の優先順位は textext の最後の方(925行目)に

CONVERTERS = [Pdf2Svg, PstoeditPlotSvg, SkConvert]

のように定義されている. なので, pdf2svg が使える状態だとデフォルトでは pdf2svg が使われてしまう.

pstoedit を優先したい場合は, pstoedit をインストール (apt-get install pstoedit) した上で,

#CONVERTERS = [Pdf2Svg, PstoeditPlotSvg, SkConvert]
CONVERTERS = [PstoeditPlotSvg, Pdf2Svg, SkConvert]

のように修正すべし. これで分数の横棒がスリムになる.

reftex で参照する bib ファイルを更新する

概要

reftex で参考文献を参照するときに, bib ファイルを外部から更新すると,emacs 内では bib ファイルが更新されず, 新しく追加した文献を C-c [ で見つけることができない.これをなんとかしたい.

解決策

reftex が参考文献を参照するときは, 裏で bib ファイルが開かれており, buffer 上の bib ファイルから参考文献が検索されている.このため buffer 上の bib ファイルをディスク上から再読み込みすれば reftex の参照にひっかかるようになる.bib ファイルを開き M-x revert-buffer を実行すれば再読み込みできる.

もっとよい解決策として, bib ファイルを開き M-x auto-revert-mode を実行する方法がある. auto-revert-mode では, ディスク上でファイルが更新されたときに自動的に buffer 上のファイルも更新してくれる.

bib ファイルを開いたとき自動的に auto-revert-mode にするには bibtex-mode-hook に auto-revert-mode をひっかければよい.

(add-hook 'bibtex-mode-hook '(lambda () (auto-revert-mode t)))

こうしておけば, reftex で参照するときにいちいち bib ファイルを更新する手間が省ける.

Emacs 23 からはすべてのファイルを自動的に auto-revert-mode で開くためのグローバル変数 global-auto-revet-mode というものも存在する.

(global-auto-revert-mode t)

とすれば, 有効にできる.

svg ファイルを eps に変換するシェルスクリプト

コード


説明

  • inkscape を使って svg ファイルを eps ファイルに変換.
  • タイムスタンプを調べて, svg の更新日時が新しかった場合のみ変換.
  • ワイルドカードで一括変換可能.
  • ファイル名は元ファイルと同じ. 拡張子だけ eps に変更.

使い方

上記のコードを svg2eps という名前で保存して, パスの通ったディレクトリにおく.

例えば, gazo.svg を eps に変換するときは,

 $ svg2eps gazo.svg

とすると, gazo.eps が作成される.

figures フォルダ内の svg ファイルを一括変換する場合は,

 $ svg2eps figures/*

とすればよい. 拡張子が svg 以外のファイルはスルーするだけなので, *.svg としなくてもよい.

dvipdfmx の日本語フォントの設定方法

概要

ubuntu 12.04 を入れたので, dvipdfmx の設定. そのときのメモ
Takao フォントを使う.

設定

フォントの登録

まず, Takao フォントを TeX のフォントディレクトリに入れる.
TeX の読み込むフォントは /usr/share/texmf/fonts/ 以下におかれるので, そこにシンボリックリンクをおいておく.

$ cd /usr/share/texmf/fonts/
$ sudo mkdir truetype
$ cd truetype
$ sudo ln -s /usr/share/fonts/truetype/takao-mincho/ takao-mincho
$ sudo ln -s /usr/share/fonts/truetype/takao-gothic/ takao-gothic

フォント情報を更新するために,

$ sudo mktexlsr

とする.

TeX 関連のファイルは kpsewhich コマンドで調べられる.

$ kpsewhich TakaoMincho.ttf
/usr/share/texmf/fonts/truetype/takao-mincho/TakaoMincho.ttf

のように, きちんとファイルパスがかえってきたら登録できている.

フォントマップファイルの作成

dvipdfmx のフォントマップファイルは/etc/texmf/dvipdfm/におけばよい.
/etc/texmf/dvipdfm/に, フォントマップファイル takao.map を作成.
takao.map の中身は以下の通り.

rml  H TakaoMincho.ttf
gbm  H TakaoGothic.ttf
rmlv V TakaoMincho.ttf
gbmv V TakaoGothic.ttf

rml-jis H TakaoMincho.ttf
gbm-jis H TakaoGothic.ttf
dvipdfmx の設定

dvipdfmx が読み込むフォントマップファイルは
/etc/texmf/dvipdfmx/dvipdfmx.cfg
に記述されている.
このファイルの末尾に以下の文を追加

f  takao.map

これで, takao.map が読み込まれる. 設定は以上.

Tips

dvipdfmx 実行時にフォントを指定

dvipdfmx.cfg に記入したフォントマップは自動的に読み込まれるが, 別のフォントを読み込みたいときもある.
そういうときは, takao.map と同様のフォントマップファイルを事前に用意しておいて, dvipdfmx の -f オプションを使えばよい.
例えば, ipa.map という名前のフォントマップを使いたいときは,

$ dvipdfmx -f ipa.map main.dvi

とすればよい.

xdiv の日本語フォントの設定方法

概要

ubuntu 12.04 を入れたので, xdviの日本語フォントを設定. そのときのメモ.

インストール

# apt-get install xdvik-ja

フォントは ubuntu 12.04 に標準で入っている Takao フォントを使うので, インストール不要.

設定

フォントマップファイルは
/etc/texmf/vfontmap.d/
にある.

まず, 標準のフォントマップファイルの拡張子を適当に変えて, 使用しないようにする.

# cd /etc/texmf/vfontmap.d/
# mv 20ptex-jisfonts.map 20ptex-jisfonts.map.org
# mv 20xdvik-ja.map 20xdvik-ja.map.org
# mv 30morisawa.map. 30morisawa.map.org 

次に, 使用する日本語フォントの名前をfc-listで確認.

$ fc-list | grep Takao
Takao P明朝,TakaoPMincho:style=Regular
Takaoゴシック,TakaoGothic:style=Regular
Takao Pゴシック,TakaoPGothic:style=Regular
TakaoExゴシック,TakaoExGothic:style=Regular
TakaoEx明朝,TakaoExMincho:style=Regular
Takao明朝,TakaoMincho:style=Regular

/etc/texmf/vfontmap.d/以下に takao.map を作成し, 次のように記入.
(fc-listで管理されてるフォント名を@で挟んで記述する. 実体のファイルパスで指定してもよい.)

@TakaoMincho-Regular@
        rml  JIS-H      % ASCII pTeX
        rmlv JIS-V      % ASCII pTeX
        dm   JIS-H      % NTT jTeX
        rml-jis  JIS-H  % ptex-jisfonts

@TakaoGothic-Recular@
        gbm  JIS-H      % ASCII pTeX
        gbmv JIS-V      % ASCII pTeX
        dg   JIS-H      % NTT jTeX
        gbm-jis  JIS-H  % ptex-jisfonts

最後に, フォントの登録情報を更新するために,

# update-vfontmap

を実行すればOK.