Texの備忘録 のバックアップ(No.44) - アールメカブ

アールメカブ


Texの備忘録 のバックアップ(No.44)


私的に書き残してきたメモをここに統合する予定.

ptexlive http://tutimura.ath.cx/ptexlive/

Mathematical (TeX) Formulas]

土村さんの最後のptetex (2009/08) では /usr/include/stdio.hで定義されたgetlineとptetex定義のgetlineが衝突するので,/usr/include/stdio.hを一時的に編集する.

extern _IO_ssize_t getline (char **__restrict __lineptr,
                           size_t *__restrict __n,
                           FILE *__restrict __stream) __wur;

getlineについて書かれたこの部分をコメントアウト

_ コメントアウト

コメントアウトのためのディレクティブではないのだが,結局 C 言語での

/* */

と同じ結果になる

\iffalse
   コメント行
\fi

_ footnote

ここ

tabular 環境で \footnote を使うと脚注が出力されない。代わりに \footnotemark や \footnotetext を \end{tabular} の直下に使う。

\begin{tabular}{lr} 
ほげほげ\footnotemark & 1,234
げほげほ & 33,221 \\
\end{tabular}
\footnotetext{なんちゃらかんちゃら}

奥村先生らの注を引用

脚注(\footnote)は場所によっては使えない(使っても表示されない)ことがあります。こういう場合、\footnotemark と \footnotetext に分けて、後者を「使える場所」に置く、というの常套的な解決手段です。

ですが、figure のような「動くもの」の場合、

   \begin{figure}[htp]
   \caption[Foo]{Foo\footnotemark}
   \end{figure}
   \footnotetext{Note.}

とやると、figure が後のページに移動した場合に脚注の(頁下の)テキストが今のページに取り残されることになります。これを LaTeX でちゃんと処理するのは困難です。(そもそもどうなれば正しい?) 私は次のようにすることをお勧めします。

一部の figure を「動かない」ようにする。 キャプションへの脚注は「動かない」figure にのみ付けることにする。

figure を「動かない」ようにするには、float パッケージを読み込んで figure の位置指定(上例の [htp])を [H] に変えます。table についても同じことがいえます。

こういう場合に minipage を使うのはどうかと思ってやってみたが…やっぱり変。

脚注番号が跳ぶのは、jsbook では \caption の中のテキストが内部で 2 回「処理」されているからです。これに対処するのに、オプション引数で番号を自分で設定してもいいですが、大きな文書では面倒です。こういう場合は

   \addtocounter{footnote}{-1}

で脚注カウンタの値を操作する(上例では 1 減らしている)ことを覚えておくと便利です。普通は、カウンタは \footnotemark(または \footnote、ただし番号を指定したのは除く)で番号を出力する直前に 1 増やされます。

# あと、「A.~L. Cauchy」とかにも気をつけて。

_ Prosper

久しぶり調べたら,関連ページのリンクがかなり消えている.開発も止まっている模様.ここなどが残っている.

contributed

UMBC

etc

_ ptetexLive

土村さんが今の ptetex3 の開発をやめるらしいので,その前に移行を考える.

_ yatex の自動改行

以前は外してあったのを,再度使い始めていたが,やはり気に入らないので外す.

;; ;; ;
 (add-hook 'yatex-mode-hook
        #'(lambda ()
	(auto-fill-mode -1)
       (reftex-mode 1)
       (define-key reftex-mode-map
       (concat YaTeX-prefix ">") 'YaTeX-comment-region)
       (define-key reftex-mode-map
       (concat YaTeX-prefix "<") 'YaTeX-uncomment-region)))
;

_ dvipdfmx のパスワード設定

dvipdfmx -S -P 0x0008 target.dvi

を実行すると管理者とユーザーそれぞれのパスを聞いてくる.

オプションの意味.詳細は dvipdfmx.cfgに書いてある

  • 0x0010:テキストのコピーやグラフィックのコピーはOK.印刷は禁止
  • 0x0008:全部禁止.印刷,テキストのコピー,グラフィックのコピーを禁止
  • 0x003C:デフォルト.全部許可.
  • 0x0004:印刷のみ許可テキストやグラフィックのコピーは禁止.

_ R で作成したeps

大学のUbuntu では/undefinedresource in findresourceとなる.自宅のほぼ同じ環境では問題ない.で,気が付いた.以下が入っていなかったので,synaptic で追加.

gs-cjk-resource
cmap-adobe-japan2

念のため,/usr/share/ghostscript/8.63/lib/cidfmapの末尾に以下を追加.

(/var/lib/defoma/gs.d/dirs/fonts/cidfmap) .runlibfile

_ CIDFontは Ghostscript 7シリーズまで

http://oku.edu.mie-u.ac.jp/~okumura/texwiki/?Ghostscript%208.54#h0f0fbe0 を参照

$ pwd /usr/share/ghostscript/8.63/Resource

$ sudo ln -s /opt/Adobe/Reader8/Resource/CIDFont/ CIDFont

_ latex2html

$ sudo apt-get install netpbm
$ sudo apt-get install epstool

と準備をしてから,

http://takeno.iee.niit.ac.jp/~shige/TeX/latex2html/ltx2html.html のさいとから l2h-2002-2-1+jp2.0.patch.gz (21694 Byte; 展開後 89270 Byte) latex2html-2002-2-1.tar.gz (revision 1.70; 1122706 Byte) (09/28 2002 更新)をいただいて,

$ gunzip -c latex2html-2002-2-1.tar.gz | tar xf -
$ gunzip l2h-2002-2-1+jp2.0.patch.gz 
$ cd latex2html-2002-2-1
$ patch -p1 < ../l2h-2002-2-1+jp2.0.patch 
$ ./configure --prefix=/usr/local
$ make
$ sudo make install

さらには l2h-init-jp-20050526 (14200 Byte) (漢字コード: EUC-JP) も頂き,UTF-8 に変換し INFO を 1 にセットして使わせてもらう.

文字コードは EUC じゃないと化けるので

$ nkf -e test_u.tex > test.tex
$ latex2html test.tex

とせにゃならん.

_ [p]dvips が日本語で化ける

念のため土村版 TeX を再コンパイル.my_optionに

### 日本語 pTeX 拡張あり (dvips, xdvi) ディフォルト
JAPANESE=traditional
### 日本語 pTeX 拡張あり (pdvips, pxdvi)
#JAPANESE=international  # コメントアウトした

### platex209 を使わない(ライセンスがクリアになる)
# PLATEX209=no
↓
PLATEX209=no

### kanji <=> unicode 変換に iconv を使う
# conf_option --enable-kanji-iconv
↓
conf_option --enable-kanji-iconv

の指定を加えて,さらにmy_option を念のため utf-8 に変換して再コンパイル.emacs.ubuntu.8.10.Atok.el の yatex 設定も変更

; (setq dvi2-command "/usr/local/teTeX/bin/pxdvi-motif -thorough")
(setq dvi2-command "/usr/local/teTeX/bin/xdvi-motif -thorough") 

残しておいても,pxdvi バイナリは前回コンパイル時のものがそのまま残っているので害はないが.

次にここを参考に

sudo vi /usr/share/ghostscript/8.63/lib/cidfmap 

で末尾に以下を追記.とりあえず東風フォントで.

%
/Adobe-Japan1 << /FileType /TrueType /Path
 (/usr/share/fonts/truetype/kochi/kochi-mincho.ttf) /SubfontID 0 /CSI [(Japan1) 2]  >> ;
/Ryumin-Light << /FileType /TrueType /Path
(/usr/share/fonts/truetype/kochi/kochi-mincho.ttf) /SubfontID 0 /CSI [(Japan1) 2] >> ;
/GothicBBB-Medium << /FileType /TrueType /Path
 (/usr/share/fonts/truetype/kochi/kochi-gothic.ttf) /SubfontID 0 /CSI [(Japan1) 2] >> ;

縦書きは化けるらしいが,縦書きなどいらぬ.

ただし、cjkパッチが外されてるので、縦書きがぼろぼろのままです。 ↓の上の状態。 http://blogs.yahoo.co.jp/jw_slackware/15254721.html たぶん、cjkパッチを当てればちゃんとでて、PSプリンタでの問題も解決はされてるはず。

ここによると,そもそも cidfmap いらないのかもしれない. しかし,私の環境では,削除したらまた文字化けした.

もっと簡単で、正しい(だろうと思われる)方法が、分かりました。 /usr/share/ghostscript/8.63/lib/cidfmap を削除すれば、OKです。 cidfmapは、Defomaというシステムで、自動生成されてはいることが判明し ました。上記ファイルを削除すれば、自動生成されている /var/lib/defoma/gs.d/dirs/fonts/cidfmap を参照するようです。

/usr/local/teTeX/share/texmf/dvips/config/ に kanji.map が無いのに気が付いたので,旧 Ubuntu から持ってきて sudo cp BackUp?/kanji.map /usr/local/teTeX/share/texmf/dvips/config/ その上で /usr/local/teTeX/share/texmf/dvips/config/config.ps に p +kanji.map の一行を追加

これも必要だったろうか? apt-get install VFlib2 VFlib2-VFjfm Flib2-conf-ja VFlib2-devel ttfonts-ja

dvips -f -Ppdf main.dvi > main.ps

_ 日本語対応の dvips

dvips -v とした時

Radical Eye Software と ASCII

のcopyright noticeが出たら日本語対応のもの

Radical Eye Software

のcopyright noticeだけだったら日本語非対応のもの

_ Ubuntu8.10でのTeXの設定はここ

土屋版インストールには build-essential, flex, bison, zlib1g-dev, libreadline5-dev, libncurses5-dev, xorg-dev, libxml2-dev, Xaw3dg-dev, libxaw7-dev, libXt-develとlibXaw-develがインストールされていることが必要.

$ gzip -cd ptetex3-20YYMMDD.tar.gz | tar xvf -
$ cd ptetex3-20YYMMDD
$ cp my_option.sample my_option
 ## (カスタマイズ)
(ユーザ権限でコンパイル)
$ make
(root 権限でインストール)
$ su
# make install
# make distclean

(PATHの設定)

$ export PATH=/usr/local/teTeX/bin:$PATH    (sh/bash)
% setenv PATH /usr/local/teTeX/bin:$PATH    (csh/tcsh)

_ Windows

  • TeXはここから作業した.
  • Meadow から setup-ja.exe をダウンロードし、 yatex を On にしてインストール.
    • とりあえず暫定的な .emacs を書いておく