Verbatim en couleur

Tout ce qui concerne l'utilisation ou l'installation de LaTeX.

Modérateur: gdm_tex

Règles du forum
Merci d'éviter le style SMS dans vos messages et de penser à utiliser la fonction Recherche avant de poster un message. Pour joindre des fichiers à vos messages, consulter ce sujet.
> Penser à utiliser les balises Code pour poster du code.

Verbatim en couleur

Messagepar zorba » Dimanche 26 Décembre 2010, 16:21

Bonjour,
je bute sur une erreur quand je souhaite placer une série de lignes de programme dans un verbatim et mettre l'ensemble sur un fond gris clai. J'ai une commande utilisateur qui m'installe les commandes pour ce fond de page, et j'insère mes autres commandes ensuite et out rort impeccable de la largeur souhaitée sur fond clair.
Le HIC, c'est quand je place du code entouré de begin{verbatim} **** en{verbatim}. J'obtiens une erreur de compilation que je ne sais pas traiter.
En utilisant AlgoBox, j'ai vu une façon de faire cette sortie, mais le code utilise des packages et des options de geometry que j'aimerai éviter d'utiliser.
Voici mon exemple, celui qui bloque:
Code: Tout sélectionner
\documentclass[a4paper,10pt]{article}
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage[frenchb]{babel}
\usepackage{amsmath,mathrsfs,amssymb}
\everymath{\displaystyle}
\usepackage{lipsum,xcolor,pst-eucl,pstricks-add,pst-fun,pst-tree}
\frenchbsetup{StandardLists=true}
\usepackage{enumitem}
\usepackage{ntheorem}
\usepackage{numprint}
\theorembodyfont{\upshape}
\usepackage{geometry,url}
\geometry{textwidth=130mm,textheight=260mm,top=2cm}

\usepackage[dvips]{graphicx}
%\usepackage[xcas,windows]{tablor}
\usepackage{cancel}
\usepackage{tablists-perso}
\usepackage{cellspace,eurosym,colortbl,slashbox}
\parindent=0pt
\AtBeginDocument{
  \abovedisplayshortskip=3pt
  \abovedisplayskip=3pt
  \belowdisplayshortskip=3pt
  \belowdisplayskip=3pt}

\newcounter{exo}
\newtheorem{tempexo}[exo]{Exercice}
\newenvironment{exo}[1][]{\begin{tempexo}\leavevmode\par\nobreak
\noindent\ignorespaces#1\par\nobreak\medskip}{\vspace{2mm} \hrule \vspace{2mm}\end{tempexo}}

\newsavebox{\boiteretournee}

\newenvironment{retourne}{%
  \par\textcolor{white}{Bla bla}\par\vspace{-\baselineskip}\nobreak
       \begin{lrbox}{\boiteretournee}%
       \begin{minipage}{0.95\textwidth}%
       \small\color{blue}%
    }{%
       \end{minipage}\end{lrbox}%
       \rotatebox{180}{%
       \usebox{\boiteretournee}%
       }%
    }

\newenvironment{rappels}[1][green]%[green]%
  {\begin{flushright}\small\slshape\color{#1}}%
  {\end{flushright}}

\def\siecle#1{\textsc{\romannumeral #1}\textsuperscript{e}~siècle}

% pour avoir des majuscules droites automatiquement

\DeclareMathSymbol{A}{\mathalpha}{operators}{`A}
\DeclareMathSymbol{B}{\mathalpha}{operators}{`B}
\DeclareMathSymbol{C}{\mathalpha}{operators}{`C}
\DeclareMathSymbol{D}{\mathalpha}{operators}{`D}
\DeclareMathSymbol{E}{\mathalpha}{operators}{`E}
\DeclareMathSymbol{F}{\mathalpha}{operators}{`F}
\DeclareMathSymbol{G}{\mathalpha}{operators}{`G}
\DeclareMathSymbol{H}{\mathalpha}{operators}{`H}
\DeclareMathSymbol{I}{\mathalpha}{operators}{`I}
\DeclareMathSymbol{J}{\mathalpha}{operators}{`J}
\DeclareMathSymbol{K}{\mathalpha}{operators}{`K}
\DeclareMathSymbol{L}{\mathalpha}{operators}{`L}
\DeclareMathSymbol{M}{\mathalpha}{operators}{`M}
\DeclareMathSymbol{N}{\mathalpha}{operators}{`N}
\DeclareMathSymbol{O}{\mathalpha}{operators}{`O}
\DeclareMathSymbol{P}{\mathalpha}{operators}{`P}
\DeclareMathSymbol{Q}{\mathalpha}{operators}{`Q}
\DeclareMathSymbol{R}{\mathalpha}{operators}{`R}
\DeclareMathSymbol{S}{\mathalpha}{operators}{`S}
\DeclareMathSymbol{T}{\mathalpha}{operators}{`T}
\DeclareMathSymbol{U}{\mathalpha}{operators}{`U}
\DeclareMathSymbol{V}{\mathalpha}{operators}{`V}
\DeclareMathSymbol{W}{\mathalpha}{operators}{`W}
\DeclareMathSymbol{X}{\mathalpha}{operators}{`X}
\DeclareMathSymbol{Y}{\mathalpha}{operators}{`Y}
\DeclareMathSymbol{Z}{\mathalpha}{operators}{`Z}

\newcommand{\et}{\llap{et \quad\,\,}}

\renewcommand{\textbf}[1]{\begingroup\bfseries\mathversion{bold}#1\endgroup}
\newcommand{\resultats}[2][blue]{{\centering{\textcolor{#1}{\fbox{#2}}}}}
\newcommand{\resul}[1]{\hspace{\stretch{1}}\textcolor{red}{$#1$}}
\newcounter{parties}
\newenvironment{parties}{\begin{list}
  {\hspace{\labelsep}\bfseries Partie \Alph{parties} --}
  {\leftmargin=0pt
   \labelwidth=0cm
   \usecounter{parties}
   \def\makelabel##1{##1}}}{\end{list}}

\newcounter{questions}
\renewcommand{\thequestions}{\textbf{\arabic{questions})}}
\newenvironment{questions}{\begin{list}
  {\hspace{\labelsep}\bfseries\arabic{questions})}
  {\leftmargin=0pt
   \labelwidth=0cm
   \usecounter{questions}
   \def\makelabel##1{##1}}}{\end{list}}

\newcounter{sousquestions}
\renewcommand{\thesousquestions}{\textbf{\alph{sousquestions})}}
\newenvironment{sousquestions}{\begin{list}
  {\hspace{\labelsep}\bfseries\alph{sousquestions})}
  {\leftmargin=0pt
   \labelwidth=0cm
   \usecounter{sousquestions}
   \def\makelabel##1{##1}}}{\end{list}}
\newenvironment{regroup}{\left\lbrace\def\arraystretch{1.2}
  \begin{array}{@{}l@{}}}{\end{array}\right.}   

\newcommand{\manus}[1]{\ensuremath {\mathscr{\MakeUppercase{#1}}}}
\newcommand{\grastab}[1]{\ensuremath {\mathbb{#1}}}
\newcommand{\AO}[2]{\ensuremath{(\overrightarrow {#1},\,\overrightarrow{#2})}}
\newcommand{\intervalle}[2]{\ensuremath {\left[#1\,;#2\right]}}
\newcommand{\intervallefo}[2]{\ensuremath{\left[#1\,;#2\right[}}
\newcommand{\intervalleof}[2]{\ensuremath{\left]#1\,;#2\right]}}
\newcommand{\intervalleoo}[2]{\ensuremath{\left]#1\,;#2\right[}}
\def\R{{\ensuremath{\mathbb R}}\xspace} % les réels
\def\Q{{\ensuremath{\mathbb Q}}\xspace}  % les rationnels
\def\Z{{\ensuremath{\mathbb Z}}\xspace}  % les entiers relatifs
\def\D{{\ensuremath{\mathbb D}}\xspace}  % les décimaux
\def\N{{\ensuremath{\mathbb N}}\xspace}  % les entiers naturels
\def\C{{\ensuremath{\mathbb C}}\xspace}  % les complexes
\newcommand{\V}{\ensuremath{\overrightarrow}}
\newcommand{\pscal}[2]{\ensuremath{\V{#1}\cdot \V{#2}}}
\newcommand{\Pm}{\ensuremath{P_{-1}}}
\newcommand{\pv}{\ensuremath{\,;\,}}
\pagestyle{empty}
\newcommand{\xa}[1]{{\scriptstyle #1}}
\newcommand{\xb}[1]{\textcolor{blue}{\scriptstyle #1}}
\newcommand{\xc}[1]{\ensuremath{ \scriptscriptstyle #1}}
\DeclareMathOperator{\e}{e}
\newcommand{\Cn}{\ensuremath{\manus{C}_n}\xspace}
\newcommand\I{\ensuremath{\textup{i}}\xspace}
\newcommand{\Conj}[1]{\ensuremath{\overline{ #1 }} \xspace}
\newcommand{\Mod}[1]{{\left \vert #1 \right \vert } \xspace}
\newcommand{\Reel}[1]{\ensuremath {\mathscr{R}\mathrm e #1}}
\newcommand{\Ima}[1]{\ensuremath {\mathscr{I}\mathrm m #1}}
\renewcommand{\Re}{\operatorname{\mathscr{R}e}}
\renewcommand{\Im}{\operatorname{\mathscr{I}m}}
\newcommand{\modulo}[1]{{\,\left [ #1 \right ] } \xspace}
\newcommand{\logoBAC}{%
\rotatebox{7}{$\underline{\kern0.15em\overline{\kern-0.05em\text{\fontencoding{T1}\color{red}\fontfamily{ugq}\selectfont
     \bfseries BAC}\kern0.25em}\kern-0.15em}\,\,$}%
}
\begin{document}
%\initablor
\newcount\hh
\newcount\mm
\mm=\time
\hh=\time
\divide\hh by 60
\divide\mm by 60
\multiply\mm by 60
\mm=-\mm
\advance\mm by \time
\def\hhmm{\number\hh\string:\ifnum\mm<10{}0\fi\number\mm}
\noindent \today\, à \hhmm\\
\jobname\\
\setlength{\arrayrulewidth}{0.5pt}
\setlength{\cellspacetoplimit}{1pt}
\setlength{\cellspacebottomlimit}{1pt}
%\renewcommand{\descriptionlabel}[1]{\normalfont #1}
\newenvironment{outerdesc}[1][blue]
  {\begin{description}[font=\normalfont\color{#1}]}
  {\end{description}}
\definecolor{ffccff}{rgb}{1,0.8,1}
%\definecolor{myCol}{rgb}{1,0.95,0.95}
\definecolor{bleupale}{cmyk}{0.10,0.00,0.00,0.00}
\definecolor{jaunepale}{cmyk}{0.00,0.00,0.20,0.00}
\definecolor{vertpale}{cmyk}{0.10,0.00,0.10,0.0}
\definecolor{rosepale}{cmyk}{0.00,0.10,0.10,0.0}
\definecolor{grispale}{cmyk}{0.10,0.10,0.10,0.0}


\begin{exo}[Belin Exo-025-p174  Tirage de trois entiers et probabilité Chap 12 Probabilités]

On tire trois nombres entiers au hasard $x$, $y$ et $z$ entre 1 et 10. On cherche à déterminer la probabilité pour que $xy>3z$. \'Ecrire un prgramme qui énumère \numprint{1000} tirages possibles et compte ceux qui vérifient la condition $xy>3y$. Un élève annonce que la probabilité d'obtenir un triplet qui vérifie la condition est $\dfrac{634}{\numprint{1000}}\cdot$ Confirmez-vous sa réponse?

\vspace{2mm} \hrule \vspace{2mm}

\begin{center}
\colorbox[gray]{0.95}{
\begin{minipage}{0.95\textwidth}
*********************\\
\begin{verbatim}
lllllll
*******
\end{verbatim}
ùùùùùùùùùùùùùùùùùùùùù
\end{minipage}
}
\end{center}
\end{exo}
%\nettoyer
\end{document}




Je remercie toute personne courageuse en ce lendemain de fête pour l'aide apportée.
Bonne soirée à tous.
Pierre
Dernière édition par zorba le Dimanche 26 Décembre 2010, 17:12, édité 1 fois.
On se lasse de tout, excepté d'apprendre. Virgile
zorba
Giga-utilisateur
 
Messages: 522
Inscription: Lundi 01 Juin 2009, 10:35
Statut actuel: Actif et salarié

Publicité

Re: Verbatim en couleur

Messagepar rebouxo » Dimanche 26 Décembre 2010, 16:49

Le verbatim c'est fait pour qu'il n'y ai pas d'interprétation du code, donc...
As-tu essayé l'extension listing qui pour la mise en forme des programmes informatiques est certainement ce qui se fait de mieux.

Olivier
A line is a point that went for a walk. Paul Klee
Par solidarité, pas de MP
rebouxo
Modérateur
 
Messages: 6743
Inscription: Mercredi 15 Février 2006, 13:18
Localisation: le havre
Statut actuel: Actif et salarié | Enseignant

Re: Verbatim en couleur

Messagepar zorba » Dimanche 26 Décembre 2010, 17:45

Bonsoir,
merci d'avoir répondu avec l'idée d'utiliser le package listings. Je me lance et reviendrai sur ce fil un pu plus tard, j'aurai probablement des points à approfondir ou à me faire préciser, la documentation fait quand même 58 pages.
Pierre
On se lasse de tout, excepté d'apprendre. Virgile
zorba
Giga-utilisateur
 
Messages: 522
Inscription: Lundi 01 Juin 2009, 10:35
Statut actuel: Actif et salarié

Re: Verbatim en couleur

Messagepar Francky » Dimanche 26 Décembre 2010, 17:57

ceci devrait t'aider.
Code: Tout sélectionner
\usepackage{listings}
\lstset{%
language=[LaTeX]TeX,
basicstyle=\ttfamily,       % the size of the fonts that are used for the code
numbers=left,                   % where to put the line-numbers
numberstyle=\footnotesize,      % the size of the fonts that are used for the line-numbers
stepnumber=1,                   % the step between two line-numbers. If it's 1 each line
                                % will be numbered
numbersep=5pt,                  % how far the line-numbers are from the code
%backgroundcolor=\color{gray},  % choose the background color. You must add \usepackage{color}
showspaces=false,               % show spaces adding particular underscores
showstringspaces=false,         % underline spaces within strings
showtabs=false,                 % show tabs within strings adding particular underscores
frame=single,                   % adds a frame around the code
tabsize=2,                   % sets default tabsize to 2 spaces
captionpos=b,                   % sets the caption-position to bottom
breaklines=true,                % sets automatic line breaking
breakatwhitespace=false,        % sets if automatic breaks should only happen at whitespace
title=\lstname,                 % show the filename of files included with \lstinputlisting;
                                % also try caption instead of title
escapeinside={*!}{!*},         % if you want to add a comment within your code
%morekeywords={*,...}            % if you want to add more keywords to the set
framexleftmargin=5mm, frame=shadowbox, rulesepcolor=\color{SkyBlue},
%commentstyle=\color{blue}\small,
%keywordstyle=\ttfamily\bfseries,
%identifierstyle=\ttfamily\bfseries,
literate={é}{{\'e}}1 {è}{{\`e}}1 {à}{{\`a}}1 {ç}{{\c{c}}}1 {œ}{{\oe}}1 {ù}{{\`u}}1
{É}{{\'E}}1 {È}{{\`E}}1 {À}{{\`A}}1 {Ç}{{\c{C}}}1 {Œ}{{\OE}}1 {î}{{\^i}}1
}% à compléter au besoin, pour éviter les soucis d'accents
% listings n'est pas cool avec les caractères spéciaux.
%


Utilisation :
Code: Tout sélectionner
\begin{lstlistings}

ton code
---même avec du verbatim--
blabla
*! \tacommande !*

\end{lstlistings}


tu peux alors même insérer une commande qui sera "effectuée"
si elle est entre les caractères d'échappement *! et !* . (option modifiable)
Linux Mint | TeXLive - TexMaker - asymptote | Python3 & C - Geany - Project Euler - SPOJ
Entia non sunt multiplicanda praeter necessitatem
Francky
Giga-utilisateur
 
Messages: 683
Inscription: Dimanche 11 Avril 2010, 13:01
Statut actuel: Actif et salarié | Enseignant

Re: Verbatim en couleur

Messagepar zorba » Lundi 27 Décembre 2010, 04:59

Merci pour ce dernier exemple.
Je me rends compte que l'on ne peut pas mettre, en standard, du code dans un environnement verbatim sur un fond gris pâle et qu'il faut passer par listings pour le faire,
ou dit autrement, on ne peut pas mettre du verbatin sur un fond coloré, par exemple avec un
{colorbox{couleur}{\begin{verbatim}**** kkkk uuuu \end{verbatim}}}.
Je trouve cette limitation curieuse.
Je vais approfondir l'exemple produit par AlgoBox pour voir comment l'insérer dans mes documents qui deviennent de plus en plus touffus.
Bonne journée.
On se lasse de tout, excepté d'apprendre. Virgile
zorba
Giga-utilisateur
 
Messages: 522
Inscription: Lundi 01 Juin 2009, 10:35
Statut actuel: Actif et salarié

Re: Verbatim en couleur

Messagepar projetmbc » Lundi 27 Décembre 2010, 09:18

Bonjour,
j'ai retrouvé ceci dans ma liste de "snippets" :
Code: Tout sélectionner
% Source : http://forum.mathematex.net/latex-f6/un-probleme-avec-verbatim-t11259.html#p109458

    \documentclass{article}
    \usepackage[T1]{fontenc}
    \usepackage[utf8]{inputenc}
    \usepackage[a4paper,margin=3cm]{geometry}
    \usepackage{fancyvrb}
    \usepackage{tikz}
    \usetikzlibrary{calc}
    \usepackage{xcolor}
    \usepackage[frenchb]{babel}

    \newenvironment{code}
       {\SaveVerbatim{VerbEnv}}
       {\endSaveVerbatim\parindent0pt
       \begin{tikzpicture}
       \node [fill=gray!10,rectangle,inner xsep=10pt,inner ysep=10pt] (box)
          {\begin{minipage}{\dimexpr\textwidth-21.66pt\relax}
          \UseVerbatim{VerbEnv}
          \end{minipage}
          };
       \node[text=white,fill=gray,rectangle, shading=ball, ball color=gray, above right] (title) at ($(box.north west)+(-0.03,0)$){\textbf{CODE}};
       \draw[color=gray!50!black,very thick] (box.north west)--(box.south west)--(box.south east);
       \end{tikzpicture}
       }

    \begin{document}

    \begin{code}
    truc too much $1=1$%
    &=#% \relax
    \end{code}

    \end{document}
projetmbc
Péta-utilisateur
 
Messages: 1895
Inscription: Samedi 29 Décembre 2007, 00:58
Statut actuel: Actif et salarié | Enseignant

Re: Verbatim en couleur

Messagepar Francky » Lundi 27 Décembre 2010, 10:43

zorba a écrit:on ne peut pas mettre ...
{colorbox{couleur}{\begin{verbatim}**** kkkk uuuu \end{verbatim}}}.
Je trouve cette limitation curieuse.

En effet, mais je crois qu'on peut changer la couleur du texte, c'est déjà ça.

J'utilise
Code: Tout sélectionner
Du texte en noir,
{\color{ma-couleur}{\verb!mon-code!}} % code en couleur
Retour au texte en noir


Ça permet de faire ressortir le code,
mais impossible (pour moi) d'en faire une commande,
\verb y est interdit.
Je dois coller le truc à chaque fois.
Linux Mint | TeXLive - TexMaker - asymptote | Python3 & C - Geany - Project Euler - SPOJ
Entia non sunt multiplicanda praeter necessitatem
Francky
Giga-utilisateur
 
Messages: 683
Inscription: Dimanche 11 Avril 2010, 13:01
Statut actuel: Actif et salarié | Enseignant

Re: Verbatim en couleur

Messagepar un bon petit » Lundi 27 Décembre 2010, 19:31

Francky a écrit:Ça permet de faire ressortir le code,
mais impossible (pour moi) d'en faire une commande,
\verb y est interdit.
Je dois coller le truc à chaque fois.

On peut facilement se servir du \verb existant pour créer une commande \colorverb qui affiche du "verb" en couleur :
Code: Tout sélectionner
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{xcolor}
\makeatletter
\newcommand\colorverb{%
   \@ifstar{\let\next@colorverb\@sverb\@colorverb}
   {\let\next@colorverb\@verb\@colorverb}}
\newcommand\@colorverb[1][black]{%
   \relax\ifmmode\hbox\else\leavevmode\null\fi
   \bgroup
   \color{#1}%
   \verb@eol@error \let\do\@makeother \dospecials
   \verbatim@font\@noligs
   \next@colorverb}
\makeatother
\begin{document}
\tracingonline=1
Voici du verb en couleur : \colorverb[red]!\verb en rouge!

Il y a aussi \colorverb*[blue]/du bleu étoilé ^_\/ puis par défaut \colorverb-du noir ###- !
\end{document}
un bon petit
Giga-utilisateur
 
Messages: 627
Inscription: Vendredi 12 Juin 2009, 21:35
Localisation: Chambéry
Statut actuel: Actif et salarié | Enseignant

Re: Verbatim en couleur

Messagepar Francky » Lundi 27 Décembre 2010, 20:54

Merci, terrible.
Linux Mint | TeXLive - TexMaker - asymptote | Python3 & C - Geany - Project Euler - SPOJ
Entia non sunt multiplicanda praeter necessitatem
Francky
Giga-utilisateur
 
Messages: 683
Inscription: Dimanche 11 Avril 2010, 13:01
Statut actuel: Actif et salarié | Enseignant

Re: Verbatim en couleur

Messagepar projetmbc » Samedi 25 Juin 2011, 20:33

Bonsoir,
je remonte ce post pour savoir s'il serait possible d'ajouter deux petites fonctionnalités.
  1. Avoir la possibilité d'ajouter une couleur de fond.
  2. Avoir la possibilité de mettre en gras.
projetmbc
Péta-utilisateur
 
Messages: 1895
Inscription: Samedi 29 Décembre 2007, 00:58
Statut actuel: Actif et salarié | Enseignant

Re: Verbatim en couleur

Messagepar un bon petit » Dimanche 26 Juin 2011, 08:54

Avec le package listings, ce genre de fioritures est très simple via la commande \lstinline
un bon petit
Giga-utilisateur
 
Messages: 627
Inscription: Vendredi 12 Juin 2009, 21:35
Localisation: Chambéry
Statut actuel: Actif et salarié | Enseignant

Re: Verbatim en couleur

Messagepar projetmbc » Dimanche 26 Juin 2011, 10:10

Oui mais je ne vais pas utiliser les capacités de coloration de listing qui sont limitées à mon goût. Le souci est que je n'ai pas de caractère d'échappement pour les listings en ligne...
Dernière édition par projetmbc le Dimanche 26 Juin 2011, 10:49, édité 1 fois.
projetmbc
Péta-utilisateur
 
Messages: 1895
Inscription: Samedi 29 Décembre 2007, 00:58
Statut actuel: Actif et salarié | Enseignant

Re: Verbatim en couleur

Messagepar projetmbc » Dimanche 26 Juin 2011, 10:15

C'est bon, j'ai trouvé comment faire...
projetmbc
Péta-utilisateur
 
Messages: 1895
Inscription: Samedi 29 Décembre 2007, 00:58
Statut actuel: Actif et salarié | Enseignant


Retourner vers LaTeX

 


  • Articles en relation
    Réponses
    Vus
    Dernier message

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 7 invités