나는 몇 가지 언어로 문서를 조판(lualatex)하고 있습니다. 주요 언어는 영어입니다. 다른 언어를 사용하는 경우 일반적으로 \foreigntextquote{french}{text}
및 와 같은 명령을 사용합니다 \foreignlanguage{german}{text}
. 이를 통해 몇 가지 사항, 특히 하이픈 연결이 정리되기를 바랍니다. 관리도 할 수 있었고,약간의 도움을 받아, 고대 그리스어의 하이픈( polutonikogreek
).
현재 나의 주요 문제는 라틴 알파벳으로 작성되지 않은 일부 언어가 때때로 음역에 사용된다는 것입니다. 예를 들어 아랍어에서는 때때로 (보통 본문의 본문에서) 다음과 같이 썼습니다.야스타리쿠يechترك 대신에 또는알무타알림المتعلّم 대신.
그런데 어떻게 이러한 음역에 하이픈을 넣을 수 있나요?
그들은 "알려진" 언어가 아닙니다(적어도 음역에서는 아닙니다). 정해진 규칙이 있는지는 잘 모르겠고, 있다고 하더라도 에 통합되지 않은 것으로 가정합니다 babel
. 때로는 단어 자체에 대시가 있을 수도 있습니다(기사로 인해).알-) 이는 알려진 문제입니다(하지만 몇 가지 해결 방법도 있습니다).
그러나 일반적으로 내 질문은 다음과 같습니다. 서문에서 선언할 수 없기 때문에모두음역에 사용할 단어(명령어가 \hyphenation{...}
너무 길어서 미친 짓이 될 것입니다.), 아마도 방법이 있는지 알고 싶습니다.무작위로babel
하이픈을 넣는 방법이나 새로운 하이픈 언어를 만들고 규칙을 선언하는 쉬운 방법을 모르는 단어에 하이픈을 넣으시겠습니까 ? 아니면 음역된 단어를 모두 하이픈으로 연결하는 방법에 대한 다른 권장 사항이 있나요?
해결 방법이 없으면 문서의 여백이나 줄에 단어 수가 너무 많아 단어 간 공간이 너무 큽니다.
출판사들이 출판물에 음역을 사용하는 경향이 있기 때문에 이것은 실제로 모든 인문학의 조판에 있어 긴급한 문제여야 합니다. 출판사에서 어떻게 처리하는지 모르겠습니다.
답변1
\-
다음은 모음과 일부 자음 사이에 a를 삽입하는 다소 조잡한 솔루션입니다 .
\documentclass{article}
\usepackage{luacode}
\begin{luacode*}
function insdisc (s)
-- add more letters if necessary
s = s:gsub( [[([aeiou])([bcfgklmnpqtxz])]] , '%1\\-%2' )
-- but don't leave a single char alone:
s = s:gsub( '^(.)\\%-', '%1')
s = s:gsub( '\\%-(.)$', '%1')
return s
end
\end{luacode*}
\def\insdisc#1{\directlua{tex.print(insdisc(\luastring{#1}))}}
\begin{document}
\hsize1mm
Text \insdisc{umiq'utzexopab} umiq'utzexopab text text text text text
text text text text text text text text text text text text.
\end{document}