111 lines
5.8 KiB
Markdown
111 lines
5.8 KiB
Markdown
# `Markdown` : premier tour.
|
|
|
|
## Qu'est-ce que `Markdown` ?
|
|
|
|
Le Langage `Markdown` est un *langage de balisage léger* c'est-à-dire un langage où est saisi un *code source* composé de texte *brut*, texte pouvant être ouvert avec tout éditeur ou traitement de textes, voire manipulé par des outils syntaxiques ou *parsers* en anglais.
|
|
|
|
## Quel est l'objectif de `Markdown` ?
|
|
|
|
Le but de ce langage est de faciliter la création de documents simples ou légèrement complexes en simplifiant la vie du créateur de document par une façon simple de saisir ce code source.
|
|
|
|
`Markdown` n'est pas un traitement de textes au sens commun du terme. Il ne se comporte pas comme `Word` de *Microsoft*, `Writer` de *Libreoffice* ou encore `Pages` de *Apple*, ce langage ne se comporte pas comme ces traitements de textes classés dans la famille des **wysiwyg**[^1] mais plutôt du **wyciwym**[^2] ;
|
|
[^1]: WYSIWYG : What You See Is What You Get
|
|
[^2]: WYCIWYM : What You Code Is What You Mean
|
|
il doit être compris comme un document qui contient des balises sémantiques, c'est-à-dire des marques indiquant le sens du texte écrit.
|
|
|
|
En découplant l'esthétique du sens, vous pouvez ainsi travailler sur le document plus librement, en réduisant le formatage au plus simple et en se concentrant sur le sens, puis ensuite, créer le document formaté. Ce découplage permet d'ailleurs d'autres aspects environnementaux intéressants, j'y reviendrai ultérieurement.
|
|
|
|
L'éditeur spécial markdown utilise un autre outil qu'il intègre de façon transparente pour l'utilisateur, ce que je désignerai par l'expression de *moteur de rendu*.
|
|
|
|
## Le matériel nécessaire pour travailler avec `Markdown` ?
|
|
|
|
Foncièrement, pour éditer du `Markdown` il suffit d'un simple éditeur de textes, puis de l'installation d'un moteur de rendu markdown, il existe pour tout type de plateforme vu l'engouement pour ce langage auprès de nombreux utilisateurs du milieu informatique.
|
|
|
|
*Petite anecdote* : J'utilise actuellement un simple éditeur de textes
|
|
|
|
Il s'est également développé des outils plus complets où via un partage de la fenêtre en deux zones différentes
|
|
|
|
### Sous Windows
|
|
|
|
* Éditeurs simples :
|
|
* Bloc Notes
|
|
* Éditeurs avec visualisateur intégré :
|
|
* Ghostwriter
|
|
* Typora
|
|
|
|
### Sous Mac OS
|
|
|
|
* Éditeurs simples :
|
|
* Éditeurs avec visualisateur intégré :
|
|
* Typora
|
|
|
|
### Sous Linux
|
|
|
|
* Éditeurs simples :
|
|
* emacs
|
|
* vi, vim, gvim, neovim,
|
|
* nano
|
|
* etc... (il existe des dizaines d'éditeurs simples)
|
|
* Leafpad
|
|
* Geany
|
|
* Mousepad
|
|
* GEdit
|
|
* Éditeurs avec visualisateur intégré :
|
|
* Typora
|
|
* ReText
|
|
* Ghostwriter
|
|
|
|
Les éditeurs de texte permettent de saisir du code, c'est à dire un texte fait de caractères bruts ou codés de façon totalement universelle. Un code écrit avec n'importe quel éditeur peut être ouvert avec n'importe quel autre ou un traitement de textes ...
|
|
|
|
### Markdown est environnement : un peu de légèreté.
|
|
|
|
L'informatique est connue pour être un secteur coûteux et *Extrêmement* polluant. Tout le monde n'a pas les moyens de se payer un ordinateur récent et puissant aussi souvent que les programmes les plus *en vogue*, mais nombre d'utilisateurs ont des ordinateurs un peu voire très âgés.
|
|
|
|
Grâce à ce type d'outil que sont les éditeurs **wyciwym** vous pouvez utiliser un ordinateur même hors d'âge pour composer le contenu ou sa plus grosse partie et compiler ensuite le rendu sur place ou sur un poste un peu plus puissant.
|
|
|
|
*Petite anecdote* : Je compose sur une machine de 12 ans d'âge où la seule modification a été d'augmenter la mémoire vive afin qu'il exécute un système récent.
|
|
|
|
# Les bases de `Markdown`.
|
|
|
|
Le langage `Markdown` sait prendre en charge des formatages simples, il peut ainsi travailler avec des emphases plus ou moins fortes, des listes numérotées ou non, des cases à cocher ou des tableaux élémentaires ainsi que l'insertion de liens ou d'images, mais aussi l'insertion de citations, de bouts de codes ou de listings informatiques et quelques spécificités. Ces syntaxes basiques peuvent être augmentées par l'ajout d'autres codes issus de langages différents, ceci sera traité à la partie idoine.
|
|
|
|
Dans cette partie j'exposerai les formatages basiques concernés. Il est important de comprendre qu'ici certains *mauvais* réflexes sont à perdre. Ainsi je ne parlerai pas d'italique mais d'emphase légère et je ne parlerai plus de gras mais d'emphase forte. Ces terminologies sont issues de la typographie classique, qu'on retrouve également dans d'autres langages tels que \TeX{}, \LaTeX{} ou CON\TeX{} par exemple.
|
|
|
|
Avant de poursuivre, notez que `Markdown` est un langage qui a été développé un peu par à-coups, son côté minimaliste et sa licence libre en a fait un langage *forké*, il existe de nombreuses implémentations de `Markdown` qui sont désignées comme des ``saveurs'' (*flavours* en anglais). Cela se traduit par un fait simple : parfois certains éditeurs ou moteurs de rendu ne traduisent pas toutes les balises car ils s'appuient sur une saveur n'implémentant pas cette balise.
|
|
|
|
Un exemple tout simple : `~~texte~~` sera traité par un texte barré <s>texte</s> par certains moteurs de rendu alors que d'autres montreront simplement `~~`texte`~~`.
|
|
|
|
## Les paragraphes
|
|
|
|
Un paragraphe dans markdown commence à un début de ligne. Une fois le paragraphe fini, il suffit de sauter deux lignes pour commencer le suivant.
|
|
|
|
Exemple :
|
|
|
|
```markdown
|
|
Ceci est un début de paragraphe bla bla bla bla bla ...
|
|
|
|
Ceci est le paragraphe suivant bla bla bla bla bla ...
|
|
```
|
|
|
|
donnera :
|
|
|
|
Ceci est un début de paragraphe bla bla bla bla bla ...
|
|
|
|
Ceci est le paragraphe suivant bla bla bla bla bla ...
|
|
|
|
## Les emphases.
|
|
|
|
Les enphases sont typographiquement des mises en valeur de portions de textes.
|
|
|
|
## Les listes.
|
|
|
|
## Les liens et images.
|
|
|
|
## Les tableaux élémentaires.
|
|
|
|
## Les citations.
|
|
|
|
## Les codes et listings (blocs de code)
|
|
|
|
|
|
# Aller plus loin avec `Markdown` : |