====== Comment créer une extension? ======

Il n'y a rien de particulièrement extraordinaire dans les commandes que vous utilisez lors de l'écriture d'une extension : 
  * vous regroupez simplement un ensemble de commandes ''\(re)newcommand'' et ''\(re)newenvironment''. La lecture de la question «  [[https://www.latex-fr.net/2_programmation/macros/makeatletter_et_makeatother|À quoi servent “\makeatletter” et “\makeatother” ?]] » pourra d'ailleurs vous éviter une erreur sur la gestion du caractère « @ » ;
  * vous les enregistrez en un fichier ''//mon-extension//.sty '' ;
  * et c'est fait ! 

Cependant, vos extensions pourront demander un peu plus de sophistication :
  * des informations sur les commandes <latex>\LaTeX</latex> utilisées pour cette tâche se trouvent dans le document « [[ctanpkg>clsguide|Class and package programming guide]] » (en PDF  [[texdoc>clsguide|ici]]) ;
  * une bonne connaissance de <latex>\TeX</latex> lui-même est importante et des livres comme le [[https://www.latex-fr.net/1_generalites/documentation/livres/documents_sur_tex|TeXbook]] ou [[https://www.latex-fr.net/1_generalites/documentation/livres/documents_sur_tex|TeX by topic]] sont ici précieux. Dès lors, il vous sera possible d'utiliser la source documentée de <latex>\LaTeXe</latex> comme matériel de référence. Cette source peut être obtenue en compilant le fichier « [[ctanpkg>source2e|source2e.tex]] » ou en consultant directement sa [[texdoc>source2e|version PDF]] ; 
  * les [[https://www.latex-fr.net/1_generalites/documentation/documents/documents_extensions/fichiers_sources_dtx|sources documentées]] (fichiers « dtx ») des extensions sont également une bonne aide.

-----
//Source :// [[faquk>FAQ-writecls|Learning to write LaTeX classes and packages]]

{{htmlmetatags>metatag-keywords=(LaTeX,documentation,classe,extension,écrire une classe,écrire une extension,créer une classe,créer une extension)
metatag-og:title=(Comment créer une extension)
metatag-og:site_name=(FAQ LaTeX francophone)
}}