Pergunta

Estou à procura de um pacote LaTeX que faz destaque de sintaxe no código. Por exemplo, agora eu uso o bloco verbatim para escrever código:

\begin{verbatim}
    <html>
       <head>
           <title>Hello</title>
       </head>
       <body>Hello</body>
    </html>
\end{verbatim}

E isso funciona bem para exibir o código no meu documento. Mas, suponhamos que eu queria destacar a marcação HTML a forma como um IDE faria no documento de saída? Existe um pacote que poderia ajudar?

Eu gostaria de fazer o mesmo para várias linguagens como Java, C #, HTML, CSS e assim por diante.

Outras dicas

Depois de pedir uma pergunta semelhante eu criei um outro pacote que utiliza Pygments, e ofertas muito poucos mais opções do que texments. É chamado minted e está bastante estável e utilizável.

Apenas para apresentá-lo, aqui está um código destacado com cunhadas:

código Exemplo

Eu recomendo Pygments . Ele aceita um pedaço de código em qualquer idioma e saídas sintaxe destacada LaTeX código. Ele usa fancyvrb e pacotes da cor para produzir sua saída. Eu, pessoalmente, prefiro que o pacote listagem. Acho fancyvrb cria resultados muito mais bonita.

lgrind faz isso. É um pacote LaTeX madura que tem sido em torno desde que Adão era um cowboy e tem suporte para várias linguagens de programação.

Gostaria de usar a cunhadas pacote como mencionado a partir o desenvolvedor Konrad Rudolph vez do listando pacote . Aqui está o porquê:

pacote de lista

O pacote listando não suporta cores por padrão. Para usar cores que você precisa para incluir o pacote de cores e definir cor-regras por si mesmo com o \ lstset comando como explicado para o código Matlab aqui .

Além disso, o pacote de lista não funciona bem com unicode, mas você pode corrigir esses problemas, como explicado aqui e aqui .

O código a seguir

\documentclass{article}
\usepackage{listings}

\begin{document}
\begin{lstlisting}[language=html]
<html>
    <head>
        <title>Hello</title>
    </head>
    <body>Hello</body>
</html>
\end{lstlisting}
\end{document}

produz a seguinte imagem:

 enter descrição da imagem aqui

pacote cunhadas

As cores suporta pacotes cunhadas, unicode e aparência impressionante. No entanto, a fim de usá-lo, você precisa ter o Python 2.6 e pygments . No Ubuntu, você pode verificar a sua versão python no terminal com

python --version

e você pode instalar pygments com

sudo apt-get install python-pygments

Em seguida, uma vez cunhadas faz chamadas para pygments, você precisa compilar com -shell-escape como este

pdflatex -shell-escape yourfile.tex

Se você usar um editor de látex como texmaker ou algo assim, eu recomendaria para adicionar um usuário comando, de modo que você ainda pode compilá-lo no editor.

O código a seguir

\documentclass{article}
\usepackage{minted}
\begin{document}

\begin{minted}{html}
    <!DOCTYPE html>
    <html>
       <head>
           <title>Hello</title>
       </head>

       <body>Hello</body>
    </html>
\end{minted}
\end{document}

produz a seguinte imagem:

 enter descrição da imagem aqui

Eu use lstlistings em papéis, mas para a saída de cor (para slides) Eu uso pygments vez.

Gostaria de sugerir definindo o seu próprio pacote com base no código seguinte tex; isso lhe dá total liberdade. http://ubuntuforums.org/archive/index.php/t-331602. html

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top