First Beta Version
This commit is contained in:
parent
033777cf03
commit
ed4cb64567
|
@ -4,6 +4,14 @@ GSL changes from releases. You can send an issue :
|
||||||
- repo: https://git.a-lec.org/echolib/gsl/-/issues
|
- repo: https://git.a-lec.org/echolib/gsl/-/issues
|
||||||
- Contact xmpp: im@echolib.re
|
- Contact xmpp: im@echolib.re
|
||||||
|
|
||||||
|
## [0.1.0]
|
||||||
|
### First beta release
|
||||||
|
- fix www/wip with add/remove options
|
||||||
|
- fix some innvalid HTML codes (strike uses span now)
|
||||||
|
- Renamed documentation files (not all translated ; some in french)
|
||||||
|
- RSS feed donc after all www (command) done
|
||||||
|
|
||||||
|
|
||||||
## [0.0.93]
|
## [0.0.93]
|
||||||
### New
|
### New
|
||||||
- Basic RSS feed created at each www (COMMAND)
|
- Basic RSS feed created at each www (COMMAND)
|
||||||
|
|
68
README.md
68
README.md
|
@ -1,10 +1,11 @@
|
||||||
# GSL: Statique Littérateur
|
# GSL: Statique Littérateur
|
||||||
------------------------------------------------------------------------
|
------------------------------------------------------------------------
|
||||||
|
|
||||||
GSL est un générateur de blogs/sites-web basé sur leur nom de domaine,
|
GSL est un générateur de blogs/sites-web multiples basé sur leur nom de
|
||||||
écrit en bash, afin de réduire ses dépendances au minimum. Les pages
|
domaine. Il est écrit en bash, afin de réduire ses dépendances au minimum.
|
||||||
générées sont presque entièrement statiques, à l'exception du module de
|
Les pages générées sont presque entièrement statiques, à l'exception du
|
||||||
liste des derniers articles (sidebar) placé en include. Nginx peut être
|
module de liste (sidebar) contenant les articles de votre choix.
|
||||||
|
GSL crée pour ce module un fichier appelé avec include. Nginx peut être
|
||||||
facilement configuré pour interprêter ce module.
|
facilement configuré pour interprêter ce module.
|
||||||
|
|
||||||
|
|
||||||
|
@ -21,7 +22,7 @@ facilement configuré pour interprêter ce module.
|
||||||
------------------------------------------------------------------------
|
------------------------------------------------------------------------
|
||||||
Une procédure d'installation via un setup est en préparation. Il est
|
Une procédure d'installation via un setup est en préparation. Il est
|
||||||
aussi possible et recommandé sous debian de l'installer grâce à son
|
aussi possible et recommandé sous debian de l'installer grâce à son
|
||||||
paquet deb (construit par make).
|
paquet deb (construit par make), amoureusement préparé par neox.
|
||||||
|
|
||||||
Pour une installation manuelle, clonez ce dépôt, et copiez les dossiers
|
Pour une installation manuelle, clonez ce dépôt, et copiez les dossiers
|
||||||
déjà pré-établis dans le système (avec sudo). GSL n'utilise pas sudo,
|
déjà pré-établis dans le système (avec sudo). GSL n'utilise pas sudo,
|
||||||
|
@ -34,26 +35,26 @@ Reportez-vous à la documentation dans le dossier help
|
||||||
|
|
||||||
# Comment configurer un domaine
|
# Comment configurer un domaine
|
||||||
------------------------------------------------------------------------
|
------------------------------------------------------------------------
|
||||||
Préparer un fichier de logo. L'important sera de renseigner le nom du
|
Préparer un fichier de logo. L'important sera de renseigner un nom du
|
||||||
fichier lors du questionnaire.
|
fichier sinon, lors du questionnaire.
|
||||||
|
|
||||||
Attention: GSL aura besoin de créer des sous-dossier dans le serveur,
|
Attention: GSL aura besoin de créer des sous-dossiers (par DOMAIN) dans
|
||||||
renseigné dans le questionnaire. (i.e. /var/www/). Il faut donc lui
|
le serveur, renseigné dans le questionnaire. (i.e. /var/www/). Il faut
|
||||||
donner les droits
|
donc lui donner les droits
|
||||||
|
|
||||||
```
|
```
|
||||||
$ gsl new) domain
|
$ gsl new domain
|
||||||
```
|
```
|
||||||
|
|
||||||
Des questions vous seront posées lorsque vous voudrez ajouter un domaine
|
Des questions vous seront posées lorsque vous voudrez ajouter un DOMAIN
|
||||||
(exemple.com). Les données renseignées seront utilisées pour créer la
|
(exemple.com). Les données renseignées seront utilisées pour créer la
|
||||||
configuration (voir la documentation d'installation)
|
configuration du DOMAIN et reprises pour le site/blog dédié.
|
||||||
|
|
||||||
|
|
||||||
## Définir un dossier pour les articles du DOMAIN
|
## Définir un dossier pour les articles du DOMAIN
|
||||||
------------------------------------------------------------------------
|
------------------------------------------------------------------------
|
||||||
Si ce n'est pas déjà fait par GSL, ou que vous voulez ajouter un dossier
|
Si ce n'est pas déjà fait par GSL, ou que vous voulez ajouter un dossier
|
||||||
pour y stocker vos articles bruts pour un DOMAIN précis :
|
pour y stocker vos articles bruts en .gsl pour un DOMAIN précis :
|
||||||
|
|
||||||
```
|
```
|
||||||
gsl help -d
|
gsl help -d
|
||||||
|
@ -61,19 +62,19 @@ cd MYFOLDER
|
||||||
gsl setdir
|
gsl setdir
|
||||||
```
|
```
|
||||||
|
|
||||||
ou:
|
ou manuellement:
|
||||||
- Aller dans/créer un dossier de votre choix
|
- Aller dans/créer un dossier de votre choix
|
||||||
- Créer dedans, un fichier vide nommé gsl.DOMAIAN (gsl.exemple.com)
|
- Créer dedans, un fichier vide nommé gsl.DOMAIN (gsl.exemple.com)
|
||||||
|
|
||||||
|
|
||||||
## Ajouter / retirer un auteur
|
## Ajouter / retirer un auteur
|
||||||
------------------------------------------------------------------------
|
------------------------------------------------------------------------
|
||||||
Après avoir enregistré un domain et configuré un dossier pour les
|
Après avoir enregistré un domain et configuré un dossier pour les
|
||||||
articles. **Un auteur par ligne !**
|
articles. Ajoutez un ou plusieurs auteurs. **Un auteur par ligne !**
|
||||||
|
|
||||||
```
|
```
|
||||||
cd MON-DOSSER-ARTICLES
|
cd MON-DOSSER-ARTICLES
|
||||||
gsl author edit
|
gsl new author
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
||||||
|
@ -91,18 +92,19 @@ gsl help -w
|
||||||
## Procédures de prévisualisation et mise en ligne
|
## Procédures de prévisualisation et mise en ligne
|
||||||
------------------------------------------------------------------------
|
------------------------------------------------------------------------
|
||||||
- gsl check monarticle.gsl (vérifie l'écriture en gsl)
|
- gsl check monarticle.gsl (vérifie l'écriture en gsl)
|
||||||
- gsl make monarticle.gsl (Connvertit en HTML - dossier wip)
|
- gsl make monarticle.gsl (Connvertit en HTML - dossier wip dans le serveur)
|
||||||
- gsl www add monarticle.gsl (copiel la page dans le dossier www)
|
- gsl www add monarticle.gsl (copie la page dans le dossier www)
|
||||||
|
|
||||||
|
|
||||||
# Comment gérer la sidebar
|
# Comment gérer la sidebar
|
||||||
------------------------------------------------------------------------
|
------------------------------------------------------------------------
|
||||||
La gestion de la sidebar est manuelle. Un article doit être convertit
|
La gestion de la sidebar est manuelle. Un article doit être convertit
|
||||||
avec make avant de pouvoir l'ajouter à la position ddsirée. Le nombre
|
avec make avant de pouvoir l'ajouter à la position désirée. Le nombre
|
||||||
d'articles maximum dans la sidebar est configurable dans le fichier de
|
d'articles maximum dans la sidebar est configurable dans le fichier de
|
||||||
configuration du domaine (DOMAIN.conf)
|
configuration du domaine (DOMAIN.conf) (via le questionnaire)
|
||||||
|
|
||||||
```
|
```
|
||||||
|
gsl sidebar latest
|
||||||
gsl sidebar replace 2 monarticle.gsl
|
gsl sidebar replace 2 monarticle.gsl
|
||||||
```
|
```
|
||||||
|
|
||||||
|
@ -118,6 +120,8 @@ gsl www add mona<TAB>
|
||||||
# Help
|
# Help
|
||||||
------------------------------------------------------------------------
|
------------------------------------------------------------------------
|
||||||
```
|
```
|
||||||
|
# GSL: Statique Littérateur
|
||||||
|
|
||||||
$ gsl (ARG)
|
$ gsl (ARG)
|
||||||
readme : Show README.md instructions
|
readme : Show README.md instructions
|
||||||
help | -h (OPT) : This Help and how to
|
help | -h (OPT) : This Help and how to
|
||||||
|
@ -125,7 +129,6 @@ $ gsl (ARG)
|
||||||
authors | -a : Add/Remove authors for this DOMAIN
|
authors | -a : Add/Remove authors for this DOMAIN
|
||||||
setdir | -d : Set a directory for article's DOMAIN
|
setdir | -d : Set a directory for article's DOMAIN
|
||||||
write | -w : Write a Post
|
write | -w : Write a Post
|
||||||
tpl | -T : Create your template
|
|
||||||
param | -p : Configure some parameters
|
param | -p : Configure some parameters
|
||||||
css : Show used CSS classes
|
css : Show used CSS classes
|
||||||
tips | -t : Show tips and advises you should know
|
tips | -t : Show tips and advises you should know
|
||||||
|
@ -137,7 +140,7 @@ $ gsl (ARG)
|
||||||
|
|
||||||
setdir | -D : Show current directory DOMAIN or set it
|
setdir | -D : Show current directory DOMAIN or set it
|
||||||
|
|
||||||
log | -L (OPTS) : Show logs from all sessions
|
log | -L (OPT) : Show logs from all sessions
|
||||||
clean | -C : Logs saved to {DATE}.gsl.log and cleaned
|
clean | -C : Logs saved to {DATE}.gsl.log and cleaned
|
||||||
all : clean all saved logs, keep current
|
all : clean all saved logs, keep current
|
||||||
-i | -w | -e : from levels (infos, warnings, errors)
|
-i | -w | -e : from levels (infos, warnings, errors)
|
||||||
|
@ -154,16 +157,16 @@ $ gsl (ARG)
|
||||||
domain : Domains registred database
|
domain : Domains registred database
|
||||||
(FILE) : (FILE) ; .gsl
|
(FILE) : (FILE) ; .gsl
|
||||||
|
|
||||||
db (FILE) : Show DB statuses from (FILE)
|
db (FILE) : Show DB datas from (FILE)
|
||||||
|
|
||||||
sync (OPT) : Sync Templates to www and wip
|
sync (OPT) : Sync Templates to www and wip
|
||||||
wip : Only to wip server (also done with make)
|
wip : Only to wip server (also done with make)
|
||||||
www : Only to www server (also done with www)
|
www : Only to www server (also done with www)
|
||||||
|
|
||||||
|
|
||||||
check | -C (OPTIONS) : Check Post(s) errors from PWD folder
|
check | -C (OPTI) : Check Post(s) errors from PWD folder
|
||||||
-N : Check only articles not in DB
|
-N : Check only articles not in DB
|
||||||
-F : Force Check again ; Recreate in Database
|
-F : Force Check again ; Create Database
|
||||||
(FILE) : Only this (FILE)
|
(FILE) : Only this (FILE)
|
||||||
|
|
||||||
make | -M (OPTIONS) : Make all HTML articles or only (FILE)
|
make | -M (OPTIONS) : Make all HTML articles or only (FILE)
|
||||||
|
@ -173,21 +176,24 @@ $ gsl (ARG)
|
||||||
www (OPT1) (OPT2) : Add/Remove Post(s) in www server
|
www (OPT1) (OPT2) : Add/Remove Post(s) in www server
|
||||||
(OPT1):
|
(OPT1):
|
||||||
sync : Same as "sync www"
|
sync : Same as "sync www"
|
||||||
add : Add all/(FILE) to www server
|
add : Add (OPT2) to www server
|
||||||
rmove : remove all/(FILE) from www server
|
remove : remove (OPT2) from www server
|
||||||
(OPT2):
|
(OPT2):
|
||||||
all : Select all post with wip statuses
|
all : Select all post with wip statuses (FORCE !)
|
||||||
(FILE) : Select specific post (if wip status)
|
(FILE) : Select specific post (if wip status)
|
||||||
|
|
||||||
wip : Same as www for wip
|
wip : Same as www for wip server
|
||||||
|
add : Same as make -F (i.e. gsl wip add all)
|
||||||
|
|
||||||
sidebar | -S : Show Posts in list (ARG) (POS) (FILE)
|
sidebar | -S : Show Posts in list (ARG) (POS) (FILE)
|
||||||
(ARG):
|
(ARG):
|
||||||
add | -a : Put article at (POS). Remove last, roll from (POS)
|
add | -a : Put article at (POS). Remove last, roll from (POS)
|
||||||
replace | -r : Replace (POS) with article
|
replace | -r : Replace (POS) with article
|
||||||
latest | -l : Create sidebar with latest (remove all existing)
|
latest | -l : Create sidebar with latest (remove all existing)
|
||||||
|
oldest | -o : Same as above, but with oldest first
|
||||||
|
|
||||||
-v : Show local versionn
|
-v : Show local versionn
|
||||||
--version : Like -v + changes
|
--version : Like -v + changes
|
||||||
-vv : Shown local and repo Versions
|
-vv : Shown local and repo Versions
|
||||||
|
|
||||||
```
|
```
|
||||||
|
|
2
control
2
control
|
@ -1,5 +1,5 @@
|
||||||
Package: egsl
|
Package: egsl
|
||||||
Version: 0.0.93
|
Version: 0.1.0
|
||||||
Section: custom
|
Section: custom
|
||||||
Priority: optional
|
Priority: optional
|
||||||
Architecture: all
|
Architecture: all
|
||||||
|
|
|
@ -56,12 +56,11 @@ gsl_files_help=(
|
||||||
$gsl_dir_help/comment_ecrire-article.md
|
$gsl_dir_help/comment_ecrire-article.md
|
||||||
$gsl_dir_help/gsl_help.md
|
$gsl_dir_help/gsl_help.md
|
||||||
$gsl_dir_help/comment_installer-GSL.md
|
$gsl_dir_help/comment_installer-GSL.md
|
||||||
$gsl_dir_help/template-comment-creer.md
|
$gsl_dir_help/how-to_set_directory_for_articles.md
|
||||||
$gsl_dir_help/how_to-set_directory_for_articles.md
|
$gsl_dir_help/how-to_add_remove_authors.md
|
||||||
$gsl_dir_help/how_to-add_remove_authors.md
|
$gsl_dir_help/how-to_parameters_conf.md
|
||||||
$gsl_dir_help/how_to-parameters_conf.md
|
$gsl_dir_help/how-to_CSS_classes.md
|
||||||
$gsl_dir_help/how_to-CSS_classes.md
|
$gsl_dir_help/how-to_Tips_Advises.md
|
||||||
$gsl_dir_help/how_to-Tips_Advises.md
|
|
||||||
)
|
)
|
||||||
|
|
||||||
gsl_dirs_w=(
|
gsl_dirs_w=(
|
||||||
|
@ -147,7 +146,7 @@ gsl_marker_link='link:'
|
||||||
gsl_marker_flink='file:'
|
gsl_marker_flink='file:'
|
||||||
|
|
||||||
# Closed HTML static code
|
# Closed HTML static code
|
||||||
HTML_strike_close='</strike>'
|
HTML_strike_close='</span>'
|
||||||
HTML_icode_close='</code>'
|
HTML_icode_close='</code>'
|
||||||
HTML_em_close='"</i>'
|
HTML_em_close='"</i>'
|
||||||
HTML_strong_close='</strong>'
|
HTML_strong_close='</strong>'
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
Vous pouvez créer un article daté du jour avec les METAS obligatoires
|
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
|
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
|
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 enn
|
bas), et lui donner un nom. Les metas optionnelles sont ajoutées en
|
||||||
commentaires.
|
commentaires.
|
||||||
|
|
||||||
Rendez vous dans le dossier de vos articles, enregistrés lors de l'ajout
|
Rendez vous dans le dossier de vos articles, enregistrés lors de l'ajout
|
||||||
|
@ -12,15 +12,17 @@ de votre domaine (ou celui que vous avez configuré).
|
||||||
Mettez des guillemets pour les nom du fichier avec espaces.
|
Mettez des guillemets pour les nom du fichier avec espaces.
|
||||||
|
|
||||||
```
|
```
|
||||||
# Crréer une page nommée index (deviendra /index.html)
|
# Créer une page nommée index (deviendra /index.html)
|
||||||
gsl new page index
|
gsl new page index
|
||||||
|
|
||||||
# Créer un article nommé "mes vacances"
|
# Créer un article nommé "mes vacances"
|
||||||
gsl ew post "mes vacances"
|
gsl new post "mes vacances"
|
||||||
```
|
```
|
||||||
|
|
||||||
Vous pouvez l'éditer dans le terminal ou avec votre éditeur de texte, en
|
Vous pouvez l'éditer dans le terminal en utilisant l'autocompletion
|
||||||
utilisant l'autocompletion (<tab>)
|
(<tab>), 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"
|
gsl edit "mes vacances.gsl"
|
||||||
|
@ -41,11 +43,11 @@ l'article à partir de ce repère (servant de titre h1).
|
||||||
```
|
```
|
||||||
type: page
|
type: page
|
||||||
title: POST TITLE
|
title: POST TITLE
|
||||||
slug: MY-SLUG (si espaces, GSL les convertira en -)
|
slug: MY-SLUG (si espaces, GSL les convertira en -)
|
||||||
info: DESCRIPTION (À propos de cet article)
|
info: DESCRIPTION (À propos de cet article)
|
||||||
author: NAME (doit être enregistré via la commande: gsl author edit
|
author: NAME (doit être enregistré via la commande: gsl author edit
|
||||||
date: YYYY-MM-DD
|
date: YYYY-MM-DD (ou DD-MM-YYY si DOMAIN configuré en fr)
|
||||||
tags: TAG1,Mon TAG2,TAG3 (séparé par une virgule)
|
tags: TAG1,Mon TAG2 (séparé par une virgule)
|
||||||
```
|
```
|
||||||
|
|
||||||
### Page ou Article ?
|
### Page ou Article ?
|
||||||
|
@ -53,14 +55,14 @@ Vous devez spécifier pour chaque article si c'est une **page** ou un
|
||||||
**post**
|
**post**
|
||||||
|
|
||||||
#### Page (index, 404, about...)
|
#### Page (index, 404, about...)
|
||||||
Création HTML à la racine selon le slug: /MY-SLUG.html
|
Création HTML à la racine du serveur selon le slug: /MY-SLUG.html
|
||||||
|
|
||||||
```
|
```
|
||||||
type: page
|
type: page
|
||||||
slug: 404
|
slug: 404
|
||||||
```
|
```
|
||||||
|
|
||||||
#### Post (monarticle)
|
#### Post (mon article)
|
||||||
Création HTML dans un dossier selon le slug: /MY-SLUG/index.html
|
Création HTML dans un dossier selon le slug: /MY-SLUG/index.html
|
||||||
**! Le slug ne doit pas commencer par un /**
|
**! Le slug ne doit pas commencer par un /**
|
||||||
|
|
||||||
|
@ -81,7 +83,7 @@ Définir un ou plusieurs de ces marqueurs et utiliser ``` : ``` comme
|
||||||
séparateur
|
séparateur
|
||||||
|
|
||||||
```
|
```
|
||||||
abbr: COURT : LONG
|
abbr: COURT : Long
|
||||||
file: NOM : NOM-DU-FICHIER : Text alternatif
|
file: NOM : NOM-DU-FICHIER : Text alternatif
|
||||||
link: NOM : URL : Text alternatif
|
link: NOM : URL : Text alternatif
|
||||||
code: NUMERO : NOM-DU-FICHIER : Text alternatif
|
code: NUMERO : NOM-DU-FICHIER : Text alternatif
|
||||||
|
@ -90,7 +92,7 @@ image: NUMERO : NOM-DU-FICHIER : TEXT-ALTERNATIF
|
||||||
```
|
```
|
||||||
|
|
||||||
## Contenu de l'article:
|
## Contenu de l'article:
|
||||||
Les marqueurs (hors listes) *et leur contenu* (ex: ```__monfichier...```)
|
Les marqueurs (hors listes) *et leur contenu* (ex: ```·ceci est en gras·```)
|
||||||
**doivent être sur la même ligne**.
|
**doivent être sur la même ligne**.
|
||||||
|
|
||||||
Les marqueurs à retenir et leur Combinaison de touches sur un clavier
|
Les marqueurs à retenir et leur Combinaison de touches sur un clavier
|
||||||
|
@ -115,7 +117,7 @@ il ad•juge• : pas de pub !
|
||||||
Dans l'article...
|
Dans l'article...
|
||||||
|
|
||||||
```
|
```
|
||||||
·Tout est en gras·
|
·Texte en gras·
|
||||||
```
|
```
|
||||||
|
|
||||||
### Écrire en Italique
|
### Écrire en Italique
|
||||||
|
@ -153,9 +155,8 @@ Les propriétés CSS ne sont pas définies
|
||||||
```
|
```
|
||||||
|
|
||||||
### Paragraphes
|
### Paragraphes
|
||||||
Au début d'une nouvelle ligne, ouvrez avec ( et fermez avec ).
|
- Ouvrir avec ```(``` et fermez avec ```)``` **Au début d'une nouvelle ligne**.
|
||||||
Vous pouvez définir le nom de la classe du paragraphe en ajoutant la
|
- Définir le nom de la classe du paragraphe,par exemple : "p3" (optionnel)
|
||||||
valeur désirée ; par exemple : p3
|
|
||||||
|
|
||||||
Dans l'article...
|
Dans l'article...
|
||||||
```
|
```
|
||||||
|
@ -164,19 +165,19 @@ Paragraphe avec une classe p3 en css
|
||||||
)
|
)
|
||||||
|
|
||||||
(
|
(
|
||||||
Paragraphe sans classe
|
Paragraphe sans classe personnalisée
|
||||||
)
|
)
|
||||||
```
|
```
|
||||||
|
|
||||||
### Liens
|
### Liens
|
||||||
Définir en METAS
|
Définir en METAS...
|
||||||
|
|
||||||
```
|
```
|
||||||
link: Mon lien : URL : Alt text
|
link: Mon lien : URL : Alt text
|
||||||
link: https://a-lec.org/ : URL : Alt text
|
link: https://a-lec.org/ : URL : Alt text
|
||||||
```
|
```
|
||||||
|
|
||||||
Dans l'article..
|
Dans l'article...
|
||||||
- Écrivez ```_``` devant le nom du lien
|
- Écrivez ```_``` devant le nom du lien
|
||||||
- Ajoutez ```+``` pour ouvrir le lien dans un nouvel onglet
|
- Ajoutez ```+``` pour ouvrir le lien dans un nouvel onglet
|
||||||
|
|
||||||
|
@ -193,7 +194,7 @@ file: Mon fichier : FILENAME : ALT-TEXT
|
||||||
|
|
||||||
Dans l'article...
|
Dans l'article...
|
||||||
```
|
```
|
||||||
__Mon fichier
|
__Mon fichier est super léger
|
||||||
```
|
```
|
||||||
|
|
||||||
### Images
|
### Images
|
||||||
|
@ -205,19 +206,20 @@ image: 2 : FILENAME : ALT-TEXT
|
||||||
```
|
```
|
||||||
|
|
||||||
Dans l'article...
|
Dans l'article...
|
||||||
Définir le marqueur ```_image``` sur une seule ligne et spécifiez les
|
Définir le marqueur ```_image``` et spécifiez les
|
||||||
valeurs séparées par ```:```. ```+``` indique l'ouverture dans une
|
valeurs séparées par ```:```. ```+``` indique l'ouverture dans une
|
||||||
nouvelle fenêtre. Seuls le "numéro d'image" est obligatoire
|
nouvelle fenêtre. Seuls le "numéro d'image" est obligatoire
|
||||||
|
|
||||||
|
Les valeurs:
|
||||||
- Numero d'image
|
- Numero d'image
|
||||||
- Alignement: l,r,(g,d également),c pour gauche, droite, centre)
|
- Alignement: l,r,(g,d également),c pour gauche, droite, centre)
|
||||||
- - maclasse au lieu de l,r,c pour utiliser la classe css "maclasse"
|
- - maclasse au lieu de l,r,g,d,c pour utiliser la classe css "maclasse"
|
||||||
- - + (class="center")
|
- - + (class="center")
|
||||||
- Longueur width: (avec unité)
|
- Longueur width: (avec unité)
|
||||||
- - + (taille originale)
|
- - + (taille originale)
|
||||||
- Largeur height: (avec unité)
|
- Largeur height: (avec unité)
|
||||||
- - + (longueur définie, largeur originale)
|
- - + (longueur définie, largeur originale)
|
||||||
- Champ non vide: Lien de l'image dans un nouvel onglet
|
- + (Lien de l'image dans un nouvel onglet)
|
||||||
|
|
||||||
Exemple d'images affichées l'une à côté de l'autre
|
Exemple d'images affichées l'une à côté de l'autre
|
||||||
|
|
||||||
|
@ -255,7 +257,7 @@ _code:python
|
||||||
```
|
```
|
||||||
|
|
||||||
### IMPORT de code brut (sera exécuté par le navigateur)
|
### IMPORT de code brut (sera exécuté par le navigateur)
|
||||||
Définir en METAS
|
Définir en METAS...
|
||||||
|
|
||||||
```
|
```
|
||||||
brut : 1 : FILENAME
|
brut : 1 : FILENAME
|
||||||
|
@ -267,8 +269,9 @@ _brut:1
|
||||||
```
|
```
|
||||||
|
|
||||||
### Citation simple
|
### Citation simple
|
||||||
Définissez un bloc pour la citation. Utilisez ```---```
|
Commun aux citations :
|
||||||
Vous pouvez définir une classe CSS spécifique ```--- ma-classe-css```
|
- Définir un bloc pour la citation. Utilisez ```---```
|
||||||
|
- Définir une classe CSS spécifique ```--- ma-classe-css``` (optionnel)
|
||||||
|
|
||||||
Dans l'article...
|
Dans l'article...
|
||||||
|
|
||||||
|
@ -310,7 +313,7 @@ _book: Esperanza 64
|
||||||
### Créer des listes
|
### Créer des listes
|
||||||
L'arborescence est "infinie".
|
L'arborescence est "infinie".
|
||||||
- Définir le début d'une liste par ```<<``` et sa fin par ```>>```
|
- Définir le début d'une liste par ```<<``` et sa fin par ```>>```
|
||||||
- Définir une classe CSS après ```<< ```
|
- Définir une classe CSS après ```<< ``` (optionnel)
|
||||||
|
|
||||||
Dans l'article...
|
Dans l'article...
|
||||||
- utilisez ```=``` pour définir une liste simple (ul)
|
- utilisez ```=``` pour définir une liste simple (ul)
|
||||||
|
|
|
@ -16,24 +16,25 @@ droits en écriture des dossiers
|
||||||
```
|
```
|
||||||
# Pour le dossier du binaire
|
# Pour le dossier du binaire
|
||||||
sudo rsync -a usr/local/bin/gsl /usr/local/bin/gsl
|
sudo rsync -a usr/local/bin/gsl /usr/local/bin/gsl
|
||||||
sudo chown USER:GROUP/usr/local/bin/gsl
|
sudo chown USER:GROUP /usr/local/bin/gsl
|
||||||
|
|
||||||
# Pour les dossiers de scripts
|
# Pour les dossiers de scripts
|
||||||
sudo mkdir -p "/var/lib/gsl"
|
sudo mkdir -p "/var/lib/gsl"
|
||||||
sudo chown -R USER:GROUP "/var/lib/gsl"
|
sudo chown -R USER:GROUP /var/lib/gsl
|
||||||
rsync -a var/lib/gsl/ /var/lib/gsl/
|
rsync -a var/lib/gsl/ /var/lib/gsl/
|
||||||
|
|
||||||
# Pour le dossier de logs
|
# Pour le dossier de logs
|
||||||
sudo mkdir -p "/var/log/gsl"
|
sudo mkdir -p "/var/log/gsl"
|
||||||
sudo chown -R USER:GROUP "/var/log/gsl"
|
sudo chown -R USER:GROUP /var/log/gsl
|
||||||
|
|
||||||
# Pour le dossier de configuration
|
# Pour le dossier de configuration
|
||||||
sudo mkdir -p /etc/gsl
|
sudo mkdir -p /etc/gsl
|
||||||
sudo chown -R USER:GROUP "/etc/gsl"
|
sudo chown -R USER:GROUP /etc/gsl
|
||||||
|
rsync -a etc/gsl/ /etc/gsl/
|
||||||
|
|
||||||
# Pour l'autocompletion des articles dans la commande
|
# Pour l'autocompletion des articles dans la commande
|
||||||
sudo rsync -a usr/share/bash-completion/completions/gsl /usr/share/bash-completion/completions/gsl
|
sudo rsync -a usr/share/bash-completion/completions/gsl /usr/share/bash-completion/completions/gsl
|
||||||
sudo chown USER:GROUP "/usr/share/bash-completion/completions/gsl"
|
sudo chown USER:GROUP /usr/share/bash-completion/completions/gsl
|
||||||
```
|
```
|
||||||
|
|
||||||
Attention: GSL aura besoin de créer des sous-dossier dans le serveur,
|
Attention: GSL aura besoin de créer des sous-dossier dans le serveur,
|
||||||
|
@ -42,7 +43,9 @@ donner les droits
|
||||||
|
|
||||||
# Arborescence des dossiers utilisés par GSL
|
# Arborescence des dossiers utilisés par GSL
|
||||||
------------------------------------------------------------------------
|
------------------------------------------------------------------------
|
||||||
Note: ```+``` indique que GSL créera ces dossiers
|
Note:
|
||||||
|
- ```+``` indique que GSL créera ces dossiers
|
||||||
|
- DOMAIN représente le nom de domaine renseigné dans le questionnaire
|
||||||
|
|
||||||
- /etc/gsl
|
- /etc/gsl
|
||||||
- /var/log/gsl
|
- /var/log/gsl
|
||||||
|
@ -50,7 +53,7 @@ Note: ```+``` indique que GSL créera ces dossiers
|
||||||
- - /help/
|
- - /help/
|
||||||
- - /scripts/
|
- - /scripts/
|
||||||
- - /domains
|
- - /domains
|
||||||
- - - /DOMAIN
|
- - - /DOMAIN +
|
||||||
- - - - /templates/ +
|
- - - - /templates/ +
|
||||||
- - - - /files/ +
|
- - - - /files/ +
|
||||||
- - - - /images/ +
|
- - - - /images/ +
|
||||||
|
@ -60,11 +63,11 @@ Note: ```+``` indique que GSL créera ces dossiers
|
||||||
- - - /DOMAIN +
|
- - - /DOMAIN +
|
||||||
|
|
||||||
- /SRV (i.e. /var/www)
|
- /SRV (i.e. /var/www)
|
||||||
- - /DOMAIN
|
- - /DOMAIN +
|
||||||
- - - /wip
|
- - - /wip +
|
||||||
- - - - /TEMPLATE (sync wip (command) from /var/lib/gsl/domains/DOMAIN/)
|
- - - - /TEMPLATE (sync wip (command) from /var/lib/gsl/domains/DOMAIN/) +
|
||||||
- - - /www
|
- - - /www +
|
||||||
- - - - /TEMPLATE (sync www (command) from /var/lib/gsl/domains/DOMAIN/)
|
- - - - /TEMPLATE (sync www (command) from /var/lib/gsl/domains/DOMAIN/) +
|
||||||
|
|
||||||
|
|
||||||
# Fichiers créés par GSL
|
# Fichiers créés par GSL
|
||||||
|
@ -81,4 +84,4 @@ Note: ```+``` indique que GSL créera ces dossiers
|
||||||
- - /db/
|
- - /db/
|
||||||
- - - domains.db (registred domains)
|
- - - domains.db (registred domains)
|
||||||
- - - DOMAIN/
|
- - - DOMAIN/
|
||||||
- - - - (file).gsl.db (Un par article)
|
- - - - (article).gsl.db (un par article)
|
||||||
|
|
|
@ -7,7 +7,6 @@ $ gsl (ARG)
|
||||||
authors | -a : Add/Remove authors for this DOMAIN
|
authors | -a : Add/Remove authors for this DOMAIN
|
||||||
setdir | -d : Set a directory for article's DOMAIN
|
setdir | -d : Set a directory for article's DOMAIN
|
||||||
write | -w : Write a Post
|
write | -w : Write a Post
|
||||||
tpl | -T : Create your template
|
|
||||||
param | -p : Configure some parameters
|
param | -p : Configure some parameters
|
||||||
css : Show used CSS classes
|
css : Show used CSS classes
|
||||||
tips | -t : Show tips and advises you should know
|
tips | -t : Show tips and advises you should know
|
||||||
|
@ -19,7 +18,7 @@ $ gsl (ARG)
|
||||||
|
|
||||||
setdir | -D : Show current directory DOMAIN or set it
|
setdir | -D : Show current directory DOMAIN or set it
|
||||||
|
|
||||||
log | -L (OPTS) : Show logs from all sessions
|
log | -L (OPT) : Show logs from all sessions
|
||||||
clean | -C : Logs saved to {DATE}.gsl.log and cleaned
|
clean | -C : Logs saved to {DATE}.gsl.log and cleaned
|
||||||
all : clean all saved logs, keep current
|
all : clean all saved logs, keep current
|
||||||
-i | -w | -e : from levels (infos, warnings, errors)
|
-i | -w | -e : from levels (infos, warnings, errors)
|
||||||
|
@ -36,16 +35,16 @@ $ gsl (ARG)
|
||||||
domain : Domains registred database
|
domain : Domains registred database
|
||||||
(FILE) : (FILE) ; .gsl
|
(FILE) : (FILE) ; .gsl
|
||||||
|
|
||||||
db (FILE) : Show DB statuses from (FILE)
|
db (FILE) : Show DB datas from (FILE)
|
||||||
|
|
||||||
sync (OPT) : Sync Templates to www and wip
|
sync (OPT) : Sync Templates to www and wip
|
||||||
wip : Only to wip server (also done with make)
|
wip : Only to wip server (also done with make)
|
||||||
www : Only to www server (also done with www)
|
www : Only to www server (also done with www)
|
||||||
|
|
||||||
|
|
||||||
check | -C (OPTIONS) : Check Post(s) errors from PWD folder
|
check | -C (OPTI) : Check Post(s) errors from PWD folder
|
||||||
-N : Check only articles not in DB
|
-N : Check only articles not in DB
|
||||||
-F : Force Check again ; Recreate in Database
|
-F : Force Check again ; Create Database
|
||||||
(FILE) : Only this (FILE)
|
(FILE) : Only this (FILE)
|
||||||
|
|
||||||
make | -M (OPTIONS) : Make all HTML articles or only (FILE)
|
make | -M (OPTIONS) : Make all HTML articles or only (FILE)
|
||||||
|
@ -55,19 +54,21 @@ $ gsl (ARG)
|
||||||
www (OPT1) (OPT2) : Add/Remove Post(s) in www server
|
www (OPT1) (OPT2) : Add/Remove Post(s) in www server
|
||||||
(OPT1):
|
(OPT1):
|
||||||
sync : Same as "sync www"
|
sync : Same as "sync www"
|
||||||
add : Add all/(FILE) to www server
|
add : Add (OPT2) to www server
|
||||||
rmove : remove all/(FILE) from www server
|
remove : remove (OPT2) from www server
|
||||||
(OPT2):
|
(OPT2):
|
||||||
all : Select all post with wip statuses
|
all : Select all post with wip statuses (FORCE !)
|
||||||
(FILE) : Select specific post (if wip status)
|
(FILE) : Select specific post (if wip status)
|
||||||
|
|
||||||
wip : Same as www for wip
|
wip : Same as www for wip server
|
||||||
|
add : Same as make -F (i.e. gsl wip add all)
|
||||||
|
|
||||||
sidebar | -S : Show Posts in list (ARG) (POS) (FILE)
|
sidebar | -S : Show Posts in list (ARG) (POS) (FILE)
|
||||||
(ARG):
|
(ARG):
|
||||||
add | -a : Put article at (POS). Remove last, roll from (POS)
|
add | -a : Put article at (POS). Remove last, roll from (POS)
|
||||||
replace | -r : Replace (POS) with article
|
replace | -r : Replace (POS) with article
|
||||||
latest | -l : Create sidebar with latest (remove all existing)
|
latest | -l : Create sidebar with latest (remove all existing)
|
||||||
|
oldest | -o : Same as above, but with oldest first
|
||||||
|
|
||||||
-v : Show local versionn
|
-v : Show local versionn
|
||||||
--version : Like -v + changes
|
--version : Like -v + changes
|
||||||
|
|
|
@ -23,7 +23,7 @@ X is 1 to 6 from current title
|
||||||
- bold: xxx_bold
|
- bold: xxx_bold
|
||||||
- strong: xxx_strong
|
- strong: xxx_strong
|
||||||
- emphasis: xxx_em
|
- emphasis: xxx_em
|
||||||
- strike: xxx_strike
|
- strike: xxx_strike (span)
|
||||||
- inline code: xxx_icode
|
- inline code: xxx_icode
|
||||||
|
|
||||||
### Paragraphs
|
### Paragraphs
|
||||||
|
@ -46,11 +46,11 @@ myclass is from content marker (i.e. _image:1:myclass:90:90:+)
|
||||||
|
|
||||||
### pre-codes from source file
|
### pre-codes from source file
|
||||||
X is the NAME/NBR registred in header
|
X is the NAME/NBR registred in header
|
||||||
- pre: xxx_code-block xxx_code-block-X
|
- pre: xxx_code-block xxx_code-block-X
|
||||||
- span line: xxx_code-line
|
- span line: xxx_code-line
|
||||||
- span content: xxx_code-content
|
- span content: xxx_code-content
|
||||||
- p after pre: xxx_code-p
|
- div after pre: xxx_code-p
|
||||||
- link source: xxx_code-link
|
- link source: xxx_code-link
|
||||||
|
|
||||||
### Liste (ol | ul | li)
|
### Liste (ol | ul | li)
|
||||||
X is the item mark nbr (i.e. "+++" = 3, "=" = 1)
|
X is the item mark nbr (i.e. "+++" = 3, "=" = 1)
|
|
@ -25,10 +25,22 @@ _image:1:+
|
||||||
_image:1:c:640px:+
|
_image:1:c:640px:+
|
||||||
```
|
```
|
||||||
|
|
||||||
## Make (changes in source file)
|
## Make (changes in your template)
|
||||||
If you change the content of a file (script code, image...), you will
|
If you change the content of a file in your template
|
||||||
have to make -F your article, and do www add after
|
(script code, image, footer...), and you want ALL your articles to be
|
||||||
|
updated, you will have to :
|
||||||
|
- gsl sync
|
||||||
|
- gsl make -F
|
||||||
|
- gsl www add all
|
||||||
|
|
||||||
|
For only one article (myarticle).gsl:
|
||||||
|
- gsl sync
|
||||||
|
- gsl make -F (myarticle) (preview it first with wip server)
|
||||||
|
- gsl www remove (myarticle)
|
||||||
|
- gsl www add (myarticle)
|
||||||
|
|
||||||
## Sidebar
|
## Sidebar
|
||||||
If your remove a www or wip page, and you put it in sidebar,
|
If your remove a www or wip page, and you have put it in the sidebar,
|
||||||
do not forget to replace it with another article
|
do not forget to replace it with another article. You can also have an
|
||||||
|
automatic sidebar with
|
||||||
|
- gsl sidebar latest
|
|
@ -1,69 +0,0 @@
|
||||||
# Créer un Template
|
|
||||||
------------------------------------------------------------------------
|
|
||||||
|
|
||||||
Vous devrez pour que votre site soit à vôtre goût créer et définir les
|
|
||||||
styles dans styles.css. Placez ce fichier (en fonction du choix de votre
|
|
||||||
configuration du DOMAIN) dans :
|
|
||||||
- HOME: ~/.config/gsl/domains/DOMAIN/templates/
|
|
||||||
- GLOBAL: /var/lib/gsl/domains/DOMAIN/templates/
|
|
||||||
|
|
||||||
Concernant les contenus images et fichiers dans vos articles, placez-les
|
|
||||||
dans les dossiers
|
|
||||||
- .../templates/images
|
|
||||||
- .../templates/files
|
|
||||||
|
|
||||||
Astuce: Une fois votre article créé, vous verrez dans sa source HTML que
|
|
||||||
beaucoup d'éléments ont une class="ACRONYM_uneclass". Utilisez
|
|
||||||
ces classes dans style.css pour décorer votre site à votre goût.
|
|
||||||
|
|
||||||
Pour mettre à jour et voir vos modifications de styles
|
|
||||||
|
|
||||||
```
|
|
||||||
gsl sync
|
|
||||||
```
|
|
||||||
|
|
||||||
GSL synchronisera votre template sur votre webserver.
|
|
||||||
Rechargez votre page dans votre navigateur
|
|
||||||
|
|
||||||
Si vous avez modifié header.html ou footer.html dans votre dossier
|
|
||||||
/templates, ou si de nouvelles fonctions sont arrivées et concernent les
|
|
||||||
pages HTML dans GSL, il vous faudra reconstruire toutes les pages
|
|
||||||
|
|
||||||
```
|
|
||||||
gsl make -F
|
|
||||||
```
|
|
||||||
|
|
||||||
## Listes de classes utilisées.
|
|
||||||
|
|
||||||
Rappel: les classes et IDs commencent par votre ACRONYM configuré,
|
|
||||||
lors de la création d'un domaine avec ```gsl new```, suivi par ```_```.
|
|
||||||
Pour une meilleure lisibilité, votre ACRONYM est marqué xxx.
|
|
||||||
|
|
||||||
### Dans body, header
|
|
||||||
|
|
||||||
- ID=
|
|
||||||
- - body: xxx_page
|
|
||||||
- - header: xxx_banner
|
|
||||||
- - logo dans header: xxx_site-logo
|
|
||||||
- - title dans header: xxx_site-title
|
|
||||||
- - name dans header: xxx_site-name
|
|
||||||
- - Description dans header: xxx_site-description
|
|
||||||
- - ```<section>``` avant ```<article>```: xxx_page-wrapper
|
|
||||||
- - article: xxx_SLUG (SLUG est le "slug: SLUG" de l'article)
|
|
||||||
- - div metas (auteur, date...): xxx_metas
|
|
||||||
- - p dans div metas: xxx_auteur
|
|
||||||
|
|
||||||
### Dans ```<article>```
|
|
||||||
|
|
||||||
- CLASS=
|
|
||||||
- hX: xxx_title-X
|
|
||||||
- - div après chaque titre ```<hX>```: xxx_content-p xxx_content-pX
|
|
||||||
- - p dans div content-p: xxx_paragraph
|
|
||||||
- - - si contenu ```( 1z```: xxx_paragraph-1z
|
|
||||||
- - code pour les inline-code avec ```¤...¤```: xxx_icode
|
|
||||||
- strikee: xxx_strike
|
|
||||||
- - li (liste) en fonction du nombre N de ```= | +```: xxx__list-li x_list-N
|
|
||||||
- - ul (liste) simple: xxx_list-ul
|
|
||||||
- - ol (liste) ordonnée: xxx_list-ol
|
|
||||||
|
|
||||||
... more to be listed here
|
|
|
@ -1,4 +1,4 @@
|
||||||
## [0.0.93]
|
## [0.1.0]
|
||||||
|
|
||||||
## Please, see help (and documentations in help folder)
|
## Please, see help (and documentations in help folder)
|
||||||
|
|
||||||
|
@ -34,6 +34,7 @@
|
||||||
- - /var/log/gsl: for logs files (.gitkeep)
|
- - /var/log/gsl: for logs files (.gitkeep)
|
||||||
- New help folder in
|
- New help folder in
|
||||||
- - /var/lib/gsl/help (removed "helps" one)
|
- - /var/lib/gsl/help (removed "helps" one)
|
||||||
|
- - - Renamed documentation files (not all translated ; some in french)
|
||||||
|
|
||||||
### Logs
|
### Logs
|
||||||
- Better logs harmony
|
- Better logs harmony
|
||||||
|
@ -76,6 +77,7 @@
|
||||||
### new ARGUMENTS
|
### new ARGUMENTS
|
||||||
- new (page|post) (name): Create article, show its content + check it
|
- new (page|post) (name): Create article, show its content + check it
|
||||||
- new domain: New domain configuration creator
|
- new domain: New domain configuration creator
|
||||||
|
- new author: Same as author edit
|
||||||
- edit domains: Set/Edit registred domains database
|
- edit domains: Set/Edit registred domains database
|
||||||
- edit author: Same as author edit
|
- edit author: Same as author edit
|
||||||
- author edit: Opens nano to Add/Remove authors (one per line) by DOMAIN
|
- author edit: Opens nano to Add/Remove authors (one per line) by DOMAIN
|
||||||
|
@ -83,8 +85,8 @@
|
||||||
- check -N: Only check newer articles not in DB
|
- check -N: Only check newer articles not in DB
|
||||||
- clean all: Remove all backups (only) files
|
- clean all: Remove all backups (only) files
|
||||||
- sidebar: add|replace|latest|oldest (See gsl help)
|
- sidebar: add|replace|latest|oldest (See gsl help)
|
||||||
- www sync: Same as sync www
|
- www sync: Same as sync www (see gsl help)
|
||||||
- wip ...: Same as www but for wip
|
- wip ...: Same as www but for wip (see gsl help)
|
||||||
|
|
||||||
### Markers
|
### Markers
|
||||||
- css: MYCLASS Customize each article with your CSS (optional)
|
- css: MYCLASS Customize each article with your CSS (optional)
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
# Version: 0.0.93
|
# Version: 0.1.0
|
||||||
# file: gsl
|
# file: gsl
|
||||||
# Folder: /usr/local/bin
|
# Folder: /usr/local/bin
|
||||||
# By echolib (XMPP: im@echolib.re)
|
# By echolib (XMPP: im@echolib.re)
|
||||||
|
@ -69,11 +69,11 @@ case "$1" in
|
||||||
write|-w) cat "$gsl_dir_help/comment_ecrire-article.md" ;;
|
write|-w) cat "$gsl_dir_help/comment_ecrire-article.md" ;;
|
||||||
tpl|-T) cat "$gsl_dir_help/template-comment-creer.md" ;;
|
tpl|-T) cat "$gsl_dir_help/template-comment-creer.md" ;;
|
||||||
install|-i) cat "$gsl_dir_help/comment_installer-GSL.md" ;;
|
install|-i) cat "$gsl_dir_help/comment_installer-GSL.md" ;;
|
||||||
authors|-a) cat "$gsl_dir_help/how_to-add_remove_authors.md" ;;
|
authors|-a) cat "$gsl_dir_help/how-to_add_remove_authors.md" ;;
|
||||||
setdir|-d) cat "$gsl_dir_help/how_to-set_directory_for_articles.md" ;;
|
setdir|-d) cat "$gsl_dir_help/how-to_set_directory_for_articles.md" ;;
|
||||||
param|-p) cat "$gsl_dir_help/how_to-parameters_conf.md" ;;
|
param|-p) cat "$gsl_dir_help/how-to_parameters_conf.md" ;;
|
||||||
css) cat "$gsl_dir_help/how_to-CSS_classes.md" ;;
|
css) cat "$gsl_dir_help/how-to_CSS_classes.md" ;;
|
||||||
tips|-t) cat "$gsl_dir_help/how_to-Tips_Advises.md" ;;
|
tips|-t) cat "$gsl_dir_help/how-to_Tips_Advises.md" ;;
|
||||||
""|*) cat "$gsl_dir_help/gsl_help.md" ;;
|
""|*) cat "$gsl_dir_help/gsl_help.md" ;;
|
||||||
esac
|
esac
|
||||||
exit
|
exit
|
||||||
|
|
|
@ -4,6 +4,14 @@ GSL changes from releases. You can send an issue :
|
||||||
- repo: https://git.a-lec.org/echolib/gsl/-/issues
|
- repo: https://git.a-lec.org/echolib/gsl/-/issues
|
||||||
- Contact xmpp: im@echolib.re
|
- Contact xmpp: im@echolib.re
|
||||||
|
|
||||||
|
## [0.1.0]
|
||||||
|
### First beta release
|
||||||
|
- fix www/wip with add/remove options
|
||||||
|
- fix some innvalid HTML codes (strike uses span now)
|
||||||
|
- Renamed documentation files (not all translated ; some in french)
|
||||||
|
- RSS feed donc after all www (command) done
|
||||||
|
|
||||||
|
|
||||||
## [0.0.93]
|
## [0.0.93]
|
||||||
### New
|
### New
|
||||||
- Basic RSS feed created at each www (COMMAND)
|
- Basic RSS feed created at each www (COMMAND)
|
||||||
|
|
|
@ -1,10 +1,11 @@
|
||||||
# GSL: Statique Littérateur
|
# GSL: Statique Littérateur
|
||||||
------------------------------------------------------------------------
|
------------------------------------------------------------------------
|
||||||
|
|
||||||
GSL est un générateur de blogs/sites-web basé sur leur nom de domaine,
|
GSL est un générateur de blogs/sites-web multiples basé sur leur nom de
|
||||||
écrit en bash, afin de réduire ses dépendances au minimum. Les pages
|
domaine. Il est écrit en bash, afin de réduire ses dépendances au minimum.
|
||||||
générées sont presque entièrement statiques, à l'exception du module de
|
Les pages générées sont presque entièrement statiques, à l'exception du
|
||||||
liste des derniers articles (sidebar) placé en include. Nginx peut être
|
module de liste (sidebar) contenant les articles de votre choix.
|
||||||
|
GSL crée pour ce module un fichier appelé avec include. Nginx peut être
|
||||||
facilement configuré pour interprêter ce module.
|
facilement configuré pour interprêter ce module.
|
||||||
|
|
||||||
|
|
||||||
|
@ -21,7 +22,7 @@ facilement configuré pour interprêter ce module.
|
||||||
------------------------------------------------------------------------
|
------------------------------------------------------------------------
|
||||||
Une procédure d'installation via un setup est en préparation. Il est
|
Une procédure d'installation via un setup est en préparation. Il est
|
||||||
aussi possible et recommandé sous debian de l'installer grâce à son
|
aussi possible et recommandé sous debian de l'installer grâce à son
|
||||||
paquet deb (construit par make).
|
paquet deb (construit par make), amoureusement préparé par neox.
|
||||||
|
|
||||||
Pour une installation manuelle, clonez ce dépôt, et copiez les dossiers
|
Pour une installation manuelle, clonez ce dépôt, et copiez les dossiers
|
||||||
déjà pré-établis dans le système (avec sudo). GSL n'utilise pas sudo,
|
déjà pré-établis dans le système (avec sudo). GSL n'utilise pas sudo,
|
||||||
|
@ -34,26 +35,26 @@ Reportez-vous à la documentation dans le dossier help
|
||||||
|
|
||||||
# Comment configurer un domaine
|
# Comment configurer un domaine
|
||||||
------------------------------------------------------------------------
|
------------------------------------------------------------------------
|
||||||
Préparer un fichier de logo. L'important sera de renseigner le nom du
|
Préparer un fichier de logo. L'important sera de renseigner un nom du
|
||||||
fichier lors du questionnaire.
|
fichier sinon, lors du questionnaire.
|
||||||
|
|
||||||
Attention: GSL aura besoin de créer des sous-dossier dans le serveur,
|
Attention: GSL aura besoin de créer des sous-dossiers (par DOMAIN) dans
|
||||||
renseigné dans le questionnaire. (i.e. /var/www/). Il faut donc lui
|
le serveur, renseigné dans le questionnaire. (i.e. /var/www/). Il faut
|
||||||
donner les droits
|
donc lui donner les droits
|
||||||
|
|
||||||
```
|
```
|
||||||
$ gsl new) domain
|
$ gsl new domain
|
||||||
```
|
```
|
||||||
|
|
||||||
Des questions vous seront posées lorsque vous voudrez ajouter un domaine
|
Des questions vous seront posées lorsque vous voudrez ajouter un DOMAIN
|
||||||
(exemple.com). Les données renseignées seront utilisées pour créer la
|
(exemple.com). Les données renseignées seront utilisées pour créer la
|
||||||
configuration (voir la documentation d'installation)
|
configuration du DOMAIN et reprises pour le site/blog dédié.
|
||||||
|
|
||||||
|
|
||||||
## Définir un dossier pour les articles du DOMAIN
|
## Définir un dossier pour les articles du DOMAIN
|
||||||
------------------------------------------------------------------------
|
------------------------------------------------------------------------
|
||||||
Si ce n'est pas déjà fait par GSL, ou que vous voulez ajouter un dossier
|
Si ce n'est pas déjà fait par GSL, ou que vous voulez ajouter un dossier
|
||||||
pour y stocker vos articles bruts pour un DOMAIN précis :
|
pour y stocker vos articles bruts en .gsl pour un DOMAIN précis :
|
||||||
|
|
||||||
```
|
```
|
||||||
gsl help -d
|
gsl help -d
|
||||||
|
@ -61,19 +62,19 @@ cd MYFOLDER
|
||||||
gsl setdir
|
gsl setdir
|
||||||
```
|
```
|
||||||
|
|
||||||
ou:
|
ou manuellement:
|
||||||
- Aller dans/créer un dossier de votre choix
|
- Aller dans/créer un dossier de votre choix
|
||||||
- Créer dedans, un fichier vide nommé gsl.DOMAIAN (gsl.exemple.com)
|
- Créer dedans, un fichier vide nommé gsl.DOMAIN (gsl.exemple.com)
|
||||||
|
|
||||||
|
|
||||||
## Ajouter / retirer un auteur
|
## Ajouter / retirer un auteur
|
||||||
------------------------------------------------------------------------
|
------------------------------------------------------------------------
|
||||||
Après avoir enregistré un domain et configuré un dossier pour les
|
Après avoir enregistré un domain et configuré un dossier pour les
|
||||||
articles. **Un auteur par ligne !**
|
articles. Ajoutez un ou plusieurs auteurs. **Un auteur par ligne !**
|
||||||
|
|
||||||
```
|
```
|
||||||
cd MON-DOSSER-ARTICLES
|
cd MON-DOSSER-ARTICLES
|
||||||
gsl author edit
|
gsl new author
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
||||||
|
@ -91,18 +92,19 @@ gsl help -w
|
||||||
## Procédures de prévisualisation et mise en ligne
|
## Procédures de prévisualisation et mise en ligne
|
||||||
------------------------------------------------------------------------
|
------------------------------------------------------------------------
|
||||||
- gsl check monarticle.gsl (vérifie l'écriture en gsl)
|
- gsl check monarticle.gsl (vérifie l'écriture en gsl)
|
||||||
- gsl make monarticle.gsl (Connvertit en HTML - dossier wip)
|
- gsl make monarticle.gsl (Connvertit en HTML - dossier wip dans le serveur)
|
||||||
- gsl www add monarticle.gsl (copiel la page dans le dossier www)
|
- gsl www add monarticle.gsl (copie la page dans le dossier www)
|
||||||
|
|
||||||
|
|
||||||
# Comment gérer la sidebar
|
# Comment gérer la sidebar
|
||||||
------------------------------------------------------------------------
|
------------------------------------------------------------------------
|
||||||
La gestion de la sidebar est manuelle. Un article doit être convertit
|
La gestion de la sidebar est manuelle. Un article doit être convertit
|
||||||
avec make avant de pouvoir l'ajouter à la position ddsirée. Le nombre
|
avec make avant de pouvoir l'ajouter à la position désirée. Le nombre
|
||||||
d'articles maximum dans la sidebar est configurable dans le fichier de
|
d'articles maximum dans la sidebar est configurable dans le fichier de
|
||||||
configuration du domaine (DOMAIN.conf)
|
configuration du domaine (DOMAIN.conf) (via le questionnaire)
|
||||||
|
|
||||||
```
|
```
|
||||||
|
gsl sidebar latest
|
||||||
gsl sidebar replace 2 monarticle.gsl
|
gsl sidebar replace 2 monarticle.gsl
|
||||||
```
|
```
|
||||||
|
|
||||||
|
@ -118,6 +120,8 @@ gsl www add mona<TAB>
|
||||||
# Help
|
# Help
|
||||||
------------------------------------------------------------------------
|
------------------------------------------------------------------------
|
||||||
```
|
```
|
||||||
|
# GSL: Statique Littérateur
|
||||||
|
|
||||||
$ gsl (ARG)
|
$ gsl (ARG)
|
||||||
readme : Show README.md instructions
|
readme : Show README.md instructions
|
||||||
help | -h (OPT) : This Help and how to
|
help | -h (OPT) : This Help and how to
|
||||||
|
@ -125,7 +129,6 @@ $ gsl (ARG)
|
||||||
authors | -a : Add/Remove authors for this DOMAIN
|
authors | -a : Add/Remove authors for this DOMAIN
|
||||||
setdir | -d : Set a directory for article's DOMAIN
|
setdir | -d : Set a directory for article's DOMAIN
|
||||||
write | -w : Write a Post
|
write | -w : Write a Post
|
||||||
tpl | -T : Create your template
|
|
||||||
param | -p : Configure some parameters
|
param | -p : Configure some parameters
|
||||||
css : Show used CSS classes
|
css : Show used CSS classes
|
||||||
tips | -t : Show tips and advises you should know
|
tips | -t : Show tips and advises you should know
|
||||||
|
@ -137,7 +140,7 @@ $ gsl (ARG)
|
||||||
|
|
||||||
setdir | -D : Show current directory DOMAIN or set it
|
setdir | -D : Show current directory DOMAIN or set it
|
||||||
|
|
||||||
log | -L (OPTS) : Show logs from all sessions
|
log | -L (OPT) : Show logs from all sessions
|
||||||
clean | -C : Logs saved to {DATE}.gsl.log and cleaned
|
clean | -C : Logs saved to {DATE}.gsl.log and cleaned
|
||||||
all : clean all saved logs, keep current
|
all : clean all saved logs, keep current
|
||||||
-i | -w | -e : from levels (infos, warnings, errors)
|
-i | -w | -e : from levels (infos, warnings, errors)
|
||||||
|
@ -154,16 +157,16 @@ $ gsl (ARG)
|
||||||
domain : Domains registred database
|
domain : Domains registred database
|
||||||
(FILE) : (FILE) ; .gsl
|
(FILE) : (FILE) ; .gsl
|
||||||
|
|
||||||
db (FILE) : Show DB statuses from (FILE)
|
db (FILE) : Show DB datas from (FILE)
|
||||||
|
|
||||||
sync (OPT) : Sync Templates to www and wip
|
sync (OPT) : Sync Templates to www and wip
|
||||||
wip : Only to wip server (also done with make)
|
wip : Only to wip server (also done with make)
|
||||||
www : Only to www server (also done with www)
|
www : Only to www server (also done with www)
|
||||||
|
|
||||||
|
|
||||||
check | -C (OPTIONS) : Check Post(s) errors from PWD folder
|
check | -C (OPTI) : Check Post(s) errors from PWD folder
|
||||||
-N : Check only articles not in DB
|
-N : Check only articles not in DB
|
||||||
-F : Force Check again ; Recreate in Database
|
-F : Force Check again ; Create Database
|
||||||
(FILE) : Only this (FILE)
|
(FILE) : Only this (FILE)
|
||||||
|
|
||||||
make | -M (OPTIONS) : Make all HTML articles or only (FILE)
|
make | -M (OPTIONS) : Make all HTML articles or only (FILE)
|
||||||
|
@ -173,21 +176,24 @@ $ gsl (ARG)
|
||||||
www (OPT1) (OPT2) : Add/Remove Post(s) in www server
|
www (OPT1) (OPT2) : Add/Remove Post(s) in www server
|
||||||
(OPT1):
|
(OPT1):
|
||||||
sync : Same as "sync www"
|
sync : Same as "sync www"
|
||||||
add : Add all/(FILE) to www server
|
add : Add (OPT2) to www server
|
||||||
rmove : remove all/(FILE) from www server
|
remove : remove (OPT2) from www server
|
||||||
(OPT2):
|
(OPT2):
|
||||||
all : Select all post with wip statuses
|
all : Select all post with wip statuses (FORCE !)
|
||||||
(FILE) : Select specific post (if wip status)
|
(FILE) : Select specific post (if wip status)
|
||||||
|
|
||||||
wip : Same as www for wip
|
wip : Same as www for wip server
|
||||||
|
add : Same as make -F (i.e. gsl wip add all)
|
||||||
|
|
||||||
sidebar | -S : Show Posts in list (ARG) (POS) (FILE)
|
sidebar | -S : Show Posts in list (ARG) (POS) (FILE)
|
||||||
(ARG):
|
(ARG):
|
||||||
add | -a : Put article at (POS). Remove last, roll from (POS)
|
add | -a : Put article at (POS). Remove last, roll from (POS)
|
||||||
replace | -r : Replace (POS) with article
|
replace | -r : Replace (POS) with article
|
||||||
latest | -l : Create sidebar with latest (remove all existing)
|
latest | -l : Create sidebar with latest (remove all existing)
|
||||||
|
oldest | -o : Same as above, but with oldest first
|
||||||
|
|
||||||
-v : Show local versionn
|
-v : Show local versionn
|
||||||
--version : Like -v + changes
|
--version : Like -v + changes
|
||||||
-vv : Shown local and repo Versions
|
-vv : Shown local and repo Versions
|
||||||
|
|
||||||
```
|
```
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
Vous pouvez créer un article daté du jour avec les METAS obligatoires
|
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
|
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
|
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 enn
|
bas), et lui donner un nom. Les metas optionnelles sont ajoutées en
|
||||||
commentaires.
|
commentaires.
|
||||||
|
|
||||||
Rendez vous dans le dossier de vos articles, enregistrés lors de l'ajout
|
Rendez vous dans le dossier de vos articles, enregistrés lors de l'ajout
|
||||||
|
@ -12,15 +12,17 @@ de votre domaine (ou celui que vous avez configuré).
|
||||||
Mettez des guillemets pour les nom du fichier avec espaces.
|
Mettez des guillemets pour les nom du fichier avec espaces.
|
||||||
|
|
||||||
```
|
```
|
||||||
# Crréer une page nommée index (deviendra /index.html)
|
# Créer une page nommée index (deviendra /index.html)
|
||||||
gsl new page index
|
gsl new page index
|
||||||
|
|
||||||
# Créer un article nommé "mes vacances"
|
# Créer un article nommé "mes vacances"
|
||||||
gsl ew post "mes vacances"
|
gsl new post "mes vacances"
|
||||||
```
|
```
|
||||||
|
|
||||||
Vous pouvez l'éditer dans le terminal ou avec votre éditeur de texte, en
|
Vous pouvez l'éditer dans le terminal en utilisant l'autocompletion
|
||||||
utilisant l'autocompletion (<tab>)
|
(<tab>), 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"
|
gsl edit "mes vacances.gsl"
|
||||||
|
@ -41,11 +43,11 @@ l'article à partir de ce repère (servant de titre h1).
|
||||||
```
|
```
|
||||||
type: page
|
type: page
|
||||||
title: POST TITLE
|
title: POST TITLE
|
||||||
slug: MY-SLUG (si espaces, GSL les convertira en -)
|
slug: MY-SLUG (si espaces, GSL les convertira en -)
|
||||||
info: DESCRIPTION (À propos de cet article)
|
info: DESCRIPTION (À propos de cet article)
|
||||||
author: NAME (doit être enregistré via la commande: gsl author edit
|
author: NAME (doit être enregistré via la commande: gsl author edit
|
||||||
date: YYYY-MM-DD
|
date: YYYY-MM-DD (ou DD-MM-YYY si DOMAIN configuré en fr)
|
||||||
tags: TAG1,Mon TAG2,TAG3 (séparé par une virgule)
|
tags: TAG1,Mon TAG2 (séparé par une virgule)
|
||||||
```
|
```
|
||||||
|
|
||||||
### Page ou Article ?
|
### Page ou Article ?
|
||||||
|
@ -53,14 +55,14 @@ Vous devez spécifier pour chaque article si c'est une **page** ou un
|
||||||
**post**
|
**post**
|
||||||
|
|
||||||
#### Page (index, 404, about...)
|
#### Page (index, 404, about...)
|
||||||
Création HTML à la racine selon le slug: /MY-SLUG.html
|
Création HTML à la racine du serveur selon le slug: /MY-SLUG.html
|
||||||
|
|
||||||
```
|
```
|
||||||
type: page
|
type: page
|
||||||
slug: 404
|
slug: 404
|
||||||
```
|
```
|
||||||
|
|
||||||
#### Post (monarticle)
|
#### Post (mon article)
|
||||||
Création HTML dans un dossier selon le slug: /MY-SLUG/index.html
|
Création HTML dans un dossier selon le slug: /MY-SLUG/index.html
|
||||||
**! Le slug ne doit pas commencer par un /**
|
**! Le slug ne doit pas commencer par un /**
|
||||||
|
|
||||||
|
@ -81,7 +83,7 @@ Définir un ou plusieurs de ces marqueurs et utiliser ``` : ``` comme
|
||||||
séparateur
|
séparateur
|
||||||
|
|
||||||
```
|
```
|
||||||
abbr: COURT : LONG
|
abbr: COURT : Long
|
||||||
file: NOM : NOM-DU-FICHIER : Text alternatif
|
file: NOM : NOM-DU-FICHIER : Text alternatif
|
||||||
link: NOM : URL : Text alternatif
|
link: NOM : URL : Text alternatif
|
||||||
code: NUMERO : NOM-DU-FICHIER : Text alternatif
|
code: NUMERO : NOM-DU-FICHIER : Text alternatif
|
||||||
|
@ -90,7 +92,7 @@ image: NUMERO : NOM-DU-FICHIER : TEXT-ALTERNATIF
|
||||||
```
|
```
|
||||||
|
|
||||||
## Contenu de l'article:
|
## Contenu de l'article:
|
||||||
Les marqueurs (hors listes) *et leur contenu* (ex: ```__monfichier...```)
|
Les marqueurs (hors listes) *et leur contenu* (ex: ```·ceci est en gras·```)
|
||||||
**doivent être sur la même ligne**.
|
**doivent être sur la même ligne**.
|
||||||
|
|
||||||
Les marqueurs à retenir et leur Combinaison de touches sur un clavier
|
Les marqueurs à retenir et leur Combinaison de touches sur un clavier
|
||||||
|
@ -115,7 +117,7 @@ il ad•juge• : pas de pub !
|
||||||
Dans l'article...
|
Dans l'article...
|
||||||
|
|
||||||
```
|
```
|
||||||
·Tout est en gras·
|
·Texte en gras·
|
||||||
```
|
```
|
||||||
|
|
||||||
### Écrire en Italique
|
### Écrire en Italique
|
||||||
|
@ -153,9 +155,8 @@ Les propriétés CSS ne sont pas définies
|
||||||
```
|
```
|
||||||
|
|
||||||
### Paragraphes
|
### Paragraphes
|
||||||
Au début d'une nouvelle ligne, ouvrez avec ( et fermez avec ).
|
- Ouvrir avec ```(``` et fermez avec ```)``` **Au début d'une nouvelle ligne**.
|
||||||
Vous pouvez définir le nom de la classe du paragraphe en ajoutant la
|
- Définir le nom de la classe du paragraphe,par exemple : "p3" (optionnel)
|
||||||
valeur désirée ; par exemple : p3
|
|
||||||
|
|
||||||
Dans l'article...
|
Dans l'article...
|
||||||
```
|
```
|
||||||
|
@ -164,19 +165,19 @@ Paragraphe avec une classe p3 en css
|
||||||
)
|
)
|
||||||
|
|
||||||
(
|
(
|
||||||
Paragraphe sans classe
|
Paragraphe sans classe personnalisée
|
||||||
)
|
)
|
||||||
```
|
```
|
||||||
|
|
||||||
### Liens
|
### Liens
|
||||||
Définir en METAS
|
Définir en METAS...
|
||||||
|
|
||||||
```
|
```
|
||||||
link: Mon lien : URL : Alt text
|
link: Mon lien : URL : Alt text
|
||||||
link: https://a-lec.org/ : URL : Alt text
|
link: https://a-lec.org/ : URL : Alt text
|
||||||
```
|
```
|
||||||
|
|
||||||
Dans l'article..
|
Dans l'article...
|
||||||
- Écrivez ```_``` devant le nom du lien
|
- Écrivez ```_``` devant le nom du lien
|
||||||
- Ajoutez ```+``` pour ouvrir le lien dans un nouvel onglet
|
- Ajoutez ```+``` pour ouvrir le lien dans un nouvel onglet
|
||||||
|
|
||||||
|
@ -193,7 +194,7 @@ file: Mon fichier : FILENAME : ALT-TEXT
|
||||||
|
|
||||||
Dans l'article...
|
Dans l'article...
|
||||||
```
|
```
|
||||||
__Mon fichier
|
__Mon fichier est super léger
|
||||||
```
|
```
|
||||||
|
|
||||||
### Images
|
### Images
|
||||||
|
@ -205,19 +206,20 @@ image: 2 : FILENAME : ALT-TEXT
|
||||||
```
|
```
|
||||||
|
|
||||||
Dans l'article...
|
Dans l'article...
|
||||||
Définir le marqueur ```_image``` sur une seule ligne et spécifiez les
|
Définir le marqueur ```_image``` et spécifiez les
|
||||||
valeurs séparées par ```:```. ```+``` indique l'ouverture dans une
|
valeurs séparées par ```:```. ```+``` indique l'ouverture dans une
|
||||||
nouvelle fenêtre. Seuls le "numéro d'image" est obligatoire
|
nouvelle fenêtre. Seuls le "numéro d'image" est obligatoire
|
||||||
|
|
||||||
|
Les valeurs:
|
||||||
- Numero d'image
|
- Numero d'image
|
||||||
- Alignement: l,r,(g,d également),c pour gauche, droite, centre)
|
- Alignement: l,r,(g,d également),c pour gauche, droite, centre)
|
||||||
- - maclasse au lieu de l,r,c pour utiliser la classe css "maclasse"
|
- - maclasse au lieu de l,r,g,d,c pour utiliser la classe css "maclasse"
|
||||||
- - + (class="center")
|
- - + (class="center")
|
||||||
- Longueur width: (avec unité)
|
- Longueur width: (avec unité)
|
||||||
- - + (taille originale)
|
- - + (taille originale)
|
||||||
- Largeur height: (avec unité)
|
- Largeur height: (avec unité)
|
||||||
- - + (longueur définie, largeur originale)
|
- - + (longueur définie, largeur originale)
|
||||||
- Champ non vide: Lien de l'image dans un nouvel onglet
|
- + (Lien de l'image dans un nouvel onglet)
|
||||||
|
|
||||||
Exemple d'images affichées l'une à côté de l'autre
|
Exemple d'images affichées l'une à côté de l'autre
|
||||||
|
|
||||||
|
@ -255,7 +257,7 @@ _code:python
|
||||||
```
|
```
|
||||||
|
|
||||||
### IMPORT de code brut (sera exécuté par le navigateur)
|
### IMPORT de code brut (sera exécuté par le navigateur)
|
||||||
Définir en METAS
|
Définir en METAS...
|
||||||
|
|
||||||
```
|
```
|
||||||
brut : 1 : FILENAME
|
brut : 1 : FILENAME
|
||||||
|
@ -267,8 +269,9 @@ _brut:1
|
||||||
```
|
```
|
||||||
|
|
||||||
### Citation simple
|
### Citation simple
|
||||||
Définissez un bloc pour la citation. Utilisez ```---```
|
Commun aux citations :
|
||||||
Vous pouvez définir une classe CSS spécifique ```--- ma-classe-css```
|
- Définir un bloc pour la citation. Utilisez ```---```
|
||||||
|
- Définir une classe CSS spécifique ```--- ma-classe-css``` (optionnel)
|
||||||
|
|
||||||
Dans l'article...
|
Dans l'article...
|
||||||
|
|
||||||
|
@ -310,7 +313,7 @@ _book: Esperanza 64
|
||||||
### Créer des listes
|
### Créer des listes
|
||||||
L'arborescence est "infinie".
|
L'arborescence est "infinie".
|
||||||
- Définir le début d'une liste par ```<<``` et sa fin par ```>>```
|
- Définir le début d'une liste par ```<<``` et sa fin par ```>>```
|
||||||
- Définir une classe CSS après ```<< ```
|
- Définir une classe CSS après ```<< ``` (optionnel)
|
||||||
|
|
||||||
Dans l'article...
|
Dans l'article...
|
||||||
- utilisez ```=``` pour définir une liste simple (ul)
|
- utilisez ```=``` pour définir une liste simple (ul)
|
||||||
|
|
|
@ -16,24 +16,25 @@ droits en écriture des dossiers
|
||||||
```
|
```
|
||||||
# Pour le dossier du binaire
|
# Pour le dossier du binaire
|
||||||
sudo rsync -a usr/local/bin/gsl /usr/local/bin/gsl
|
sudo rsync -a usr/local/bin/gsl /usr/local/bin/gsl
|
||||||
sudo chown USER:GROUP/usr/local/bin/gsl
|
sudo chown USER:GROUP /usr/local/bin/gsl
|
||||||
|
|
||||||
# Pour les dossiers de scripts
|
# Pour les dossiers de scripts
|
||||||
sudo mkdir -p "/var/lib/gsl"
|
sudo mkdir -p "/var/lib/gsl"
|
||||||
sudo chown -R USER:GROUP "/var/lib/gsl"
|
sudo chown -R USER:GROUP /var/lib/gsl
|
||||||
rsync -a var/lib/gsl/ /var/lib/gsl/
|
rsync -a var/lib/gsl/ /var/lib/gsl/
|
||||||
|
|
||||||
# Pour le dossier de logs
|
# Pour le dossier de logs
|
||||||
sudo mkdir -p "/var/log/gsl"
|
sudo mkdir -p "/var/log/gsl"
|
||||||
sudo chown -R USER:GROUP "/var/log/gsl"
|
sudo chown -R USER:GROUP /var/log/gsl
|
||||||
|
|
||||||
# Pour le dossier de configuration
|
# Pour le dossier de configuration
|
||||||
sudo mkdir -p /etc/gsl
|
sudo mkdir -p /etc/gsl
|
||||||
sudo chown -R USER:GROUP "/etc/gsl"
|
sudo chown -R USER:GROUP /etc/gsl
|
||||||
|
rsync -a etc/gsl/ /etc/gsl/
|
||||||
|
|
||||||
# Pour l'autocompletion des articles dans la commande
|
# Pour l'autocompletion des articles dans la commande
|
||||||
sudo rsync -a usr/share/bash-completion/completions/gsl /usr/share/bash-completion/completions/gsl
|
sudo rsync -a usr/share/bash-completion/completions/gsl /usr/share/bash-completion/completions/gsl
|
||||||
sudo chown USER:GROUP "/usr/share/bash-completion/completions/gsl"
|
sudo chown USER:GROUP /usr/share/bash-completion/completions/gsl
|
||||||
```
|
```
|
||||||
|
|
||||||
Attention: GSL aura besoin de créer des sous-dossier dans le serveur,
|
Attention: GSL aura besoin de créer des sous-dossier dans le serveur,
|
||||||
|
@ -42,7 +43,9 @@ donner les droits
|
||||||
|
|
||||||
# Arborescence des dossiers utilisés par GSL
|
# Arborescence des dossiers utilisés par GSL
|
||||||
------------------------------------------------------------------------
|
------------------------------------------------------------------------
|
||||||
Note: ```+``` indique que GSL créera ces dossiers
|
Note:
|
||||||
|
- ```+``` indique que GSL créera ces dossiers
|
||||||
|
- DOMAIN représente le nom de domaine renseigné dans le questionnaire
|
||||||
|
|
||||||
- /etc/gsl
|
- /etc/gsl
|
||||||
- /var/log/gsl
|
- /var/log/gsl
|
||||||
|
@ -50,7 +53,7 @@ Note: ```+``` indique que GSL créera ces dossiers
|
||||||
- - /help/
|
- - /help/
|
||||||
- - /scripts/
|
- - /scripts/
|
||||||
- - /domains
|
- - /domains
|
||||||
- - - /DOMAIN
|
- - - /DOMAIN +
|
||||||
- - - - /templates/ +
|
- - - - /templates/ +
|
||||||
- - - - /files/ +
|
- - - - /files/ +
|
||||||
- - - - /images/ +
|
- - - - /images/ +
|
||||||
|
@ -60,11 +63,11 @@ Note: ```+``` indique que GSL créera ces dossiers
|
||||||
- - - /DOMAIN +
|
- - - /DOMAIN +
|
||||||
|
|
||||||
- /SRV (i.e. /var/www)
|
- /SRV (i.e. /var/www)
|
||||||
- - /DOMAIN
|
- - /DOMAIN +
|
||||||
- - - /wip
|
- - - /wip +
|
||||||
- - - - /TEMPLATE (sync wip (command) from /var/lib/gsl/domains/DOMAIN/)
|
- - - - /TEMPLATE (sync wip (command) from /var/lib/gsl/domains/DOMAIN/) +
|
||||||
- - - /www
|
- - - /www +
|
||||||
- - - - /TEMPLATE (sync www (command) from /var/lib/gsl/domains/DOMAIN/)
|
- - - - /TEMPLATE (sync www (command) from /var/lib/gsl/domains/DOMAIN/) +
|
||||||
|
|
||||||
|
|
||||||
# Fichiers créés par GSL
|
# Fichiers créés par GSL
|
||||||
|
@ -81,4 +84,4 @@ Note: ```+``` indique que GSL créera ces dossiers
|
||||||
- - /db/
|
- - /db/
|
||||||
- - - domains.db (registred domains)
|
- - - domains.db (registred domains)
|
||||||
- - - DOMAIN/
|
- - - DOMAIN/
|
||||||
- - - - (file).gsl.db (Un par article)
|
- - - - (article).gsl.db (un par article)
|
||||||
|
|
|
@ -7,7 +7,6 @@ $ gsl (ARG)
|
||||||
authors | -a : Add/Remove authors for this DOMAIN
|
authors | -a : Add/Remove authors for this DOMAIN
|
||||||
setdir | -d : Set a directory for article's DOMAIN
|
setdir | -d : Set a directory for article's DOMAIN
|
||||||
write | -w : Write a Post
|
write | -w : Write a Post
|
||||||
tpl | -T : Create your template
|
|
||||||
param | -p : Configure some parameters
|
param | -p : Configure some parameters
|
||||||
css : Show used CSS classes
|
css : Show used CSS classes
|
||||||
tips | -t : Show tips and advises you should know
|
tips | -t : Show tips and advises you should know
|
||||||
|
@ -19,7 +18,7 @@ $ gsl (ARG)
|
||||||
|
|
||||||
setdir | -D : Show current directory DOMAIN or set it
|
setdir | -D : Show current directory DOMAIN or set it
|
||||||
|
|
||||||
log | -L (OPTS) : Show logs from all sessions
|
log | -L (OPT) : Show logs from all sessions
|
||||||
clean | -C : Logs saved to {DATE}.gsl.log and cleaned
|
clean | -C : Logs saved to {DATE}.gsl.log and cleaned
|
||||||
all : clean all saved logs, keep current
|
all : clean all saved logs, keep current
|
||||||
-i | -w | -e : from levels (infos, warnings, errors)
|
-i | -w | -e : from levels (infos, warnings, errors)
|
||||||
|
@ -36,16 +35,16 @@ $ gsl (ARG)
|
||||||
domain : Domains registred database
|
domain : Domains registred database
|
||||||
(FILE) : (FILE) ; .gsl
|
(FILE) : (FILE) ; .gsl
|
||||||
|
|
||||||
db (FILE) : Show DB statuses from (FILE)
|
db (FILE) : Show DB datas from (FILE)
|
||||||
|
|
||||||
sync (OPT) : Sync Templates to www and wip
|
sync (OPT) : Sync Templates to www and wip
|
||||||
wip : Only to wip server (also done with make)
|
wip : Only to wip server (also done with make)
|
||||||
www : Only to www server (also done with www)
|
www : Only to www server (also done with www)
|
||||||
|
|
||||||
|
|
||||||
check | -C (OPTIONS) : Check Post(s) errors from PWD folder
|
check | -C (OPTI) : Check Post(s) errors from PWD folder
|
||||||
-N : Check only articles not in DB
|
-N : Check only articles not in DB
|
||||||
-F : Force Check again ; Recreate in Database
|
-F : Force Check again ; Create Database
|
||||||
(FILE) : Only this (FILE)
|
(FILE) : Only this (FILE)
|
||||||
|
|
||||||
make | -M (OPTIONS) : Make all HTML articles or only (FILE)
|
make | -M (OPTIONS) : Make all HTML articles or only (FILE)
|
||||||
|
@ -55,19 +54,21 @@ $ gsl (ARG)
|
||||||
www (OPT1) (OPT2) : Add/Remove Post(s) in www server
|
www (OPT1) (OPT2) : Add/Remove Post(s) in www server
|
||||||
(OPT1):
|
(OPT1):
|
||||||
sync : Same as "sync www"
|
sync : Same as "sync www"
|
||||||
add : Add all/(FILE) to www server
|
add : Add (OPT2) to www server
|
||||||
rmove : remove all/(FILE) from www server
|
remove : remove (OPT2) from www server
|
||||||
(OPT2):
|
(OPT2):
|
||||||
all : Select all post with wip statuses
|
all : Select all post with wip statuses (FORCE !)
|
||||||
(FILE) : Select specific post (if wip status)
|
(FILE) : Select specific post (if wip status)
|
||||||
|
|
||||||
wip : Same as www for wip
|
wip : Same as www for wip server
|
||||||
|
add : Same as make -F (i.e. gsl wip add all)
|
||||||
|
|
||||||
sidebar | -S : Show Posts in list (ARG) (POS) (FILE)
|
sidebar | -S : Show Posts in list (ARG) (POS) (FILE)
|
||||||
(ARG):
|
(ARG):
|
||||||
add | -a : Put article at (POS). Remove last, roll from (POS)
|
add | -a : Put article at (POS). Remove last, roll from (POS)
|
||||||
replace | -r : Replace (POS) with article
|
replace | -r : Replace (POS) with article
|
||||||
latest | -l : Create sidebar with latest (remove all existing)
|
latest | -l : Create sidebar with latest (remove all existing)
|
||||||
|
oldest | -o : Same as above, but with oldest first
|
||||||
|
|
||||||
-v : Show local versionn
|
-v : Show local versionn
|
||||||
--version : Like -v + changes
|
--version : Like -v + changes
|
||||||
|
|
|
@ -23,7 +23,7 @@ X is 1 to 6 from current title
|
||||||
- bold: xxx_bold
|
- bold: xxx_bold
|
||||||
- strong: xxx_strong
|
- strong: xxx_strong
|
||||||
- emphasis: xxx_em
|
- emphasis: xxx_em
|
||||||
- strike: xxx_strike
|
- strike: xxx_strike (span)
|
||||||
- inline code: xxx_icode
|
- inline code: xxx_icode
|
||||||
|
|
||||||
### Paragraphs
|
### Paragraphs
|
||||||
|
@ -46,11 +46,11 @@ myclass is from content marker (i.e. _image:1:myclass:90:90:+)
|
||||||
|
|
||||||
### pre-codes from source file
|
### pre-codes from source file
|
||||||
X is the NAME/NBR registred in header
|
X is the NAME/NBR registred in header
|
||||||
- pre: xxx_code-block xxx_code-block-X
|
- pre: xxx_code-block xxx_code-block-X
|
||||||
- span line: xxx_code-line
|
- span line: xxx_code-line
|
||||||
- span content: xxx_code-content
|
- span content: xxx_code-content
|
||||||
- p after pre: xxx_code-p
|
- div after pre: xxx_code-p
|
||||||
- link source: xxx_code-link
|
- link source: xxx_code-link
|
||||||
|
|
||||||
### Liste (ol | ul | li)
|
### Liste (ol | ul | li)
|
||||||
X is the item mark nbr (i.e. "+++" = 3, "=" = 1)
|
X is the item mark nbr (i.e. "+++" = 3, "=" = 1)
|
|
@ -25,10 +25,22 @@ _image:1:+
|
||||||
_image:1:c:640px:+
|
_image:1:c:640px:+
|
||||||
```
|
```
|
||||||
|
|
||||||
## Make (changes in source file)
|
## Make (changes in your template)
|
||||||
If you change the content of a file (script code, image...), you will
|
If you change the content of a file in your template
|
||||||
have to make -F your article, and do www add after
|
(script code, image, footer...), and you want ALL your articles to be
|
||||||
|
updated, you will have to :
|
||||||
|
- gsl sync
|
||||||
|
- gsl make -F
|
||||||
|
- gsl www add all
|
||||||
|
|
||||||
|
For only one article (myarticle).gsl:
|
||||||
|
- gsl sync
|
||||||
|
- gsl make -F (myarticle) (preview it first with wip server)
|
||||||
|
- gsl www remove (myarticle)
|
||||||
|
- gsl www add (myarticle)
|
||||||
|
|
||||||
## Sidebar
|
## Sidebar
|
||||||
If your remove a www or wip page, and you put it in sidebar,
|
If your remove a www or wip page, and you have put it in the sidebar,
|
||||||
do not forget to replace it with another article
|
do not forget to replace it with another article. You can also have an
|
||||||
|
automatic sidebar with
|
||||||
|
- gsl sidebar latest
|
|
@ -1,69 +0,0 @@
|
||||||
# Créer un Template
|
|
||||||
------------------------------------------------------------------------
|
|
||||||
|
|
||||||
Vous devrez pour que votre site soit à vôtre goût créer et définir les
|
|
||||||
styles dans styles.css. Placez ce fichier (en fonction du choix de votre
|
|
||||||
configuration du DOMAIN) dans :
|
|
||||||
- HOME: ~/.config/gsl/domains/DOMAIN/templates/
|
|
||||||
- GLOBAL: /var/lib/gsl/domains/DOMAIN/templates/
|
|
||||||
|
|
||||||
Concernant les contenus images et fichiers dans vos articles, placez-les
|
|
||||||
dans les dossiers
|
|
||||||
- .../templates/images
|
|
||||||
- .../templates/files
|
|
||||||
|
|
||||||
Astuce: Une fois votre article créé, vous verrez dans sa source HTML que
|
|
||||||
beaucoup d'éléments ont une class="ACRONYM_uneclass". Utilisez
|
|
||||||
ces classes dans style.css pour décorer votre site à votre goût.
|
|
||||||
|
|
||||||
Pour mettre à jour et voir vos modifications de styles
|
|
||||||
|
|
||||||
```
|
|
||||||
gsl sync
|
|
||||||
```
|
|
||||||
|
|
||||||
GSL synchronisera votre template sur votre webserver.
|
|
||||||
Rechargez votre page dans votre navigateur
|
|
||||||
|
|
||||||
Si vous avez modifié header.html ou footer.html dans votre dossier
|
|
||||||
/templates, ou si de nouvelles fonctions sont arrivées et concernent les
|
|
||||||
pages HTML dans GSL, il vous faudra reconstruire toutes les pages
|
|
||||||
|
|
||||||
```
|
|
||||||
gsl make -F
|
|
||||||
```
|
|
||||||
|
|
||||||
## Listes de classes utilisées.
|
|
||||||
|
|
||||||
Rappel: les classes et IDs commencent par votre ACRONYM configuré,
|
|
||||||
lors de la création d'un domaine avec ```gsl new```, suivi par ```_```.
|
|
||||||
Pour une meilleure lisibilité, votre ACRONYM est marqué xxx.
|
|
||||||
|
|
||||||
### Dans body, header
|
|
||||||
|
|
||||||
- ID=
|
|
||||||
- - body: xxx_page
|
|
||||||
- - header: xxx_banner
|
|
||||||
- - logo dans header: xxx_site-logo
|
|
||||||
- - title dans header: xxx_site-title
|
|
||||||
- - name dans header: xxx_site-name
|
|
||||||
- - Description dans header: xxx_site-description
|
|
||||||
- - ```<section>``` avant ```<article>```: xxx_page-wrapper
|
|
||||||
- - article: xxx_SLUG (SLUG est le "slug: SLUG" de l'article)
|
|
||||||
- - div metas (auteur, date...): xxx_metas
|
|
||||||
- - p dans div metas: xxx_auteur
|
|
||||||
|
|
||||||
### Dans ```<article>```
|
|
||||||
|
|
||||||
- CLASS=
|
|
||||||
- hX: xxx_title-X
|
|
||||||
- - div après chaque titre ```<hX>```: xxx_content-p xxx_content-pX
|
|
||||||
- - p dans div content-p: xxx_paragraph
|
|
||||||
- - - si contenu ```( 1z```: xxx_paragraph-1z
|
|
||||||
- - code pour les inline-code avec ```¤...¤```: xxx_icode
|
|
||||||
- strikee: xxx_strike
|
|
||||||
- - li (liste) en fonction du nombre N de ```= | +```: xxx__list-li x_list-N
|
|
||||||
- - ul (liste) simple: xxx_list-ul
|
|
||||||
- - ol (liste) ordonnée: xxx_list-ol
|
|
||||||
|
|
||||||
... more to be listed here
|
|
|
@ -1,4 +1,4 @@
|
||||||
## [0.0.93]
|
## [0.1.0]
|
||||||
|
|
||||||
## Please, see help (and documentations in help folder)
|
## Please, see help (and documentations in help folder)
|
||||||
|
|
||||||
|
@ -34,6 +34,7 @@
|
||||||
- - /var/log/gsl: for logs files (.gitkeep)
|
- - /var/log/gsl: for logs files (.gitkeep)
|
||||||
- New help folder in
|
- New help folder in
|
||||||
- - /var/lib/gsl/help (removed "helps" one)
|
- - /var/lib/gsl/help (removed "helps" one)
|
||||||
|
- - - Renamed documentation files (not all translated ; some in french)
|
||||||
|
|
||||||
### Logs
|
### Logs
|
||||||
- Better logs harmony
|
- Better logs harmony
|
||||||
|
@ -76,6 +77,7 @@
|
||||||
### new ARGUMENTS
|
### new ARGUMENTS
|
||||||
- new (page|post) (name): Create article, show its content + check it
|
- new (page|post) (name): Create article, show its content + check it
|
||||||
- new domain: New domain configuration creator
|
- new domain: New domain configuration creator
|
||||||
|
- new author: Same as author edit
|
||||||
- edit domains: Set/Edit registred domains database
|
- edit domains: Set/Edit registred domains database
|
||||||
- edit author: Same as author edit
|
- edit author: Same as author edit
|
||||||
- author edit: Opens nano to Add/Remove authors (one per line) by DOMAIN
|
- author edit: Opens nano to Add/Remove authors (one per line) by DOMAIN
|
||||||
|
@ -83,8 +85,8 @@
|
||||||
- check -N: Only check newer articles not in DB
|
- check -N: Only check newer articles not in DB
|
||||||
- clean all: Remove all backups (only) files
|
- clean all: Remove all backups (only) files
|
||||||
- sidebar: add|replace|latest|oldest (See gsl help)
|
- sidebar: add|replace|latest|oldest (See gsl help)
|
||||||
- www sync: Same as sync www
|
- www sync: Same as sync www (see gsl help)
|
||||||
- wip ...: Same as www but for wip
|
- wip ...: Same as www but for wip (see gsl help)
|
||||||
|
|
||||||
### Markers
|
### Markers
|
||||||
- css: MYCLASS Customize each article with your CSS (optional)
|
- css: MYCLASS Customize each article with your CSS (optional)
|
||||||
|
|
|
@ -54,19 +54,17 @@ cat <<EOFOOTER > "$gsl_dir_domain_tpl/footer.html"
|
||||||
<footer id="${site_css}_footer">
|
<footer id="${site_css}_footer">
|
||||||
<h1>$gsl_about $site_title</h1>
|
<h1>$gsl_about $site_title</h1>
|
||||||
<div id="${site_css}_footer-infos">
|
<div id="${site_css}_footer-infos">
|
||||||
<p>...<p>
|
<p>$site_about<p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div id="${site_css}_footer-about">
|
<div id="${site_css}_footer-about">
|
||||||
<p class="${site_css_footer-p}">
|
<ul>
|
||||||
<ul>
|
|
||||||
<li><a href="$site_url"><b>$site_title</b></a>: $site_about</li>
|
<li><a href="$site_url"><b>$site_title</b></a>: $site_about</li>
|
||||||
<li>Contact: $site_mail</li>
|
<li>Contact: $site_mail</li>
|
||||||
<li>Copyright: $site_cr</li>
|
<li>Copyright: $site_cr</li>
|
||||||
<li>$gsl_gen: <a href="https://git.a-lec.org/echolib/gsl" target="_blank"><b>GSL: Statique Littérateur</b></a></li>
|
<li>$gsl_gen: <a href="https://git.a-lec.org/echolib/gsl" target="_blank"><b>GSL: Statique Littérateur</b></a></li>
|
||||||
<li>RSS: <a type="application/rss+xml" href="$site_url/rss.xml">$site_url/rss.xml</a></li>
|
<li>RSS: <a type="application/rss+xml" href="$site_url/rss.xml">$site_url/rss.xml</a></li>
|
||||||
</ul>
|
</ul>
|
||||||
</p>
|
|
||||||
</div>
|
</div>
|
||||||
</footer>
|
</footer>
|
||||||
EOFOOTER
|
EOFOOTER
|
||||||
|
|
|
@ -238,7 +238,7 @@ fi
|
||||||
HTML_icode_start="<code class=\"${site_css}_icode\">"
|
HTML_icode_start="<code class=\"${site_css}_icode\">"
|
||||||
HTML_strong_start="<strong class=\"${site_css}_strong\">"
|
HTML_strong_start="<strong class=\"${site_css}_strong\">"
|
||||||
HTML_em_start="<i class=\"${site_css}_em\">"
|
HTML_em_start="<i class=\"${site_css}_em\">"
|
||||||
HTML_strike_start="<strike class=\"${site_css}_strike\">"
|
HTML_strike_start="<span class=\"${site_css}_strike\">"
|
||||||
HTML_bold_start="<b class=\"${site_css}_bold\">"
|
HTML_bold_start="<b class=\"${site_css}_bold\">"
|
||||||
|
|
||||||
#----------------------------------------------------------------------
|
#----------------------------------------------------------------------
|
||||||
|
@ -575,13 +575,13 @@ $(while read -r "code_ln" "code_content"
|
||||||
"<span $pre_css_content>$code_content</span>"
|
"<span $pre_css_content>$code_content</span>"
|
||||||
done < <(cat -n "$gsl_dir_domain_files/$header_f2"))
|
done < <(cat -n "$gsl_dir_domain_files/$header_f2"))
|
||||||
</pre>
|
</pre>
|
||||||
<p $pre_css_p>
|
<div $pre_css_p>
|
||||||
<a $pre_css_source
|
<a $pre_css_source
|
||||||
target="_blank"
|
target="_blank"
|
||||||
href="${srv_uri}files/$header_f2"$pre_title>
|
href="${srv_uri}files/$header_f2"$pre_title>
|
||||||
$header_f3
|
$header_f3
|
||||||
</a>
|
</a>
|
||||||
</p>
|
</div>
|
||||||
EOCODE
|
EOCODE
|
||||||
|
|
||||||
# for/from make__file_codes (Replace mark till no more)
|
# for/from make__file_codes (Replace mark till no more)
|
||||||
|
@ -650,11 +650,11 @@ do
|
||||||
esac
|
esac
|
||||||
|
|
||||||
case "$width" in
|
case "$width" in
|
||||||
"+") target=true;unset height ;;
|
"+") target=true;unset width ;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
case "$height" in
|
case "$height" in
|
||||||
"+") target=true ;;
|
"+") target=true;unset height ;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
image_css="class=\"${site_css}_image $image_class\""
|
image_css="class=\"${site_css}_image $image_class\""
|
||||||
|
|
|
@ -37,8 +37,8 @@ do
|
||||||
case "$1" in
|
case "$1" in
|
||||||
check) Checkers ;;
|
check) Checkers ;;
|
||||||
make) Makers ;;
|
make) Makers ;;
|
||||||
www) WWW__validate "$2" ;;
|
www) WWW__OPTIONS "$2" ;;
|
||||||
wip) WIP__remove "$2" ;;
|
wip) WIP__remove ;; # wip command is only a remove case || make
|
||||||
esac
|
esac
|
||||||
|
|
||||||
# In DB, show logs for server
|
# In DB, show logs for server
|
||||||
|
|
|
@ -5,10 +5,14 @@
|
||||||
# License: GNU AFFERO GENERAL PUBLIC LICENSE Version 3, 19 November 2007
|
# License: GNU AFFERO GENERAL PUBLIC LICENSE Version 3, 19 November 2007
|
||||||
|
|
||||||
|
|
||||||
|
#----------------------------------------------------------------------
|
||||||
|
# Manage server options
|
||||||
|
#----------------------------------------------------------------------
|
||||||
#======================================================================
|
#======================================================================
|
||||||
# w<< (ARGUMENT)
|
# www|wip (ARGUMENT)
|
||||||
# $1: process
|
# $1: process www/wip
|
||||||
# $2: file / all
|
# $2: sync/add/remove
|
||||||
|
# $3: (file)/all
|
||||||
#======================================================================
|
#======================================================================
|
||||||
srv__OPTIONS() {
|
srv__OPTIONS() {
|
||||||
case "$2" in
|
case "$2" in
|
||||||
|
@ -23,44 +27,49 @@ case "$3" in
|
||||||
if__file "$3" post
|
if__file "$3" post
|
||||||
gsl_post="$3"
|
gsl_post="$3"
|
||||||
post_only="$3"
|
post_only="$3"
|
||||||
case "$1" in
|
|
||||||
wip)
|
|
||||||
gsl make "$3"
|
|
||||||
exit
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
;;
|
;;
|
||||||
|
|
||||||
all)
|
all)
|
||||||
case "$1" in
|
echo "! You're about to $2 all $1 articles"
|
||||||
www)
|
read -rp "- Continue (Y|*) ? " www_confirm
|
||||||
echo "! You're about to put online all wip articles"
|
case "$www_confirm" in
|
||||||
read -rp "- Continue (YES|*)" www_confirm
|
yes|YES|Y) gsl_all="$3" ;;
|
||||||
case "www_confirm" in
|
*) echo "# Abandon"; exit ;;
|
||||||
YES) gsl_www="$3" ;;
|
|
||||||
*) echo "# Abandon"; exit ;;
|
|
||||||
esac
|
|
||||||
;;
|
|
||||||
|
|
||||||
wip)
|
|
||||||
gsl make
|
|
||||||
exit
|
|
||||||
;;
|
|
||||||
esac
|
esac
|
||||||
;;
|
;;
|
||||||
|
|
||||||
"")
|
"")
|
||||||
gsl__invalid_option "$3" "all|file"
|
gsl__invalid_option "$3" "all|(file)"
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
www_process=true
|
# wip add [OPT]: A shortcut of make -F
|
||||||
|
case "$1" in
|
||||||
|
wip)
|
||||||
|
case "$2" in
|
||||||
|
add)
|
||||||
|
if [[ "$post_only" ]];then
|
||||||
|
gsl make -F "$3"
|
||||||
|
exit
|
||||||
|
|
||||||
|
elif [[ "$gsl_all" ]];then
|
||||||
|
gsl make -F
|
||||||
|
exit
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
[[ "$gsl_post" ]] || log_info_all=" ALL"
|
[[ "$gsl_post" ]] || log_info_all=" ALL"
|
||||||
|
|
||||||
log__process_begin "Server ($1 online)${log_info_all}"
|
log__process_begin "Server ($1 online)${log_info_all}"
|
||||||
posts__loop "$1" "$2"
|
posts__loop "$1" "$2"
|
||||||
|
|
||||||
|
[[ "$1" == "www" && "$www_new" ]] \
|
||||||
|
&& create__RSS_feed \
|
||||||
|
&& stats__datas # Statoolinfos
|
||||||
|
|
||||||
# For logs ; set post or unset if all
|
# For logs ; set post or unset if all
|
||||||
[[ $log_info_all ]] && unset gsl_post
|
[[ $log_info_all ]] && unset gsl_post
|
||||||
[[ $post_only ]] && gsl_post="$post_only"
|
[[ $post_only ]] && gsl_post="$post_only"
|
||||||
|
@ -69,149 +78,6 @@ log__process_end "Server ($1 online)${log_info_all}"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
#======================================================================
|
|
||||||
# wip: remove online
|
|
||||||
#======================================================================
|
|
||||||
WIP__remove() {
|
|
||||||
case "$1" in
|
|
||||||
remove)
|
|
||||||
if [[ -f "$gsl_srv_post_wip" ]];then
|
|
||||||
rm -f "$gsl_srv_post_wip" && \
|
|
||||||
gsl__logs_print -w -srv wip \
|
|
||||||
"Article deleted ; no more online" \
|
|
||||||
"$gsl_srv_post_wip"
|
|
||||||
|
|
||||||
find "$gsl_srv_wip" -type d -empty -delete && \
|
|
||||||
gsl__logs_print -w -srv wip \
|
|
||||||
"Cleaned empty directories" \
|
|
||||||
"$gsl_srv_wip"
|
|
||||||
|
|
||||||
DB__set_status "wip-del"
|
|
||||||
fi
|
|
||||||
return
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
#======================================================================
|
|
||||||
# www: Valid online
|
|
||||||
#======================================================================
|
|
||||||
WWW__validate() {
|
|
||||||
case "$1" in
|
|
||||||
remove)
|
|
||||||
if [[ -f "$gsl_srv_post_www" ]];then
|
|
||||||
rm -f "$gsl_srv_post_www" && \
|
|
||||||
gsl__logs_print -w -srv www \
|
|
||||||
"Article deleted ; no more online" \
|
|
||||||
"$gsl_srv_post_www"
|
|
||||||
|
|
||||||
find "$gsl_srv_www" -type d -empty -delete && \
|
|
||||||
gsl__logs_print -w -srv www \
|
|
||||||
"Cleaned empty directories" \
|
|
||||||
"$gsl_srv_www"
|
|
||||||
|
|
||||||
DB__set_status "www-del"
|
|
||||||
fi
|
|
||||||
create__RSS_feed
|
|
||||||
stats__datas # Statoolinfos
|
|
||||||
return
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
|
|
||||||
if ! [[ $article_Status_chk ]];then
|
|
||||||
gsl__logs_print -e -srv www \
|
|
||||||
"Article not yet checked" \
|
|
||||||
"$PWD/$gsl_post"
|
|
||||||
return
|
|
||||||
|
|
||||||
elif (( $article_Status_chk != $article_Status_wip ));then
|
|
||||||
gsl__logs_print -e -srv www \
|
|
||||||
"Article not yet converted with make" \
|
|
||||||
"$gsl_srv_post_wip"
|
|
||||||
return
|
|
||||||
|
|
||||||
elif (( $article_Status_chk == $article_Status_www )) && \
|
|
||||||
[[ -f "$gsl_srv_post_www" ]];then
|
|
||||||
gsl__logs_print -w -srv www \
|
|
||||||
"Article already online" \
|
|
||||||
"$gsl_srv_post_www"
|
|
||||||
return
|
|
||||||
|
|
||||||
else
|
|
||||||
if (( $article_Status_chk == $article_Status_wip ));then
|
|
||||||
[[ "$article_Type" == "post" ]] \
|
|
||||||
&& mkdir -p "$gsl_slug_dir_www"
|
|
||||||
|
|
||||||
rsync -a "$gsl_srv_post_wip" "$gsl_srv_post_www" && \
|
|
||||||
gsl__logs_print -i -srv www \
|
|
||||||
"Article validated online" \
|
|
||||||
"$gsl_srv_post_www" && \
|
|
||||||
DB__set_status "www"
|
|
||||||
create__RSS_feed
|
|
||||||
stats__datas # Statoolinfos
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
#======================================================================
|
|
||||||
# Get arguments from COMMAND (sync)
|
|
||||||
# $2: process (wip|www|"")
|
|
||||||
#======================================================================
|
|
||||||
sync__OPTIONS() {
|
|
||||||
gsl_srv_wip="$site_server/$site_ndd/wip"
|
|
||||||
gsl_srv_www="$site_server/$site_ndd/www"
|
|
||||||
|
|
||||||
case "$1" in
|
|
||||||
""|www|wip)
|
|
||||||
! [[ "$1" ]] \
|
|
||||||
&& srv_proc="wip+www" \
|
|
||||||
|| srv_proc="$1"
|
|
||||||
|
|
||||||
log__process_begin "Sync $srv_proc"
|
|
||||||
case "$1" in
|
|
||||||
"")
|
|
||||||
sync__srv "$srv_proc" "$gsl_srv_wip"
|
|
||||||
sync__srv "$srv_proc" "$gsl_srv_www"
|
|
||||||
;;
|
|
||||||
www)
|
|
||||||
sync__srv "$srv_proc" "$gsl_srv_www"
|
|
||||||
;;
|
|
||||||
wip)
|
|
||||||
sync__srv "$srv_proc" "$gsl_srv_wip"
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
log__process_end "Sync $srv_proc"
|
|
||||||
;;
|
|
||||||
|
|
||||||
*)
|
|
||||||
gsl__invalid_option "$2" "www|wip"
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
exit
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
#======================================================================
|
|
||||||
# Sync Files from Templates to webserver
|
|
||||||
# $1: process (wip|www|wip+www)
|
|
||||||
# $2: Folder
|
|
||||||
#======================================================================
|
|
||||||
sync__srv() {
|
|
||||||
# Sync Files and Folders
|
|
||||||
mkdir -p "$2"
|
|
||||||
rsync -a --delete "$gsl_dir_domain_tpl" "$2"
|
|
||||||
rsync -a --delete "$gsl_dir_domain_files" "$2"
|
|
||||||
rsync -a --delete "$gsl_dir_domain_images" "$2"
|
|
||||||
rsync -a --delete "$gsl_dir_domain_listings" "$2"
|
|
||||||
|
|
||||||
gsl__logs_print -i -srv $1 \
|
|
||||||
"Sync: $gsl_dir_domain/" \
|
|
||||||
"$2/"
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
#======================================================================
|
#======================================================================
|
||||||
# Set Post/Page file for www+wip from page type and slug
|
# Set Post/Page file for www+wip from page type and slug
|
||||||
# Find server post/page file and log
|
# Find server post/page file and log
|
||||||
|
@ -302,39 +168,174 @@ esac
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#----------------------------------------------------------------------
|
||||||
|
# Manage wip option (Only remove, as add is same as make)
|
||||||
|
#----------------------------------------------------------------------
|
||||||
#======================================================================
|
#======================================================================
|
||||||
# Remove WIP page
|
# wip: remove online
|
||||||
# If error from check and exists
|
|
||||||
#======================================================================
|
#======================================================================
|
||||||
wip__remove() {
|
WIP__remove() {
|
||||||
! [[ -f "$gsl_srv_post_wip" ]] && return
|
if [[ -f "$gsl_srv_post_wip" ]];then
|
||||||
|
rm -f "$gsl_srv_post_wip" && \
|
||||||
|
gsl__logs_print -w -srv wip \
|
||||||
|
"Article deleted ; no more preview online" \
|
||||||
|
"$gsl_srv_post_wip"
|
||||||
|
|
||||||
log_Type="in $article_Slug"
|
find "$gsl_srv_wip" -type d -empty -delete && \
|
||||||
|
gsl__logs_print -w -srv wip \
|
||||||
|
"Cleaned empty directories" \
|
||||||
|
"$gsl_srv_wip"
|
||||||
|
|
||||||
# Remove from old slug, if new article Type set
|
DB__set_status "wip-del"
|
||||||
[[ "$old_Type" ]] \
|
fi
|
||||||
&& article_Type="$old_Type" \
|
return
|
||||||
&& article_Slug="$old_Slug" \
|
}
|
||||||
&& log_Type="from old $old_Type"
|
|
||||||
|
|
||||||
rm -f "$gsl_srv_post_wip" && \
|
|
||||||
gsl__logs_print -w -S -wip \
|
|
||||||
"Article deleted ; no more preview" \
|
|
||||||
"$gsl_srv_post_wip"
|
|
||||||
|
|
||||||
find "$gsl_srv_wip" -type d -empty -delete && \
|
#----------------------------------------------------------------------
|
||||||
gsl__logs_print -w -S -wip \
|
# Manage www options
|
||||||
"Cleaned empty directories" \
|
#----------------------------------------------------------------------
|
||||||
"$gsl_srv_wip"
|
#======================================================================
|
||||||
|
# www OPTIONS
|
||||||
|
# $1: add/remove
|
||||||
|
#======================================================================
|
||||||
|
WWW__OPTIONS() {
|
||||||
|
case "$1" in
|
||||||
|
add) WWW__online ;;
|
||||||
|
remove) WWW__remove ;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
gsl__logs_print -w -R -wip \
|
|
||||||
"Found $1 $log_Type" \
|
|
||||||
"$gsl_srv_post_wip"
|
|
||||||
|
|
||||||
if [[ "$old_Type" ]];then
|
#======================================================================
|
||||||
unset old_Type old_Slug log_Type
|
# www remove online
|
||||||
|
#======================================================================
|
||||||
|
WWW__remove() {
|
||||||
|
if [[ -f "$gsl_srv_post_www" ]];then
|
||||||
|
rm -f "$gsl_srv_post_www" && \
|
||||||
|
gsl__logs_print -w -srv www \
|
||||||
|
"Article deleted ; no more online" \
|
||||||
|
"$gsl_srv_post_www"
|
||||||
|
|
||||||
[[ -f "$gsl_file_db_post" ]] \
|
find "$gsl_srv_www" -type d -empty -delete && \
|
||||||
&& source "$gsl_file_db_post"
|
gsl__logs_print -w -srv www \
|
||||||
|
"Cleaned empty directories" \
|
||||||
|
"$gsl_srv_www"
|
||||||
|
|
||||||
|
DB__set_status "www-del"
|
||||||
|
www_new=true
|
||||||
|
fi
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#======================================================================
|
||||||
|
# www: Valid online
|
||||||
|
#======================================================================
|
||||||
|
WWW__online() {
|
||||||
|
|
||||||
|
# Add wip article to www server
|
||||||
|
WWW__add() {
|
||||||
|
[[ "$article_Type" == "post" ]] \
|
||||||
|
&& mkdir -p "$gsl_slug_dir_www"
|
||||||
|
|
||||||
|
rsync -a "$gsl_srv_post_wip" "$gsl_srv_post_www" && \
|
||||||
|
gsl__logs_print -i -srv www \
|
||||||
|
"Article validated online" \
|
||||||
|
"$gsl_srv_post_www" && \
|
||||||
|
DB__set_status "www"
|
||||||
|
www_new=true
|
||||||
|
}
|
||||||
|
|
||||||
|
if ! [[ $article_Status_chk ]];then
|
||||||
|
gsl__logs_print -e -srv www \
|
||||||
|
"Article not yet checked" \
|
||||||
|
"$PWD/$gsl_post"
|
||||||
|
return
|
||||||
|
|
||||||
|
elif (( $article_Status_chk != $article_Status_wip ));then
|
||||||
|
gsl__logs_print -e -srv www \
|
||||||
|
"Article not yet converted with make" \
|
||||||
|
"$gsl_srv_post_wip"
|
||||||
|
return
|
||||||
|
|
||||||
|
else
|
||||||
|
if [[ ! -f "$gsl_srv_post_www" ]];then
|
||||||
|
WWW__add
|
||||||
|
|
||||||
|
else
|
||||||
|
if [[ "$gsl_all" ]];then
|
||||||
|
WWW__add
|
||||||
|
|
||||||
|
elif (( $article_Status_chk != $article_Status_www ));then
|
||||||
|
WWW__add
|
||||||
|
|
||||||
|
else
|
||||||
|
gsl__logs_print -w -srv www \
|
||||||
|
"Article already online" \
|
||||||
|
"$gsl_srv_post_www"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#----------------------------------------------------------------------
|
||||||
|
# Manage sync options
|
||||||
|
#----------------------------------------------------------------------
|
||||||
|
#======================================================================
|
||||||
|
# Get arguments from COMMAND (sync)
|
||||||
|
# $2: process (wip|www|"")
|
||||||
|
#======================================================================
|
||||||
|
sync__OPTIONS() {
|
||||||
|
gsl_srv_wip="$site_server/$site_ndd/wip"
|
||||||
|
gsl_srv_www="$site_server/$site_ndd/www"
|
||||||
|
|
||||||
|
case "$1" in
|
||||||
|
""|www|wip)
|
||||||
|
! [[ "$1" ]] \
|
||||||
|
&& srv_proc="wip+www" \
|
||||||
|
|| srv_proc="$1"
|
||||||
|
|
||||||
|
log__process_begin "Sync $srv_proc"
|
||||||
|
case "$1" in
|
||||||
|
"")
|
||||||
|
sync__srv "$srv_proc" "$gsl_srv_wip"
|
||||||
|
sync__srv "$srv_proc" "$gsl_srv_www"
|
||||||
|
;;
|
||||||
|
www)
|
||||||
|
sync__srv "$srv_proc" "$gsl_srv_www"
|
||||||
|
;;
|
||||||
|
wip)
|
||||||
|
sync__srv "$srv_proc" "$gsl_srv_wip"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
log__process_end "Sync $srv_proc"
|
||||||
|
;;
|
||||||
|
|
||||||
|
*)
|
||||||
|
gsl__invalid_option "$2" "www|wip"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
exit
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#======================================================================
|
||||||
|
# Sync Files from Templates to webserver
|
||||||
|
# $1: process (wip|www|wip+www)
|
||||||
|
# $2: Folder
|
||||||
|
#======================================================================
|
||||||
|
sync__srv() {
|
||||||
|
# Sync Files and Folders
|
||||||
|
mkdir -p "$2"
|
||||||
|
rsync -a --delete "$gsl_dir_domain_tpl" "$2"
|
||||||
|
rsync -a --delete "$gsl_dir_domain_files" "$2"
|
||||||
|
rsync -a --delete "$gsl_dir_domain_images" "$2"
|
||||||
|
rsync -a --delete "$gsl_dir_domain_listings" "$2"
|
||||||
|
|
||||||
|
gsl__logs_print -i -srv $1 \
|
||||||
|
"Sync: $gsl_dir_domain/" \
|
||||||
|
"$2/"
|
||||||
|
}c
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in New Issue