質問用フォーラムです。ご質問の前に質問のしかたをご覧ください。

plain.tex のアーカイブについて

- ut の投稿
# この投稿の元々の動機は、実は、先日の私の投稿の訂正なのですが、
# それだけのために書き込むのもどうかと思いますので、併せて質問
# もさせてください。

(1)訂 正

Re: uplatexでLatin Small Letter H with Breve Belowを使いたい
2023年 03月 7日(火曜日) 17:47 - ut の投稿
https://okumuralab.org/tex/mod/forum/discuss.php?d=3546&parent=21937#p21938

に私が書いた、“LaTeX のバージョン” は間違いです、すいません。

こちらの投稿自体が既に「訂正の訂正」でしたし、当初のご質問に
対する回答としても逸れてしまっていましたので、それに続けて
再々度の訂正を重ねるのはやめまして、こちらに書かせていただき
ます:

【誤】
  LaTeX0.97: lplain.tex [1983/05/12]
  LaTeX0.9999: lplain.tex [1983/07/29]
  LaTeX0.99999: lplain.tex [1983/09/03]
  LaTeX0.999999: lplain.tex [1983/10/05]
  LaTeX1.0: lplain.tex [1983/11/10]

【正】
  LaTeX: lplain.tex [1983/05/12] (FOR USE WITH TEX VERSION 0.97)
  LaTeX: lplain.tex [1983/07/29] (FOR USE WITH TEX VERSION 0.9999)
  LaTeX: lplain.tex [1983/09/03] (FOR USE WITH TEX VERSION 0.99999)
  LaTeX: lplain.tex [1983/10/05] (FOR USE WITH TEX VERSION 0.999999)
  LaTeX: lplain.tex [1983/11/10] (FOR USE WITH TEX VERSION 1.0)


(2)質 問

plain.tex の過去のバージョンは、どこかにアーカイブがあるので
しょうか?

私が探せた限りでは、1995 年の:

  \def\fmtversion{3.14159}

というバージョンが一番古いものでした。
(1986 年刊の TeXbook のソース?〔texman.tex〕の Appendix B
の plain.tex のバージョンは \def\fmtversion{2.2} でしたけれど)

ちなみに、TeXbook や Computers & Typesetting の errata には:

errata.three:
  Page A364, fifth-last line (1/30/87)
  \def\fmtname{plain}\def\fmtversion{2.3} % identifies the current format

errata.four:
  Page A364, line 35 (11/6/88)
  \def\fmtname{plain}\def\fmtversion{2.94} % identifies the current format

errata.five:
  Page A364, line 5 from the bottom (9/23/89)
  \def\fmtname{plain}\def\fmtversion{3.0} % identifies the current format

errata.seven:
  Page A364, line 5 from the bottom (11/4/91)
  \def\fmtname{plain}\def\fmtversion{3.141}

という記述が見られますが、これらのバージョンも、私の検索の仕
方が悪いのか、ヒットしませんでした。

uplatexでLatin Small Letter H with Breve Belowを使いたい

- kondo yuzo の投稿
現在以下のような設定ですが、上記のU+1E2Bなどが使用できません
\usepackage[T1]{fontenc}
\usepackage{textcomp}
\usepackage[utf8]{inputenc}
%\usepackage[utf8x]{inputenc}
\usepackage[prefernoncjk]{pxcjkcat}
\usepackage{extaccent,DeclareUnicode}
\usepackage[schinese,japanese]{pxbabel}

設定方法などについてご教示をおねがいします
pdfになればいいのでコマンドで表記する方法でもかまいません

whichpageマクロが動きません

- vex cuesta の投稿
始めまして.

pagerefを同一ページでは表示しないマクロを奥村先生が作っていらっしゃる
のを知り,コピペして使わせてもらおうと思いましたが,うまくいきません.

PCの環境,エラーメッセージ,ソースコードを下に貼り付けました.

TeXLive2022とPCの組み合わせが原因かと思い,MacMini(intel CPU)で
TeXLive2019でコンパイルすると,うまくいきます.

何か解決策はないかアドバイス頂けないでしょうか?よろしくお願いします.

%%% PC環境 %%%
MacBook Pro(Apple M2, Ventura13.2.1)

%%%% エラーメッセージ %%%
This is ptex2pdf[.lua] version 20200520.0.
Processing test.tex
This is e-pTeX, Version 3.141592653-p4.0.0-220214-2.6 (utf8.euc) (TeX Live 2022) (preloaded format=platex)
restricted \write18 enabled.
entering extended mode
(./test.tex
pLaTeX2e <2023-02-14> (based on LaTeX2e <2022-11-01> patch level 1)
L3 programming layer <2023-02-22>
(/usr/local/texlive/2022/texmf-dist/tex/platex/jsclasses/jsarticle.cls
Document Class: jsarticle 2023/02/23 jsclasses (okumura, texjporg)
(/usr/local/texlive/2022/texmf-dist/tex/platex/jsclasses/jslogo.sty))
(/usr/local/texlive/2022/texmf-dist/tex/latex/l3backend/l3backend-dvips.def)
(./test.aux)
./test.tex:19: Missing number, treated as zero.

\xparse function is not expandable
l.19 ...号は\ref{初めの節}で,\whichpage{初めの節}
です.

%%% ソースファイル %%%%
¥documentclass{jsarticle}
¥makeatletter%
¥def¥whichpage#1{%
¥expandafter¥ifx¥csname r@#1¥endcsname¥relax%
¥else%
¥@tempcnta¥pageref{#1}¥relax%
¥advance¥@tempcnta-¥c@page%
¥ifnum¥@tempcnta=0%
このページ
¥else%
¥pageref{#1}ページ%
¥fi%
¥fi%
}%
¥makeatother%
¥begin{document}
¥section{初めの節}
¥label{初めの節}
この節番号は¥ref{初めの節}で,¥whichpage{初めの節}です.
次の節番号は¥ref{次の節}で.¥whichpage{次の節}です.
¥newpage
¥section{次の節}
¥label{次の節}
前の節番号は¥ref{初めの節}で,¥whichpage{初めの節}です.
この節番号は¥ref{次の節}で.¥whichpage{次の節}です.
¥end{document}

enumerate環境における行揃え

- significant kkom の投稿
enumerate環境で, \itemの途中から行を揃えて出力したいです. 先に添付ファイルを見ていただくとやりたいことが伝わるかもしれません.

split環境のように&を使ってそろえることができたらよいのですが, わかりませんでした.
そこで, 添付ファイルのように左側の文字数(正確にはバイト数)をカウントして, 適切な\vspaceを入れればよいのではないかと考えました.
lualatexのluaコードを使って挑戦してみましたが, 添付ファイルの通り微妙にずれてしまいます.
プログラミング自体全くの初心者なため, あまり良いコードではないと思います. 今回は下記のサイトを参考に書かせてもらいました,

https://qiita.com/zr_tex8r/items/af2905bc93ac2c936a67

この方法に限らず, 「\itemの途中から行を揃えて出力」をする方法を教えていただけないでしょうか. 回答のほどどうぞよろしくお願いいたします.

OpTeXというフォーマットについて

- Ogino Masanori の投稿

こんにちは。OpTeXというフォーマットを最近知って興味を持ちました。これは以下のようなフォーマットです。

  • LuaTeXのみをサポートする
  • Unicode入力を前提とする(\"などが定義されていない)
  • luatexbaseに依存しない
  • luaotfloadベースのフォント選択システム(fontspecではない)
  • OpenType数式フォントサポート
  • 多言語のハイフネーションサポート
  • 色、画像の埋め込み、ハイパーリンク、シンタックスハイライト、索引の作成とソート、文献データベースの読み込み、引用スタイルなどをビルトインで提供する
  • key=valueのサポート
  • 機能と簡潔さのバランス

上記の理由(特に3番目と4番目)からLuaTeX-jaをそのまま読み込むことはできません。ただし、日本語フォントを読み込ませること自体は可能です。テスト用のファイルを添付します。

日本語組版こそ現状できませんが、plain TeXを経由することなくLaTeXから入ったのでOpTeXの書き味が新鮮で面白いと感じています。他にどなたかOpTeXを試した方、あるいはこの投稿で興味を持った方はおられますか。

タグ:

mendexの-s オプションの使い方 特に2つある場合

- 古島 健太 の投稿
mendexの-s オプションがうまくいかないのです.すみませんが教えてください。 TeXworksでやってます. Windows10 経験したこと; タイプセットはpLaTeX(ptex2pdf) documentclassは \documentclass[12pt,b5paper,dvipdfmx]{jsbook} でやってます. 2つの.istファイルを以下のように作りました. %%%%%%%%%%%%%% MYINDEX.IST %%%%%%%%%%%%%%%%%%%%%%%% delim_0 " \\dotfill\\ " delim_1 " \\dotfill\\ " delim_2 " \\dotfill\\ " lethead_flag 1 letter_head 2 lethead_prefix "\n\\centerline{\\gtfamily $\\bigstar$" lethead_suffix "行}\\par\\nobreak" %%%%%%%%%%%%%%% MYINDEX頭文字なし.IST %%%%%%%%%%% delim_0 " \\dotfill\\ " delim_1 " \\dotfill\\ " delim_2 " \\dotfill\\ " lethead_flag 0 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 要するに索引部分をちょっとカッコ良くしたいのです. DOSコマンドでは他のoptionは一応うまく動いたのです.

ltjsbook.clsでchapterの上下余白の設定を変更したが適用されない

- Alkyne BB の投稿
はじめまして、現在大学1年生でTeXを勉強している者です。以下トラブルの内容になります。技術系の質問を初めて行うので、内容および質問の仕方が稚拙であったら申し訳ございません。

要望:デフォルトではchapterの上下余白が大きいので狭めたい
問題:ltjsbook.clsやltjsclasses.dtxで[1]を参考にchapterの上下余白設定について変更を行ったが、その変更が適用されない
環境:OSはWindows11 pro、LuaLaTeXを使用

[状況詳細]
LuaLaTeXなので文書クラスにはltjsbookを用いております。以下、余白設定やchapterなどのカスタマイズに関するプリアンブルのソースコードです(抜粋)。
---
\documentclass[a4paper]{ltjsbook} %文書クラス(lualatex用、ドライバ指定必要なし)
\usepackage[top=15mm, bottom=15mm, left=10mm, right=10mm]{geometry} %用紙余白設定
\usepackage{tikz} %図
\usetikzlibrary{calc}
\usepackage{tcolorbox} %ボックス
\tcbuselibrary{xparse,hooks,skins,breakable,theorems,listingsutf8}
\usepackage{varwidth} %可変幅ミニページ
\usepackage[explicit]{titlesec} %見出し書式変更
\usepackage{ascolorboxlua} %独自パッケージ
%---文章スタイルの定義---
%chapter環境
\titleformat{\chapter}[display]{\bfseries \Large}{}{10pt}{%
\begin{ascolorbox17}{\uuline{第{\Huge \thechapter} 章} {\large \blacktriangleright \blacktriangleright \blacktriangleright} }
\rightline{\LARGE #1}
\end{ascolorbox17}%
}
%chapterのデフォルトでついてくるページ番号なくす
\makeatletter %@を英文字に(マクロのため)
\def\plainifnotempty{%
\thispagestyle{plainfoot}% 元は plainhead
}
\makeatother %@をその他の文字に
%chapterの上下余白変更-->ltjsbook.clsを参照
---
また、ltjsbook.clsの変更ですが、基本的に[1]に示したような変更しかしておりません。以下抜粋です(1006~1032行の部分になります)。※が変更部分です
---
\def\@makechapterhead#1{%
\vspace*{0\Cvs}% 欧文は50pt。2から0に変更済み※
{\parindent \z@ \raggedright \normalfont
\ifnum \c@secnumdepth >\m@ne
\if@mainmatter
\huge\headfont \@chapapp\thechapter\@chappos
\par\nobreak
\vskip \Cvs % 欧文は20pt
\fi
\fi
\interlinepenalty\@M
\Huge \headfont #1\par\nobreak
\vskip \Cvs}} % 欧文は40pt。3から1に変更済み※
\def\@schapter#1{%
\chaptermark{#1}%
\if@twocolumn
\@topnewpage[\@makeschapterhead{#1}]%
\else
\@makeschapterhead{#1}\@afterheading
\fi}
\def\@makeschapterhead#1{%
\vspace*{0\Cvs}% 欧文は50pt。2から0に変更済※
{\parindent \z@ \raggedright
\normalfont
\interlinepenalty\@M
\Huge \headfont #1\par\nobreak
\vskip 1\Cvs}} % 欧文は40pt。3から1に変更済※
---
またltjsclasses.dtxの方にも同様の部分がありましたので、同様に変更しております。
以上が本トラブルの詳細になります。

[怪しい部分]
・途中で、ascolorboxという外部のパッケージを用いております。具体的には、ascolorboxをそのまま用いるとzwが\zwでないなどでエラーが吐かれますので、lualatex用にそういったフォーマットを整えて新規パッケージとした(ascolorboxlua)うえで、chapterでascolorboxにより提供されるtcolorboxで作成された独自のデザインの枠を用いています。[2]に出典を記します。なお新規パッケージといえども大枠はほとんど変更していないため、今回の件が手を加えたことに起因しているとは思えないです。
・悪さをしている原因として一番考えられそうだと私が考えているのはtitlesecです。(titlesecの動作機序を調べたのですが、サイトの内容を読んでも理解力がなくいまいちよく理解できませんでした。)

[分からないこと]
・実はclsなどtexの深部ファイルの変更はあまり行っていませんが、文書自体がデフォルト状態から相当カスタマイズを進めてしまっているので、読み込んでいるパッケージなどがとても多い状況です(デザインに凝ろうとして素人が中途半端に手を出した結果です)。上にあげた以外で悪さをしそうなパッケージ(e.g. ヘッダー・フッターの編集に係るpackage)などがあれば、ご教示いただきたいです。
・dtxファイルについての説明を検索したのですが、パッケージ本体という説明のみで詳しい仕様がわかりませんでした。コンパイルする際はどのように参照されるかなどの仕組みが知りたいです。

サイトを調べても解決せず困っております。長文失礼いたしました。

(参考サイト)
[1]http://nohzen.blog76.fc2.com/blog-entry-118.html (20230224訪問)
[2]https://github.com/Yasunari/ascolorbox (20230224訪問)

図を読み込んだTeXファイルをamsartでコンパイルしたらエラー

- sk attack の投稿
お久しぶりです。図を読み込んだTeXファイルをamsartでコンパイルしたらエラーがでて解決できないのでご相談申し上げます。

【環境】
ハードウエア: MacBook Air, Apple M2
OS: macOS 13.2.1
TeX環境: pdfTeX, Version 3.141592653-2.6-1.40.24 (TeX Live 2022) (preloaded format=latex)とTeXShopバージョン5.12

【症状】
図を読み込んだTeXファイルをコンパイルしたらエラーメッセージがでて困っています。
具体的にはdocumentclassがamsartだとエラーがでますが、ちなみにarticleでコンパイルするとエラーがでません。

%----(エラーのでるソース)------
\documentclass{amsart}
%\documentclass{article}
\usepackage{graphicx}
\begin{document}
\begin{figure}[hbt]
\scalebox{0.5}{\includegraphics[clip]{tiger.eps}}
\caption{虎}
\end{figure}
\end{document}
%----(エラーのでるソースここまで)------




エラーメッセージは次のとおりです:

This is ptex2pdf[.lua] version 20200520.0.
Processing test1.tex
This is e-pTeX, Version 3.141592653-p4.0.0-220214-2.6 (utf8.euc) (TeX Live 2022) (preloaded format=platex)
restricted \write18 enabled.
entering extended mode
(./test1.tex
pLaTeX2e <2023-02-14> (based on LaTeX2e <2022-11-01> patch level 1)
L3 programming layer <2023-02-07>
(/usr/local/texlive/2022/texmf-dist/tex/latex/amscls/amsart.cls
Document Class: amsart 2020/05/29 v2.20.6
(/usr/local/texlive/2022/texmf-dist/tex/latex/amsmath/amsmath.sty
For additional information on amsmath, use the `?' option.
(/usr/local/texlive/2022/texmf-dist/tex/latex/amsmath/amstext.sty
(/usr/local/texlive/2022/texmf-dist/tex/latex/amsmath/amsgen.sty))
(/usr/local/texlive/2022/texmf-dist/tex/latex/amsmath/amsbsy.sty)
(/usr/local/texlive/2022/texmf-dist/tex/latex/amsmath/amsopn.sty))
(I search kanjifont definition file: . . ) (I search font definition file: . .
. . . . . ) (/usr/local/texlive/2022/texmf-dist/tex/latex/amsfonts/umsa.fd)
(/usr/local/texlive/2022/texmf-dist/tex/latex/amsfonts/amsfonts.sty))
(/usr/local/texlive/2022/texmf-dist/tex/latex/graphics/graphicx.sty
(/usr/local/texlive/2022/texmf-dist/tex/latex/graphics/keyval.sty)
(/usr/local/texlive/2022/texmf-dist/tex/latex/graphics/graphics.sty
(/usr/local/texlive/2022/texmf-dist/tex/latex/graphics/trig.sty)
(/usr/local/texlive/2022/texmf-dist/tex/latex/graphics-cfg/graphics.cfg)
(/usr/local/texlive/2022/texmf-dist/tex/latex/graphics-def/dvips.def)))
(/usr/local/texlive/2022/texmf-dist/tex/latex/l3backend/l3backend-dvips.def)
(./test1.aux) (/usr/local/texlive/2022/texmf-dist/tex/latex/amsfonts/umsa.fd)
(/usr/local/texlive/2022/texmf-dist/tex/latex/amsfonts/umsb.fd)

./test1.tex:8: LaTeX Error: Direction change inside float!?
Use \layoutcaption provided in \usepackage{plext}.

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

l.8 \end{figure}

?

以上です。アドバイス頂けるとたすかります。

tikzで立方根のグラフが描けない

- epsiron epsiron の投稿
windows10,texlive2019を利用しています。
tikzで立方根のグラフを描こうとしています。
定義域が正であれば描けますが,定義域に負の数を含めると描けなくなります。
ちなみに,二次関数は定義域に負の数を含めても描けます。
以下ソースコードです。

\documentclass[paper=b5, dvipdfmx,fleqn]{jlreq}
\usepackage{amsmath, amssymb,ascmac}
\usepackage{tikz}
\usetikzlibrary{math,intersections,calc,through,arrows.meta}
\begin{document}
\begin{tikzpicture}[scale=0.5]
\draw[->] (-5,0) -- (5,0) node[below] {$x$};
\draw[->] (0,-5) -- (0,5) node[left] {$y$};
\coordinate (O) at (0,0);
\node[below left]at(0,0){O};
\node[above]at(5,2){$y=\sqrt[3]{x}$};
\draw plot[samples=100,domain=0:2](\x,{pow(\x,1/3)});
\draw [domain=-2:2] plot (\x, {pow(\x,2)});
\end{tikzpicture}
\end{document}

\draw plot[samples=100,domain=-2:2](\x,{pow(\x,1/3)});
において,範囲を
\draw plot[samples=100,domain=0:2](\x,{pow(\x,1/3)});
に変えれば問題なく描けるのですが。

ご教示頂ければ幸いです。


platex で marginpar が通らない (2023/02/23)

- 陽二郎 若座 の投稿
platex でdtxファイルを書いていて
\DescribeMacro コマンドが使えないトラブルに遭遇しました.
2023年2月9日にTeXLiveを更新していて, 2月23日の朝まで使っていました.
その後TeXLiveを更新して, 仕事を終えたのですが,
夜になると同じファイルのコンパイルができなくなっていました.
別のdtxファイルも調べた結果, コンパイルできない理由はdtxファイル以外だと判明しました.
行を消すなどして調べたところ,
\marginparコマンドでもトラブルが出ていることが判明しました.
TeXShopのpdflatex (実体はlualatex)に変えたところ, トラブルが消えましたので,
platexの方のトラブルと考えて, エラーの同定を試みました.

添付ファイルはlualatexで正常コンパイル, platexとuplatexでコンパイル失敗となります.
エラーメッセージも採取して入れておきました.
当面の対応策とエラーの報告先を教えていただければ幸いです.

対応の仕方ですが, 日本語latexを仕事で使っていて,
質問を受けた点などをマージンにコメントして, 調べ物をして, 仕事を進めて,
マージンのコメントを消すというサイクルに助けられています.
こちらは, 全体が日本語ファイルですので, 日本語関係のパッケージによる解決も可です.
速度面の事情とルビの関係でlualatexへの移行は当面無理です.

dtxファイルの方は国際対応としたいため, 英語が多いのですが,
TeXShopのデフォールトのコンパイラーをplatexのままにしておきたいという事情があります.
それでも, dtxファイルは日本語関係のパッケージの使い方を知らない配布先に配慮したいと思います.

現状, 英語ファイルを基にして,
そのときそのとき使用する部分だけ日本語に翻訳しながら使用する作業もあります.
他の人の英語ファイルに数行を加えて, platex (uplatex)で使用する形の対応も必要です.