ご質問はこちらへ
BBEditでLaTeXを使っておられる方へ、 ご報告です。
ご報告です。(ヒヨッとしたら既知の事柄かも知れませんが)
昨日、BBEdit14にグレードアップした際、新規の機能について
検索していたら
『modern latex with bbedit and tectonic』
と言う記事を見つけました。
[https://ineed.coffee/post/modern-latex-with-bbedit-and-tectonic]
The Tectonic Typesetting System
[[https://tectonic-typesetting.github.io/en-US/]]
以前『BBEditでLaTeX』を『辻森先生から頂いた』設定で実施していましたが、
今回はXeLaTeXでのコンパイルについて書かれていたので早速
Mac OS10.11.6.8 BigSurに環境を整備して試してみました。
requirements
Skim (brew install skim)
Tectonic (brew install tectonic)
TexLab (brew install texlab)
iTerm2
と書かれている内の不足分Tectonic&TexLabを「brew install」
01)TeX Compile PDF.scpt
02)TeX Open PDF.scpt
2つのスクリプトもLibrary>Application Support>BBEdit> Scriptsへ配置。
TeX WiKi BXjsclsのサンプル「例(XeLaTeX + bxjsarticle クラス)」を
BBEditに書き込んでスクリプト・メニューから
『TeX Compile PDF』を選択しコンパイル実行!
TeX WiKi XeTeXの項目に書かれている『XeLaTeX で日本語』
XeLaTeX では BXjscls が使用可能です。から逆引きしました。
音楽家なので、必然的に英独仏などの外国語を併記して
使うことが多いので多国語latex環境が使えたTeXworksを
XeLaTeXでコンパイルしていました。此れもかなり昔の事。
奥村先生の「LaTeX2e 改訂第5版」が暫くして6版に成る前の事。
今回は、懐かしさのあまり『XeLaTeX』をついつい触ってみました。若松久仁光拝
追伸
関連箇所へのリンクを書いていますが、以前の様なWiKi Linkが機能する様に
書き込むには、どのタイプのフォーマットで投稿したら宜しいのでしょうか?
アドバイスを頂ければ幸甚です。
sn-jnl.clsを使ったタイプセット
\renewcommandと\RenewDocumentCommandで挙動が変わるのはなぜでしょうか?
\renewcommand
と\RenewDocumentCommand
で挙動が変わるものがあり、理由がよくわからず気になっています。
再現できると思われる最小のソースを以下に示します。所望の出力は添付PDFのものです。
\renewcommand
を使った際† は\ref
を用いて「Listing 1.1に示す」「Listing 2.1に示す」と望み通り参照できるものの、\RenewDocumentCommand
を使った際†† は\ref
すると「Listing 1.0に示す」「Listing 2.0に示す」と番号がおかしくなってしまいます。
† \renewcommand{\thelstlisting}{\arabic{section}.\arabic{lstlisting}}
とした際
†† \RenewDocumentCommand\thelstlisting{}{\arabic{section}.\arabic{lstlisting}}
とした際
ひとまず\RenewDocumentCommand
ではなく\renewcommand
を使うことで対処していますが、この挙動の違いの理由が気になります。
理由がお分かりの方いらっしゃいましたら、ぜひご教示お願いします。
※ \AtBeginDocument
内の記述はhttps://ta-b0.hateblo.jp/entry/2020/08/13/001223
を参考にしました。
\documentclass{jlreq}
\usepackage{listings}
\makeatletter
\AtBeginDocument{
\renewcommand{\thelstlisting}{\arabic{section}.\arabic{lstlisting}} % うまくいく
% \renewcommand{\thelstlisting}{\arabic{section}.\protect\arabic{lstlisting}} % うまくいかない
% \RenewDocumentCommand\thelstlisting{}{\arabic{section}.\arabic{lstlisting}} % うまくいかない
\@addtoreset{lstlisting}{section}
}
\makeatother
\begin{document}
\section{hoge}
Listing~\ref{list:hoge}に示す。
\begin{lstlisting}[caption=hoge,label=list:hoge]
print("Hello, LaTeX!")
\end{lstlisting}
\section{fuga}
Listing~\ref{list:fuga}に示す。
\begin{lstlisting}[caption=fuga,label=list:fuga]
print("Oh, TeX...")
\end{lstlisting}
\end{document}
(LuaLaTeX)
索引の表示場所の変更
ハードウエア: MacBook Air, Apple M2、
OS:macOS Ventura 13.4.1、
TeX: pdfTeX 3.141592653-2.6-1.40.25 (TeX Live 2023)
【ご相談内容】
ご存知の通り、\usepackage{makeidx}や\usepackage{imakeidx}で
索引を作成すると論文の最終ページに表示されます。
これを別ページに挿入することは可能でしょうか?
具体的は序章と2章の間に、論文中で使用される記号の
索引一覧を表示できたらと考えています。
どなたか方法をご存知でした教えて頂けると助かります。
LuaTeX の OTF で小塚フォントを指定する方法
当方の環境は Windows 10 で,Acrobat Pro 2020 を所有しております.
最近まで角藤先生の W32-TeX を使っており,そこでは
https://okumuralab.org/tex/mod/forum/discuss.php?d=866
の通りに map ファイルを指定し,小塚フォントを用いて \ajMaruKaku{1} などを出力できておりました.
さて,最近 TeX Live をインストールし,LuaLaTeX に切り替え始めました.ここでOTFパッケージを使うには
\usepackage{luatexja-otf}
を書けばよい,ということは分かったのですが,どうすれば小塚フォントを指定できるのでしょうか.
\usepackage[kozuka-pr6n,deluxe]{luatexja-preset}
と書いてみましたが,
Package fontspec Error: The font "KozMinPr6N-Bold" cannot be found.
等のエラーが出て,ダメでした.
LuaTeX は dvipdfmx を介さないとどこかで読みましたため上記の map ファイルの類は何もいじっておりませんが,何か設定が必要なのでしょうか.
もし何らかの設定が必要ならば,その設定とはどこを見れば分かるのか,お教えいただけませんでしょうか.
以上,ご存じの方,よろしくご教示お願い致します.山下
unicode-mathを読み込むと添え字の付く位置が変わるのはなぜでしょうか?
unicode-math
を読み込むときと読み込まないときとで、添え字の付く位置が変わるのが気になります。
添え字の付く位置が変わるのはなぜなのでしょうか。
なお、添え字の位置の違いはLuaLaTeXで
\documentclass{ltjsarticle}
\usepackage{amsmath,amssymb}
% \usepackage{unicode-math}
\begin{document}
\begin{equation}
\int_{0}^{\infty} \quad \sum_{i = 0}^{n}
\end{equation}
\end{document}
の3行目(\usepackage{unicode-math}
)をコメントアウトしたものと、コメントアウトしないものを処理した際の出力を比べることで把握できるはずです。
よろしくお願いします。
セクション毎における \pagenumbering の挙動について
\section
の度に \pagenumbering
でページ番号のスタイルを変更するようなドキュメントを作成しました。(\clearpage
の挙動を検証したくて遊んでいました)
MWE として次のようなドキュメントを作成しました。文章は lipsum パッケージと同等の文章です。
実行環境:
- Windows 11
- LuaLaTeX
- TeX Live 2023
このドキュメントをタイプセットすると、§ 1 Arabic のあるページ番号はアラビア数字で表示され、§ 2 Alph のあるページ番号はラテン文字で表示されることを期待していました。
しかし、実際には全てのページ番号がラテン文字で表示されてしまいます。
\documentclass{article}
\begin{document}
\section{Arabic}
\pagenumbering{arabic}
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Ut purus elit, vestibulum ut, placerat ac, adipiscing vitae, felis. Curabitur dictum gravida mauris. Nam arcu libero, nonummy eget, consectetuer id, vulputate a, magna. Donec vehicula augue eu neque. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Mauris ut leo. Cras viverra metus rhoncus sem. Nulla et lectus vestibulum urna fringilla ultrices. Phasellus eu tellus sit amet tortor gravida placerat. Integer sapien est, iaculis in, pretium quis, viverra ac, nunc. Praesent eget sem vel leo ultrices bibendum. Aenean faucibus. Morbi dolor nulla, malesuada eu, pulvinar at, mollis ac, nulla. Curabitur auctor semper nulla. Donec varius orci eget risus. Duis nibh mi, congue eu, accumsan eleifend, sagittis quis, diam. Duis eget orci sit amet orci dignissim rutrum.
Nam dui ligula, fringilla a, euismod sodales, sollicitudin vel, wisi. Morbi auctor lorem non justo. Nam lacus libero, pretium at, lobortis vitae, ultricies et, tellus. Donec aliquet, tortor sed accumsan bibendum, erat ligula aliquet magna, vitae ornare odio metus a mi. Morbi ac orci et nisl hendrerit mollis. Suspendisse ut massa. Cras nec ante. Pellentesque a nulla. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Aliquam tincidunt urna. Nulla ullamcorper vestibulum turpis. Pellentesque cursus luctus mauris.
Nulla malesuada porttitor diam. Donec felis erat, congue non, volutpat at, tincidunt tristique, libero. Vivamus viverra fermentum felis. Donec nonummy pellentesque ante. Phasellus adipiscing semper elit. Proin fermentum massa ac quam. Sed diam turpis, molestie vitae, placerat a, molestie nec, leo. Maecenas lacinia. Nam ipsum ligula, eleifend at, accumsan nec, suscipit a, ipsum. Morbi blandit ligula feugiat magna. Nunc eleifend consequat lorem. Sed lacinia nulla vitae enim. Pellentesque tincidunt purus vel magna. Integer non enim. Praesent euismod nunc eu purus. Donec bibendum quam in tellus. Nullam cursus pulvinar lectus. Donec et mi. Nam vulputate metus eu enim. Vestibulum pellentesque felis eu massa.
Quisque ullamcorper placerat ipsum. Cras nibh. Morbi vel justo vitae lacus tincidunt ultrices. Lorem ipsum dolor sit amet, consectetuer adipiscing elit. In hac habitasse platea dictumst. Integer tempus convallis augue. Etiam facilisis. Nunc elementum fermentum wisi. Aenean placerat. Ut imperdiet, enim sed gravida sollicitudin, felis odio placerat quam, ac pulvinar elit purus eget enim. Nunc vitae tortor. Proin tempus nibh sit amet nisl. Vivamus quis tortor vitae risus porta vehicula.
Fusce mauris. Vestibulum luctus nibh at lectus. Sed bibendum, nulla a faucibus semper, leo velit ultricies tellus, ac venenatis arcu wisi vel nisl. Vestibulum diam. Aliquam pellentesque, augue quis sagittis posuere, turpis lacus congue quam, in hendrerit risus eros eget felis. Maecenas eget erat in sapien mattis porttitor. Vestibulum porttitor. Nulla facilisi. Sed a turpis eu lacus commodo facilisis. Morbi fringilla, wisi in dignissim interdum, justo lectus sagittis dui, et vehicula libero dui cursus dui. Mauris tempor ligula sed lacus. Duis cursus enim ut augue. Cras ac magna. Cras nulla. Nulla egestas. Curabitur a leo. Quisque egestas wisi eget nunc. Nam feugiat lacus vel est. Curabitur consectetuer.
% Suspendisse vel felis. Ut lorem lorem, interdum eu, tincidunt sit amet, laoreet vitae, arcu. Aenean faucibus pede eu ante. Praesent enim elit, rutrum at, molestie non, nonummy vel, nisl. Ut lectus eros, malesuada sit amet, fermentum eu, sodales cursus, magna. Donec eu purus. Quisque vehicula, urna sed ultricies auctor, pede lorem egestas dui, et convallis elit erat sed nulla. Donec luctus. Curabitur et nunc. Aliquam dolor odio, commodo pretium, ultricies non, pharetra in, velit. Integer arcu est, nonummy in, fermentum faucibus, egestas vel, odio.
% Sed commodo posuere pede. Mauris ut est. Ut quis purus. Sed ac odio. Sed vehicula hendrerit sem. Duis non odio. Morbi ut dui. Sed accumsan risus eget odio. In hac habitasse platea dictumst. Pellentesque non elit. Fusce sed justo eu urna porta tincidunt. Mauris felis odio, sollicitudin sed, volutpat a, ornare ac, erat. Morbi quis dolor. Donec pellentesque, erat ac sagittis semper, nunc dui lobortis purus, quis congue purus metus ultricies tellus. Proin et quam. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos hymenaeos. Praesent sapien turpis, fermentum vel, eleifend faucibus, vehicula eu, lacus.
\section{Alph}
\pagenumbering{Alph}
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Ut purus elit, vestibulum ut, placerat ac, adipiscing vitae, felis. Curabitur dictum gravida mauris. Nam arcu libero, nonummy eget, consectetuer id, vulputate a, magna. Donec vehicula augue eu neque. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Mauris ut leo. Cras viverra metus rhoncus sem. Nulla et lectus vestibulum urna fringilla ultrices. Phasellus eu tellus sit amet tortor gravida placerat. Integer sapien est, iaculis in, pretium quis, viverra ac, nunc. Praesent eget sem vel leo ultrices bibendum. Aenean faucibus. Morbi dolor nulla, malesuada eu, pulvinar at, mollis ac, nulla. Curabitur auctor semper nulla. Donec varius orci eget risus. Duis nibh mi, congue eu, accumsan eleifend, sagittis quis, diam. Duis eget orci sit amet orci dignissim rutrum.
Nam dui ligula, fringilla a, euismod sodales, sollicitudin vel, wisi. Morbi auctor lorem non justo. Nam lacus libero, pretium at, lobortis vitae, ultricies et, tellus. Donec aliquet, tortor sed accumsan bibendum, erat ligula aliquet magna, vitae ornare odio metus a mi. Morbi ac orci et nisl hendrerit mollis. Suspendisse ut massa. Cras nec ante. Pellentesque a nulla. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Aliquam tincidunt urna. Nulla ullamcorper vestibulum turpis. Pellentesque cursus luctus mauris.
Nulla malesuada porttitor diam. Donec felis erat, congue non, volutpat at, tincidunt tristique, libero. Vivamus viverra fermentum felis. Donec nonummy pellentesque ante. Phasellus adipiscing semper elit. Proin fermentum massa ac quam. Sed diam turpis, molestie vitae, placerat a, molestie nec, leo. Maecenas lacinia. Nam ipsum ligula, eleifend at, accumsan nec, suscipit a, ipsum. Morbi blandit ligula feugiat magna. Nunc eleifend consequat lorem. Sed lacinia nulla vitae enim. Pellentesque tincidunt purus vel magna. Integer non enim. Praesent euismod nunc eu purus. Donec bibendum quam in tellus. Nullam cursus pulvinar lectus. Donec et mi. Nam vulputate metus eu enim. Vestibulum pellentesque felis eu massa.
Quisque ullamcorper placerat ipsum. Cras nibh. Morbi vel justo vitae lacus tincidunt ultrices. Lorem ipsum dolor sit amet, consectetuer adipiscing elit. In hac habitasse platea dictumst. Integer tempus convallis augue. Etiam facilisis. Nunc elementum fermentum wisi. Aenean placerat. Ut imperdiet, enim sed gravida sollicitudin, felis odio placerat quam, ac pulvinar elit purus eget enim. Nunc vitae tortor. Proin tempus nibh sit amet nisl. Vivamus quis tortor vitae risus porta vehicula.
Fusce mauris. Vestibulum luctus nibh at lectus. Sed bibendum, nulla a faucibus semper, leo velit ultricies tellus, ac venenatis arcu wisi vel nisl. Vestibulum diam. Aliquam pellentesque, augue quis sagittis posuere, turpis lacus congue quam, in hendrerit risus eros eget felis. Maecenas eget erat in sapien mattis porttitor. Vestibulum porttitor. Nulla facilisi. Sed a turpis eu lacus commodo facilisis. Morbi fringilla, wisi in dignissim interdum, justo lectus sagittis dui, et vehicula libero dui cursus dui. Mauris tempor ligula sed lacus. Duis cursus enim ut augue. Cras ac magna. Cras nulla. Nulla egestas. Curabitur a leo. Quisque egestas wisi eget nunc. Nam feugiat lacus vel est. Curabitur consectetuer.
Suspendisse vel felis. Ut lorem lorem, interdum eu, tincidunt sit amet, laoreet vitae, arcu. Aenean faucibus pede eu ante. Praesent enim elit, rutrum at, molestie non, nonummy vel, nisl. Ut lectus eros, malesuada sit amet, fermentum eu, sodales cursus, magna. Donec eu purus. Quisque vehicula, urna sed ultricies auctor, pede lorem egestas dui, et convallis elit erat sed nulla. Donec luctus. Curabitur et nunc. Aliquam dolor odio, commodo pretium, ultricies non, pharetra in, velit. Integer arcu est, nonummy in, fermentum faucibus, egestas vel, odio.
Sed commodo posuere pede. Mauris ut est. Ut quis purus. Sed ac odio. Sed vehicula hendrerit sem. Duis non odio. Morbi ut dui. Sed accumsan risus eget odio. In hac habitasse platea dictumst. Pellentesque non elit. Fusce sed justo eu urna porta tincidunt. Mauris felis odio, sollicitudin sed, volutpat a, ornare ac, erat. Morbi quis dolor. Donec pellentesque, erat ac sagittis semper, nunc dui lobortis purus, quis congue purus metus ultricies tellus. Proin et quam. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos hymenaeos. Praesent sapien turpis, fermentum vel, eleifend faucibus, vehicula eu, lacus.
\end{document}
いくつかのパターンを試す中で、以下の事実が判明しています。
- LaTeX エンジンには依存しない
- 他のドキュメントクラスでも、文章量を調整して § 2 がページが改まってから始まるようにすると同様の問題が発生する
\pagenumbering{Alph}
を\thispagestyle{empty}
としても 1 ページ目に影響が生じる
この問題の解決方法としては、2 つ見つけることが出来ました。
- § 1 がページ末で終わらないようにする(コメントアウトしている § 1 の最後の 2 行を挿入すると問題は解消されます)
\section{Alph}
の前で\clearpage
する
今回この質問で知りたいことは、以下の点です。
- 上で挙げた方法以外に、この問題を解消する方法があるか
- この問題はどうして発生しているのか
検索方法が良くないのかもしれませんが、この問題と類似する問題を提起している人を見つけることは出来ませんでした。
どうぞよろしくお願いいたします。