如何使用以希腊语为主要语言的 lipsum

如何使用以希腊语为主要语言的 lipsum

我正在尝试使用以希腊语为主要语言的 lipsum 创建随机文本。问题是,当我尝试编译我的文件时,一直出现有关 的错误endcsname

我的代码是

\documentclass[a4paper,11pt]{article}

\usepackage[english,greek]{babel}
\usepackage[iso-8859-7]{inputenc}
\usepackage{kerkis}
\usepackage{lipsum}    

\newcommand{\eng}[1]{\latintext#1\greektext}

\begin{document}   
\lipsum[2]
\end{document}

我也尝试使用\eng{\lipsum[2]} 而不是来运行它\lipsum[2],但似乎不起作用。让它工作的唯一方法是将英语作为主要语言。

有办法解决这个问题吗?

答案1

lipsum包用于\roman{lips@count}构建控制序列名称;但希腊语模块的babel含义发生了改变,\roman使得它无法完全扩展。

解决办法:patch相关命令:

\documentclass[a4paper,11pt]{article}

\usepackage[english,greek]{babel}
\usepackage{kerkis}
\usepackage{lipsum}
\usepackage{etoolbox}

\makeatletter
\patchcmd\lips@dolipsum
 {\roman{lips@count}}
 {\romannumeral\c@lips@count}
 {}{}
\makeatother

\begin{document}
\lipsum[2]
\end{document}

我省略了与inputenc示例无关的调用。您应该考虑切换到 UTF-8,而不是使用 ISO-8859-7。

相关内容