如何使用 listing 包突出显示非 ascii 关键字?

如何使用 listing 包突出显示非 ascii 关键字?

我正在尝试使用 listingsutf8 包突出显示几个包含非 ASCII 字符的关键字。这是我的文档的相关部分:

\usepackage[brazilian]{babel}
\usepackage[T1]{fontenc}
\usepackage[utf8x]{inputenc}
\usepackage{listingsutf8}
\lstset{
    extendedchars=true,
    inputencoding=utf8x,
    keywords={Funcionalidade, Para, Como, Eu, Contexto, Cenário, Dado, Quando, Então},
    literate=%
{á}{{\'a}}1
{ã}{{\~a}}1
{ç}{{\c{c}}}1
{é}{{\'e}}1
{ê}{{\^e}}1
{õ}{{\~o}}1
{ó}{{\'o}}1
}

ASCII 关键字被正确突出显示,但CenárioEntão关键字却没有。我也尝试过使用emph和更改inputencoding,但它也不起作用:

\lstset{
    inputencoding=utf8/latin1,
    emph={Cenário, Cen\'ario, Cenario},emphstyle={\bfseries}
}

如果相关的话,我试图突出显示的列表来自一个单独的文件,使用命令\lstinputlisting。如果我不得不猜测,我会说它与参数有关literate

答案1

尝试listingsutf8包裹来自奥伯迪克捆绑。它为该\lstinputlisting命令提供了一种解决方法。

相关内容