Outils pour utilisateurs

Outils du site


issue50:c_c

Before I begin this month's article, I would like to share two of John Niendorf's uses for gm (thanks for sharing them!). They are: alias imgresize='gm mogrify -resize 640×480 *.jpg *.JPG' alias frameall='gm mogrify -mattecolor yellow -frame 5×5+0+5 *.JPG *.jpg *.jpeg *.png' These aliases could be either pasted into your .bashrc file, or to a dedicated aliases file. The upper command resizes all the jpeg files to 640 x 480, and the second one adds a frame around all jpeg and png files. Now, on to this month's article. As some of you may know, typing mathematical formulae (in lectures, or classes, or for any other reason) within programs such as OpenOffice or LibreOffice is not the easiest thing in the world. Especially when you start getting into set theory or other advanced mathematical concepts with Greek letters, symbols like “for all”, and so forth. For these sorts of things, I highly recommend using LaTeX (see Issue 11 for a basic introduction to LaTeX). In this article, I will be introducing you to some math packages and some useful tips and tricks for formatting mathematical formulae nicely. As for software, I'm quite fond of Texmaker, and the texlive packages offered in the official Ubuntu repositories should include all the packages I refer to here.

Avant de commencer cet article, j'aimerais partager deux des façons dont John Niendorf utilise gm (avec mes remerciements !). Les voici :

alias imgresize='gm mogrify -resize 640×480 *.jpg *.JPG'

alias frameall='gm mogrify -mattecolor yellow -frame 5×5+0+5 *.JPG *.jpg *.jpeg *.png'

Vous pourriez coller ces alias soit dans votre fichier .bashrc soit dans un fichier dédié aux alias. La commande du dessus redimensionne tous les fichiers jpeg à 640×480 et l'autre rajoute un cadre autour de tous les fichiers jpeg et png.

Et maintenant passons à l'article de ce mois. Comme certains d'entre vous le savent peut-être, la saisie des formules mathématiques (pendant des cours magistraux ou en séminaire ou pour n'importe quelle raison) à l'intérieur de programmes comme OpenOffice ou Libreoffice n'est pas la chose la plus facile au monde. Surtout lorsque vous abordez la théorie des ensembles ou d'autres concepts mathématiques avancés avec des lettres grecques, des symboles comme « pour tout » et ainsi de suite. Pour ce genre de choses, je recommande vivement l'utilisation de LaTeX, car il sait bien formater les formules mathématiques (cf. le numéro 11 pour une présentation de base de LaTeX). Dans cet article, je vais vous présenter quelques paquets mathématiques et quelques trucs et astuces utiles pour bien formater des formules mathématiques. Quant aux logiciels, j'aime bien Texmaker ; les paquets texlive proposés dans les dépôts officiels Ubuntu devraient comprendre tous les paquets mentionnés ici.

Document Preamble The preamble is all the text included before the \begin{document} line in Latex. This includes document settings, headers, footers, package imports, and package settings. My typical math documents contain the following packages: tikz (for diagrams/graphs, for which I load the decorations.markings tikz library) amsmath – offers enhancements to all basic mathematical functionality amsfonts – offers special math formatting (math calligraphy (\mathcal{}), math block text (\mathbb{}), etc.) amssymb – offers the ability to display numbered equations, in-line math, etc. hyperref (when using a table of contents) – Allows the creation of click-able links in TeX documents.

Préambule du document

Le préambule c'est, en LaTeX, tout le texte saisi avant la ligne \begin{document}. Cela comprend les paramètres du document, les en-têtes, les pieds de pages, l'import de paquets et les paramètres des paquets. Les documents mathématiques typiques que je crée contiennent les paquets suivants :

tikz (pour les diagrammes/graphiques, pour lequel je charge la bibliothèque decorations.markings tikz) ; amsmath – propose des améliorations pour toutes les fonctions mathématiques de base ; amsfonts – propose des formatages spéciaux pour les maths (calligraphie mathématique (\mathcal{}), bloc de texte mathématique (\mathbb{}), etc.) ; amssymb – propose la capacité d'afficher des équations numérotées, des maths en ligne, etc. hyperref (lorsque vous utilisez une table des matières) – permet la création de liens cliquables dans les documents TeX.

Below is an actual preamble that I use for my Linear Algebra notes (the document section consists of only two include statements – and the references for utf8 and ngerman are because my lecture is in German). TikZ is probably the most complicated package to use, so I will cover it first. The following is the code used to create graph A: \begin{tikzpicture}[node distance=2cm, auto] \node (1) {$\hat{1}$}; \node (2) [right of = 1] {$\hat{2}$}; \node (3) [below of = 2] {$\hat{3}$}; \draw[decoration={markings,mark=at position 1 with {\arrow[ultra thick]{>}}},postaction={decorate}] (1) to node {1} (2); \draw[decoration={markings,mark=at position 1 with {\arrow[ultra thick]{>}}},postaction={decorate}] (2) to node {3} (3); \draw[decoration={markings,mark=at position 1 with {\arrow[ultra thick]{>}}},postaction={decorate}] (3) to node {2} (1); \end{tikzpicture}

Vous trouverez ci-dessous le véritable préambule que j'utilise pour mes notes d’algèbre linéaire (la section document contient seulement deux instructions include - et les références à utf8 et ngerman existent parce que mon cours est en allemand).

TikZ est sans doute le paquet le plus compliqué à utiliser et je vais donc le traiter en premier. Ce qui suit est le code utilisé pour créer le graphique A :

\begin{tikzpicture}[node distance=2cm, auto]

\node (1) {$\hat{1}$};

\node (2) [right of = 1] {$\hat{2}$};

\node (3) [below of = 2] {$\hat{3}$};

\draw[decoration={markings,mark=at position 1 with {\arrow[ultra thick]{>}}},postaction={decorate}] (1) to node {1} (2);

\draw[decoration={markings,mark=at position 1 with {\arrow[ultra thick]{>}}},postaction={decorate}] (2) to node {3} (3);

\draw[decoration={markings,mark=at position 1 with {\arrow[ultra thick]{>}}},postaction={decorate}] (3) to node {2} (1);

\end{tikzpicture}

Graph A This code creates 3 nodes (named 1, 2 and 3). The information in the braces (“{}”) is the label for the node (what is displayed), so leaving it blank results in an empty node. The next three lines “\draw” create the lines between nodes (using the node names – which is in the normal brackets), and labelled again by what’s within the braces. Using the math packages to create and align equations: \begin{align*} (\mathbb{K}_1^1) & \alpha +(\beta + \gamma )= (\alpha + \beta)+\gamma
(\mathbb{K}_1^2) & \alpha + 0 = 0 + \alpha = \alpha
(\mathbb{K}_1^3) & \alpha \cdot -\alpha = -\alpha \cdot \alpha = 0
(\mathbb{K}_1^4) & \alpha + \beta = \beta + \alpha \end{align*} This results in the text shown below.

Graphique A

Ce code-ci crée 3 noeuds (appelés 1, 2 et 3). L'information entre les accolades (« {} ») est l'étiquette pour le noeud (ce qui est affiché), ainsi si on la laisse vierge nous avons comme résultat un noeud vide. Les trois lignes suivantes « /draw » créent les lignes entre les noeuds (en se servant du nom des noeuds, qui se trouve entre les crochets normaux), et sont étiquetés à nouveau par ce qui est entre les accolades.

En utilisant les paquets mathématiques pour créer et aligner des équations :

\begin{align*}

(\mathbb{K}_1^1) & \alpha +(\beta + \gamma )= (\alpha + \beta)+\gamma

(\mathbb{K}_1^2) & \alpha + 0 = 0 + \alpha = \alpha
(\mathbb{K}_1^3) & \alpha \cdot -\alpha = -\alpha \cdot \alpha = 0

(\mathbb{K}_1^4) & \alpha + \beta = \beta + \alpha

\end{align*}

Le texte qui en résulte se trouve ci-dessous.

The align* environment allows you to use tabbing characters (“&”) to align the text nicely. This is especially useful when doing a proof, and you want to align the equations at their equals signs. The \mathbb{} results in the blocked K. The “_” and “^” refers to sub and superset. If you have a super/subset that is longer than a single character, you will need to enclose it in braces. The \alpha, \beta, and \gamma refers to the Greek letters. The \cdot is a multiplication sign, the double backslashes denote line breaks, and the rest is self-explanatory. Other useful commands are things like: “\forall” (the upside-down A symbol) “\exists” (reversed E) “\in” (the curved e-symbol used when referring to sets) “\cup” (union symbol – set theory) “\cap” (intersection symbol – set theory) “\mathcal{}” (makes the letter in braces cursive – used by my professor when referring to a basis – a set of linearly independent vectors)

L'environnement align* vous permet d'utiliser des caractères de type tabulation (« & » pour aligner le texte joliment. C'est particulièrement utile quand vous faites une preuve et vous voulez aligner les équations aux signes égal. Le résultat du \mathbb{} est le K bloqué. Le « _ » et le « ^ » désignent l'indice et l'exposant. Si vous avez un ensemble indice/exposant plus long qu'un seul caractère, vous devrez le mettre entre des accolades. \alpha, \beta et \gamma désignent les lettres grecques. \cdot est un signe multiplier, les deux barres obliques inversées signifient des sauts de ligne et le reste est évident.

D'autres commandes utiles sont des trucs comme :

« \forall » (pour tout - le symbole A à l'envers) ; « \exists » (il existe - un E renversé) ; « \in » (un E courbé, utilisé lorsqu'on parle d'ensembles) ; « \cup » (symbole d'union dans la théorie des ensembles) ; « \cap » (symbole d'intersection dans la théorie des ensembles) ; « \mathcal{} » (transforme la lettre entre les accolades en cursive – utilisé par mon professeur quand il désigne un ensemble de vecteurs qui sont indépendants linéairement, c-à-d, une base de vecteurs).

I hope you've found this article useful. I could have covered more examples, but regardless of how many I covered, it would still suit only a small number of use-cases. As such, you should view these as examples of what you can do with LaTeX. See the further reading section for a link to a useful manual. If you've any questions, or requests, email me at lswest34@gmail.com. Please put the words Full Circle Magazine, FCM, or C&C in the subject line, so I don't overlook it. Further Reading: http://en.wikibooks.org/wiki/LaTeX – Wikibook covering a large amount of standard uses of LateX. For all other non-standard uses, a quick google search should suffice. http://sourceforge.net/projects/pgf/ - Included in the zip file (see the Downloads section) is a great manual for many uses of the TikZ package.

J'espère que vous aurez trouvé cet article utile. J'aurais pu traiter plus d'exemples, mais quel que soit leur nombre, cela serait adapté à seulement un petit nombre de cas d'usage. Ainsi, vous devriez penser à ceux-ci comme des exemples de ce que vous pouvez faire avec LaTeX. Voyez la section « Pour aller plus loin » pour le lien vers un manuel utile. Si vous avez des questions ou des requêtes, envoyez-moi un mail en anglais à lswest34@gmail.com. Veuillez mettre dans le champ « Objet », « Full Circle Magazine », « FCM » ou « C&C » pour être sûr que je le vois.

Pour aller plus loin : http://fr.wikibooks.org/wiki/LaTeX - C'est un Wikibook en français où sont traitées un grand nombre d'utilisations habituelles de LaTeX. Pour tous les autres usages, une recherche rapide sur Google devrait faire l'affaire. http://sourceforge.net/projects/pgf/ - dans le fichier zip se trouve un manuel génial expliquant beaucoup d'usages du paquet TikZ.

Pub Server Circle

Server Circle is a new question and answer site run by techies. Users with any level of experience can ask technical questions for free about anything server related, and receive answers from trusted experts, who are rated by the community. With time you can earn reputation points, and even financial rewards, by contributing your answers to questions from other people. http://www.servercircle.com

Server Circle est un nouveau site de questions et réponses géré par des experts en technologie.

Les utilisateurs de tout niveau peuvent poser gratuitement des questions techniques en rapport avec les serveurs. Ils recevront des réponses de la part d'experts de confiance notés par la communauté.

À la longue, vous pouvez gagner des points de réputation, et même des récompenses financières, en contribuant par vos réponses aux questions posées par d'autres personnes.

http://www.servercircle.com

NOTE: Server Circle is not affiliated with, nor endorsed by, Full Circle magazine.

N.B. Server Circle n'est ni affilié avec, ni approuvé par, le magazine Full Circle.

issue50/c_c.txt · Dernière modification : 2011/08/07 13:23 de fredphil91