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

jlreq での縦書き文章作成について

- 上山 英二 の投稿

お世話になります.上山です.

文書クラスに jlreq.cls を用いた縦書き文書の作成を行っている際に疑問に思ったことが 2 点ほどございましたので,それらを質問させていただきます.

  1. 以下のソースコードに示すように,tate オプションを指定し文書冒頭でフォントサイズの変更を施したものを LuaLaTeX+jlreq でタイプセットすると,心なしかノンブルの位置と本文の位置が若干ずれているように見えます(僕の気のせいかもしれませんが).これは仕様でしょうか.
    なお,tate オプションを解除した上でノンブルの位置を top-left にしたものをタイプセットするとこのズレは起こらないようです.
    \documentclass[tate]{jlreq}
    \NewPageStyle{mystyle}{nombre_position=top-right}
    \pagestyle{mystyle}
    \setlength{\fboxsep}{0pt}

    \begin{document}
    \noindent\fbox{\huge あああああ}
    \end{document}
     ノンブルと本文の位置(縦書きの場合)  若干ずれている?
    ノンブルと本文の位置(横書きの場合)  こちらは揃っているように見える.
  2. tate オプション指定の下で以下のソースコードに示したものを LuaLaTeX+jlreq でタイプセットすると,セクションの冒頭部分と行頭と思われる部分の間に大きな空白が空いてしまいます.
    何かこちらで特別なことをしていないのにも関わらずこのような出力が得られるため,jlreq の仕様なのではないかと考えておりますが,この空白を無くすにはどのようにすればよのでしょうか.

    なお,こちらも tate オプションを解除して横書きにするとこの空白はなくなるようです.
    行頭とセクション部分のズレ
    \documentclass[tate]{jlreq}
    \begin{document}
    \noindent 行頭行頭行頭行頭行頭
    \section{はじめに}
    \end{document}

日本語版 chemfig マニュアル

- TPKato の投稿

はじめまして。
chemfig のマニュアルを日本語に訳しました。

https://github.com/TPKato/chemfig-ja にて公開しています。

誤植、誤訳、感想等ありましたら、GitHub の Issues/Pull requests か、(このフォーラムの使い方として問題なければ) ここでご報告いただければありがたいです。

現時点では作者には連絡していませんが、少し様子をみて問題がなさそうだったら連絡をしようと思っています。

.bstファイルの入手法

- ueki ichiro の投稿

新年おめでとうございます。

Windows11をのせた富士通ノートパソコンで英文論文を作成しています。著者名のアルファベット順に並べた参考文献リストをつくるため
inf41.bibファイルを作り、美文書作成入門第8版184ページの例にならってプリアンブルを

\documentclass[12pt,fleqn,a4paper]{article}

\setlength{\textwidth}{16cm}

\setlength{\oddsidemargin}{0cm}

%\setlength{\oddsidemargin}{0.5cm}

\setlength{\evensidemargin}{0cm}

\setlength{\topmargin}{-2cm}

\setlength{\textheight}{25cm}

\usepackage{setspace}

\doublespacing

\usepackage{amsmath}

\usepackage{graphicx}

\begin{document}

\title{(anonymized manuscript)

The infinite and contradiction: The history of mathematical physics viewed from mathematical infinites.}

\maketitle

\section{Introduction}



として、末尾を

\bibliographystyle{basic}

\bibliography{inf41}

\end{document}

として、pdflatex と Bibtex で でコンパイルしたところ、下記のスクリーンショットss46左側のようなログが表示されました(生成されたログファイルを探したのですが見つかりませんでした)。

inf41.bib も添付しました。

basic.bst はTex に標準で添付されていると聞きましたが、texworks で探しても、Windowsの全ファイルを探しても見つかりませんでした。aps.bst や上の本にある jplain.bst も見つかりませんでした。Tex に標準で添付されているという.bst ファイルがダウンロードされていない場合は、ネットからダウンロードしたいのですが、その方法を教えてください。

  植木





添付 ss46.png

項目を横に並べる enumerate 環境

- 上山 英二 の投稿

(この投稿は問題が解決し次第削除させていただく予定です)

失礼いたします.

「緑の本」に記述のある autoalign 環境を参考にして,「項目の長さから列数を自動で計算し,その項目たちを列ごとに然るべき位置へ配置する」,いわゆる enumerate 環境の横並び版のようなものを自作いたしました(そのソースコードが autoenumi.sty です.使用例は autoenumi.tex に記載しております).

緑の本で触れられている autoalign 環境からの主な変更点は以下の通りです:

  • 実装を expl3 メインにしました.
  • 長い項目がある際に,その項目前の \item のオプション引数に noauto を指定することで,その項目だけ独立して 1 行にできるようにしました(\item[noauto] では改行もできるようにしてあります.逆にオプション引数で noauto を指定していない場合は実装の都合上改行できません).
  • \begin{autoenumi}[adjust] と書くことで,項目の並べ方をより見栄えするよう微調整できるようにしました(オプション引数を指定していない,もしくは adjust 以外の文字列をオプション引数に入れている場合はデフォルト通りの出力になります).しかしこの微調整のアルゴリズムに関しては「緑の本」でも触れられているため,変更点かと言われたら少し怪しいかもしれません.

そこで本題に入ります.

僕は自作したこちらの autoenumi パッケージの説明およびソースコード本体を Qiita 等の記事投稿サイトで公開しようと思っているのですが,その際に著作権等の問題は発生しないのでしょうか.

実装を見ていただければ分かると思うのですが,実装を expl3 メインにしており自前でオプション引数等も設定しているとはいえ,大枠のアルゴリズムや設計方針に関しては「緑の本」に記載されているものを概ねそのまま踏襲しており,それをこのまま記事投稿サイト等の多くの人の目に触れてしまうような場所で公開してしまうのは良くないのではないかと思い,質問に至った次第でございます.

本来このような場所で質問するような事でもないのですが,この件に関して有識者からの回答をお伺いできるのが TeX Forum しか無さそうであったため,こちらで質問させていただきました.

また,この autoenumi.sty について何か実装上の欠陥や改善点等がございましたら遠慮なくご指摘いただけますと幸いです(当方は TeX や LaTeX に関する知識が大変浅いため,どこかで誤った/欠陥のある実装をしてしまっている可能性が非常に高いです).

長文投稿大変失礼いたしました.

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 の展開順序を変更すれば済むはず…と思いたいのですが,これがなかなかうまく行かずに困っています.

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

japanese-otf 2025-12-06

- t tk の投稿

japanese-otf (いわゆる「OTF パッケージのベータ版」とその upTeX 対応版)の新版を CTAN に投稿しました。明日くらいまでに更新されるでしょう。
お知らせと更新内容の紹介です。

japanese-otf-uptex Ver.0.33 の更新を含んでいます。

[1] \UTFM{}のマクロをplatexまたはuplatexとともに使う場合、Unicodeベースの7書体のvirtual fontをデフォルトで使うようにしました。(従来は2書体)
本機能をplatexとともに使うにはeuptex v2.00以降(TeX Live 2025以降; 正確にはr73271以降)をエンジンとしたplatexであることが必要です。(uplatexの場合は4,5年前の版でも大丈夫です。)
japanese-otf 2025-07-24 で \UTF{}, \UTFC{}, \UTFT{}, \UTFK{}, \CID{}, \CIDC{}, \CIDT{}, \CIDK{}のマクロについて実施したことと同内容です。

詳細は
\UTFM{} を非subfont方式化、多書体化
に記載しています。

\UTFM{}のマクロのための従来のsubfont方式のvfとtfmをCTANパッケージから削除しました。
platexとともに'subfont'オプションで当マクロを使用する場合には、旧版に付属のvf,tfmを使用するかまたはソースコードに含まれているスクリプトから生成する必要があります。

参考文献の表示方法を変更したい

- 直人 伊藤 の投稿
LuaLaTeX+jlreq+pbibtexを使っています。
とある文章を作る際、参考文献の表示方法を「[1]:著者名:雑誌名(論文名), 出版社(発行元), ページ, 発行年.」のような形にしたいと思い、その形にするにはいろいろ調べてみるとbstをいじるもしくはbiblatexを使えばいいということは分かりました。

しかし、生成AIの力等も借りましたが自分ではその方法が分からず、ここでお尋ねした次第です。ご存じの方がおられましたらご教授いただけますと幸いです。 よろしくお願いいたします。

P.S.
添付ファイルのように参考文献の見出しを修正しているのでそれを受け継ぐのような形にしていただけますと幸いです。

jlreqのbookオプションでのヘッダの編集について

- m d の投稿

初めて投稿いたします。

uplatex+jlreqで学位論文を執筆しています。

クラスオプションにbookを指定し、jsbookのようなスタイルを作ろうとしているのですが、ヘッダの設定に苦戦しています。

目的

添付のjsbookのように、奇数ページの左上に節タイトル「1.1 hoge」、右上にページ番号を、偶数ページの左上に節タイトルページ番号、右上に章タイトル「第1章 hoge」とし、適切にアンダーラインを引きたいです。

問題

jlreqではbookスタイルを指定しても、ヘッダは自動で生成されないので、NewPageStyleで作成しているが、アンダーラインを手動で表示すると、各章の1ページ目にも生成されてしまいます。

サンプルは以下

\NewPageStyle{mybook}{%
  nombre_position = top-right,%
  running_head_position = top-left,%
  odd_running_head = _section,%
  even_running_head = _chapter,%
  mark_format = {_chapter={第 \thechapter 章 \quad #1}},%
  odd_head_format={\underline{\makebox[\jlreqyokoheadlength]{#1}}},%
  even_head_format={\underline{\makebox[\jlreqyokoheadlength]{#1}}}%
}

これを回避するために、ifthenパッケージを使って1ページ目だけアンダーラインを引かないページスタイルを適用することを考えたのですが、うまくいきません。

また、この方法を使うと、なぜか「目次」がすべてのヘッダに表示されてしまいます。

さらに、\frontmatter\appendix\bibliography環境でchapter相当のものがないのか、奇数ページの左上に「参考文献」などが出てしまいます。(jsbookの方には\appendixはないですが、本文と同じようヘッダのスタイルにしたい)

以上の問題の解決方法や指摘内容などがあれば、ご教授いただきたいです。

Latexでの文書作成は、論文やレポート作成などで使用しておりますが、マクロなどは詳しく理解しておらず、奥村先生の美文書作成入門やchatgptやWebページを参考に見よう見まねで書いてる状況です。

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

otfパッケージのexpertオプションを有効にすると異体字が出力されません

- ya ra の投稿

upLaTeX+divpdfmx下でexpertオプション付きのotfパッケージを利用すると、異体字セレクタを与えた文字が出力されません。

\documentclass[uplatex, dvipdfmx]{jsarticle}
\usepackage[expert, jis2004]{otf}
\begin{document}

あ葛\symbol{"E0100}い葛う、
あ塚\symbol{"FE00}い塚う。

あ曙い曙\symbol{"E0101}う、
あ社い社\symbol{"FE00}う。

\end{document}
添付 スクリーンショット 2025-11-04 173103.png

errorがでますが、対処方法を教えて下さい

- mr2h の投稿
! TeX capacity exceeded, sorry [input stack size=10000]. \jlreq@if #1->\jlreq@if@ #1 \jlreq@if@endmark l.723 \addcontentsline {toc}{section}{\protect\numberline{\null}{\GWI{u8f1e-k... Output written on 王維.dvi (40 pages, 101900 bytes). SyncTeX written on 王維.synctex.gz. Transcript written on 王維.log. ptex2pdf processing of ����.tex failed. ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー というerror を吐かれて対処方法がわかりません。 input stack size=10000 が default で、これを越えてしまっているという意味なのでしょうか? input stack size を 13000 にふやすには、どのような方法があるのでしょうか? 永遠の入門者レベルから進歩できない質問者に返事をいただけるでしょうか? source file を添付できればよいのですが、個人の趣味で作成しているので、著作権抵触の可能性あり、できないのです。 win11, 25h2, texlive2025, の環境で縦書きuplatexで「本作り」をしています。 視力の関係で、細かな字が読めない、好きな本だがレイアウトが気に入らないなどの理由から本作りを行っています。従って 私の teqnic は、この forum の皆様のレベルからみると、著しく劣っていると思われます。