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

Mathématiques - Sciences Discussion :

Encadrer du code avec tcolorbox et minted


Sujet :

Mathématiques - Sciences

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Décembre 2013
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2013
    Messages : 8
    Points : 5
    Points
    5
    Par défaut Encadrer du code avec tcolorbox et minted
    Bonjour,

    Je souhaiterais encadrer mes codes à l'aide du package tcolorbox de sorte que le cadre ait la largeur du code qu'il contient. Je sais que le package propose le mode de capture hbox pour faire cela et ça fonctionne très bien avec listings:
    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
    18
    19
    20
    21
    \documentclass[a4paper,oneside,12pt]{article}
    \usepackage{tcolorbox}
    \tcbuselibrary{listings,skins}
     
    \begin{document}
     
    % Boite de couleur standard, de largeur ajustée à la taille du code
    \begin{tcblisting}{listing only, hbox}
    from math import sin, exp
     
    def Suite(n):
        U = 3
        for k in range(n):
            U = sin(U)+1/(exp(U)+1)
        return U
     
    # Exemple
    Suite(13)
    \end{tcblisting}
     
    \end{document}
    Nom : AvecListings.PNG
Affichages : 3410
Taille : 35,6 Ko
    Mais avec minted, ça se gâte:
    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
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    \documentclass[a4paper,oneside,12pt]{article}
    \usepackage{tcolorbox}
    \tcbuselibrary{minted,skins}
     
    \begin{document}
     
    % Boite de couleur standard avec minted, sans hbox (fonctionne)
    \begin{tcblisting}{listing only, minted style = emacs, minted language = python}
    from math import sin, exp
    # Sans hbox
    def Suite(n):
        U = 3
        for k in range(n):
            U = sin(U)+1/(exp(U)+1)
        return U
     
    # Exemple
    Suite(13)
    \end{tcblisting}
     
    % Boite de couleur standard avec minted et hbox (ne fonctionne pas)
    \begin{tcblisting}{listing only, minted style = emacs, minted language = python, hbox}
    from math import sin, exp
    # Avec hbox 
    def Suite(n):
        U = 3
        for k in range(n):
            U = sin(U)+1/(exp(U)+1)
        return U
     
    # Exemple
    Suite(13)
    \end{tcblisting}
     
    \end{document}
    Nom : AvecMinted.PNG
Affichages : 3569
Taille : 28,1 Ko
    Voici enfin le log d'erreurs:
    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
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    ! LaTeX Error: Something's wrong--perhaps a missing \item.
     
    See the LaTeX manual or LaTeX Companion for explanation.
    Type  H <return>  for immediate help.
     ...                                              
     
    l.1 ...dchars=\\\{\}, ,tabsize=2,fontsize=\small ]
     
    Try typing  <return>  to proceed.
    If that doesn't work, type  X <return>  to quit.
     
     
    ! LaTeX Error: Something's wrong--perhaps a missing \item.
     
    See the LaTeX manual or LaTeX Companion for explanation.
    Type  H <return>  for immediate help.
     ...                                              
     
    l.1 ...dchars=\\\{\}, ,tabsize=2,fontsize=\small ]
     
    Try typing  <return>  to proceed.
    If that doesn't work, type  X <return>  to quit.
     
     
    ! LaTeX Error: Something's wrong--perhaps a missing \item.
     
    See the LaTeX manual or LaTeX Companion for explanation.
    Type  H <return>  for immediate help.
     ...                                              
     
    l.12 \end{Verbatim}
     
    Try typing  <return>  to proceed.
    If that doesn't work, type  X <return>  to quit.
     
     
    ! LaTeX Error: Something's wrong--perhaps a missing \item.
     
    See the LaTeX manual or LaTeX Companion for explanation.
    Type  H <return>  for immediate help.
     ...                                              
     
    l.12 \end{Verbatim}
     
    Try typing  <return>  to proceed.
    If that doesn't work, type  X <return>  to quit.
     
    )
    runsystem(del essaiMintedTcolor.out.pyg)...executed.
     
     
    Overfull \hbox (3913.37741pt too wide) in paragraph at lines 33--33
    Auriez-vous une idée de ce qui se passe et de comment y remédier?

  2. #2
    Rédacteur/Modérateur
    Avatar de Winnt
    Homme Profil pro
    budget et contrôle de gestion
    Inscrit en
    Décembre 2006
    Messages
    1 978
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France

    Informations professionnelles :
    Activité : budget et contrôle de gestion
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Décembre 2006
    Messages : 1 978
    Points : 4 130
    Points
    4 130
    Par défaut
    Bonsoir,

    La boîte pour laquelle vous avez un problème est-elle en bas de page ?
    Si tel est le cas essayez (afin de vérifier) d'insérer \newpage juste avant la boite.
    Si le problème persiste cela aura toujours éliminé le cas de la coupure de boîte.

    Par ailleurs, il me semble que les options doivent être de la forme option=valeur et non option = valeur (pas d'espace avant et après le signe égal).
    Winnt
    Merci de lire les règles du forum LaTeX et Qu'est ce qu'un ECM ?.
    N'hésitez pas à parcourir la FAQ la réponse y est peut-être déjà.
    Pensez au bouton si votre problème est résolu.


    C'est en Linuxant qu'on devient .... geek
    Et c'est en LateXant qu'on devient flemmard
    Mon blog tout neuf.
    Articles : présentation de la distribution Gentoo, Les index sous LaTeX et leur personnalisation.

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Décembre 2013
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2013
    Messages : 8
    Points : 5
    Points
    5
    Par défaut
    Merci pour votre réponse.
    J'ai essayé ce que vous proposez mais le problème est toujours là (sur la nouvelle page), le cadre est en fait trop large (comme sur mon image jointe dans le précédent message). De même l'élimination des espaces de part et d'autre du = n'y fait rien ici (j'ai l'habitude de mettre des espaces car ceux-ci sont souvent ignorés dans les affectations dans les langages de programmation, mais c'est vrai que ça aurait pu poser un problème ici). En fait le seul moyen que je trouve pour le moment avec minted est d'ajuster la largeur du cadre à la main avec, par exemple ici, width=7cm au lieu de capture=hbox (ou hbox) mais j'aimerais avoir un procédé automatique (un peu comme les varwitdh à la place des minipage).

  4. #4
    Rédacteur/Modérateur
    Avatar de Winnt
    Homme Profil pro
    budget et contrôle de gestion
    Inscrit en
    Décembre 2006
    Messages
    1 978
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France

    Informations professionnelles :
    Activité : budget et contrôle de gestion
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Décembre 2006
    Messages : 1 978
    Points : 4 130
    Points
    4 130
    Par défaut
    Bonsoir,

    Après avoir installé minted et fait un certain nombre de test.

    Il semble que hbox ne passe pas avec minted.

    Je pense que cela viens de minted car cela passe avec listings.
    Winnt
    Merci de lire les règles du forum LaTeX et Qu'est ce qu'un ECM ?.
    N'hésitez pas à parcourir la FAQ la réponse y est peut-être déjà.
    Pensez au bouton si votre problème est résolu.


    C'est en Linuxant qu'on devient .... geek
    Et c'est en LateXant qu'on devient flemmard
    Mon blog tout neuf.
    Articles : présentation de la distribution Gentoo, Les index sous LaTeX et leur personnalisation.

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Décembre 2013
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2013
    Messages : 8
    Points : 5
    Points
    5
    Par défaut
    Je pense que cela viens de minted car cela passe avec listings.
    Il me semble en effet. Merci d'avoir fait ces tests. Je me suis permis de m'adresser directement à l'auteur du package tcolorbox pour voir s'il propose une solution. Je vous tiens au courant si ça vous intéresse.

  6. #6
    Rédacteur/Modérateur
    Avatar de Winnt
    Homme Profil pro
    budget et contrôle de gestion
    Inscrit en
    Décembre 2006
    Messages
    1 978
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France

    Informations professionnelles :
    Activité : budget et contrôle de gestion
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Décembre 2006
    Messages : 1 978
    Points : 4 130
    Points
    4 130
    Par défaut
    Bonjour,

    Citation Envoyé par georgejean
    Je me suis permis de m'adresser directement à l'auteur du package tcolorbox pour voir s'il propose une solution. Je vous tiens au courant si ça vous intéresse.
    Je suis en effet particulièrement intéressé par la réponse.
    Winnt
    Merci de lire les règles du forum LaTeX et Qu'est ce qu'un ECM ?.
    N'hésitez pas à parcourir la FAQ la réponse y est peut-être déjà.
    Pensez au bouton si votre problème est résolu.


    C'est en Linuxant qu'on devient .... geek
    Et c'est en LateXant qu'on devient flemmard
    Mon blog tout neuf.
    Articles : présentation de la distribution Gentoo, Les index sous LaTeX et leur personnalisation.

  7. #7
    Futur Membre du Club
    Profil pro
    Inscrit en
    Décembre 2013
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2013
    Messages : 8
    Points : 5
    Points
    5
    Par défaut
    Voilà, il m'a répondu (réponse dans le lien de mon précédent message). minted est définitivement incompatible avec une hbox.

  8. #8
    Rédacteur/Modérateur
    Avatar de Winnt
    Homme Profil pro
    budget et contrôle de gestion
    Inscrit en
    Décembre 2006
    Messages
    1 978
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France

    Informations professionnelles :
    Activité : budget et contrôle de gestion
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Décembre 2006
    Messages : 1 978
    Points : 4 130
    Points
    4 130
    Par défaut
    Bonsoir,

    Citation Envoyé par georgejean
    minted est définitivement incompatible avec une hbox.
    Merci de cette information. C'est bien dommage.


    PS : pensez à cliquer sur le bouton si cette discussion est terminée.
    Winnt
    Merci de lire les règles du forum LaTeX et Qu'est ce qu'un ECM ?.
    N'hésitez pas à parcourir la FAQ la réponse y est peut-être déjà.
    Pensez au bouton si votre problème est résolu.


    C'est en Linuxant qu'on devient .... geek
    Et c'est en LateXant qu'on devient flemmard
    Mon blog tout neuf.
    Articles : présentation de la distribution Gentoo, Les index sous LaTeX et leur personnalisation.

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

Discussions similaires

  1. Comment linker avec odbc32.lib dans le code ? (avec gcc)
    Par _Audrey_ dans le forum Autres éditeurs
    Réponses: 3
    Dernier message: 06/11/2008, 17h40
  2. Réponses: 1
    Dernier message: 03/02/2006, 10h48
  3. Probleme en compilant le code avec C2.EXE ?!?!?
    Par angelevil dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 17/11/2005, 16h13
  4. help sur un petit code avec XMLHttpRequest et setTimeout
    Par grinder59 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 01/10/2005, 10h22
  5. [UML] génération de code avec omondo.uml
    Par RENAULT dans le forum Eclipse Java
    Réponses: 3
    Dernier message: 31/10/2003, 13h14

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