トップページunix
981コメント366KB

\chapter{\TeX} % 第九章+

■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。2013/10/03(木) 02:51:54.71
過去スレッド
第一章 http://pc.2ch.net/test/read.cgi/unix/977144071/
    http://pc.2ch.net/unix/kako/977/977144071.html
第二章 http://pc.2ch.net/test/read.cgi/unix/1033564798/ (984レス)
第三章 http://pc8.2ch.net/test/read.cgi/unix/1059616013/ (996レス)
第四章 http://pc8.2ch.net/test/read.cgi/unix/1116389650/
第五章 http://pc11.2ch.net/test/read.cgi/unix/1153569474/
第六章 http://pc12.2ch.net/test/read.cgi/unix/1193135030/
第七章 http://hibari.2ch.net/test/read.cgi/unix/1268927301/
第八章 http://toro.2ch.net/test/read.cgi/unix/1323615979/ (983レス)
第九章 http://toro.2ch.net/test/read.cgi/unix/1373507129/ (17レス)
0330名無しさん@お腹いっぱい。2013/12/10(火) 21:47:27.06
すげーーーーーーーーーー!
YaTeXがいつの間にか、includegraphicに入れたときに、
自動的に画像のbbを計算して挿入してくれる(挿入前に確認されるけど)。
clipも一緒に。いままで、perlで前処理していたが、もういらねぇ。
0331名無しさん@お腹いっぱい。2013/12/10(火) 22:16:33.09
>>330
YaTeXは使ってないので試せないんだけど、面白い機能だね!
ただそれにはどんなメリットがあるかよくわからない。

(1) 今時のTeXの配布では xbbが自動生成されるので普通は bb は要らない。
(2) なので今時bbを直接指定するときというのは、自動的に計算してくれた
bbが不適切なときだと思うんだが、YaTeXの挿入してくれるbbはどうなんだろ。

330のやってる「perlで前処理」ってのが(2)の前半に相当し、YaTeXに自分の
使う perl script を指定できるって事かな。
0332名無しさん@お腹いっぱい。2013/12/10(火) 22:25:40.66
>>331
そうなんだ。うちはbbを指定しないとエラーになるよ。
$ cat tmp01.tex
\documentclass{jsarticle}
\usepackage[dvipdfmx]{graphicx}
\begin{document}
\includegraphics[width=\textwidth]{16.png}
\end{document}
$ platex tmp01.tex
This is e-pTeX, Version 3.1415926-p3.4-110825-2.6 (utf8.euc) (TeX Live 2013/Debian)
restricted \write18 enabled.
[snip]
! LaTeX Error: File `16.xbb' not found. Use -shell-escape option to generate au
tomatically.

See the LaTeX manual or LaTeX Companion for explanation.
Type H <return> for immediate help.
...

l.4 \includegraphics[width=\textwidth]{16.png}
0333名無しさん@お腹いっぱい。2013/12/10(火) 23:00:13.91
いっつもebb *.jpgしてbbファイルを生成してた。その作業がいらないtex
パッケージって何?
まあ、そんなに大変な作業ではないけど。
0334名無しさん@お腹いっぱい。2013/12/10(火) 23:01:04.43
>>332
そのコードで普通に xbb が自動生成されたけど…。
「restricted \write18 enabled. 」
とあるから、 -shell-escape を付けなくても自動生成は可能なはず。たぶん texmf.cnf の
shell_escape_commands =
に extractbb が指定されていないのではないかな。TeX Live の標準配布では指定されて
いないので、これは追加する必要がある。次の記事のハイライトされた所を参照。
http://oku.edu.mie-u.ac.jp/~okumura/texwiki/?cmd=read&page=Linux&word=shell_escape_commands

自分の場合 bbを指定するのは、こうやって生成された xbb ファイルのbbが不適切な場合に
あくまで暫定的に指定するときだけだな。
0335名無しさん@お腹いっぱい。2013/12/11(水) 10:08:00.98
>>334
> -shell-escape
いやいや、-shell-escapeつけるのはリスクを伴うし、
xbbってゴミが作られるやん。そんなん嫌や。
何のために、デフォルトで-shell-escapeがOFFになってるのか、
考えようよ。

と言うわけでオレは毎回bbをソースの中に入れている。
右側をちょっとtrimしたいとかTeXソースの中で即応できるしね。
ちなみに、xelatexやpdflatexでコンパイルするとbbファイルとかは不要。
03363352013/12/11(水) 10:20:37.27
>>334
ごめん、ちゃんと読んでいなかった。
脊髄反射した。

-shell-escapeをつけると、xbbを自動生成するけど、
-shell-escapeをつけなくても、設定で何とかなるのか。
いずれにしても、コンパイル終了にフックをかけて、
xbbを消す仕組みを作るのが面倒だな。

shell_espcape_comandsの設定は下記の通りになっていた。

$ cat $(locate texmf.cnf) | sed '/^%/d' | grep -A6 'shell_escape_commands'
shell_escape_commands = \
bibtex,bibtex8,\
kpsewhich,\
makeindex,\
mpost,\
repstopdf,\

--
shell_escape_commands = \
bibtex,bibtex8,\
kpsewhich,\
makeindex,\
mpost,\
repstopdf,\
03373342013/12/11(水) 11:42:20.31
逆に完璧にセキュアにしようと思ったら、
shell_escape = p
の値を f にすることになる。( t=true, f=false, p=partial )

restricted であっても \write18 が使えるようになっているのを
知らなかったとしたら、それこそセキュアではないなw
■ このスレッドは過去ログ倉庫に格納されています