\chapter{\TeX} % 第十一章
■ このスレッドは過去ログ倉庫に格納されています
>>371
>これを外部コマンドでパースするのは面倒なのです
「面倒なのです」ではなく「能力がないのです」の間違いでは?
perl でもなんでもいいけど単に \usepackage{...} の ... の部分を拾いまくるスクリプト書けばいいだけじゃん(´・ω・`) >>371
別にただ一覧したいだけなら横に並んでも全然構わんじゃん
横並びがどうしてもだめってのなら、そうなるような(あるいはもっと違った)別の条件とかあるのか?
もっと別の事情(商売でクライアントに言われたとか)まで隠してたりするんじゃないだろうね?
で、結局あんたにだけ都合のいいsomeoptionとやらは無いから
みんなのこの反応(自分で書け)なんだと思うんだけど
まだ粘ってるのは内部オプションであるはずだと信じ込んでる狂儲なのか
それともごねてれば誰かがスクリプトなりアプリなり作ってくれると思ってるクレクレか?
まあ仮に奇特な作りたがりが居たとしても未だに要求仕様が曖昧過ぎる時点で
都合のいいのが出てくるはずもないがw >>371
>外部コマンドでパースするのは面倒
話が変わってきた。Windowsを視野に入れているので、分からないなと思っていたけど、
UNIX的な解決方法がOKなら、
パッケージ名を取り出して、kpsewhichで調べるシェルスクリプトを数行書けば即解決だし、
パスにこだわらないなら\listfilesで解決だろ。 自分用の使い捨てワンライナーを書くのであれば、
$ cat tmp.tex | sed -e $'s/\\\/\\\n/g' | sed -n -e 's/^usepackage{\([^}]*\)}/ \1.sty/gp' | sed -e 's/,/.sty /g' | xargs kpsewhich
/opt/local/share/texmf-texlive/tex/latex/graphics/graphicx.sty
/opt/local/share/texmf-texlive/tex/latex/l3packages/xparse/xparse.sty
/opt/local/share/texmf-texlive/tex/latex/l3kernel/l3regex.sty
/opt/local/share/texmf-texlive/tex/latex/tools/longtable.sty
/opt/local/share/texmf-texlive/tex/latex/tools/array.sty
/opt/local/share/texmf/tex/latex/pgf/frontendlayer/tikz.sty
/opt/local/share/texmf-texlive/tex/latex/graphics/color.sty
/opt/local/share/texmf-texlive/tex/latex/hyperref/hyperref.sty
かな
1行に複数のusepackageと1のusepackageの中に複数のstyがあるパターンに対応している
grep -oE を使ってもよし。 >>375
これで十分じゃん
注文を付けるとすると \usepackage[options]{hogehoge} に対応かな?
まあここまで見せてくれたんだから後は自分でってやつだね・ω・ >>376
>\usepackage[options]{hogehoge} に対応
あっ
指摘Thanks.
でもあとは自分でやってね >> 366 元の質問者だけど
まあ能力が低いのは認める。けどもUnixユーティリティでやるとすると
\def\somename{multicol}
\let\somecs=\usepackage
\somecs{\somename}
↑こんなん処理できなくない?
だから,できればLaTeXもしくはTeXのなかで手続きをしたかったのよ。
まあクレクレみたいなったのはすまん。もうちょっと自分で考えてみるわ。
ちなみに,俺は個人でLaTeXを使ってるよ。クライアントもなにも関係ない。 >>378
それなら元ファイルをコンパイルしてそのログファイルから hoge.sty というような文字列を探せばいいじゃん
この方法なら \userpackage{hoge,fuga}みたいなのも気にする必要ないし
ただソースファイルで読み込んでいるものだけじゃなくて各々のスタイルファイルから読み込んでいるものや
ものによってはクラスファイルから読み込んでいるものまですべて拾うけどね(´・ω・`) 結局何がやりたいんか全然わかんね
個人で使ってて、能力無いなら、そこまでして知らないと意味が分からん ログ見ろってのは一番最初のレスで既に言われてるのにテキスト処理嫌だからって一回拒否ってるのよな
それでいいならここまでのレス全部茶番だわw
>>380に心から同意できそうだ ソースファイルに書かれた \usepackage から云々って話から \usepackage をマクロ化して云々とかほぼありえない話になって結局ログファイルから拾うとか…
最初のソースファイル云々ってのは何だったのか?w
人に相談するならその仕様をしっかり固めてからにしろよな…折角の人の意見が無駄になるんだよ(´・ω・`) 「山本+山」のような文字列を地の文で(数式環境以外で)入力すると
「+」の前後に空白が入って「山本 + 山」のように表示されるのだけど,
これを空白を入れずに「山本+山」のように出力する方法はありますか?
環境はtexlive2018 on MacでIPAexフォント埋め込み,jsarticle 使用。 >>386
山本{+}山
じゃだめなん?
# その例だと全角プラス使うような場面に見えるけどな {+}でも空白が入ってしまうので、結局
\newcommand{\plus}{\hspace{0pt}+\hspace{0pt}}
のようにしました。アドバイスありがとうございました。
全角の+も考えたのですが、あるソフトでのキーワード指定について説明するものだったので、
半角の+の方がよかったのです。 >>390
> \newcommand{\plus}{\hspace{0pt}+\hspace{0pt}}
前後で泣き別れしたくなければ、\kern0pt\relax のほうがいいかな。 ゼロ幅でかつ普通の字間と同程度の改行しにくさを持つ文字があれば楽なんだけどね。 ●●●ケネディ大統領が暗殺された唯一の理由は●、イスラエルの核保有に反対した為である●●●
http:/●/jbbs.livedo●or.jp/bbs/read.cgi/study/3729/1226114724/53
この掲示板(万有サロン)●に優秀な書き込みをして、総額148万円の賞金をゲ●ットしよう!(*^^)v
http://jbbs.livedoor.jp/study/3729/ →リンクが不良なら、検索窓に入れる! ほとんど全員がプリアンプルでやってること
\def\d{\rm d}
OR
\newcommand{\d}{\mathrm{d}} やってないけどやるとしたら「\,\mathrm{d}」って\,もつけるかな latexなら素で入ってるのでは?
ちゃんと覚えてないけど、\d{a}で何か出た気がするよ 個人的には「dxはxにdを施したもの」という立場には否定的なので
>>395には冷たい視線を送ってしまうなあ… >>401
ということは「d」と「x」という変数だという立場か。
それもそれでなぁ… 「作用素d」な業界では斜体
「演算子d」な業界では立体 まあ慣れの問題だろうが、純粋数学の文献に慣れていると
工学書や物理学書の組版は汚なく見えるな。 >>407
別に噛み付くつもりはないけど 物理学書のdって立体で書かれてること多くね?
寧ろ数学書(特に古いの)のほうが酷いが。
尤も,当時はそれこそTeXなどの数式が綺麗に組版できる機構がなかったので仕方無いが。 前世紀にISO31で「微分のdは立体」ってことで決着してるはず
いまは2009年発効のこれ https://ja.wikipedia.org/wiki/ISO_80000-2
euの出版社はほぼ移行済み
usの出版社と日本の老舗の出版社は乗り気でないもよう >>409
自然数の集合に0を入れてやがる。気に入らねぇ… 自然数って曖昧だから使わないほうがいいよ
正整数か非負整数ね リンゴは食べたら無くなるんだから0が自然数なのは当然ダルルォ!? 「りんごが0個」と「みかんが0個」が同じ状態を表すってのは、なかなか気持ち悪い 数学板みたいな不毛な論争やめろソフトウェアの話をするスレだここは >>409みたいな発想してるから工学書や物理学書の組版は汚ないんだな >>424
ちょっとだけクスっときた。
よく思いついたねそんな掛詞 >>395
\usepackage{physics}で \dd{x} だろ >>427
それをやるんだったら、数式中でのみ利用可能なマクロを作るわ。
例えば、 \dy, \dx は数式中のみで有効なマクロで、
\frac{\dy}{\dx}
で記述できるようにしとくわ。
百歩譲って、 \d コマンドを作るとしても、それは数式中のみで有効にするわ。 マクロが作れるのは羨ましいな。具体的にどう書くん?長いん? s/入る/居る
つまり\ifinformulaみたいな命令があるのかね。 ifmmode
ttps://en.wikibooks.org/wiki/TeX/ifmmode \ifmmodeのみしか動かないってやるほうが、現実的かな。
インライン要素とブロック要素を分けるのもメンドイしな。
一応、every系のコマンドとして、
\everymath
\everydisplay
なんかもあるw pbibtexだけインストールしたいんですけど、どうやったらいいでしょうか? >>435
とりあえず、tlmgr は以下を返したぞ。
$ tlmgr search pbibtex
pbibtex-base - Bibliography styles and miscellaneous files for pBibTeX
$ tlmgr search --file pbibtex
pbibtex-base:
(中略)
ptex.arch:
bin/arch/pbibtex
uptex.arch:
bin/arch/upbibtex
だから、 tlmgr install pbibtex-base ptex uptex ぐらいやっとけ。
とりあえず、これで kpsewhich と (u)pbibtex ぐらいはインストールしとけ。
これで期待する動作がすべて動くかしらん。
まぁ、がんばれ。 TeXってプログラムとしてはどういう種類なんだろう。
ほとんどの命令や字句規則さえ書き換えられるのってあんまりないよね。
shellとかかな? htmlのようなマークアップ言語だとおもってたけど htmlはチューリング完全じゃないけど、TeXは疑いなくそうでしょ 計算完備っていうのもそうだけど
HTMLは例えばタグの開始文字を「[」にしたり
組み込まれてる非常に原始的な命令(<head>とか)を全く別物に置き換えたりできないじゃん。 使っているPDFTeX(系列の処理系)が何のバージョンのPDFを出力するかっていうのは
実際に出力してみないと分かりませんかね。
なにか文書として「LuaTeXはPDF 1.5を生成します」みたいな一覧など知っておられますか。 uplatexでは、nociteとhyperrefのpagebackrefを同時に用いるために、
ttps://tex.stackexchange.com/questions/2919/nocite-and-pagebackref-option
に従い、プリアンブルに
\let\oldnocite\nocite
\makeatletter
\renewcommand*{\nocite}[1]{\oldnocite{#1}\Hy@backout{#1}}
\makeatother
と記載していました。今般、luatex-jaにしたところ、
! Undefined control sequence.
\nocite #1->\oldnocite {#1}\Hy@backout
と叱られてしまいます。
どなたか回避方法を思いつきますか? 443ですが、hyperrefを読み込んでいませんでした
大変失礼しました
半年反省します LaTeXで行列を楽に書けるパッケージとかないですかね。
点線での省略とかを一々繰り返すのが面倒なんです……。 >>448
いや、べつに、いまでもLaTeXで十分に簡単にかけるやん?
「行列を楽に書ける」の”楽”な度合いって、人によって異なるわけだし。
それでも面倒ならば、
テキストエディタのLaTeX入力支援を使って、snippetでも作れば、
> 点線での省略とかを一々繰り返すのが面倒なんです……。
とならずに、全く楽に入力できているんだが。
まさか、メモ帳なんかで、LaTeX文章を書いているわけじゃないでしょう。
ちなみに、こちらはEmacsとVSCode。
それぞれのsnippetは、それぞれの入力支援の拡張として、自前で書いた。 スニペットを使う方法は
「やっぱり行列の成分表記を右下じゃなくて左下にしよう」なんかの変更に対して弱いんだよね。
それにLaTeXの機能じゃなくてエディタの機能に依存することになるし。
だから避けたい。できれば\easymatrixみたいなマクロがあって
\easymatrixとやると
[ a_11 a_12 ... a_1n ]
| a_21 a_22 ... a_2n |
| : : `; : |
| a_n1 a_n2 ... a_nn ] みたいなn次正方行列が,
\easymatrix[col=1..m, row=1:2:3]{b}とやると
[ b_11 b_12 b_13 ]
| : : : |
| b_m1 b_m2 b_m3 ]
みたいな行列が書ける。 >>450
それやりだすと、
ij成分とか、lk成分とかもほしくなりそうだな。
まぁ、amsmath の行列系マクロを元にして、
期待値になるように実装すれば、いけると思う。 >>451
まあ考えだすとキリないよね……
大したマクロでもないし,車輪の再発明は避けたいので
出来合いのものがあれば嬉しいんだけど。 すいません
\pdfvariable minorversion 7
これでいけました。 TeX Live以外にLinux向けのTeX環境を配布しているところない?
ていうかtexのバイナリとかってどこで入手できるの? >>455
(別にLinuxにかぎらず)MiKTeXがある。
ただ…、TeX Liveのインストール構成を小さくして入れたらいいと思う。 数学板だけでもTeXに対応せんかな?
読みにくいしダサすぎ TeXの技術的な問題じゃないんだけど
大抵の欧文フォントと大抵の日本語フォントを比べたときに欧文のほうが「太く」感じるのって俺だけかな。
日本語フォントに含まれる欧文フォントを使っても太く感じるので、多分俺の問題だとは思うんだけど。
欧文フォントのRegularに対して日本語フォントのSemiBoldがちょうど良いように見える。 >>459
変な話、NFSSのseries、weightに相当するRegular, Semiboldなんても、
どんな名前だってOKなんだから。 TeXで文字としての情報だけを取得するマクロとかありますか。(できればplain TeXとかに近い環境で)
PDFのタイトルやアウトラインを指定するときに\TeXなどのカーニング情報が入ったマクロではなく
プレーンテキストの形で渡したいんです。でも単にコマンドの名前をそのまま残すのではなく
「\myname」→「佐藤 敏夫」みたいな展開を行なってから装飾を剥ぎ取りたいです。 >>463
PDF化して pdftotext -raw でプレーンテキスト取り出すのではいかんの? >>464
できればTeXのマクロとして欲しいです。
というのも目的は
\special{pdf:docinfo <<
/Title (\@title)
>>}}
↑こういう文で\@titleの文字列をプレーンテキストにしたいんです。 >>465
.texをdetexとかじゃなくて、
普通にプレーンテキストに吐くTeXコンパイラを作ったほうがよさげ。 標準出力に対応してればパイプでpdftotextに繋げられるのに 突然だけど いわゆるplain (p)TeXって今時使ってる人いるのかな。
plain TeXがTeX Liveの最新版にも収録されているのはD. Knuthに敬意を払っているっていう話を聞いたことがあって
ということは実質plain TeXは彼一人を除いて誰も使っていないんじゃないか。 Windows10からw32texでtexを使い始め、2ヶ月まえからDebianでTexliveでもtexを使っているけど、どうしてLinuxではmain.texでのコンパイルができないのですが、うまくできているかた、Linuxの設定の詳細をお願いします。 >>469
>Linuxではmain.texでのコンパイルができない
ちょっと意味がわからないんだけどもっと詳しく書けるかな?
わたしの知識では仮に「main.tex」なるものがあったとすればそれはコンパイルする方じゃなくてされる方なんだけどね
これだと
$ main.tex hoge.tex
として hoge.tex をコンパイルしようとしているのかな?っと…
また「main.tex のコンパイルができない」と読んだとしてもその中身がわからなければ何もアドバイス等はできないしね
何らかの統合環境を用いて「main.tex」なるものを処理すると何かが起きるのであってもその統合環境がわからないとね >>469
特別な設定は不要です。Windowsよりも簡単なはずです。
難関のWindowsでコンパイルできる力量があるなら、
何もしなくてもよいDebianはとても楽チンなはずです。
エスパーしますが、main.texが必要とするパッケージをインストールしていないのではないですか?
Debianでは、TeXLiveは巨大なのでディスクスペースの無駄なので、
必要なものだけを選択的にインストールできるようになっています。
sudo apt install texlive*
と一生涯使わないものも含めて全てインストールするか、
あるいは、必要なパッケージを特定してインストールします。
例えば、tikz.styがないと言われたら、
$ apt-file search /tikz.sty
latexml: /usr/share/perl5/LaTeXML/Package/tikz.sty.ltxml
texlive-pictures: /usr/share/texlive/texmf-dist/tex/latex/pgf/frontendlayer/tikz.sty
で、texlive-picturesに入っていると分かります。
apt-fileを入れていなかったら、まずはapt-fileのインストールが必要。 ■ このスレッドは過去ログ倉庫に格納されています