Version 0.1.10
This commit is contained in:
parent
a5e46da318
commit
63e148795d
|
@ -4,6 +4,15 @@ GSL changes from releases. You can send an issue :
|
|||
- repo: https://git.a-lec.org/echolib/gsl/-/issues
|
||||
- Contact xmpp: im@echolib.re
|
||||
|
||||
## [0.1.10]
|
||||
- Fix: file for links
|
||||
- added: setdir (DO IT on your articles folder)
|
||||
- - files and images folders are created in articles folder
|
||||
- changes: check for files and images in files and images folder from articles folder
|
||||
- - no more check for existing files in GSL DOMAIN/ template
|
||||
- If no error in article, copy (if exists) files and images (with sub-folder) to GSL DOMAIN/
|
||||
|
||||
|
||||
## [0.1.9]
|
||||
### Added:
|
||||
- gawk dependance
|
||||
|
|
2
control
2
control
|
@ -1,5 +1,5 @@
|
|||
Package: egsl
|
||||
Version: 0.1.9
|
||||
Version: 0.1.10
|
||||
Section: custom
|
||||
Priority: optional
|
||||
Architecture: all
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# Créer un article depuis la ligne de commande
|
||||
------------------------------------------------------------------------
|
||||
Rendez vous dans le dossier de vos articles, enregistrés lors de l'ajout
|
||||
Rendez vous dans le dossier de vos articles, enregistré lors de l'ajout
|
||||
de votre domaine (ou celui que vous avez configuré)
|
||||
|
||||
```
|
||||
|
@ -8,10 +8,15 @@ cd MON-DOSSIER-ARTICLES
|
|||
gsl setdir
|
||||
```
|
||||
|
||||
Vous pouvez créer un article daté du jour avec les METAS obligatoires
|
||||
intégrées (à renseigner après) depuis la ligne de commande.
|
||||
"setdir" permet de choisir parmi les domaines configurés. Cette commande
|
||||
s'assure également que le dossier "images" et le dossier "files" sont
|
||||
présents. Si déjà configuré, vous serez averti pour quel domaine.
|
||||
|
||||
Vous devez spécifier si votre article sera une 'page' ou un 'post'
|
||||
## Créer un article de base
|
||||
Vous pouvez créer un article daté du jour avec les METAS obligatoires
|
||||
intégrées depuis la ligne de commande. Vous devrez les renseigner après.
|
||||
|
||||
Pour cela, spécifier si votre article sera une 'page' ou un 'post'
|
||||
(Voir section plus bas), et lui donner un nom sans l'extension .gsl. Les
|
||||
metas optionnelles sont ajoutées en commentaires.
|
||||
|
||||
|
@ -22,17 +27,18 @@ gsl new page|post FILENAME
|
|||
Mettez des guillemets pour les nom du fichier avec espaces.
|
||||
|
||||
```
|
||||
# Créer une page nommée index (deviendra /index.html)
|
||||
# Créer une page nommée index # deviendra /index.html
|
||||
gsl new page index
|
||||
|
||||
# Créer un article nommé "mes vacances"
|
||||
gsl new post "mes vacances"
|
||||
gsl new post "mes vacances" # Deviendra /mes vacances/index.html
|
||||
```
|
||||
|
||||
Vous pouvez l'éditer dans le terminal en utilisant l'autocompletion
|
||||
(<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...)
|
||||
# Éditez votre article dans le terminal
|
||||
Vous pouvez éditer dans le terminal vos articles en utilisant
|
||||
l'autocompletion (touche <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"
|
||||
|
@ -110,7 +116,7 @@ azerty français (disposition par défaut)
|
|||
|
||||
- Gras: ```*...*```
|
||||
- Italique: ```\...\```
|
||||
- Code en ligne: "`...`" (altgr + 7)
|
||||
- Code en ligne: `...` (altgr + 7)
|
||||
- Très gras: ```¤...¤``` (altgr + $)
|
||||
- Barré: ```~...~``` (altgr + 2)
|
||||
- Personnalisé: ```×...×``` (altgr + shift + ;)
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
#!/bin/bash
|
||||
# Version: 0.1.9
|
||||
# Version: 0.1.10
|
||||
# file: gsl
|
||||
# Folder: /usr/local/bin
|
||||
# By echolib (XMPP: im@echolib.re)
|
||||
|
|
|
@ -4,6 +4,15 @@ GSL changes from releases. You can send an issue :
|
|||
- repo: https://git.a-lec.org/echolib/gsl/-/issues
|
||||
- Contact xmpp: im@echolib.re
|
||||
|
||||
## [0.1.10]
|
||||
- Fix: file for links
|
||||
- added: setdir (DO IT on your articles folder)
|
||||
- - files and images folders are created in articles folder
|
||||
- changes: check for files and images in files and images folder from articles folder
|
||||
- - no more check for existing files in GSL DOMAIN/ template
|
||||
- If no error in article, copy (if exists) files and images (with sub-folder) to GSL DOMAIN/
|
||||
|
||||
|
||||
## [0.1.9]
|
||||
### Added:
|
||||
- gawk dependance
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# Créer un article depuis la ligne de commande
|
||||
------------------------------------------------------------------------
|
||||
Rendez vous dans le dossier de vos articles, enregistrés lors de l'ajout
|
||||
Rendez vous dans le dossier de vos articles, enregistré lors de l'ajout
|
||||
de votre domaine (ou celui que vous avez configuré)
|
||||
|
||||
```
|
||||
|
@ -8,10 +8,15 @@ cd MON-DOSSIER-ARTICLES
|
|||
gsl setdir
|
||||
```
|
||||
|
||||
Vous pouvez créer un article daté du jour avec les METAS obligatoires
|
||||
intégrées (à renseigner après) depuis la ligne de commande.
|
||||
"setdir" permet de choisir parmi les domaines configurés. Cette commande
|
||||
s'assure également que le dossier "images" et le dossier "files" sont
|
||||
présents. Si déjà configuré, vous serez averti pour quel domaine.
|
||||
|
||||
Vous devez spécifier si votre article sera une 'page' ou un 'post'
|
||||
## Créer un article de base
|
||||
Vous pouvez créer un article daté du jour avec les METAS obligatoires
|
||||
intégrées depuis la ligne de commande. Vous devrez les renseigner après.
|
||||
|
||||
Pour cela, spécifier si votre article sera une 'page' ou un 'post'
|
||||
(Voir section plus bas), et lui donner un nom sans l'extension .gsl. Les
|
||||
metas optionnelles sont ajoutées en commentaires.
|
||||
|
||||
|
@ -22,17 +27,18 @@ gsl new page|post FILENAME
|
|||
Mettez des guillemets pour les nom du fichier avec espaces.
|
||||
|
||||
```
|
||||
# Créer une page nommée index (deviendra /index.html)
|
||||
# Créer une page nommée index # deviendra /index.html
|
||||
gsl new page index
|
||||
|
||||
# Créer un article nommé "mes vacances"
|
||||
gsl new post "mes vacances"
|
||||
gsl new post "mes vacances" # Deviendra /mes vacances/index.html
|
||||
```
|
||||
|
||||
Vous pouvez l'éditer dans le terminal en utilisant l'autocompletion
|
||||
(<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...)
|
||||
# Éditez votre article dans le terminal
|
||||
Vous pouvez éditer dans le terminal vos articles en utilisant
|
||||
l'autocompletion (touche <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"
|
||||
|
@ -110,7 +116,7 @@ azerty français (disposition par défaut)
|
|||
|
||||
- Gras: ```*...*```
|
||||
- Italique: ```\...\```
|
||||
- Code en ligne: "`...`" (altgr + 7)
|
||||
- Code en ligne: `...` (altgr + 7)
|
||||
- Très gras: ```¤...¤``` (altgr + $)
|
||||
- Barré: ```~...~``` (altgr + 2)
|
||||
- Personnalisé: ```×...×``` (altgr + shift + ;)
|
||||
|
|
|
@ -54,10 +54,14 @@ fi
|
|||
#======================================================================
|
||||
setdir__OPTIONS() {
|
||||
domain__check setdir
|
||||
[[ "$domain_name" ]] \
|
||||
&& echo "# Domain registred for this folder: $domain_name" \
|
||||
&& exit
|
||||
if [[ "$domain_name" ]];then
|
||||
mkdir -p "images"
|
||||
mkdir -p "files"
|
||||
echo "# Domain registred for this folder: $domain_name"
|
||||
exit
|
||||
fi
|
||||
|
||||
# If no domain regsitred for PWD folder
|
||||
domain_nbr_max=`cat "$gsl_file_db_domains" | wc -l`
|
||||
cat -n "$gsl_file_db_domains"
|
||||
ask_domain=`echo -e "\n# Which domain to set for this folder ? "`
|
||||
|
@ -77,6 +81,8 @@ read -rp "$ask_domain" domain_nbr
|
|||
|
||||
domain_set=`awk -v l="$domain_nbr" 'NR==l' "$gsl_file_db_domains"`
|
||||
touch "gsl.$domain_set"
|
||||
mkdir -p "images"
|
||||
mkdir -p "files"
|
||||
gsl setdir
|
||||
exit
|
||||
}
|
||||
|
@ -134,6 +140,11 @@ gsl_file_domain_authors="$gsl_dir_domain/authors.db"
|
|||
gsl_file_domain_conf="$gsl_dir_domain/$domain_name.conf"
|
||||
if__file "$gsl_file_domain_conf" source
|
||||
|
||||
# To PWD
|
||||
pwd_images="$PWD/images"
|
||||
pwd_files="$PWD/files"
|
||||
|
||||
# To gsl template DOMAIN/
|
||||
gsl_dir_domain_tpl="$gsl_dir_domain/templates"
|
||||
gsl_dir_domain_files="$gsl_dir_domain/files"
|
||||
gsl_dir_domain_images="$gsl_dir_domain/images"
|
||||
|
|
|
@ -104,6 +104,7 @@ case "$2" in
|
|||
-E) log_f2="Stopping" ;;
|
||||
-A) log_f2="Article" ;;
|
||||
-srv) log_f2="Server" ;;
|
||||
-rsc) log_f2="Rsync" ;;
|
||||
-st) log_f2="Stats" ;;
|
||||
-R) log_f2="Removed" ;;
|
||||
-D) log_f2="Database" ;;
|
||||
|
|
|
@ -319,6 +319,72 @@ DB__set_status chk
|
|||
rm -f "$gsl_tmp_post" \
|
||||
"$gsl_tmp_head" \
|
||||
"$gsl_tmp_db"
|
||||
|
||||
[[ "$gsl_checker_err" ]] && return
|
||||
|
||||
# Sync PWD/images from article to DOMAIN/ template
|
||||
if [[ "${image_filename[1]}" ]];then
|
||||
for i in `seq 1 $gsl_stat_images`
|
||||
do
|
||||
[[ ${image_folders[$i]} ]] \
|
||||
&& mkdir -p "$gsl_dir_domain_images/${image_folders[$i]}"
|
||||
|
||||
rsync -q -a --exclude ".*" \
|
||||
"$pwd_images/${image_header_f2[$i]}" \
|
||||
"$gsl_dir_domain_images/${image_header_f2[$i]}" && \
|
||||
gsl__logs_print -w -rsc -src \
|
||||
"Image: $pwd_images/${image_header_f2[$i]}" \
|
||||
"$gsl_dir_domain_images/${image_header_f2[$i]}"
|
||||
done
|
||||
fi
|
||||
|
||||
# Sync PWD/files from article to DOMAIN/ template for file-link
|
||||
if [[ "${flink_filename[1]}" ]];then
|
||||
for i in `seq 1 $gsl_stat_flinks`
|
||||
do
|
||||
[[ ${flink_folders[$i]} ]] \
|
||||
&& mkdir -p "$gsl_dir_domain_files/${flink_folders[$i]}"
|
||||
|
||||
rsync -q -a --exclude ".*" \
|
||||
"$pwd_files/${flink_header_f2[$i]}" \
|
||||
"$gsl_dir_domain_files/${flink_header_f2[$i]}" && \
|
||||
gsl__logs_print -w -rsc -src \
|
||||
"File link: $pwd_files/${flink_header_f2[$i]}" \
|
||||
"$gsl_dir_domain_files/${flink_header_f2[$i]}"
|
||||
done
|
||||
fi
|
||||
|
||||
# Sync PWD/files from article to DOMAIN/ template for file-code
|
||||
if [[ "${fcode_filename[1]}" ]];then
|
||||
for i in `seq 1 $gsl_stat_fcodes`
|
||||
do
|
||||
[[ ${fcode_folders[$i]} ]] \
|
||||
&& mkdir -p "$gsl_dir_domain_files/${fcode_folders[$i]}"
|
||||
|
||||
rsync -q -a --exclude ".*" \
|
||||
"$pwd_files/${fcode_header_f2[$i]}" \
|
||||
"$gsl_dir_domain_files/${fcode_header_f2[$i]}" && \
|
||||
gsl__logs_print -w -rsc -src \
|
||||
"File code: $pwd_files/${fcode_header_f2[$i]}" \
|
||||
"$gsl_dir_domain_files/${fcode_header_f2[$i]}"
|
||||
done
|
||||
fi
|
||||
|
||||
# Sync PWD/files from article to DOMAIN/ template for file-brut
|
||||
if [[ "${fbrut_filename[1]}" ]];then
|
||||
for i in `seq 1 $gsl_stat_fbruts`
|
||||
do
|
||||
[[ ${fbrut_folders[$i]} ]] \
|
||||
&& mkdir -p "$gsl_dir_domain_files/${fbrut_folders[$i]}"
|
||||
|
||||
rsync -q -a --exclude ".*" \
|
||||
"$pwd_files/${fbrut_header_f2[$i]}" \
|
||||
"$gsl_dir_domain_files/${fbrut_header_f2[$i]}" && \
|
||||
gsl__logs_print -w -rsc -src \
|
||||
"File brut: $pwd_files/${fbrut_header_f2[$i]}" \
|
||||
"$gsl_dir_domain_files/${fbrut_header_f2[$i]}"
|
||||
done
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
|
@ -559,23 +625,30 @@ if ! [[ `grep "\<__$header_f1\>" "$gsl_tmp_post"` ]];then
|
|||
gsl_flink_err=true
|
||||
fi
|
||||
|
||||
if ! [[ -f "$gsl_dir_domain_files/$header_f2" ]];then
|
||||
if ! [[ -f "$pwd_files/$header_f2" ]];then
|
||||
gsl__logs_print -e -h \
|
||||
"$gsl_marker_flink" \
|
||||
"Not found: $header_f2" \
|
||||
"$gsl_dir_domain_docs/$header_f2"
|
||||
"$pwd_files/$header_f2"
|
||||
gsl_flink_err=true
|
||||
fi
|
||||
|
||||
[[ $gsl_flink_err ]] && return
|
||||
|
||||
# Register file to DB
|
||||
printf '%s\n' \
|
||||
"# Flink_URI:$gsl_dir_domain_fles/$header_f2" \
|
||||
>> "$gsl_tmp_db"
|
||||
|
||||
# Stat
|
||||
((gsl_stat_flinks++))
|
||||
|
||||
# Register file to DB
|
||||
printf '%s\n' \
|
||||
"Flink_$gsl_stat_flinks=\"$gsl_dir_domain_files/$header_f2\"" \
|
||||
>> "$gsl_tmp_db"
|
||||
|
||||
# register images in PWD/images to sync after no err check
|
||||
flink_header_f2[$gsl_stat_flinks]="$header_f2"
|
||||
|
||||
# Get image sub-folders (if exists) to create them on DOMAIN/ template
|
||||
flink_filename[$gsl_stat_flinks]=`basename "$header_f2"`
|
||||
flink_folders[$gsl_stat_flinks]=${header_f2/${flink_filename[$gsl_stat_flinks]}/}
|
||||
}
|
||||
|
||||
|
||||
|
@ -599,23 +672,30 @@ if ! [[ `grep "_image:$header_f1" "$gsl_tmp_post"` ]];then
|
|||
gsl_image_err=true
|
||||
fi
|
||||
|
||||
if ! [[ -f "$gsl_dir_domain_images/$header_f2" ]];then
|
||||
if ! [[ -f "$pwd_images/$header_f2" ]];then
|
||||
gsl__logs_print -e -h \
|
||||
"$gsl_marker_image" \
|
||||
"Not found: $header_f2" \
|
||||
"$gsl_dir_domain_images/$header_f2"
|
||||
"$pwd_images/$header_f2"
|
||||
gsl_image_err=true
|
||||
fi
|
||||
|
||||
[[ $gsl_image_err ]] && return
|
||||
|
||||
# Register file to DB
|
||||
printf '%s\n' \
|
||||
"# Image_URI:$gsl_dir_domain_images/$header_f2" \
|
||||
>> "$gsl_tmp_db"
|
||||
|
||||
# Stat
|
||||
((gsl_stat_images++))
|
||||
|
||||
# Register file to DB
|
||||
printf '%s\n' \
|
||||
"Image_$gsl_stat_images=\"$gsl_dir_domain_images/$header_f2\"" \
|
||||
>> "$gsl_tmp_db"
|
||||
|
||||
# register images in PWD/images to sync after no err check
|
||||
image_header_f2[$gsl_stat_images]="$header_f2"
|
||||
|
||||
# Get image sub-folders (if exists) to create them on DOMAIN/ template
|
||||
image_filename[$gsl_stat_images]=`basename "$header_f2"`
|
||||
image_folders[$gsl_stat_images]=${header_f2/${image_filename[$gsl_stat_images]}/}
|
||||
}
|
||||
|
||||
|
||||
|
@ -646,23 +726,30 @@ if ! [[ `grep "$gsl_mark_fcode:$header_f1" "$gsl_tmp_post"` ]];then
|
|||
gsl_fcode_err=true
|
||||
fi
|
||||
|
||||
if ! [[ -f "$gsl_dir_domain_files/$header_f2" ]];then
|
||||
if ! [[ -f "$pwd_files/$header_f2" ]];then
|
||||
gsl__logs_print -e -h \
|
||||
"$gsl_marker_fcode" \
|
||||
"Not found: $header_f2" \
|
||||
"$gsl_dir_domain_precodes/$header_f2"
|
||||
"$pwd_files/$header_f2"
|
||||
gsl_fcode_err=true
|
||||
fi
|
||||
|
||||
[[ $gsl_fcode_err ]] && return
|
||||
|
||||
# Register file to DB
|
||||
printf '%s\n' \
|
||||
"# Fcode_URI:$gsl_dir_domain_files/$header_f2" \
|
||||
>> "$gsl_tmp_db"
|
||||
|
||||
# Stat
|
||||
((gsl_stat_fcodes++))
|
||||
|
||||
# Register file to DB
|
||||
printf '%s\n' \
|
||||
"Fcode_$gsl_stat_fcodes=\"$gsl_dir_domain_files/$header_f2\"" \
|
||||
>> "$gsl_tmp_db"
|
||||
|
||||
# register images in PWD/images to sync after no err check
|
||||
fcode_header_f2[$gsl_stat_fcodes]="$header_f2"
|
||||
|
||||
# Get image sub-folders (if exists) to create them on DOMAIN/ template
|
||||
fcode_filename[$gsl_stat_fcodes]=`basename "$header_f2"`
|
||||
fcode_folders[$gsl_stat_fcodes]=${header_f2/${fcode_filename[$gsl_stat_fcodes]}/}
|
||||
}
|
||||
|
||||
|
||||
|
@ -686,23 +773,30 @@ if ! [[ `grep "$gsl_mark_fbrut:$header_f1" "$gsl_tmp_post"` ]];then
|
|||
gsl_fbrut_err=true
|
||||
fi
|
||||
|
||||
if ! [[ -f "$gsl_dir_domain_files/$header_f2" ]];then
|
||||
if ! [[ -f "$pwd_files/$header_f2" ]];then
|
||||
gsl__logs_print -e -h \
|
||||
"$gsl_marker_fbrut" \
|
||||
"Not found: $header_f2" \
|
||||
"$gsl_dir_domain_files/$header_f2"
|
||||
"$pwd_files/$header_f2"
|
||||
gsl_fbrut_err=true
|
||||
fi
|
||||
|
||||
[[ $gsl_fcode_err ]] && return
|
||||
|
||||
# Register file to DB
|
||||
printf '%s\n' \
|
||||
"# Fbrut_URI:$gsl_dir_domain_files/$header_f2" \
|
||||
>> "$gsl_tmp_db"
|
||||
|
||||
# Stat
|
||||
((gsl_stat_fbruts++))
|
||||
|
||||
# Register file to DB
|
||||
printf '%s\n' \
|
||||
"Fbrut_$gsl_stat_fbruts=\"$gsl_dir_domain_files/$header_f2\"" \
|
||||
>> "$gsl_tmp_db"
|
||||
|
||||
# register images in PWD/images to sync after no err check
|
||||
fbrut_header_f2[$gsl_stat_fbruts]="$header_f2"
|
||||
|
||||
# Get image sub-folders (if exists) to create them on DOMAIN/ template
|
||||
fbrut_filename[$gsl_stat_fbruts]=`basename "$header_f2"`
|
||||
fbrut_folders[$gsl_stat_fbruts]=${header_f2/${fbrut_filename[$gsl_stat_fbruts]}/}
|
||||
}
|
||||
|
||||
|
||||
|
|
Loading…
Reference in New Issue