# Créer un article depuis la ligne de commande ------------------------------------------------------------------------ Vous pouvez créer un article daté du jour avec les METAS obligatoires intégrées (à renseigner après) depuis la ligne de commande. Vous devez spécifier si votre article sera une page ou un post (Voir section plus bas), et lui donner un nom. Les metas optionnelles sont ajoutées en commentaires. Rendez vous dans le dossier de vos articles, enregistrés lors de l'ajout de votre domaine (ou celui que vous avez configuré). Mettez des guillemets pour les nom du fichier avec espaces. ``` # Créer une page nommée index (deviendra /index.html) gsl new page index # Créer un article nommé "mes vacances" gsl new post "mes vacances" ``` Vous pouvez l'éditer dans le terminal en utilisant l'autocompletion (), ou avec votre éditeur de texte favoris. le micro logiciel nano est utilisé par défaut par GSL pour toute édition (article, configuration du domaine, auteurs...) ``` gsl edit "mes vacances.gsl" ``` # Comment écrire un article ------------------------------------------------------------------------ Votre article doit contenir 2 sections. Les METAS avant ```#1``` et l'article à partir de ce repère (servant de titre h1). - METAS : configurer votre article (titre, date, liens...) - ARTICLE : contenue rédactionnel avec quelques marqueurs (gras...) ## METAS obligatoires (avant ```#1```) **Écrire sur une seule ligne** chaque META ``` type: page title: POST TITLE slug: MY-SLUG (si espaces, GSL les convertira en -) info: DESCRIPTION (À propos de cet article) author: NAME (doit être enregistré via la commande: gsl author edit date: YYYY-MM-DD (ou DD-MM-YYY si DOMAIN configuré en fr) tags: TAG1,Mon TAG2 (séparé par une virgule) ``` ### Page ou Article ? Vous devez spécifier pour chaque article si c'est une **page** ou un **post** #### Page (index, 404, about...) Création HTML à la racine du serveur selon le slug: /MY-SLUG.html ``` type: page slug: 404 ``` #### Post (mon article) Création HTML dans un dossier selon le slug: /MY-SLUG/index.html **! Le slug ne doit pas commencer par un /** ``` type: post slug: service/xmpp/configurer-gajim ``` ## METAS optionnelles (avant ```#1```) Définir UN seul marqueur CSS par article pour personnaliser chaque article avec sa propre CSS. ``` css: myID ``` Définir un ou plusieurs de ces marqueurs et utiliser ``` : ``` comme séparateur ``` abbr: COURT : Long file: NOM : NOM-DU-FICHIER : Text alternatif link: NOM : URL : Text alternatif code: NUMERO : NOM-DU-FICHIER : Text alternatif brut: NUMERO : NOM-DU-FICHIER image: NUMERO : NOM-DU-FICHIER : TEXT-ALTERNATIF ``` ## Contenu de l'article Les marqueurs (hors listes) *et leur contenu* (ex: ```·ceci est en gras·```) **doivent être sur la même ligne**. Les marqueurs à retenir et leur Combinaison de touches sur un clavier azerty français - Très gras: '•...•' (alt+gr + ;) - Gras: '·...·' (alt+gr + :) - Italique: '”...”' (alt+gr + n) - Barré: '×...×' (alt+gr + shift + ;) - Code: '¤...¤' (alt+gr + $) ### Écrire en très gras Dans l'article... ``` •c'est en super gras (strong)• c'est in•défini•ssable il ad•juge• : pas de pub ! ``` ### Écrire en gras Dans l'article... ``` ·Texte en gras· ``` ### Écrire en Italique Dans l'article... ``` C'est ”en italique” ``` ### Créer un texte "barré" Dans l'article... ``` La réunion aura lieu ×demain× dans une semaine ``` ### Écrire un Code en ligne Dans l'article... ``` ¤gsl help -w && echo "Be Happy"¤ ``` ### Abréviations Définir en METAS... (SHORT doit être en **lettres CAPITALES**) ``` abbr: CSS : Cascading Style Sheets ``` Dans l'article: ``` Les propriétés CSS ne sont pas définies ``` ### Paragraphes - Ouvrir avec ```(``` et fermez avec ```)``` **Au début d'une nouvelle ligne**. - Définir le nom de la classe du paragraphe,par exemple : "p3" (optionnel) Dans l'article... ``` ( p3 Paragraphe avec une classe p3 en css ) ( Paragraphe sans classe personnalisée ) ``` ### Liens Définir en METAS... ``` link: Mon lien : URL : Alt text link: https://a-lec.org/ : URL : Alt text ``` Dans l'article... - Écrivez ```_``` devant le nom du lien - Ajoutez ```+``` pour ouvrir le lien dans un nouvel onglet ``` Visitez _Mon lien+ et charger ici la page _https://a-lec.org/ ``` ### Fichiers Définir en METAS ``` file: Mon fichier : FILENAME : ALT-TEXT ``` Dans l'article... ``` __Mon fichier est super léger ``` ### Images Définir en METAS ``` image: 1 : FILENAME : ALT-TEXT image: 2 : FILENAME : ALT-TEXT ``` Dans l'article... Définir le marqueur ```_image``` et spécifier 5 valeurs séparées par ```:```. Seule la première valeur est obligatoire. Dans les valeurs optionnelles, renseigner soit : - La valeur prévue (Alignement, longueur, largeur, lien) **en priorité d'ordre** - ```+``` pour faire un lien vers l'image locale - ```http/ftp``` pour faire un lien externe sur l'image - - **Le lien ne doit pas contenir 2 fois ```:```** Les valeurs prévues : 1. Numero d'image : Valeur 1er champ après "image:" en METAS 2. Alignement : l,r,(g,d),c,maclasse pour gauche, droite, centre, maclasse. Si vide ou lien, classe CSS défaut (center) 3. Longueur : unité par défaut "px" si inconnue. ```0``` pour longueur non définie (renseigner largeur) 4. Largeur : unité par défaut "px" si inconnue 5. lien : Au choix, soit - - ```+``` : Lien vers l'image locale - - ```http/ftp``` : Lien externe sur l'image Le ratio de l'image est automatiquement conservé si pas de largeur ou si la longueur est à ```0``` #### Exemples de mise en place d'images Images affichées l'une à côté de l'autre ``` ( _image:1 # Image 1 taille originale sans lien _image:2:r:+ # Image 2 classe right, taille originale, lien local _image:3:g:640px:https://echolib.re/ # Image 3, classe left, width 640px, lien externe _image:4:maclass:320:200:+ # Image 4, classe maclass, width 3200px, height 200px, lien local _image:5:maclass:0:20%:https://echolib.re/ # Image 5, classe maclass, height 20%, lien externe ) ``` Images affichées l'une en dessous de l'autre ``` ( _image:1:+ ) ( _image:2:c:1920px:25%:https://echolib.re ) ``` ### Block-Code depuis un fichier Définir en METAS ``` code: python : FILENAME : Alt Text ``` Dans l'article... ``` _code:python ``` ### IMPORT de code brut (sera exécuté par le navigateur) Définir en METAS... ``` brut : 1 : FILENAME ``` Dans l'article... ``` _brut:1 ``` ### Citation simple Commun aux citations : - Définir un bloc pour la citation. Utilisez ```---``` - Définir une classe CSS spécifique ```--- ma-classe-css``` (optionnel) Dans l'article... ``` --- ( Une citation simple dans un paragraphe ) --- ``` ### Citation avancée Dans l'article... Stallman est une classe CSS ``` --- Stallman _cite : Richard Matthew Stallman _link : https://stallman.org/ _lang : en ( In the free/libre software movement, we develop software that respects users' freedom, so we and you can escape from software that doesn't. I could have made money this way, and perhaps amused myself writing code. But I knew that at the end of my career, I would look back on years of building walls to divide people, and feel I had spent my life making the world a worse place ) --- ``` ### Citation avancée : données optionnelles Ajoutez ces marqueurs, si connus dans la citation ``` _year: 2021 _book: Esperanza 64 ``` ### Créer des listes L'arborescence est "infinie". - Définir le début d'une liste par ```<<``` et sa fin par ```>>``` - Définir une classe CSS après ```<< ``` (optionnel) Dans l'article... - utilisez ```=``` pour définir une liste simple (ul) - utilisez ```+``` pour définir une liste ordonnée (ol) - Mixez les 2 (dans la limite de ma patience :D) ``` ( Voici une liste simple << = Fruits : *mangez-en* == Kiwis == Fraises === pas mûres == Bananes === Plantins = Légumes == Haricots === Rouges === Verts >> ) Voici une liste mixe avec sa classe "couverture" << couverture = Livre 1 + Chapitre 1 + Chaptire 2 ++ Résumé du Ch 2 = Livre 2 + Chapitre 1 >> ``` ### Ajouter des lignes vides Vous pouvez ajouter des ```
``` dans votre rédaction, mais pour une lecture plus propre de votre article, vous pouvez utiliser le caractère ```|``` **au tout début d'une nouvelle ligne**. Pratique dans les paragraphes. Dans l'article... ``` #1 Mon titre ( Ceci est un long paragraphe (Un peu d'imagination...) | Retour "forcé" à la ligne ) ```