根据西班牙语排版传统(Martinez de Sousa,MELE4),缩写etc.
应完全展开到etcétera
出现在行首的位置(维基百科西班牙语页面)。
我猜想可以使用 LuaTeX 来实现;在检查行首是否为 后重新排版段落etc.
。我认为应该使用迭代的上限(可能是etc.
段落中出现的时间),因为新的排版可能会移动 的位置etc.
。
(注意:由于文本的重新排版,这种做法现在不再使用。)
我的问题是:有人愿意接受这个挑战吗?
答案1
即使没有 luatex,您也可以这样做,尽管单词周围的空格不会随着行上其他单词间的空格而延伸。
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\setlength\textwidth{5cm}
\def\etc.{\discretionary{}{etcétera}{\hbox{ etc.}}}
\begin{document}
abc\etc. abc\etc. abc\etc. abc\etc.
abc\etc. abc\etc. abc\etc. abc\etc.
abc\etc. abc\etc. abc\etc. abc\etc.
\end{document}
避免冻结自由裁量权框内空间的另一种方案是使用...abc~\etc.
定义
\def\etc.{\discretionary{}{etcétera}{etc.}}
~
但是这会在换行符之前在行尾留下空格,因此仅在 raggedright 设置中才真正可用。