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

「ifthen」と「謎の空白」

- あ い の投稿
ifthenを用いた場合に発生する謎の水平方向の空白について質問です。

otfパッケージを用いずに丸数字(①)を4桁まで出力したいと思い,条件分岐を可能にするifthenを用いて以下のコードを作ってみました。
(コンパイラ:uplatex,機種:MacBook Air)


%documentclass-------------------------------------------------------------------------------

\documentclass[uplatex,dvipdfmx,fleqn]{jsarticle}

%preamble-------------------------------------------------------------------------------------

\usepackage{graphicx,ifthen}

%ifthenのせいかどうかを判断するためのmmaruの定義
\newcommand{\mmaru}[1]{\textcircled{\scalebox{0.9}[0.85]{\raisebox{-0.1em}[0.15em][0em]{#1}}}}

%1桁とそれ以外の丸数字の定義
\newcommand{\subsubmaru}[1]
{
\ifnum#1<10 \textcircled{\scalebox{0.9}[0.85]{\raisebox{-0.1em}[0.15em][0em]{#1}}}
\else
\textcircled{\scalebox{0.7}[0.67]{\raisebox{0em}[0.15em][0em]{#1}}}
\fi
}

%1桁・2桁とそれ以外の丸数字の定義
\newcommand{\submaru}[1]
{
\ifnum#1<100 \subsubmaru{#1}
\else
\textcircled{\scalebox{0.47}[0.7]{\raisebox{-0.01em}[0.1em][0em]{#1}}}
\fi
}

%1桁・2桁・3桁とそれ以外の丸数字の定義
\newcommand{\maru}[1]
{
\ifnum#1<1000 \submaru{#1}
\else
\textcircled{\scalebox{0.33}[0.74]{\textgt{#1}}}
\fi
}

%document-------------------------------------------------------------------------------------

\begin{document}

\mmaru{3}\mmaru{9}\maru{1}\maru{99}\maru{100}\maru{999}\maru{1000}

\end{document}


急ぎというのもありますが,手元の参考書やwebサイトに複数の条件での場合分けの方法が見当たらなかったため,わざわざ何度も場合わけをするという汚いソースになってしまったことをご容赦ください。
問題の空白についてですが,丸数字の間に不可解なスペースができてしまっていました。しかもこれは丸数字の桁数によって長さが異なっていました(桁数が多いほど空白が小さい)。
なので,これはscaleboxもしくはraiseboxでの設定を変えれば解決するのではと思いました。
ところが,ためしに条件分岐を用いていない\mmaruを作ってみたところ,先に挙げた問題は発生しませんでした。となればifthenに問題があるのではと考えたのですが,ifthenを用いたことによって発生する空白について触れている本や記事は見当たらず,また,桁数によってスペースが変わるというのも単にifthenのせいというのでは説明がつかないのではと思いました。
長い間試行錯誤してみましたのですがどうしても埒が開かず,知人に尋ねてもわからないとのことでしたので,皆様のお力を貸していただければという考えに至りました。
どなたか解決策をご教授いただければ幸いです。
長文失礼しました。

tcolorboxでfadingが使えない

- 住田 英優 の投稿
tcolorboxについての質問になります。
此方tcolorboxで"fading"を用いてグラデーションを表現しようとしています。
以前はMacTeXを利用しており,その時は問題なく実現できたのですが(添付ファイル内の"tcolorbox-fading2"),「美文書作成入門第8版」からTeXLive2020をインストールして以降,何回コンパイルしてもfadingが実現できません(添付ファイル内の"tcolorbox-fading1")。
添付ファイルの-fading2は"Cloud LaTeX"を利用してコンパイルし,-fading1の方は以下のような環境の私のパソコンでコンパイルしています。
[環境]
・Macbook Air(early-2015)
・MacOS11.6(BigSur)
・TeXLive2020(美文書作成入門第8版よりインストール)

ソースファイルは添付しているファイル内"tcolorbox-test.3.tex"の通りで,ColudLaTeXでも私のパソコンでも相違ありません。

よろしくお願い致します。

jlreqドキュメントクラスで章名が変えられません

- 光田 エディー の投稿
LuaLaTeXを使って文章を作っている者ですが、ドキュメントクラスjlreqだと、章名がうまく変更できず、ltjsbookを使っています。

jlreqだと、フォントサイズを自由に変えられるということで、そちらを使いたいのですが、次のコマンドでは目次名(contentsname)は変更できるのですが、章名(chaptername)を変えることができません。

\renewcommand{\prechaptername}{Hexagram\,} %% NG
\renewcommand{\thechapter}{\Roman{chapter}.} %% OK
\renewcommand{\postchaptername}{} %% NG

\renewcommand{\contentsname}{Contents} %% OK


それで今のところltjsbookを使っていまが、jlreqで章名(や節名)などを変えるにはどのようにすれば良いか、お教えいただけると助かります。

どうぞよろしくお願い致します。


環境変数PATHの破壊?

- liki の投稿
TeX Live 2022をインストールしてから気づいたので確実ではないですが、ユーザー環境変数のPATHがほぼすべて消えてtexliveだけになってしまいました

PATH=C:\hoge;D:\hoge;D:\texlive\2021\bin\win32;E:\hoge
PATH=D:\texlive\2022\bin\win32;E:\hoge
という状態です

インストール前にPATHのバックアップを取っておいた方がよいかもです

基本書体と,ピリ(.)とカンマ(,)の書体を別の書体にする設定について

- 小林 コウキ の投稿
基本書体と,ピリ(.)とカンマ(,)の書体を別の書体にする設定について,質問があります.

本文の基本書体:リュウミンL
本文のピリ(.)とカンマ(,)書体:小塚明朝
というように,別々の書体で出力したいのですが,設定の方法が分からず困っています.
ピリ(.)とカンマ(,)をコマンド扱い(¥,や¥.)としないで,そのまま流せることができる設定としたいのです.

データの形
OK:出力したいのですが,設定の方法が分からず困っています。
NG:出力したいのですが¥,設定の方法が分からず困っています¥.

設定の仕方をご存じの方がいらっしゃいましたら,教えていただけないでしょうか.

よろしくお願いいたします.

VScode上でtexファイルをコンパイルできない

- Kudo 000 の投稿
コンパイル時にエラーが発生し、No pages of outputとなり出力されない。
環境はWindows10。
TeXlive2021でlatexmkを経由してplatex形式で出力しています。

自宅のPCでは問題なくコンパイルできるのですが(2019ver)、理由がありノートPCでも扱えるようにしたいです。システム系のことはざっくりしかわからないので詳細に教えて頂けると幸いです。

以下にターミナル内のエラー文、現在のjsonファイル.latexmkrcファイルを記載させて頂きます。なお.latexmkrcファイルはC:Users/adminにあります。

エラー文
Latexmk: Invoked as 'c:\texlive\2021\texmf-dist\scripts\latexmk\latexmk'
Rc files read:
/cygdrive/c/Users/admin/.latexmkrc
Latexmk: This is Latexmk, John Collins, 17 Mar. 2022. Version 4.77, version: 4.77.
Latexmk: applying rule 'latex'...
Rule 'latex': File changes, etc:
Changed files, or newly in use since previous run(s):
c:/Users/admin/OneDrive/GraduationResearch/ProjectTex/2022_04_04/2022_04_04.tex
Rule 'latex': The following rules & subrules became out-of-date:
latex
------------
Run number 1 of rule 'latex'
------------
------------
Running 'platex -synctex=1 -interaction=nonstopmode -recorder -output-directory="out" "c:/Users/admin/OneDrive/GraduationResearch/ProjectTex/2022_04_04/2022_04_04.tex"'
------------
This is e-pTeX, Version 3.14159265-p3.8.1-180226-2.6 (utf8.euc) (TeX Live 2018/Cygwin) (preloaded format=platex)
restricted \write18 enabled.
entering extended mode
! I can't find file `c:/Users/admin/OneDrive/GraduationResearch/ProjectTex/2022_04_04/2022_04_04.tex'.
<*> ...search/ProjectTex/2022_04_04/2022_04_04.tex
(Press Enter to retry, or Control-D to exit)
Please type another input file name
! Emergency stop.
<*> ...search/ProjectTex/2022_04_04/2022_04_04.tex
No pages of output.
Transcript written on out/texput.log.
Latexmk: fls file doesn't appear to have been made.
Latexmk: Couldn't read log file 'out/2022_04_04.log':
No such file or directory
----------------------
This message may duplicate earlier message.
Latexmk: Failure in processing file 'c:/Users/admin/OneDrive/GraduationResearch/ProjectTex/2022_04_04/2022_04_04':
*LaTeX didn't generate the expected log file 'out/2022_04_04.log'
----------------------
Latexmk: If appropriate, the -f option can be used to get latexmk
to try to force complete processing.
Latexmk: Getting log file 'out/2022_04_04.log'
Latexmk: Errors, so I did not complete making targets
Collected error summary (may duplicate other messages):
latex: Run of rule 'latex' gave a non-zero error code
C:\texlive\2021\bin\win32\runscript.tlu:915: command failed with exit code 12:
perl.exe c:\texlive\2021\texmf-dist\scripts\latexmk\latexmk.pl -outdir=out "-latex=platex -synctex=1 %O %S" -interaction=nonstopmode c:/Users/admin/OneDrive/GraduationResearch/ProjectTex/2022_04_04/2022_04_04



settings.json
"latex-workshop.latex.clean.fileTypes": [
"*.aux",
"*.bbl",
"*.blg",
"*.idx",
"*.ind",
"*.lof",
"*.lot",
"*.out",
"*.toc",
"*.acn",
"*.acr",
"*.alg",
"*.glg",
"*.glo",
"*.gls",
"*.ist",
"*.fls",
"*.log",
"*.fdb_latexmk",
"*.snm",
"*.nav",
"*.dvi",
"*.synctex.gz"
],

// 生成ファイルを "out" ディレクトリに吐き出す
"latex-workshop.latex.outDir": "out",

// ビルドのレシピ
"latex-workshop.latex.recipes": [
{
"name": "latexmk",
"tools": [
"latexmk"
]
},
{
"name": "ptex2pdf",
"tools": [
"ptex2pdf"
]
}
],
// ビルドのレシピに使われるパーツ
"latex-workshop.latex.tools": [
{
"name": "latexmk",
"command": "latexmk",
"args": [
"-outdir=%OUTDIR%",
"-latex=platex -synctex=1 %O %S",
"-interaction=nonstopmode",
"%DOC%"
],
},
{
"name": "ptex2pdf",
"command": "ptex2pdf",
"args": [
"-l",
"-ot",
"-kanji=utf8 -synctex=1",
"-interaction=nonstopmode", // エラー発生時に自動でビルド停止
"%DOC%"
]
}
],
"latex-workshop.view.pdf.viewer": "tab",
"security.workspace.trust.untrustedFiles": "open",

.latexmkrc
!/usr/bin/env perl

# LaTeX
$latex = 'platex -kanji=utf8 -synctex=1 -halt-on-error -file-line-error %O %S';
$max_repeat = 5;

# BibTeX
$bibtex = 'pbibtex %O %S';
$biber = 'biber --bblencoding=utf8 -u -U --output_safechars %O %S';

# index
$makeindex = 'mendex %O -o %D %S';

# DVI / PDF
$dvipdf = 'dvipdfmx %O -o %D %S';
$pdf_mode = 3;

# preview
$pvc_view_file_via_temporary = 0;
if ($^O eq 'linux') {
$dvi_previewer = "xdg-open %S";
$pdf_previewer = "xdg-open %S";
} elsif ($^O eq 'darwin') {
$dvi_previewer = "open %S";
$pdf_previewer = "open %S";
} else {
$dvi_previewer = "start %S";
$pdf_previewer = "start %S";
}

# clean up
$clean_full_ext = "%R.synctex.gz"

一点気になった点はtexliveのコマンドプロンプトではのパスが通っているが、ターミナルだとエラーとなる事です…

ご教授お願い致します。

易の六十四卦がCode2000や花園明朝Aでも出力されません

- 光田 エディー の投稿
連続の質問でとても心苦しいのですが、またどうぞよろしくお願い致します。

先日、易の八卦の文字(Unicode で2630~2637)はお陰さまで
LuaLaTeXとCode2000を使うことで出力できるようになりましたが、
そのまま易の六十四卦(八卦と八卦を上下に重ねた形で全部で64個ある)も
出力できるものと思い、トライしたのですが、こちらが何故か出力されません。(下のようなソースで試して見ました。)

六十四卦のUnicodeブロックは4DC0~4DFFまでの64文字になります。
花園明朝Aなどいくつかのフォントでも試したのですが、どれも上手く行きませんでした。

TeXworksのエディタ上では六十四卦がうまく表示されていますのに、LuaLaTeXで処理すると、その部分が空白になってしまいます。

Code2000のスペックでは、4DC0~4DFFまでフォントが揃っているように説明されているのですが、なぜか出ません。

なにか解決法があればご教授をよろしくお願い致します。

そもそも、ある特定のフォントが、どのコードブロックをカバーしているのか知る方法はあるのでしょうか?

どうしても六十四卦が出力できなければ、八卦と八卦を重ねて一文字にして出力する方法をトライしようかとも思っております。

どうぞよろしくお願い致します。

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

\documentclass{jlreq}

\usepackage{luatexja-preset}

\begin{document}


吾輩は文字である。



%\jfontspec{Arial Unicode MS}

%\jfontspec{Code2000}

\jfontspec{HanaMinA}


☀☁☂☃★☆☇☈☉☊☐☠☰☱☲☳☴☵☶☷♀♁♂♃♄♅


\begin{tabular}{l|l}

\hline

Unicode & 出力\\

\hline

2630→ & ☰☱☲☳☴☵☶☷\\

2640 & ♀\\

2650 & ♐\\

2660 & ♠\\

2770 & ✀\\

2D80 & ⶀ\\

2FF0 & ⿰\\

32D0 & ㋐\\

3800 & 㠀\\

3900 & 㤀\\

3A00 & 㨀\\

4DB0 & 䶰\\

4DC0→ & ䷀䷁䷂䷃䷄䷅䷆䷇\\

4DD0→ & ䷐䷑䷒䷓䷔䷕䷖䷗\\

4DE0→ & ䷠䷡䷢䷣䷤䷥䷦䷧\\

4DFF→ & ䷿䷱䷲䷳䷴䷵䷶䷷\\

4E00 & 一\\

4E10 & 丐\\

\hline

\end{tabular}



\end{document}



TeXLive 2022 LuaLaTeX error

- 久仁光 若松 の投稿
TeXLive2022が正式にリリースされたのを知り、
早速インストールしました。残念ながら
TeXLive 2022 (MacTeX.pkg)をインストールして
luaLaTeXのコンパイルでエラーが出ます。
同一texファイルをTeXLive2021で実行させれば
コンパイルは問題なく、pdfまで作成してくれます。
(ほぼ同一内容なので余り意味をなさないか?とも思いますが)
参考のためにterminal、Spacemacs(emacs28.0.92)、
TeXworks3つで実行の時に吐き出されたエラーを
zipで添付いたします。(含むsample.tex)
使用環境はMac OS10.14.6 Mojave
どの様にしたら、TeXLive2022での問題を
回避できますでしょうか?
お知恵を拝借できれば幸甚です。若松久仁光拝

P.S
冒頭のエラーメッセージは
luaotfload | load : FATAL ERROR
luaotfload | load : × Failed to load "fontloader" module "basics-gen".
luaotfload | load : × Error message:
luaotfload | load : × "...022/texmf-dist/tex/luatex/luaotfload/luaotfload-init.lua:301:
system : no writeable cache path, quiting".
などです。
-----------サンプルのtex
\documentclass{ltjsarticle}
\usepackage{luatexja} % ltjclasses, ltjsclasses を使うときはこの行不要
\begin{document}
\section{はじめてのLua\TeX-ja}
ちゃんと日本語が出るかな?
\subsection{出たかな?}
長い文章を入力するとちゃんと右端のところで折り返されるかな?
大丈夫そうな気がするけど.ちょっと不安だけど何事も挑戦だよね.
\end{document}
----------

\UTFでUnicodeの文字がうまく出ません

- 光田 エディー の投稿
易についての小冊子をLatexで作ろうと思っているのですが、Unicodeに易の八卦が文字として登録されているので、それを使いたいのですが、うまく行きません。具体的には、2630~2637までの文字を使いたいのですが、出ません。
ソースに直接Unicodeを打ち込んでも、出力すると空白になります。

試しに、その前後の文字コードを出力してみると、表示される文字もあれば、空白になる文字もあって、なにが悪いのか途方に暮れております。

ご教授のほど、よろしくお願い致します。

\documentclass[12pt, b5]{ltjsbook}

\usepackage{luatexja-otf}

\begin{document}


2600
\UTF{2600}

\UTF{2601}

\UTF{2602}

\UTF{2603}

\UTF{2604}

\UTF{2605}

\UTF{2606}

\UTF{2607}

\UTF{2608}

\UTF{2609}

\UTF{260A}


2610

\UTF{2610}


2620

\UTF{2620}


2630

\UTF{2630}

\UTF{2631}

\UTF{2632}

\UTF{2633}

\UTF{2634}

\UTF{2635}

\UTF{2636}

\UTF{2637}


2640

\UTF{2640}

\UTF{2641}

\UTF{2642}

\UTF{2643}

\UTF{2644}

\UTF{2645}


\end{document}

TL2022 ネットワークインストーラのエラーリカバリ改善されたようです

- 和田 勇 の投稿

以前、TeXLive のネットワークインストールは、ネットワークの混雑や障害でダウンロード失敗しても、再試行を試みないようで、インストールに失敗することがあるので、ISO イメージからのインストールを推奨する発言をしましたが、2022 で大幅に改善されたのでお知らせしておきます。

情報源は https://www.preining.info/blog/2022/04/tex-live-2022-released/ の頭のほうに以下のような書き込みがあり

      tlmgr: better installation algorithm that is more resilient to errors (patting myself!)

要約すれば tlmgr において、エラー処理のアルゴリズムが改善された みたいなことのようだ。

それでは、ネットワーク回線を とある linux の ISO イメージを並列で rsync ダンロードするなど ネットワークインストーラ苛めして、以下のようにダウンロードを意図的に失敗させてみたところ ....

       Installing [0440/4351, time/total: 34:50/05:06:05]: biblatex-trad [463k]
       TLPDB::_install_data: downloading did not succeed (download_file failed) for       
                      https://ftp.jaist.ac.jp/pub/CTAN/systems/texlive/tlnet/archive/biblatex-trad.doc.tar.xz
        TLUtils::install_packages: Failed to install biblatex-trad
                       biblatex-trad will be retried later.

このようなものが 20 数件記録されていましたが、一通りのダウンロードが終わると

        Installing [4351/4351, time/total: 06:30:10/06:31:55]: zztex [147k]
        Retrying to install: biblatex-trad [463k]

とダウンロードを再試行し、最終的に全てをダウンロードし無事インストールに成功していました。

Windows 10 でも並行してネットワークインストール実験したところ、こちらは二件ダウンロード失敗していましたが、再試行でダウンロードされ無事インストール終了していました。

以上のことから、ネットワークインストールでも問題なくインストールできるようになったことをお知らせしておきます。