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

TeX が keyword を順番にスキャンしている?

- ut の投稿
別のディスカッショントピックとしてご質問をさせていただきました:

  \noexpand の動作は、どのように考えるとよいか
  2023年 03月 31日(金曜日) 13:54 - ut の投稿
  https://okumuralab.org/tex/mod/forum/discuss.php?d=3563

について考えてみるに際しては、以下のページを参考にしていました:

--------------------------------------------------------------------------------
  Tralics: a LaTeX to XML translator
  http://www-sop.inria.fr/marelle/tralics/

というページにある:

  HTML documentation of all TeX commands, in alphabetic order

の中の "N" のページの \noexapnd の説明:

  http://www-sop.inria.fr/marelle/tralics/doc-n.html#cmd-noexpand

--------------------------------------------------------------------------------
このページでは、\noexpand の説明をするのに、例を 10 パターン列挙しているのですが、
そのうちの 7 番目 ~ 10 番目が、実はよく理解できませんでした。

該当箇所には以下のようにあります(勝手に番号を振り、例を説明文のすぐ後ろに移動し
ました.また、to と spread には引用符を付けました):

--------------------------------------------------------------------------------
(7) In the line that follows, expansion is inhibited while scanning the "to" keyword.
Hence \foo is expanded again and is considered as an opening brace.

  \def\foo{\bgroup}\hbox\noexpand\foo x\egroup 

(8) In the line that follows, the second \noexpand is eaten by scanning the "spread"
keyword. So it requires three \noexpand in order to discard \foo.

  \hbox\noexpand\noexpand\foo y\egroup
  \hbox\noexpand\noexpand\noexpand\foo{z}

(9) In the two lines that follow, the non-expanded \foo terminates scanning of
the number, and becomes part of the unit of measure.

  \def\foo{pt} \dimen0=2\noexpand\foo
  \def\foo{.5pt} \dimen0=2\noexpand\foo  % error

(10) Consider the last line: how many \noexpand tokens are needed to effectively
suppress expansion (and provoke an error)?. Quite a lot: ... and 15 in TeX.
The syntax of a dimension is quite complicated (see scandimen) and each time
an optional thing is tried, one \noexpand is eaten. For instance, one could
have em, ex or true. After that ... TeX scan eleven keywords, one after the other.

  %\def\foo{sp} \dimen0=2\noexpand\noexpand...\foo 

--------------------------------------------------------------------------------

質 問

(7) と (8) を素朴に読みますと、\hbox の後ろでは、まず "to" があるかどうかがスキ
ャンされて、次に "spread" があるかどうかがスキャンされていて、その度に \noexpand が
一旦呑み込まれる、ということのようなのですが、そういう理解でよいのでしょうか。

(9) と (10) についても、ディメンションを確定するには、単位の keyword が必要で、
pt, em, ex, in, pc, cm, mm, bp, dd, cc, sp の 11 個のうちのどれかがちゃんとあるか
どうかが順番にスキャンされていって、その度ごとに \noexpand が一旦呑み込まれる、と
いうことなのでしょうか。
(あと 4 つは、何? true?, mu?, by?, minus?, plus?, fil?)


※ 興味本位での質問ですので、格別今、何か困っているというわけではありません。

texlive 2023 で bxglyphwikiパッケージがエラー

- Sakai Taka. の投稿
texlive2022 を更新しようとしたところ 2023 への切替えるように出たのでインストールしたところ bxglyphwiki パッケージでエラーが出ます。

bxgw_u3bff.def とbxgw_u3bff.def はダウンロードされており、更に bxgw_u3bff_13.eps がダウンロードされています(要求した漢字コードは u3bff です)
2022で同じソースをコンパイルすると pdf ファイルとなっていて正常に動作します。
log ファイルの該当部分をみると

------------------------------------
(c:/texlive/2023/texmf-dist/tex/latex/lm/ot1lmtt.fd
File: ot1lmtt.fd 2015/05/01 v1.6.1 Font defs for Latin Modern
)
runsystem(bxglyphwiki +info . pdf dvipdfmx u3bff)...executed.

(./bxgw_resp_.def)
(./bxgw_u3bff.def)
Package bxglyphwiki Info: Using ver.13 for 'u3bff' (latest=13),
(bxglyphwiki)            with download, on input line 12.
runsystem(bxglyphwiki +get . pdf dvipdfmx u3bff 13)...executed.

(./bxgw_resp_.def)

! Package bxglyphwiki Error: Helper command failed for some reason.

See the bxglyphwiki package documentation for explanation.
Type  H <return>  for immediate help.
...                                             
                                                 
l.12 ...前第一部上」をみると\GWI{u3bff}
                                                とある。この\GWI{u3bff}
?
! Emergency stop.
...                                             

You're in trouble here.  Try typing  <return>  to proceed.
If that doesn't work, type  X <return>  to quit.
-----------------------------------
となっています。

コンパイルは秀丸、abenori さんの祝鳥マクロ上で行っていますがこちらのエラー出力を見ると

----------------------
(./bxgw_u3bff.def)bxglyphwiki: Try method 'wget'...(1)
bxglyphwiki: Method 'wget' is not available
bxglyphwiki: Try method 'curl'...(1)
bxglyphwiki: Try downloading...
bxglyphwiki: Data is successfully downloaded
epstopdf ($Id: epstopdf.pl 66407 2023-03-06 23:44:49Z karl $) 2.31
!!! Error: Input filename './bxgw_u3bff_13.eps' not allowed in restricted mode.
C:\texlive\2023\bin\windows\runscript.tlu:921: command failed with exit code 2:
perl.exe c:\texlive\2023\texmf-dist\scripts\epstopdf\epstopdf.pl --restricted ./bxgw_u3bff_13.eps
bxglyphwiki: EPS->PDF conversion failure: ./bxgw_u3bff_13.eps
(./bxgw_resp_.def)

! Package bxglyphwiki Error: Helper command failed for some reason.

See the bxglyphwiki package documentation for explanation.
Type  H <return>  for immediate help.
...                                             
                                                 
l.12 ...前第一部上」をみると\GWI{u3bff}
---------------------

という出力になっています。eps → pdf の部分で失敗しているようですが、これは 2023 に変わったせいでしょうか?
bxglyphwiki パッケージのインストールはうまくいっている筈ですが(以前に質問した時は肝心の mktexlsr を忘れるなんてドジを踏んでいますが・・・)

改ページせずに2段組の後ろに1段組の文章を挿入したい

- skurlavenija hortxertiju の投稿

こんにちは、初投稿失礼します。

LaTeXで論文を書いていて、
原稿の様式に合うようにするために、
改ページせずに二段組の後ろに一段組の文章を挿入したいのですが、
うまい方法が知りたいです。

具体的には、
原稿の様式として
  • 本文は2段組
  • 最終ページに英文のタイトル、著者名及び要旨を横1段組で書く
というルールがあります。
ここで最終ページは改ページをしません。

環境

  • OS:Alpine 3.15.0(ただしWindows 10 HomeのDocker上で)
  • ドキュメントクラス:jsarticle
  • 実行コマンド:latexmk -C main.tex && latexmk main.tex && latexmk -c main.tex
  • latexmkのバージョン:4.76
  • Dockerのバージョン:20.10.10
  • 使用しているテキストエディタ:Visual Studio Code

試したこと

table* を使う方法をよく見かけ、
試してみましたが、
改ページが行われてしまいます。

jsarticleではなくujarticleを試してみましたが、
状況は同じでした。

ソースコード

問題が再現できる小さいTeXファイル(main.tex)を以下に示します。
本来のソースコードはもう少し複雑で、完全なものはここで見ることができます。
また、リポジトリはここで見ることができます。

↓↓↓↓↓ ソースコードここから ↓↓↓↓↓
\documentclass[dvipdfmx,uplatex,a4j,10pt,oneside,twocolumn]{jsarticle}
\title{適当なタイトル}
\author{適当な著者\\適当な指導教官}
\begin{document}
\twocolumn[
 \vspace{13mm}
 \begin{abstract}
 {\parbox[t]{150mm}{適当な概要}}
 \end{abstract}
 \maketitle
 \center{
 \parbox[t]{150mm}{
 \center{
 \normalsize{
 \textrm{
 \textit{
 \textbf{Key Words:}
 適当なkeywords
 }
 }
 }
 }
 }
 }
 \thispagestyle{empty}
 \vspace{10mm}
]
\setcounter{tocdepth}{2}
ここに長い本文が来ます
\clearpage
ここに長い本文が来ます
\thispagestyle{empty}
% ここで改ページされてしまいます
% しかも改ページは下部ではなく中央に表示されてしまいます
\begin{table*}[b]
 \begin{center}
 \parbox[t]{150mm}{
 \rmfamily{
 \begin{center}
 \large{
 English Title
 \\
 \vspace{2ex}
 English Author
 \\
 English supervisor
 \\
 }
 \end{center}
 \vspace{1ex}
 \small{
 \hspace*{1em}
 English abstract
 }
 }
 }
 \end{center}
\end{table*}
\end{document}

↑↑↑↑↑ ソースコードここまで ↑↑↑↑↑

何かいい方法がありましたら、
ご教示願いたいです。
よろしくお願いします。

AMD64 アーキテクチャ で Windows OS でTeXLive で利用されている方に協力依頼ア

- 和田 勇 の投稿

なぜだろうというのを調べたいので、表題の環境を利用されている方に
ご協力いただけないかな という依頼です。

こちらの環境等
  M1-mac に Paralles 仮想環境の Windows
    (PROCESSOR_ARCHITECTURE は AMD64 とプリセット)
  に TeXLive 2023 をインストールしようとした


今朝、久々に texlive のアップデートしようとしたら、
「リポジトリは 2023 になってるよ」とのこと。

今年は、早いなと思いつつ 2023 をあれこれインストール。

大きく見た目が変わったことは Winodows のバイナリは win32 から
以下のように windows に置き場所に名前が変わった。

   C:\texlive\2023\bin\windows

ところが M1-mac の parallels 仮想環境の Windoows では以下のように
インストールできない。(iso版, exe版, zip版三つとも)

   32-bit no longer supported
   続行するには何かキーを押してください . . .

調べると PROCESSOR_ARCHITECTURE が
サポート外のものと判断されるらしいので
どのように設定されているか調べるために
zip 版のインストーラにデバッグ行を入れただけで
インストールできるようになった。

   --- .\install-tl-windows.bat.orig  2023-03-26 11:17:52.310108000 +0900
   +++ .\install-tl-windows.bat    2023-03-26 10:56:53.057860900 +0900
   @@ -19,7 +19,7 @@
      echo TeX Live 2020 has not been tested on Windows Vista.
      pause
   )
   -
   +echo "%PROCESSOR_ARCHITECTURE%"
    if not "AMD64"=="%PROCESSOR_ARCHITECTURE%" (
    if not "AMD64"=="%PROCESSOR_ARCHITEW6432%" (
      echo 32-bit no longer supported

協力していただけるかたに試して欲しいこと。
1) zip版 (*1) の install-tl-windows.bat をそのまま利用してインストールできるか否か
2) できない場合は、上記差分のようにデバッグ行を入れた場合はどうなるか

  (*1) https://mirror.ctan.org/systems/texlive/tlnet/install-tl.zip

latexmkにおけるdvipdfmxのオプションについて

- 09 Sasa の投稿
Windows10でTeX Live 2022のlatexmk 65485(4.79)を使っています。
見出し等のフォントを一部変更するため、変更するフォントを記載したmymap.mapをカレントディレクトリに置いてあります。
.latexmkrcにこのmapファイルを使用してPDFを作成するようにと
$dvipdf = 'dvipdfmx "-f mymap.map" -o %D %S';
を記述しました。
この状態でlatexmkにて処理するとPDFの作成まで行われるのですが、mymap.mapの内容が反映されていません。
dvipdfmx -f mymap.mapで処理すると期待通りのフォントが埋め込まれたPDFとなります。
以上から、latexmkにおけるdvipdfmxのオプションの記述を誤っていると思われますが、正しくはどのように記述すべきなのでしょうか。

TeXshopでタイプセットが機能しません

- 加藤 の投稿
TeX初心者です。よろしくお願いします。M1Macに「LATEX2e美文書作成入門」のDVDからインストールしました。一度DVDから直接インストールをしたのでアンインストール(P348)したのちに、P346のコラムに従ってインストールしました。 TeXShopに下記の記述をしてタイプセットをしてもドキュメント名や保存場所を聞いてきません。 \documentclass{jarticle} \begin{document} アインシュタインは $E=mc^2$ と言った。 \end{document} 気になったのは、TeXShopの設定の内部設定、パス設定 (pdf)TeXが /Library/TeX/texbin Distillerが /usr/local/bin となっていて、書籍の説明(P348)と異なります。 よろしくお願いします。

tikzでnodeの位置が思い通りにならない

- ほむ ら の投稿
初めてこのフォーラムを利用するので、不手際があったら申し訳ございません。
Windowsでtex liveを使っています。

tikzを使って平面座標に図形を描写しようとして、以下のような入力をしたところ、xとyのnodeの位置が中央に集まってしまい、思い通りの位置になりません。

どなたか対処法を教えていただけると幸いです。

(ソースコード)
\documentclass[dvipdfmx]{jsarticle}
\usepackage{tikz}
\usetikzlibrary{intersections,calc,arrows.meta}

\begin{document}

\begin{tikzpicture}
\draw[->,>=stealth,semithick](-2,0)--(2,0)node[above]{$x$};%x軸
\draw[->,>=stealth,semithick](0,-1)--(0,3)node[right]{$y$};%y軸
\draw (0,0) node[below left]{O};%原点
\end{tikzpicture}

\end{document}
添付 xy.png

直線が一点で交わらない

- 優樹 金澤 の投稿
質問失礼します.点O,点Aをそれぞれ中心とする円同士の交点の1つをDとして,円に内接する四角形を作図しようとしました.すると,なぜかすべての直線がDまで届かないようになってしまいました.コンパイル自体は通るのですが,このような症例が初めてなので,困惑しています.どなたかのお知恵を拝借できればと思います.よろしくお願いいたします.
以下,ソースコードで,タイプセットはplatexです.

\documentclass[dvipdfmx]{jsarticle}
\usepackage{tikz}
\usetikzlibrary{intersections, calc, ,angles,quotes, arrows.meta,shapes,math}

\begin{document}

\begin{tikzpicture}[scale=0.6]
\tikzstyle{every node}=[font=\footnotesize]
\tikzmath{
\a = 18; %底辺の長さ
\b = 14; %右側の辺の長さ
\c = 14; %左側の辺の長さ
\A = acos((\b^2+\c^2-\a^2)/(2*\b*\c));
\BB = acos((\c^2+\a^2-\b^2)/(2*\c*\a));
\C = acos((\a^2+\b^2-\c^2)/(2*\a*\b));
\R = \a/(2*sin(\A));
}
\coordinate (B) at (0,0);
\coordinate (A) at (\BB:\c);
\coordinate (C) at (0:\a);
\coordinate[label=left:O] (O) at (90-\A:\R);
\draw (O) circle [radius=2pt];
\draw[dotted,thick] (C) to [bend right=20] node[fill=white,midway]{$\b$} (A);
\draw[dotted,thick] (A) to [bend right=20] node[fill=white,midway]{$\b$} (B);
\draw[thick] (A)--(B)--(C)--cycle;
\foreach \P in{A,B,C} \draw ($(O)!11/10!(\P)$) node{\P};
\draw [name path=C1] (O) circle [radius=\R];
\draw [name path=C2] (A) circle [radius={2*sqrt(11)}];
\fill [name intersections={of=C1 and C2}] (intersection-2) node (D) [label=above:D] {};
\draw (A)--(D)--(C);
\draw (B)--(D);
\end{tikzpicture}

\end{document}

llmk 1.2.0 で latex magic 書式で--output-directory を指定したい

- 和田 勇 の投稿
.tex ファイルの一行目に以下のような latex magic を書いて llmkに
解釈して処理してもらうようにしていたましたが ...

  %#! cluttex --engine=platex --max-iterations=4 --makeindex='mendex -c -g -l -r -s jpbase.ist' --output-directory=out

昨日 llmk が 1.2.0 にアップデートされたら「--output-directory=.」も
latex magic 行のイメージに続いて生成されるようになり
二つの「-output-directory」オプションを指定してるとのエラーになってしまうようになった。

対策として
atex magic の行から  --output-directory=out を取り除いて llmk すると
--output-directry で処理されることを前提としている cluttex  が
最後に.pdf と .synctex.gz は同じディレクトリにある必要があるとのことで
コピーをしようと「cp ./xxx.synctex.gz  xxx.synctex.gz を実行しようとして
エラーとしてしまいます。

このエラー自体は、原因がわかっているので無視でも良いのですが、
何か対策はあるのでしょうか?

確か latex magic 行があると llmk.toml は読み込まなかったようなので
無理なら、別の方法を検討したいと思います。

このような方法を採用している理由:

 latexmk でも良かったが、
 llmk と tex magic 行の組み合わせで latexmk の煩雑さが解消できないかという
 目論見の元に llmk を利用しています。
 現在 目次、索引ありの ptex2pdf だけでは処理しきれないので
    llmk.toml での運用も考えましたが、中間ファイルディレクトリを
 指定できた cluttex を利用することにしました。
 今回は、その対処が仇になってしまった感があります。

 いっそ makefile 運用 に戻ろうかとも思いあぐねています。

upLaTeX+upBiBTeXでjecon.bstの数字→漢数字変換オプションを使用すると! Bad character codeエラーが出てしまう

- S N の投稿
こんにちは。
Windows10 proにてTeX Live2022(32bit版)を使用しています。
natbib+jecon.bibを使用して引用スタイルを定義しているのですが、標題のとおりの問題に直面しています。

jecon.bibのオプションというのは、以下のようなものです。

FUNCTION {bst.kansuji.jp}
{ #1 }

bst.kansuji.jpの関数を0以外にすると、数字が漢数字になるというものです。
関数を0以外にした後、このファイルを以下のようなtest.texファイルと同じディレクトリに入れ、upLaTeXとupBiBTeXでコンパイルしました。

\documentclass[uplatex]{jlreq}
\usepackage{natbib}
\begin{document}
情に棹させば流される。智に働けば角が立つ。どこへ越しても住みにくいと悟った時、詩が生れて、画が出来る。とかくに人の世は住みにくい。意地を通せば窮屈だ。\cite{oyama99:_mark_stru}
\bibliographystyle{jecon}
\bibliography{ref}
\end{document}

$uplatex test
$upbibtex test
$uplatex test
$uplatex test
最後のコマンドを実行時、! Bad character code (19968).というエラーが出てしまいます。
19968とはShift-JISで「一」であるかと思いますが、他の漢数字でもそれぞれの文字に応じたエラーが出ます。

なお、当該のオプションを使用しない場合は問題なく、また、jecon.bstの奨励はLuaLaTeX+upBiBTeXということで試してみましたが、こちらも問題なくコンパイルできます。

対処法等ご教示いただけると幸いです。
調べが足りず簡単なことを見落としているようでしたら、恐縮ですがお導きください。