
대만어에서는 이중 하이픈이 문법적 기능을 수행하며 자주 사용됩니다. 예:
Āu--ji̍t chiah koh lâi. (내일 모레 다시 오세요.)
Āu-ji̍t chiah koh lâi. (나중에 또 오세요.)
문제는 이중 하이픈이 n-대시로 변환된다는 것입니다. 저는 -{}- 변환을 중지할 수 있다는 것을 알고 있습니다. 그러나 두 하이픈 사이에서 줄 바꿈이 발생하므로 이 역시 방지해야 합니다. 따라서
Āu\mbox{-{}-}{\allowbreak}ji̍t chiah koh lâi.
이것은 복잡해 보입니다. xelatex를 사용하고 있기 때문에 시퀀스에 대한 명령을 정의하고 그 동안 소스 코드에서도 이중 하이픈처럼 보이도록 할 수 있을 것 같습니다.
\newcommand{\‐‐}{\mbox{‐‐}{\allowbreak}}
\‐‐ 안의 것들은 U+002D가 아니고 U+2010입니다. \mbox의 것과 동일하므로 합자를 피합니다. 그리고 아마도 나는 글을 쓸 수 있을 것 같다
Āu\‐‐ji̍t chiah koh lâi.
이것이 이중 하이픈이라는 것을 아는 것이 훨씬 쉽습니다.
그러나 오류 메시지가 나타납니다. ! LaTeX 오류: \begin{document}이(가) 없습니다.
의문스러운 점은
\newcommand{\‐}{\mbox{‐‐}{\allowbreak}}
잘 작동합니다. 그러나 이중 하이픈처럼 보이지 않기 때문에 이상적이지는 않습니다.
이에 대한 좋은 해결책이 없으면 을 잊어버리고 \allowbreak
U+2010 두 개를 연속해서 작성하면 됩니다. 하지만 이중 하이픈이 있는 단어는 길고 조판도 보기 흉합니다.
답변1
U+2010을 입력할 수 있는 경우 조합 ‐‐
(U+2010 U+2010)은 합자를 생성하지 않습니다.
당신은 할 수 있습니다약간정의합니다 \--
(하이픈을 사용하지만 정의가 지워집니다 \-
).
가능한 대안은 다음을 사용하는 것입니다 \0--
(두 개의 하이픈 포함).
\documentclass{article}
\usepackage{fontspec}
\setmainfont{Libertinus Serif}
\def\0--{‐‐\allowbreak}% two U+2010 in the body
\begin{document}
Āu--ji̍t chiah koh lâi. (Come again the day after tomorrow.) % two hyphens
Āu‐‐ji̍t chiah koh lâi. (Come again the day after tomorrow.) % two U+2010
Āu\0--ji̍t chiah koh lâi. (Come again the day after tomorrow.) % the command
Āu-ji̍t chiah koh lâi. (Come again in the future.)
\parbox[t]{0pt}{\hspace{0pt}Āu\0--ji̍t chiah koh lâi.}
\end{document}