使用 selnolig 设置全局非连字符字距调整

使用 selnolig 设置全局非连字符字距调整

如同我想使用的问题selnolig,但我不喜欢这样的事实:在fl不包含连字符的单词中,这两个字母太靠近了。

Mico 的答案 我想使用“新”方法,因为我发现使用我正在使用的字体可以完美调整字距。不幸的是,此答​​案中给出的代码仅针对单个单词提供了“新”方法。

是否可以对每个具有非连字符fl组合的单词使用此方法?换句话说:是否可以在所有fl字母之间添加固定的字距,这些字母会自动分解为单个字母selnolig

这是一个最小的例子(取自上面链接的 Mico 的回答):

\documentclass[ngerman]{article}
\usepackage{fontspec}
\usepackage{selnolig}

\usepackage{luacode}
\begin{luacode}
function breaklig (s)
    s = s:gsub ( 'Verzweiflung' ,
        'Ver\\-zweif\\discretionary{-}{}{\\kern0.05em}lung' )
    return s
end
luatexbase.add_to_callback( 'process_input_buffer' ,
    breaklig , 'break ligatures in specified words' )
\end{luacode}

\begin{document}

Verzwei\uselig{fl}ung {V}erzweiflung Verzweiflung

\end{document}

输出

  • 第一个例子使用了在这种情况下不应使用的连字。
  • selnolig第二个是字母fl太靠近而产生的输出。
  • 第三个使用上面的 luacode 来创建0.05em不干扰 TeX 连字符算法的字距调整(据我所知)。

fl我想对包含断开selnolig连字符的所有单词使用第三个。

相关内容