2 Commits
v0.9 ... v1.0

Author SHA1 Message Date
8264db80e9 Version 1.0
-ajout d’un nouveau champ dans la table pour faire des recherches sans accent (bashbird et insert)
-refonte de l’export markdown
2024-10-18 09:21:20 +02:00
6ecabb9ffa v 0.9.1 2024-10-14 09:25:55 +02:00
6 changed files with 1105 additions and 1070 deletions

Binary file not shown.

File diff suppressed because it is too large Load Diff

BIN
Transparent300px.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 100 B

View File

@@ -1,6 +1,6 @@
#!/usr/bin/env bash #!/usr/bin/env bash
VERSION="v0.9" VERSION="v1.0"
red="\033[1;31m" red="\033[1;31m"
greenbold="\033[1;32m" greenbold="\033[1;32m"
@@ -15,13 +15,13 @@ reset="\033[0m"
dotenv () { dotenv () {
set -a set -a
# shellcheck disable=SC1091 # shellcheck disable=SC1091
[ -f ".env" ] && . ".env" || echo -e "${red}\nNo .env file found ! No token for gotify.${reset}" [ -f ".env" ] && . ".env" || echo -e "${red}\nNo .env file found ! Could'nt get update from Github.'.${reset}"
set +a set +a
} }
dotenv dotenv
### ChangeNotes: . ### ChangeNotes: Minor corrections.
Github="https://github.com/bruno21/bashbirds" Github="https://github.com/bruno21/bashbirds"
# Repo normal: # Repo normal:
#RawUrl="https://raw.githubusercontent.com/Bruno21/bashbirds/main/bashbirds.sh" #RawUrl="https://raw.githubusercontent.com/Bruno21/bashbirds/main/bashbirds.sh"
@@ -36,7 +36,8 @@ ScriptWorkDir="$(dirname "$ScriptPath")" # /Users/bruno/Documents/Scripts/bashbi
### Check if there's a new release of the script: ### Check if there's a new release of the script:
LatestRelease="$(curl -s -r 0-50 $RawUrl | sed -n "/VERSION/s/VERSION=//p" | tr -d '"')" LatestRelease="$(curl -s -r 0-50 $RawUrl | sed -n "/VERSION/s/VERSION=//p" | tr -d '"')"
LatestChanges="$(curl -s -r 0-200 $RawUrl | sed -n "/ChangeNotes/s/### ChangeNotes: //p")" LatestChanges="$(curl -s -r 0-200 $RawUrl | sed -n "/ChangeNotes/s/### ChangeNotes: //p")"
echo $LatestRelease #[[ $LatestRelease != $VERSION ]] && new="($LatestRelease)" || new=""
echo -e "${yellowbold}Bashbird${reset} $VERSION\n" echo -e "${yellowbold}Bashbird${reset} $VERSION\n"
@@ -55,7 +56,9 @@ req2() {
#read -p "Pause: " choice #read -p "Pause: " choice
query2="SELECT * FROM liste;"
#query2="SELECT * FROM liste;"
query2="SELECT Francais, Autres, Latin, Anglais, Ordre, Famille, Liens FROM liste;"
result2=$(sqlite3 ./birds.db "$query2") result2=$(sqlite3 ./birds.db "$query2")
#echo "$result2" #echo "$result2"
@@ -71,18 +74,36 @@ req2() {
or="${array[4]}" or="${array[4]}"
fa="${array[5]}" fa="${array[5]}"
ln="${array[6]}" ln="${array[6]}"
#echo "$ln"
#read -r -p "Would you like to update? y/[n]: " SelfUpdate
[[ $aut != "" ]] && z="($aut)" || z="" [[ $aut != "" ]] && z="($aut)" || z=""
if [ $ext = ".md" ]; then if [ $ext = ".md" ]; then
echo "| $fr $z |" >>"$f"
echo "|--------------------------------------------------|" >>"$f" #echo "| $fr $z |" >>"$f"
echo "| $lat |" >> "$f" #echo "|--------------------------------------------------|" >>"$f"
echo "| $en |" >> "$f" #echo "| $lat |" >> "$f"
echo "| $or |" >> "$f" #echo "| $en |" >> "$f"
echo "| $fa |" >> "$f" #echo "| $or |" >> "$f"
echo "| $ln |" >> "$f" #echo "| $fa |" >> "$f"
echo "" >> "$f" #echo "| $ln |" >> "$f"
#echo "" >> "$f"
birds+="| $fr | $z |"'\n'
birds+="|------------------------ | --------------------------|"'\n'
birds+="| Vernaculaire | $lat |"'\n'
birds+="| Anglais | $en |"'\n'
birds+="| Ordre | $or |"'\n'
birds+="| Famille | $fa |"'\n'
#birds+="| Liens (oiseaux.net)<br />![](/Users/bruno/Pictures/Transparent300px.png) | [$fr]($ln)<br />![](/Users/bruno/Pictures/Transparent300px.png) |"'\n'
birds+="| Liens (oiseaux.net)<br />![](Transparent300px.png) | [$fr]($ln)<br />![](Transparent300px.png) |"'\n'
birds+='\n'
elif [ $ext = ".html" ]; then elif [ $ext = ".html" ]; then
firstletter="${fr:0:1}" firstletter="${fr:0:1}"
if [ $firstletter != $old_index ]; then if [ $firstletter != $old_index ]; then
@@ -116,12 +137,20 @@ req2() {
bird="$z" bird="$z"
html html
elif [ $ext = ".md" ]; then
echo -e "${yellow}Exporting markdown file...${reset}"
bird=$(echo "$birds" | sed 's/\
//g')
echo -e "$bird" > "liste_oiseaux$ext" echo -e "$bird" > "liste_oiseaux$ext"
fi fi
exit 0 exit 0
} }
html() {
echo -e "${yellow}Exporting html file...${reset}"
cat > liste_oiseaux.html << EOF cat > liste_oiseaux.html << EOF
<!DOCTYPE html> <!DOCTYPE html>
@@ -222,7 +251,9 @@ req1() {
if [[ "${request,,}" == "all" ]]; then if [[ "${request,,}" == "all" ]]; then
request=""; request="";
fi fi
query1="SELECT * FROM liste WHERE Francais LIKE \"%$request%\" OR Autres LIKE \"%$request%\" OR Latin LIKE \"%$request%\"";
request=$(echo "$request" | sed 'y/áàâäçéèêëîïìôöóùúüñÂÀÄÇÉÈÊËÎÏÔÖÙÜÑ/aaaaceeeeiiiooouuunAAACEEEEIIOOUUN/')
query1="SELECT * FROM liste WHERE Fra LIKE \"%$request%\" OR Aut LIKE \"%$request%\" OR Latin LIKE \"%$request%\""; query1="SELECT * FROM liste WHERE Fra LIKE \"%$request%\" OR Aut LIKE \"%$request%\" OR Latin LIKE \"%$request%\"";
result1=$(sqlite3 ./birds.db "$query1") result1=$(sqlite3 ./birds.db "$query1")
@@ -232,12 +263,12 @@ req1() {
cmpt=1 cmpt=1
while IFS='|' read -ra array2; while IFS='|' read -ra array2;
do do
aut2="${array2[1]}" fr2="${array2[0]}"
lat2="${array2[2]}" aut2="${array2[2]}"
en2="${array2[3]}" lat2="${array2[4]}"
or2="${array2[4]}" en2="${array2[5]}"
fa2="${array2[5]}" or2="${array2[6]}"
lnk2="${array2[6]}" fa2="${array2[7]}"
lnk2="${array2[8]}" lnk2="${array2[8]}"
tag2="$fr2" tag2="$fr2"

BIN
birds.db

Binary file not shown.

View File

@@ -13,8 +13,8 @@ reset="\033[0m"
dir=$(dirname "$0") # /Users/bruno/Documents/Scripts/keywords2insta dir=$(dirname "$0") # /Users/bruno/Documents/Scripts/keywords2insta
if [ ! -f ./birds.db ]; then if [ ! -f ./birds.db ]; then
cmd0="CREATE TABLE liste (Francais string, Autres string, Latin string, Anglais string, Ordre string, Famille string, Liens string);" cmd0="CREATE TABLE liste (Francais string, Fra string, Autres string, Aut string, Latin string, Anglais string, Ordre string, Famille string, Liens string);"
echo "$cmd0" | sqlite3 ./birds_plus.db echo "$cmd0" | sqlite3 ./birds.db
if [ $? -ne 0 ]; then exit 0; fi if [ $? -ne 0 ]; then exit 0; fi
fi fi
@@ -34,20 +34,24 @@ if [ -f "$dir"/Oiseaux_europe.csv ]; then
((skip_headers--)) ((skip_headers--))
else else
fr="${array[0]}" fr="${array[0]}"
aut="${array[1]}" fr_wa="${array[1]}"
lat="${array[2]}" aut="${array[2]}"
en="${array[3]}" aut_wa="${array[3]}"
or="${array[4]}" lat="${array[4]}"
fa="${array[5]}" en="${array[5]}"
ln="${array[6]}" or="${array[6]}"
fa="${array[7]}"
ln="${array[8]}"
fr=$(echo "$fr" | sed "s/'/''/g") fr=$(echo "$fr" | sed "s/'/''/g")
fr_wa=$(echo "$fr_wa" | sed "s/'/''/g")
aut=$(echo "$aut" | sed "s/'/''/g") aut=$(echo "$aut" | sed "s/'/''/g")
aut_wa=$(echo "$aut_wa" | sed "s/'/''/g")
en=$(echo "$en" | sed "s/'/''/g") en=$(echo "$en" | sed "s/'/''/g")
or=$(echo "$or" | sed "s/'/''/g") or=$(echo "$or" | sed "s/'/''/g")
fa=$(echo "$fa" | sed "s/'/''/g") fa=$(echo "$fa" | sed "s/'/''/g")
cmd1="INSERT INTO liste (Francais, Autres, Latin, Anglais, Ordre, Famille, Liens) VALUES ('$fr','$aut','$lat','$en','$or','$fa','$ln');" cmd1="INSERT INTO liste (Francais, Fra, Autres, Aut, Latin, Anglais, Ordre, Famille, Liens) VALUES ('$fr','$fr_wa','$aut','$aut_wa','$lat','$en','$or','$fa','$ln');"
echo "$cmd1" | sqlite3 ./birds.db echo "$cmd1" | sqlite3 ./birds.db
fi fi