Je recherche un package LaTeX qui met en évidence la syntaxe du code. Par exemple, en ce moment, j'utilise le bloc verbatim pour écrire du code:
\begin{verbatim}
<html>
<head>
<title>Hello</title>
</head>
<body>Hello</body>
</html>
\end{verbatim}
Et cela fonctionne très bien pour afficher le code sur mon document. Mais, supposons que je veuille mettre en évidence le balisage HTML comme le ferait un IDE dans le document de sortie? Existe-t-il un package qui pourrait vous aider?
J'aimerais faire de même pour différents langages tels que Java, C #, HTML, CSS, etc.
lstlisting
. Il ne met pas du tout en évidence le code XML et se trompe lors de l'utilisation de caractères Unicode étrangers. JavaScript n'est pas non plus pris en charge, comme il semble. LGrind peut-il gérer de telles choses?Réponses:
Vous pouvez utiliser le package des listes . Il prend en charge de nombreuses langues différentes et il existe de nombreuses options pour personnaliser la sortie.
la source
Après avoir posé une question similaire, j'ai créé un autre package qui utilise Pygments et offre un certain nombre d'options de plus que
texments
. Il s'appelleminted
et est assez stable et utilisable.Juste pour le montrer, voici un code surligné avec frappé:
la source
PATH
variable et créer un script cmd). J'espère convaincre les responsables de Pygments d'expédierpygmentize
avec un.exe
emballage pour faciliter cette étape.minted
est installé et fonctionne à la fois sur ShareLatex et Overleaf. Épargnez-vous le mal de tête de l'installation de Pygments;)Je recommande Pygments . Il accepte un morceau de code dans n'importe quel langage et génère la syntaxe du code LaTeX mis en évidence. Il utilise les packages fancyvrb et color pour produire sa sortie. Personnellement, je le préfère au package d'inscription. Je pense que fancyvrb crée des résultats beaucoup plus jolis .
la source
beamer
document type, c'est apparemment la seule option fonctionnelle. Niminted
nilistings
compilez correctement avecbeamer
.listings
avecbeamer
, mais vous devez spécifier que les cadres qui incluent des listes le sont[fragile]
.LGrind fait cela. C'est un package LaTeX mature qui existe depuis qu'Adam était un cow-boy et prend en charge de nombreux langages de programmation.
la source
J'utiliserais le package frappé comme mentionné par le développeur Konrad Rudolph au lieu du package de liste . Voici pourquoi:
package d'inscription
Le package de liste ne prend pas en charge les couleurs par défaut. Pour utiliser les couleurs, vous devez inclure le package de couleurs et définir vous-même les règles de couleur avec la commande \ lstset comme expliqué pour le code matlab ici .
De plus, le package de liste ne fonctionne pas bien avec unicode, mais vous pouvez résoudre ces problèmes comme expliqué ici et ici .
Le code suivant
produit l'image suivante:
paquet frappé
Le paquet frappé prend en charge les couleurs, l'unicode et a l'air génial. Cependant, pour l'utiliser, vous devez avoir python 2.6 et pygments . Dans Ubuntu, vous pouvez vérifier votre version de python dans le terminal avec
et vous pouvez installer des pygments avec
Ensuite, puisque frappé fait des appels aux pygments, vous devez le compiler avec -shell-escape comme ceci
Si vous utilisez un éditeur latex comme TexMaker ou autre, je vous recommande d'ajouter une commande utilisateur, afin que vous puissiez toujours le compiler dans l'éditeur.
Le code suivant
produit l'image suivante:
la source
J'utilise principalement les lstlistings dans les papiers, mais pour les sorties colorées (pour les diapositives), j'utilise plutôt des pygments.
la source
Je suggérerais de définir votre propre package basé sur le code tex suivant; cela vous donne une liberté totale. http://ubuntuforums.org/archive/index.php/t-331602.html
la source