IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Mise en forme Discussion :

Commande \lstinline{} et couleur de fond


Sujet :

Mise en forme

  1. #1
    Membre régulier Avatar de Third Joker
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    Février 2009
    Messages
    145
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2009
    Messages : 145
    Points : 111
    Points
    111
    Par défaut Commande \lstinline{} et couleur de fond
    Bonjour,

    Je cherche à créer une macro, \codeline{}, qui me permette d'afficher un petit bout de code avec un fond gris (comme la balise [CODEINLINE] du forum).

    À l'aide du package listings, la commande \colorbox{lightgray}{\lstinline{blabla}} fonctionne sans souci.
    Mais évidemment, la macro \newcommand{\codeline}[1]{\setlength{\fboxsep}{0pt}\colorbox{lightgray}{\lstinline{#1}}} ne fonctionne pas. Comment doit-on la modifier pour qu'elle soit opérationnelle?

  2. #2
    Membre régulier Avatar de Third Joker
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    Février 2009
    Messages
    145
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2009
    Messages : 145
    Points : 111
    Points
    111
    Par défaut
    J'ai trouvé. Pour ceux que ça intéresse, la redéfinition de la commande \lstinline se trouve ici.

  3. #3
    Invité
    Invité(e)
    Par défaut
    Tu vois, en cherchant. Ceci dit, pourquoi charger un package aussi lourd que listings et surtout l'affreux tikz (qui fait environ 300 000 lignes de code tout de même pour un truc aussi simple) ?

    Le package newverb est très léger et permet des choses assez intéressantes.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    \documentclass{article}
    \usepackage{xcolor,newverbs}
    \makeatletter
    \newcommand*\codeline[1][lightgray]{%
    	\new@verbcommand{\expandafter\def\@gobble}\codeline@i
    	{\begingroup\setbox\z@\hbox\bgroup}
    	{\egroup\fboxsep2pt \colorbox{#1}{\box\z@}\endgroup}\codeline@i
    }
    \makeatother
    \begin{document}
    Bla bla bla \codeline|} ~ _*| et \codeline[blue!30]|#1^$^$| bla bla.
    \end{document}
    Dernière modification par Invité ; 28/08/2013 à 16h54.

  4. #4
    Membre régulier Avatar de Third Joker
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    Février 2009
    Messages
    145
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2009
    Messages : 145
    Points : 111
    Points
    111
    Par défaut
    Citation Envoyé par unbonpetit Voir le message
    Tu vois, en cherchant. Ceci dit, pourquoi charger un package aussi lourd que listings et surtout l'affreux tikz (qui fait environ 300 000 lignes de code tout de même pour un truc aussi simple) ?
    Ah ben tu sais moi je prends ce que je trouve

    Mais vu qu'en plus, le code proposé ne marche pas très bien, je suis ravi d'avoir une solution plus simple. Merci!

    Juste au cas où, comment fait-on pour écrire le caractère | avec cette commande? Si on ne peut pas c'est pas très grave, il y a peu de chances que j'en aies besoin, mais juste au cas où.

  5. #5
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par Third Joker Voir le message
    Si on ne peut pas c'est pas très grave, il y a peu de chances que j'en aies besoin, mais juste au cas où.
    C'est le même principe que la commande \verb.
    Le premier caractère qui la suit sert de délimiteur pour l'argument à surligner.

    Si tu as besoin de "|", tu choisis un autre délimiteur, par exemple "-".

  6. #6
    Membre régulier Avatar de Third Joker
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    Février 2009
    Messages
    145
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2009
    Messages : 145
    Points : 111
    Points
    111
    Par défaut
    Citation Envoyé par unbonpetit Voir le message
    C'est le même principe que la commande \verb.
    Le premier caractère qui la suit sert de délimiteur pour l'argument à surligner.

    Si tu as besoin de "|", tu choisis un autre délimiteur, par exemple "-".
    Ah génial! Je ne savais pas que le délimiteur était à choix, même pour la commande verb. Je croyais que les délimiteurs étaient définis ailleurs de manière fixe. Du coup c'est très pratique car le caractère | ne m'arrange pas beaucoup.

  7. #7
    Invité
    Invité(e)
    Par défaut
    Il n'y a même pas besoin de newverbs, c'est presque plus simple sans :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    \documentclass{article}
    \usepackage[T1]{fontenc}
    \usepackage[utf8]{inputenc}
    \usepackage{xcolor}
    \makeatletter
    \newcommand*\codeline[1][lightgray]{%
    	\def\codeline@i##1{%
    		\def\codeline@ii####1##1{\fboxsep2pt \colorbox{#1}{\ttfamily####1}\endgroup}%
    		\codeline@ii}%
    	\begingroup
    	\let\do\@makeother\dospecials\@noligs\@vobeyspaces
    	\codeline@i
    }
    \makeatother
    \begin{document}
    Bla bla bla \codeline|} ~ _*   | et \codeline[blue!30]-#1^$^$|- bla bla.
    \end{document}

  8. #8
    Membre régulier Avatar de Third Joker
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    Février 2009
    Messages
    145
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2009
    Messages : 145
    Points : 111
    Points
    111
    Par défaut
    Ben encore mieux, merci beaucoup!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. TDBGRID - Couleur de fond d'une seule cellule
    Par cgo dans le forum Bases de données
    Réponses: 5
    Dernier message: 11/09/2009, 10h16
  2. Couleur de fond cellule excel
    Par Grouik dans le forum API, COM et SDKs
    Réponses: 2
    Dernier message: 26/07/2004, 09h43
  3. Réponses: 4
    Dernier message: 23/06/2004, 14h30
  4. debutant : couleur de fond d'une application direct3D
    Par ptidrone dans le forum DirectX
    Réponses: 2
    Dernier message: 12/06/2004, 17h08
  5. Changer la couleur de fond de l'écran
    Par tnk dans le forum x86 16-bits
    Réponses: 5
    Dernier message: 19/01/2003, 01h37

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo