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

Programmation (La)TeX avancée Discussion :

ajout automatique de guillemets aux environnements quote et quotation


Sujet :

Programmation (La)TeX avancée

  1. #1
    Candidat au Club
    Homme Profil pro
    doctorant SHS
    Inscrit en
    Février 2015
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : doctorant SHS
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2015
    Messages : 6
    Points : 3
    Points
    3
    Par défaut ajout automatique de guillemets aux environnements quote et quotation
    Bonjour à vous,

    Ceci est mon premier message sur ce forum.

    Je suis doctorant en sciences humaines et je découvre Latex. Je m'y mets avec acharnement depuis une semaine, mais n'ayant pas de compétences poussées en programmation ou autre vu ma discipline, quelques points de détail me manquent.

    Voici mon problème :

    Lorsque je fais des citations, Je dois combiner plusieurs commandes en même temps, ce que je ne trouve pas élégant ni rapide :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    \begin{quote} \og Blablabla \fg \end{quote}
    J'utilise déjà le package csquote qui me permet d'utiliser la commande \enquote{}, qui ajoute automatiquement des guillemets pour les citations courtes dans le corps du texte au lieu de \og et \fg .

    J'ai créé deux nouveaux environnements pour ajouter automatiquement des guillemets :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    \newenvironment{cit}{\begin{quote} \og}{\fg \end{quote}}
    \newenvironment{citlong}{\begin{quotation} \og}{\fg \end{quotation}}
    Mais plutôt que d'en créer de nouveaux, j'aurais voulu utiliser \renewenvironment pour modifier le comportement de quote et quotation. Mais je ne sais pas le faire, car si je faisais, par exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    \renewenvironment{quote}{\begin{quote} \og}{\fg \end{quote}}
    ça ferait un truc circulaire, ou autoréférentiel, ou on-l'appelle-comme-on-veut, où "quote" est à la fois la nouvelle définition et à l'intérieur de l'ancienne définition, donc ça ne marcherait pas. Du coup je ne sais pas comment écrire cette commande. (idem pour quotation).

    Comment écrire mon renewenvironment ?

    Je n'ai pas fait d'ECM car je n'ai pas de message d'erreur à interpréter et juste besoin d'une ligne de code, mais si vous en voulez un, n'hésitez pas

    Merci d'avance,

    Malo

  2. #2
    Expert éminent sénior

    Avatar de -Nikopol-
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2013
    Messages
    2 174
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Haute Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2013
    Messages : 2 174
    Points : 11 289
    Points
    11 289
    Billets dans le blog
    5
    Par défaut
    Bonsoir,
    Je suis doctorant en sciences humaines et je découvre LaTeX
    Peut être connais tu ce livre ? LaTeX appliqué aux sciences humaines. Si non, c'est un excellent ouvrage très bien écrit et tu y trouveras une mine d'informations dans ton domaine. Une version papier est aussi en vente sur le site de l'auteur.

    Sinon concernant ton problème, le code suivant devrait, si j'ai bien compris, répondre à ta question.
    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
    \documentclass[10pt,a4paper]{article}
    \usepackage[utf8]{inputenc}
    \usepackage[francais]{babel}
    \usepackage[T1]{fontenc}
     
    \let\oldquote\quote
    \let\endoldquote\endquote
    \renewenvironment{quote}{%
      \oldquote\og 
    }%
    {\fg{}\endoldquote}
     
    \let\oldquotation\quotation
    \let\endoldquotation\endquotation
    \renewenvironment{quotation}{%
      \oldquotation\og
    }%
    {\fg{}\endoldquotation}
     
    \usepackage{lipsum}
    \begin{document}
    \lipsum[1]
    \begin{quote}
    \lipsum*[3]
    \end{quote}
    \lipsum[2]
    \begin{quotation}
    \lipsum*[3]
    \end{quotation}
    \lipsum[3]
    \end{document}

  3. #3
    Candidat au Club
    Homme Profil pro
    doctorant SHS
    Inscrit en
    Février 2015
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : doctorant SHS
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2015
    Messages : 6
    Points : 3
    Points
    3
    Par défaut
    Bonjour :

    Finalement j'ai fait trois commandes complètes pour résoudre ces problèmes, les combiner avec la fonction \cite, et avoir une présentation telle que je la voulais.

    Les voici si elles peuvent servir à d'autres :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    \newcommand{\ka}[3]{\emph{\enquote{#3}} (\cite[#1]{#2})}
    \newcommand{\kb}[3]{\begin{quote} \begin{singlespace} \smaller \og {\itshape  #3} \fg 
    \begin{flushright} \cite[#1]{#2} \end{flushright} \end{singlespace} \end{quote}} % à continuer
    \newcommand{\kc}[3]{\footnote{\begin{quote} \begin{singlespace} \smaller  \og {\itshape  #3} \fg
    \begin{flushright} \smaller \cite[#1]{#2} \end{flushright} \end{singlespace} \end{quote}}}
    Dans le texte, j'écris les choses comme ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Comme le disait ce grand Broudic, \ka{200}{BROUDIC1995}{Bonjour les amis !}. Il avait tellement raison !\kc{133}{BROUDIC1995}{Bonjour bonjour bonjour.}
     
    \kb{165}{BROUDIC1995}{Bonjour bonjour bonjour.}
    • ka sert pour les citations dans le texte, elle reprend \enquote du package csquote, ajoute l'italique et la référence.
    • kb sert pour les blocs de texte dans le corps de la page, elle ajoute les guillemets, rétrécit le texte, met en italique, réduit l'interligne.
    • kc fait comme kb mais en mettant la citation en note de bas de page.

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

Discussions similaires

  1. [CMD] Ajout du repertoire courant aux path d'environnement
    Par pepito3364 dans le forum Scripts/Batch
    Réponses: 2
    Dernier message: 16/09/2014, 15h27
  2. Ajout automatique de quotes dans une clause IN
    Par fabrices77 dans le forum Requêtes
    Réponses: 2
    Dernier message: 16/03/2013, 19h41
  3. TValueListEditor: Ajout automatique d'une ligne vide
    Par Patrick Seuret dans le forum C++Builder
    Réponses: 3
    Dernier message: 24/06/2005, 12h16
  4. Réponses: 5
    Dernier message: 23/06/2005, 10h18
  5. Ajout automatique de ressources
    Par Caotic dans le forum JBuilder
    Réponses: 2
    Dernier message: 20/08/2003, 14h57

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