upLaTeX 使用 utbook.cls 获取日文引号缩进

upLaTeX 使用 utbook.cls 获取日文引号缩进

使用 utbook 类

给出utbook.cls在段落开头对齐的全宽引号。

\documentclass[b5paper]{utbook}
\usepackage{pxrubrica}
\rubysetup{<->}
\begin{document}
男は店主とは顔馴染みらしく、あれこれにこやかに言葉を交わし、ひとたび器へ向かうや、
ナイアガラ\ruby[j]{瀑布}{ばく|ふ}が逆流するような迫力で\ruby[m]{麺}{めん}をすすっ
た。そうして私が食い終わるよりも前にスープを飲み干した。まさに神業であった。

男はラーメンを食べ終わったあと、私をじろじろと眺めた。やがて「貴君」と、ひどく古
風な言葉で呼びかけてきた。

「下鴨幽水荘の人だろう」

私が\ruby[m]{頷}{うなず}くと、男は満足気に笑った。

「私も下鴨幽水荘に住んでいる。よろしく」

「どうも」
\end{document}

然而其他更新的类别jlreq.cls可以在行首给出半宽引号。

\documentclass[b5paper,tate]{jlreq}

与 jlreq 类

怎样才能获得这种效果并保留大部分设置utbook.cls

这并不是说使用的虚拟字体utbook不支持半角引号压缩,因为如果\noindent在以下行中添加「下鴨幽水荘の人だろう」

显示半角引号

但是,我不知道在哪里配置段落开头引号的扩展缩进量。

我在 pTeX 手册中找到这一行,

在打开括弧之前和关闭括弧(全角和包含)之后,JFM 会将输入引导到半角弧。

(在括号(包括引号)之前/之后,插入了半空格粘连。)

\inhibitgluepTeX 原语可以修复这个问题。

因此,目前我\fixquote在任何以 开头的段落之前手动添加一个命令,其定义如下:

\def\fixquote{\strut\inhibitglue}

用作\fixquote「下鴨幽水荘の人だろう」……

是否可以自动处理这个问题?也许可以通过 catcode?我还没有弄清楚 catcode 在 (u)pTeX 中的具体工作原理,有什么提示吗?

答案1

要自动处理这个问题,使用该bxjaprnind包将很容易。

\documentclass[b5paper]{utbook}
\usepackage{bxjaprnind}%% add this!
\usepackage{pxrubrica}
\rubysetup{<->}
\begin{document}
男は店主とは顔馴染みらしく、あれこれにこやかに言葉を交わし、ひとたび器へ向かうや、
ナイアガラ\ruby[j]{瀑布}{ばく|ふ}が逆流するような迫力で\ruby[m]{麺}{めん}をすすっ
た。そうして私が食い終わるよりも前にスープを飲み干した。まさに神業であった。

男はラーメンを食べ終わったあと、私をじろじろと眺めた。やがて「貴君」と、ひどく古
風な言葉で呼びかけてきた。

「下鴨幽水荘の人だろう」

私が\ruby[m]{頷}{うなず}くと、男は満足気に笑った。

「私も下鴨幽水荘に住んでいる。よろしく」

「どうも」
\end{document}

欲了解更多详情,请参阅其文档(虽然是日语)。

我还没有弄清楚 catcode 在 (u)pTeX 中具体是如何工作的,有什么提示吗?

请参阅这个话题。(k)catcode 仅对如何解释标记进行分类(例如,符号不能用作控制字的一部分),并且与字体度量无关。

相关内容