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

索引のノンブルの出現の仕方について

- 小林 コウキ の投稿
索引のノンブルの出現の仕方について,質問があります。

例えば,86頁から88頁に索引語があり,索引を作成したときに
索引語 86, 88
と出力されます。

これを
索引語 86, 87, 88
と出現できるようにしたいのですが,どのようにしたらいいでしょうか。

mendexで以下のように設定してあります。
delim_n ", "
delim_r ", "

抽出したidxでは86,87,88とそれぞれ抜かれています。

ご存じの方,教えたいただけませんか。

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

非数式環境下での弓括弧の場合分け

- あ い の投稿
TeX初心者です。
非数式環境での
{
(弓括弧)を用いた場合分けの出力方法について質問です。


\bow{ factor a\\factor b\\factor c}

と打ちfactor a,b,c が縦に並列されるという結果が目標で,色々と調べ試してみましたが,なかなかうまく行きません。

コンテンツは以下で,MacBookAirで出力しました(コンパイラはpLaTeX)。

\documentclass[dvipdfmx,fleqn]{jsarticle}
%preamble
\usepackage{amsmath,empheq,amsthm}


(例1)

\begin{empheq}[left={\text{bagin}\empheqlbrace}]{align}
\text{factor a}\\\text{factor b}\\\text{factor c}
\end{empheq}


(例2)

\begin{align*}
\text{begin}
\begin{cases}
\text{factor a}\\
\text{factor b}\\
\text{factor c}
\end{cases}
\text{end}
\end{align*}


しかしそれぞれに問題点があります。

(例1)
  • 括弧の大きさが歪
  • 場合訳の後に文字を置けない(もしかしたら置けるかも)
  • 調べてみたところ非推奨のコマンドである
  • freqnでも完全に左には寄らない
(例2)
  • frqnでも完全に左には寄らない

圧倒的に例2の方が使いやすそうなのですが,更に例1,2に共通して
  • 全ての文に\text{}をつける必要がある
  • 場合分けの前後の文章の出力が面倒
という問題点があります。

まとめると,
  1. 日本語の文章内で場合分けできるコマンドがほしい
  2. 場合分けの前後の文には干渉しなくて良い(指令を出す必要がない)設定にしたい
  3. \text{}などをわざわざ打たないようにしたい
を満たす弓括弧の場合分けを得たいです。

知識のある方々ご教示願います。
よろしくお願いいたします。

Macでのvscodeにおける設定について

- 伊藤 直人 の投稿

お世話になっております。 最近、Mac mini (M1, 2020)を購入しMacTeXをインストールしました。その後、Windowsと同様にvscodeで編集・コンパイルがしたいと思い、LaTeX workshopをインストールし、添付のseting jsonをコピー&ペーストしました。 この時、ptex2pdfは、問題なくコンパイルできますがsettings.jsonでは以下のようなエラーが出てコンパイルできません。おそらく、LuaLaTeX jsonのどこかに問題があるものと思いますが自分では分かりません。

LuaLaTeX: unrecognized option '-f' LuaLaTeX: unrecognized option '-gg' LuaLaTeX: unrecognized option '-pv' LuaLaTeX: unrecognized option '-lualatex'

kpathsea: Running mktexfmt LuaLaTeX.fmt mktexfmt: mktexfmt is using the following fmtutil.cnf files (in precedence order): mktexfmt: /usr/local/texlive/2021/texmf-dist/web2c/fmtutil.cnf mktexfmt: mktexfmt is using the following fmtutil.cnf file for writing changes: mktexfmt: /Users/myname/Library/texlive/2021/texmf-config/web2c/fmtutil.cnf mktexfmt [INFO]: writing formats under /Users/myname/Library/texlive/2021/texmf-var/web2c mktexfmt [INFO]: Did not find entry for byfmt=LuaLaTeX skipped mktexfmt [INFO]: disabled formats: 5 mktexfmt [INFO]: not selected formats: 54 mktexfmt [INFO]: total formats: 59 mktexfmt [INFO]: exiting with status 0 This is LuaHBTeX, Version 1.13.2 (TeX Live 2021) restricted system commands enabled. I can't find the format file `LuaLaTeX.fmt'!

補足

ターミナル上で LuaLaTeXをコンパイルすることは、できました。

よろしくお願いします。

ceostyleがコンパイルできない件について

- シグマ シグマ の投稿
環境はwindows10です.
vscodeでtexを利用してきました.
この度,ceostyleを利用したいと考え,clsファイル,styleファイルなどを所定の場所に配置しましたが,読み込みが上手くいきません.
読み込んだコードは以下です(ceoを外せば読み込めます).

\documentclass{jarticle}
\usepackage[dvipdfmx]{color,graphicx}
\usepackage{ceo}
\begin{document}
$x^2+y^2=z^2$
\end{document}

エラー内容は次のようなものが出ます.
"message": "File ended while scanning use of \\@argdef.\n<inserted text> \n",
"source": "LaTeX",
"startLineNumber": 5,
"startColumn": 1,
"endLineNumber": 5,
"endColumn": 65536
}]

考えられる問題点にどんなものがあるか,教えて頂きたいです.
ちなみに,関係ないかもしれないですが,普段はeuler-fontを利用しています.

CLOUD LaTeXでのstyファイルの追加

- あ い の投稿
TeX初心者です。
CLOUD LaTeXでceo.styなどデフォルトで入っているもの以外にスタイルファイルを入れる方法を教えてください。
なお
https://cloudlatex.io/help
には

▼ ○○.styが使いたい
Cloud LaTeX では、TeX Live scheme-full にインストールされているパッケージに加えて、下記のスタイルファイルがインストール済であり、これらにつきましてご自身でファイルを用意せずに利用が可能です。 emath 丸ごとパック 訂正版 ceo.sty フルバージョン listings jlisting TikZ BXjscls natbib それ以外のスタイルファイルやパッケージにつきましては、小さなものはご自身で用意いただき、利用したいプロジェクトに D&D でアップロードすることで利用可能です(サブフォルダの中には入れないようにしてください)。 大きいサイズのもので、かつ利用頻度が高いと思われるスタイルファイルやパッケージの場合には、サービスへのインストールを検討しますので、ご要望として Cloud LaTeX Team 担当 までご連絡ください。

とありましたが、「D&Dでアップロード」の意味がよくわからず、調べても解決できませんでした。
もしもこの方法について述べているサイトがありましたら、申し訳ありませんが教えていただければ幸いです。
なお使用端末はMac Book Airです。

\CID{}の引用符のグルー

- O Kay の投稿
以下のように、\CID{}による引用符は、全角幅として表示されます。括弧類のように、二分グループラス二分幅のようにさせる方法はありますか?

\documentclass[uplatex]{jsarticle}
\usepackage{otf}

%\documentclass{jlreq}
%\usepackage{jlreq-deluxe}

\begin{document}

文の始まり

「文の」始まり

(文の)始まり

\CID{7608}文の\CID{7609}始まり

文の始まり

\end{document}

lineno.sty の pagewise オプションと xr.sty の併用について

- Masatoshi TSUCHIYA の投稿
査読に対する回答書を作成する場合,

ご指摘にしたがって p.5, l.10 に以下のように改訂しました。

のように記載することが良くありますが,このページ数と行番号を手動で入力することは大変です.

これを自動化するために lineno.sty と xr.sty が併用できないかと考えました.まず,論文原稿ファイル paper.tex 側では,

==== paper.tex ここから ====
\documentclass{jsarticle}
\usepackage{lineno}
\begin{document}
\linenumbers
もともとの原稿
\clearpage
査読者に対する反応部分\linelabel{response}
\end{document}
==== paper.tex ここまで ====

のように記載しておきます.これで paper.tex をタイプセットすると,paper.aux に以下のようなラベルが登録されます.

==== paper.aux 抜粋ここから ====
\newlabel{response}{{2}{2}}
==== paper.aux 抜粋ここまで ====

次に,回答書原稿ファイル answer.tex 側では,

==== answer.tex ここから ====
\documentclass{jsarticle}
\usepackage{xr}
\externaldocument{paper}
\begin{document}
査読者に対する反応は p.~\pageref{response}, l.~\ref{response} に記載されている.
\end{document}
==== answer.tex ここまで ====

というように記載します.すると,paper.aux に登録されていたラベルを参照して,

==== answer.tex 結果ここから ====
査読者に対する反応は p.2, l.2 に記載されている.
==== answer.tex 結果ここまで ====

というように処理されて,万々歳‥‥と思ったのですが.


ここからが,困っている本題です.まず,lineno.sty を上記のままで使うと,行番号がページをまたいで通し番号になってしまいます.本当なら,ページ毎に行番号をリセットして,

==== answer.tex 望ましい結果ここから ====
査読者に対する反応は p.2, l.1 に記載されている.
==== answer.tex 望ましい結果ここまで ====

と処理されてほしいわけです.なので,まず lineno.sty に pagewise オプションを加えます.

==== うまく動かない paper.tex ここから ====
\documentclass{jsarticle}
\usepackage[pagewise]{lineno}
\begin{document}
\linenumbers
もともとの原稿
\clearpage
査読者に対する反応部分\linelabel{response}
\end{document}
==== うまく動かない paper.tex ここまで ====

すると,paper.aux の内容が以下のように変化します.

==== うまく動かない paper.aux 抜粋ここから ====
\newlabel{response}{{\getpagewiselinenumber {1}}{2}}
==== うまく動かない paper.aux 抜粋ここまで ====

当然,これを answer.tex 側で読み込んでも \getpagewiselinenumber なんてマクロは定義されていないので,エラーになります.

つまり,paper.tex 側で \getpagewiselinenumber を展開しておいてから,aux ファイルに書き込むことができれば解決できそうなのですが…

該当箇所は lineno.sty の以下の部分で,

\def\WriteLineNo{%
\unvbox\@cclv
\expandafter \@LN@xnext \@LN@labellist \@@
\@LN@label \@LN@labellist
\protected@write\@auxout{}{\string\newlabel{\@LN@label}%
{{\theLineNumber}{\thepage}\@LN@ExtraLabelItems}}%
}

おそらく \theLineNumber の展開順序を変更すれば済むはず…と思いたいのですが,これがなかなかうまく行かずに困っています.

お知恵を拝借できないでしょうか.

マクロの定義を見る

- Ando Ryoya の投稿
質問させていただきます.
これは自分がLaTeXを教えている知人に指摘されてハッとしたことなのですが,
「あるLaTeX2eに関する本に"\@は何もしない命令である"と書いてるあのを見て,ホントかなぁ,と\@がどのように展開させるのか知りたくなった」ときに,どのようにすれば確認することができますか?
これまで自身の体験として定義を確認したくなったのは\section などのクラスファイルで定義されているトークンのみで,このようなトークンはどこで定義されているのかもわからない状態です.
実際はLaTeX 原稿中でなにかしらのコマンドで表示可能であれば,いちいちソースを確認しなくても済むので楽なのですが…
ご指導よろしくお願いします.

単語間スペースのアキ幅の変更について

- 小林 コウキ の投稿
単語間スペースのアキ幅について質問があります.

通常,TeXの処理では単語間スペースはハンパを取るようにアキが広がりますが,逆にアキをツメル設定,もしくは方法を教えていただきたいのです.

\kanjiskip plus.5pt minus.5pt
のように,可変長にする設定があるのでしょうか.

ご存じの方,いらっしゃいましたら教えていただけませんか.

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

VSCode + WSLの環境におけるlatexmkによるコンパイルについて

- kursk KURSK の投稿
VSCode + WSL の環境でLaTeXを使いたいと考えて、https://qiita.com/popunbom/items/7d02fc75ad23b735d28c の記事を参考にして環境を構築しました。 この際、上記記事はWSL用のものではなかったため、WSL用の記事も参考にしながら進めた結果、WSL側とWindows側にTexLiveが2重にインストールされている状況(WSLのターミナルとコマンドプロンプトのどちらでもplatexコマンドが使える)になったため、PCの容量節約のためにCドライブ直下のtexliveフォルダを削除しました。 この結果、platexコマンドなどはwsl上のターミナルでは使えるが、コマンドプロンプト上では使えないという状態になりました。 この状態では、ターミナル上でコマンドを使ってコンパイルすることはできるのですが、VSCode上で「Build LaTeX project」ボタンを使ってコンパイルすることはできなくなりました。 おそらくsettings.jsonファイル内の設定がwindows上のTexLiveを想定したものになっているからだと思うのですが、設定の仕方がわかりません。 どうかご教授ください。
コンパイルを実行しようとした際、画面右下に「Recipe terminated with fatal error: spawn latexmk ENOENT.」と表示されます。
またターミナルの出力タブに表示されるメッセージは以下の通りです。
今回はC:\tex\report.tex のコンパイルを試みました。
[02:33:35] BUILD command invoked.
[02:33:35] The document of the active editor: file:///c%3A/tex/report.tex
[02:33:35] The languageId of the document: latex
[02:33:35] Current workspace folders: undefined
[02:33:35] Current workspaceRootDir:
[02:33:35] Found root file from active editor: c:\tex\report.tex
[02:33:35] Keep using the same root file: c:\tex\report.tex
[02:33:35] Building root file: c:\tex\report.tex
[02:33:35] Build root file c:\tex\report.tex
[02:33:35] outDir: c:/tex
[02:33:35] Recipe step 1: latexmk, -f,-gg,-pv,-xelatex,-synctex=1,-interaction=nonstopmode,-file-line-error,c:/tex/report
[02:33:35] Recipe step env: undefined
[02:33:35] cwd: c:\tex
[02:33:35] LaTeX build process spawned. PID: 37964.
[02:33:35] LaTeX fatal error: spawn latexmk ENOENT, 'latexmk' �́A�����R�}���h�܂��͊O���R�}���h�A
����\�ȃv���O�����܂��̓o�b�` �t�@�C���Ƃ��ĔF������Ă��܂���B
. PID: 37964.
[02:33:35] Does the executable exist? PATH: undefined
[02:33:35] The environment variable $SHELL: undefined
[02:33:37] Manager.fileWatcher.getWatched: {"c:\\tex":["report.tex"]}
[02:33:37] Manager.filesWatched: ["c:\\tex\\report.tex"]
[02:33:37] BibWatcher.bibWatcher.getWatched: {}
[02:33:37] BibWatcher.bibsWatched: []
[02:33:37] PdfWatcher.pdfWatcher.getWatched: {}
[02:33:37] PdfWatcher.pdfsWatched: []
settings.jsonファイルや.latexmkrcファイルは上記qiita記事に掲載されているものをそのままペーストして追記したものです。また.latexmkrcはユーザーフォルダ直下やCドライブ直下、report.texが存在するフォルダ直下などに配置して試行してみましたが、どれもうまくいきませんでした。
Windowsのバージョン:バージョン2004(OSビルド 19041.1237)
VSCodeのバージョン:「更新の確認」ボタンを押したところ、「現在入手可能な更新はありません。」と表示されました。
追記:WSL上でのLaTeXのインストールは、
sudo apt update sudo apt upgrade sudo apt install texlive-full sudo cpan Log::Log4perl Log::Dispatch
以上の4コマンドをターミナルに入力しました。