
Version 0.95.0 (TeX Live 2016) (format=lualatex 2017.1.29)
LuaLaTeX(TL 2016: )에서 부적절한 합자를 만드는 데 문제가 있습니다 . MWE는 다음과 같습니다.
\documentclass[a4paper, 12pt]{article}
\def\czechSingleQuotes #1{‚#1‘} % UTF-8 chars for single quotes
\begin{document}
\czechSingleQuotes{Ahoj!}
\czechSingleQuotes{Nazdar?}
‚Hi!‘
\end{document}
결과는 다음과 같습니다.
나는 LuaTeX 사람들이 여기에서 그것을 읽고 그것에 대해 뭔가를 해주기를 바랍니다. 그러나 문제가 해결될 때까지 이 문제를 해결하는 방법에 대한 제안이 있는 사람이 있습니까? 일반적인(다른 상황에서) 트릭은 도움이 되지 않습니다. 예를 들어 \def\czechSingleQuotes #1{‚{#1}{}\relax ‘}
동일한 결과가 생성됩니다.
미리 감사드립니다.
나중에 편집:
이 문제는 최신 버전(v2.8-fix-1)에서 수정되었지만 luaotfload
수정 사항이 너무 많이 진행된 것 같습니다. 이제 되돌린 스페인어 느낌표나 물음표를 만드는 표준 합자조차 더 이상 작동하지 않으므로 이 문제가 발생합니다. :
\documentclass[a4paper, 12pt]{article}
\begin{document}
Hi?` % standard back apostrophe, no UTF-8
Hi!` % ditto
\end{document}
LuaTeX(표준 q./ex. 표시 뒤에 역따옴표가 붙음)와 XeTeX 또는 pdfTeX(스페인어로 되돌린 q./ex. 표시)에서 다양한 출력을 생성합니다.
답변1
David Carlisle이 의견에서 지적했듯이, 기본 역따옴표가 아닌 "활자체" 인용문이 있더라도 반전된 질문과 느낌표에 대한 "고전적인" TeX 합자가 적용됩니다.
\kern0pt
닫는 따옴표 앞에 명령을 삽입하는 것이 효과적인 해결 방법입니다. pdfLaTEX와 달리 LuaTeX는 {}
요소를 삭제합니다. 따라서 {}
구두점과 활자체 인용부호 사이에 보이지 않는 구분을 만드는 데 를 사용할 수 없습니다 .
\documentclass{article}
\def\czechSingleQuotes#1{‚#1\kern0pt‘} % UTF8 chars for single quotes
\begin{document}
% "classic" TeX ligatures applied even though "typographic" quotes are in use
? ?` ?‘ --- ! !` !‘
\czechSingleQuotes{Ahoj!}
\czechSingleQuotes{Nazdar?}
\czechSingleQuotes{Hi!!}
\end{document}
답변2
fontspec
TeX 합자가 잘못 적용되고 있으므로 이를 끄는 데 사용할 수 있습니다 . 예를 들어 이는 ---
더 이상 mdash에 합자가 되지 않음을 의미합니다.
\documentclass[a4paper, 12pt]{article}
\usepackage{fontspec}
\def\czechSingleQuotes #1{‚#1‘} % UTF-8 chars for single quotes
\defaultfontfeatures[\rmfamily]{}
\setmainfont{Latin Modern Roman}
\begin{document}
\czechSingleQuotes{Ahoj!}
\czechSingleQuotes{Nazdar?}
‚Hi!‘
\end{document}
이것은 일반 텍스트 테스트에서 알 수 있듯이 luaotfload 문제이므로 github에 보고하겠습니다.
\input{luaotfload.sty}
\font\fa=[lmroman12-regular.otf]
\font\fb=[lmroman12-regular.otf]:+tlig
\fa
U+2018 no tlig !‘
U+0060 no tlig !`
\fb
U+2018 tlig !‘
U+0060 tlig !`
\bye