luatexja 中日文括号“「”前不需要空格

luatexja 中日文括号“「”前不需要空格

lualatex我正在编写一个包含和 的文档luatexja。如果\item后面跟着括号符号,则会引入一个不需要的空格。

示例 pdf

演示代码:

\documentclass{article}
\usepackage{luatexja}

\begin{document}
\begin{itemize}
\item
  「」

  「」

\item
  日本語

  日本語

\item
  english

  english
\end{itemize}
\end{document}

版本: This is LuaTeX, Version 0.95.0 (TeX Live 2016/Debian) \ProvidesPackage{luatexja-core}[2016/05/15 Core of LuaTeX-ja]
我也试过git上的版本LuaTeX-ja OSDN

答案1

\item这是因为之前有一个粘连。由于“粘连的字符类”在标准度量中为零,因此在 粘连 和 之间插入了一个半角空格

为了解决这个问题,我们可以修补\@item,如下ltjsarticle.cls

\def\@item[#1]{%
  (...)
    \else
      \clubpenalty \@clubpenalty
      \everypar{}%
    \fi
    \directlua{luatexja.jfmglue.create_beginpar_node()}% <-- !!! add !!!
  }%
  (...)
}

或者,使用以下命令执行相同的操作\apptocmd

\usepackage{etoolbox}
\makeatletter
\patchcmd{\@item}{\everypar{}\fi}
  {\everypar{}\fi\directlua{luatexja.jfmglue.create_beginpar_node()}}{}{}
\makeatother

相关内容