Forum Programmation.autre Ecriture class (classe) Latex -- passage option -- style

Posté par  (site web personnel) .
Étiquettes : aucune
0
17
mar.
2009
Bonjour,

Je suis en train d'écrire une classe Latex d'aide a la composition de CV et comme je suis débutant dans cette discipline (l'écriture de classes, pas latex) j'éprouve quelques difficultés a comprendre les subtiles mécanismes qui anime cet outil fabuleux.

J'ai bien essayé de chercher de la documentation en anglais et en français a ce sujet je ne trouve pas les informations simples que je cherche (j'ai lu le clsguide).

L'idée c'est que je voudrais passer des arguments de configurations pour définir des paramètres qui seront global (ou globaux). Par exemple je voudrais que l'on puisse choisir la série et la couleur de la police pour les sections du document.
L'autre chose c'est que je voudrais définir des styles différents et que en fonction de ce style l'aspect général du document change (cvClassic.sty, cvModern.sty, cvFancy.sty).

Pour l'instant j'ai compris le mécanisme des fonctions telles que:

\newcommand*{\firstname}[1]{\def\firstname{#1}}

qui peuvent ensuite être réutilisées par l'utilisateur (Auteur) avec la commande : \firstname. (je devrais peut être d'ailleurs bloquer cette fonction pour qu'elle ne soit utilisable que dans la classe..?). J'ai aussi compris le \newcommand, \renewcommand.

Maintenant ce que je voudrais faire c'est par exemple :

\myclassSetup{colorOne=black, colorTwo=Orange,style=cvModern,font=times}

Certaines de ces fonctions seraient définies dans la classe ezcv.cls comme par exemple les couleurs ou les fontes mais d'autres comme l'allure des sections seraient elles définies dans les feuilles de style *.sty.

Je ne cherche pas a ce qu'on fasse le boulot pour moi, je voudrais vraiment comprendre comment ça fonctionne.

Merci d'avance pour votre aide.

Olivier
  • # fu2 FCTT...

    Posté par  (site web personnel) . Évalué à 4.

    Bonjour,

    Pour avoir rapidement des réponses à de telles questions sur (La)TeX, il est sans doute préférable d'aller sur FCTT, <news:fr.comp.text.tex> et ses archives Google Groups...

    La définition de \firstname n'est pas tout à fait celle que tu cites, mais
    ~ $ grep -r '\\newcommand.*\\firstname' /usr/share/texmf*
    /usr/share/texmf-texlive/tex/latex/moderncv/moderncv.cls:\newcommand*{\firstname}[1]{\def\@firstname{#1}}
    et un autre grep bourrin n'a pas trouvé un seul exemple de ligne à la \newcommand*{\machin}[1]{\def\machin{#1}} --- (\def est plus ou moins l'équivalent TeX de la commande LaTeX \newcommand).

    Un fichier *.sty est un « package », plus général qu'une feuille de style, c'est plutôt une extension, module ou plugin quelconque.

    Pour des options à la clef=valeur, regarde du côté de xkeyval :
    texdoc xkeyval

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.