lyricdownloader sur 2 colonnes dans conky

Publié le par Levi59

Un petit script pour afficher les paroles de lyricdownloader sur plusieurs colonnes dans conky si celle ci dépassent un nombre définie de lignes.

 

Le script conserve les paragraphes.

 

Code : cldformater

 

#!/bin/bash
# Permet d'afficher les paroles de lyricsdownloader sur 2 colonnes
# lorsque le texte dépasse un certain nombre de lignes.
# Copyright (C) 26 Aout 2011, Rombeaut Rodolphe
# http://scriptam.over-blog.com/
# Released into the public domain.


#nombre de ligne maximum pour une colonne
MAX=30

#1 colonne, présentation conky si moins de $MAX lignes
BEFORE1='${color1}${alignc}'
AFTER1='${color}'

#2 colonnes, présentation conky si plus de $MAX lignes
BEFORE2='${color1}'
CENTER2='${goto 220}'
AFTER2='${color}'

#########################################
##      Ne pas toucher la suite        ##
#########################################

MAX=$(($MAX-1))

# Récupération des paroles dans une liste
PAROLES=()
while read
do
    PAROLES+=( "${REPLY}" )
done < <(lyricsdownloader | fold -sw60)   #pas testé!! Possibilité de rajouter " | fold -sw60" à la commande

# Affichage dans conky
[ $((${#PAROLES[@]}-1)) -lt $MAX ] && {
    for i in ${!PAROLES[@]}
    do
        echo "${BEFORE1}${PAROLES[i]}${AFTER1}"
    done
} || {
    for i in $(seq $MAX $((${#PAROLES[@]}-1)))
    do
        [ -z "${PAROLES[i]}" ] && {
            j=$(($i+1))
            break
        }
    done
   
    for i in $(seq 0 $(($j-2)))
    do
        echo "${BEFORE2}${PAROLES[i]}${CENTER2}${PAROLES[i+j]}${AFTER2}"
    done
}

exit

 

dans le conkyrc:

Code:

${execpi 30 cldformater}

Publié dans Monitoring

Commenter cet article