-
Notifications
You must be signed in to change notification settings - Fork 0
SourceCode
Pour insérer du code dans votre document, vous avez à disposition le package \latexcode{listings}. Ce package est très riche en possibilités, il vous est fortement recommandé de consulter sa documentation si vous souhaitez l'exploiter en profondeur et aller au delà des commandes présentées ci-après. La classe de document polytech
nécessite une version récente du package (cf. Mise à jours de package LaTeX).
Pour simplifier l'utilisation de listings
, plusieurs commandes et environnements supplémentaires ont été défini. Pour chacun des langages supportés, trois commandes et un environnement sont disponibles. En notant XXX
le nom du langage, on a :
- Commande identique à la commande
\lstinline{code}
mais pré-configurée pour le langageXXX
. -
code
est le code à afficher. - La commande s'utilise dans le corps d'un texte (ex: un phrase).
- Les caractères spéciaux tels que
\
,{
et}
doivent être préfixés d'un\
ie.\\
,\{
et\}
. -
Cette commande est fragile et ne fonctionne pas dans les tableaux. Il faut utiliser le commande
\XXXcodeintab
dans ce cas là. - Exemple :
\latexcode{\\color\{red\}mise en couleur rouge}
- Commande identique à la commande
\lstinline!code!
mais pré-configurée pour le langageXXX
. - Les parenthèses sont remplacés par un caractère de début et un caractère de fin (choix arbitraire mais identique).
- Tout ce qui est entre ces deux caractères est le code source à afficher.
- Elle s'utilise dans le corps d'un texte (ex: un phrase).
- Les caractères spéciaux tels que
\
,{̀
et}
doivent être préfixés d'un\
ie.\\
,\{
et\}
. - Cette commande fonctionne également dans les tableaux.
- Example :
\latexcodeintab!\\color\{red\}mise en couleur rouge!
\latexcodeintab+\\color\{red\}mise en couleur rouge+
- Commande identique à
\lstinputlisting{file}
mais pré-configurée pour le langageXXX
. - Le paramètre est le chemin relatif du fichier dont le code doit être affiché.
- Exemple :
\latexsourcefile{main.tex}
- Environnement identique à
\begin{lstlisting} \end{lstlisting}
mais pré-configurée pour le langageXXX
. - Tout ce qui est défini entre le début et la fin de l'environnement est le code à afficher.
- Par défaut, les lignes sont numérotés
- Exemple :
\begin{latexsource}
\textbf{text mis en gras}
\end{latexsource}
Toutes ces commandes et environnements admettent un paramètre optionnel permettant de changer leur comportement. Pour le détail de ce que vous pouvez faire, consultez la documentation de listings
sur le CTAN.
\latexcode[basicstyle=\color{red}]{\\color\{red\}mise en couleur rouge}
\latexcodeintab[basicstyle=\color{red}]{\\color\{red\}mise en couleur rouge}
\latexsourcefile[basicstyle=\color{red}]{main.tex}
\begin{latexsource}[basicstyle=\color{red}]
\textbf{text mis en gras}
\end{latexsource}
Si pour une raison ou une autre vous étiez obligé de revenir à l'utilisation des commandes originales de listings
, vous pouvez obtenir le même aspect du résultat en spécifiant l'option :
-
style=polytech@lst@inline
pour le code inline (\lstinline
) et -
style=polytech@lst@base
pour les autres.
Les langages pour lesquels les commandes simplifiées ont été définies sont
Langage | Préfix des commandes |
---|---|
C | c |
C++ | cpp |
Java | java |
Bash | bash |
Make | make |
Javascript | javascript |
XML | xml |
SQL | sql |
PHP | php |
Python | python |
HTML | html |
Scilab | scilab |
Matlab | matlab |
LaTeX | latex |
JSON | json |
CSV | csv |
Le package listings
supporte de nombreux langages et vous pouvez même définir les règles de mise en forme pour votre propre langage (cf. manuel de listings).
Pour créer les commandes simplifiées pour un langage, il suffit d'utiliser la commande \newsourceformat{cpp}{C++}
. Dans cet exemple, cpp
est le préfixe utilisé pour les commandes et C++
est le nom du langage tel qu'il est connu par la package listings
.