我有以下文字
\documentclass[a4paper,11pt]{article}
\usepackage[a4paper,includeheadfoot,margin=2.54cm]{geometry} % for margins on a A4paper
\usepackage{fontspec}
\usepackage[english, ngerman]{babel}
\begin{document}
Auch wenn Ghor als eine der unterentwickelten Provinzen Afghanistans angesehen
wird (IWPR 19.1.2017; vgl. auch: Pajhwok o.D.p), haben 6.131 Frauen einen
neun-monatigen Alphabetisierungs- und Ausbildungskurse absolviert. ...
Auch wenn Ghor als eine der unterentwickelten Provinzen Afghanistans angesehen
wird (IWPR 19.1.2017; vgl. auch: Pajhwok o.D.p), haben 6.131 Frauen einen
neun-moatigen Gesäß-Muskulatur und Ausbildungskurse absolviert. ...
\end{document}
输出结果如下:
但不知何故,根据 Duden 的说法,该词Alphabetisierung
无法连字符。有没有办法通过使用一些适当的软件包自动完成此操作来修复它?
由于我自动收到此内容,任何手动更改可能会在下次被覆盖。
更新更新文本
答案1
根据提示和不同的链接,我找到了解决方案,添加以下代码从
\exhyphenchar -1 %required for the first paragraph
\usepackage{luacode}
%%% Lua-side code
\begin{luacode}
function dash_to_breakable_dash ( s )
s = unicode.utf8.gsub ( s, '(%w)"=(%a)', '%1XYZYX%2' )
s = unicode.utf8.gsub ( s, '(%w)%-(%a)', '%1"=%2' )
s = unicode.utf8.gsub ( s, '(%w)XYZYX(%a)', '%1-%2' )
return s
end
\end{luacode}
%%% TeX-side code
\newcommand\ConvertDashOn{\directlua{
luatexbase.add_to_callback ( "process_input_buffer" ,
dash_to_breakable_dash , "dash_to_breakable_dash" )}}
\newcommand\ConvertDashOff{\directlua{
luatexbase.remove_from_callback ( "process_input_buffer" ,
"dash_to_breakable_dash" )}}
\AtBeginDocument{\ConvertDashOn}
对我来说这听起来很神奇,因为我不知道这有什么用处,因为\exhyphenchar -1
没有这个,第一个段落就不能正确断开。这个命令只能Gesäß-Muskulatur
错误地使用连字符。Gesä-ß-Muskulatur
绝对是错的!
另一种方法"=
失败了,因为我不再能-
终止Alphabetiesierungs-
。
我不知道这是否这解决方案或是否存在更简单的解决方案。至少这个在当前情况下有效。