Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#326 Le 08/12/2011, à 01:40

destroyedlolo

Re : [Conky] Alternative à weather.com ( icones conkyforecast )

Voici donc une toute version de mes scripts : C'est du test, donc rien de folichon et pour le moment, ce n'est que pour la meteo du jour ... on verra la deco apres tongue

alignment top_left
double_buffer yes
default_color white
default_shade_color black
default_outline_color grey
update_interval 1.0 # sera change dans le script des que l'URL aura répondu ...
own_window yes

lua_load GoogleMeteo.lua

TEXT
${scroll 40 $nodename -${color grey} $sysname $kernel on $machine$color }
# http://localhost/~laurent/google_utf8_fr.xml 
${if_empty ${lua GoogleMeteo_Maj ${curl http://www.google.com/ig/api?weather=Annecy/France&oe=utf8&hl=fr 15 }}}
En attente ...
${else}${iconv_start UTF-8 ISO_8859-1}${color Green}${lua GoogleMeteo_city}${offset 8}${color8}${voffset -2}${hr}

${color grey}Aujourd'hui : ${color orange}${lua GoogleMeteo_date }
${color grey}Temperature : ${color orange}${lua GoogleMeteo_Temperature } DegC
${color grey}Condition : ${color orange}${lua GoogleMeteo_condition}
${color grey}Humidite : $color${lua GoogleMeteo_humidity}%
${color grey}Vent : $color${lua GoogleMeteo_Wind}
${iconv_stop}
${endif}
require "lxp"

function conky_GoogleMeteo_Maj( cmd )
    s = conky_parse( cmd )

    if s == "" then    -- Pas de reponse
        return ""
    end
--    conky_set_update_interval(900) -- Pas besoin d'avoir des mise a jour frequentes : 15'

        -- Construit la reponse
    local res = {}
    current_conditions = false; forecast_conditions = false
    local count=0
    callbacks = {
        StartElement = function (parser, name, attrs)
            if(name == "city") then
                city = attrs.data;
            elseif(name == "forecast_date") then
                forecast_date = attrs.data
            elseif(name == "condition") then
                condition = attrs.data
            elseif(name == "humidity") then
                humidity = string.match(attrs.data, "%d+")
            elseif(name == "wind_condition") then
                wind_condition = string.gsub(attrs.data, "%a+ : ", "" )
            elseif(name == "temp_c") then
                temperature = attrs.data
            end
        end
    }
    p = lxp.new(callbacks)
    p:parse(s)
    p:parse()
    p:close() 

        -- Formate la date de la prévision
    local a,m,j = forecast_date:match("(%d+)-(%d+)-(%d+)")
    forecast_date = os.time{year=a, month=m, day=j, hour=0}

    return "ok"
end

function conky_GoogleMeteo_date()
    return os.date("%a %d %b %Y", forecast_date)
end

function conky_GoogleMeteo_city()
    return city
end

function conky_GoogleMeteo_condition()
    return condition
end

function conky_GoogleMeteo_humidity()
    return humidity
end

function conky_GoogleMeteo_Wind()
    return wind_condition
end

function conky_GoogleMeteo_Temperature()
    return temperature
end

On peut noter :

  • J'ai encore des pb avec l'unicode : si j'arrive enfin a afficher les reponses de google, je n'arrive toujours pas a mettre des accents dans mes propres messages. Je pense que c'est mon editeur qui ne gere pas l'utf-8 et me sort des caracteres ASCII "normaux"

  • j'essaie de faire optimiser : avec LUA, pas de fork donc moins stressant que d'appeler un script externe. CURL n'est lancer qu'une fois, je n'ai que des petites fonctions pour acceder aux autres info

Dans un meme conky, on peut lancer plusieurs fois le script ce qui permet d'avoir ... la meteo pour plusieurs lieux.

Malheureusement, Google n'a pas toutes les localites. Par exemple, il manque "La Clusaz" ... Grrrrr, comment je sais si je dois faire chauffer les ski moi ???

Dernière modification par destroyedlolo (Le 08/12/2011, à 01:48)

Hors ligne

#327 Le 08/12/2011, à 18:02

destroyedlolo

Re : [Conky] Alternative à weather.com ( icones conkyforecast )

Bon, je pensais que mon systeme en utf8 ... mais non.
Je l'ai donc switche et maintenant je peux mettre des accents dans ma config conky et ca fonctionne (conky ne gere toujours pas l'UTF-8 mais iconv fonctionne smile

Donc je peux maintenant me consacrer sur ce qui manque et en particulier les jours suivants.

Par contre, est-ce que qq'un sait s'il existe une API similaire et gratuite chez Meteo France ou ses concurrents ? (meteoconsult, ...).

Merci.

Hors ligne

#328 Le 08/12/2011, à 21:26

Didier-T

Re : [Conky] Alternative à weather.com ( icones conkyforecast )

destroyedlolo a écrit :

Par contre, est-ce que qq'un sait s'il existe une API similaire et gratuite chez Meteo France ou ses concurrents ? (meteoconsult, ...).

Merci.

pour des API voici ce que j'ai trouvé meteorologic et yahoo weather.

malheureusement les API ne fournissent pas beaucoup d'informations, mais toutes expérience est bonne à prendre, amuse toi bien.

Hors ligne

#329 Le 09/12/2011, à 08:46

nikyo15

Re : [Conky] Alternative à weather.com ( icones conkyforecast )

Bonjour a tous !
En téléchargeant le script présenté par Philinux, et en le modifiant pas mal, je suis arrivé à ça :
Mon bureau

Pour voir ça en plus grand : http://nikyo15.legtux.org/Capture.png

Les pourcentages en rouge sont les risque de précipitations, sauf pour la lune ou c'est le pourcentage de visibilité.
Les températures entre parenthèses sont les températures ressenties.
Le reste est plutôt clair je pense.

Pour ceux que ça intéresserai, voici la démarche :

- Télécharger l'archive : http://ubuntuone.com/2lBvROGGXZaKjx3N9nsoDF
- L'extraire dans /home/votrenom/conky (créer le dossier conky si besoin)
- Faire tout ce qui est dit dans meteo/Tuto conkyrcmeteo
- Copier-collé ce qui suit a la place de ce qui est dans /meteo/conkyrcmeteo :

# Create own window instead of using desktop (required in nautilus)
own_window yes
own_window_type override
own_window_transparent yes
own_window_hints undecorated,below,skip_taskbar,skip_pager

# Use double buffering (reduces flicker, may not work for everyone)
double_buffer yes

# fiddle with window
use_spacer yes
use_xft yes

# Update interval in seconds
update_interval 3

# Minimum size of text area
minimum_size 365 600
maximum_width 355

override_utf8_locale yes

# Draw shades?
draw_shades yes

# Text stuff
draw_outline no # amplifies text if yes
draw_borders no
#font freesans -12
# xftfont Arial:size=9
xftfont Arial:size=10
uppercase no # set to yes if you want all text to be in uppercase

# Stippled borders?
stippled_borders 3

# border margins
border_margin 9

# border width
border_width 10

# Default colors and also border colors, grey90 == #e5e5e5
default_color cbcbcb

own_window_colour brown
own_window_transparent yes

# Text alignment, other possible values are commented
#alignment top_left
alignment top_right
#alignment bottom_left
#alignment bottom_right

# Gap between borders of screen and text
gap_x 20
gap_y 30

#Rafraichissement images
imlib_cache_size 0

# Couleurs
default_color FFFFFF #blanc
default_shade_color 333333
default_outline_color black

color1 black 
color2 CA0000 #rouge
color4 E7E1D6 #
color6 EEEEEE
color7 DDDDDD
color8 CCCCCC
color9 48D1CC

# stuff after 'TEXT' will be formatted on screen

TEXT
### En-tête Infos météo du moment ###
${color1}${execpi 120 bash ~/conky/meteo/meteo}${font ChopinScript:size=20}Météo pour ${execpi 120 ~/conky/meteo/afmeteo Ville cc} ${hr 2}
${color white}${font Comic sans MS:size=14}
## Affichage icône météo du moment ##
${voffset 5}${goto 10}${font ConkyWeather:style=Bold:size=60}${image ~/conky/meteo/icones/cc.png -p 0,55 -s 150x90}${font}
## Affichage conditions météo du moment ##
${voffset -100}${font ChopinScript:size=17:style=bold}${color1}${execpi 120 ~/conky/meteo/afmeteo meteo cc}

#${voffset -60}${font}${image ~/conky/meteo/icones/base/27ho.png -p 180,152 -s 67x40}${voffset 95}
## Affichage Vent ##
${voffset 15}${goto 10}${font Gentium Basic:size=14}${color1}${image ~/conky/meteo/icones/vcc.png -p 45,130 -s 48x48}${goto 105} ${voffset 35}${execpi 120 ~/conky/meteo/afmeteo vitesse_vent cc}Km/h
${voffset -25}${goto 5}${font Gentium Basic:size=17} ${execpi 120 ~/conky/meteo/afmeteo direction_vent cc}${font}
## Affichage infos diverses météo du momment ##
${voffset -120}${font}${goto 200}T° Ressentie : $alignr${color1}${execpi 120 ~/conky/meteo/afmeteo temp_res cc}°C
${goto 200}Visibilité : $alignr${color1}${execpi 120 ~/conky/meteo/afmeteo visibilite cc}
${goto 200}Précipitations : $alignr${color1}${execpi 120 ~/conky/meteo/afmeteo q_precipitation 0}
${goto 200}Humidité : $alignr${color1}${execpi 120 ~/conky/meteo/afmeteo taux_humidite cc}
${goto 200}${font}Lever Soleil : $alignr${color1}${execpi 120 ~/conky/meteo/afmeteo lever_soleil cc}
${goto 200}Coucher Soleil : $alignr${color1}${execpi 120 ~/conky/meteo/afmeteo coucher_soleil cc}
${goto 200}Tendance : $alignr${color1}${execpi 120 ~/conky/meteo/afmeteo tend_pression cc}
## Affichage T° du moment ##
${voffset -50}${font style=Bold:size=16}${if_match ${execpi 120 ~/conky/meteo/afmeteo temp cc}<6}${color blue}${goto 125} ${execpi 120 ~/conky/meteo/afmeteo temp cc}°${else}${color2}${goto 70}${execpi 120 ~/conky/meteo/afmeteo temp cc}°${endif}

${voffset 25}${font}${color1}${hr 2}
##################################################################################### FIN PARTIE 1
### Données météo générales pour la journée en cours ###
${goto 50}${font ChopinScript:size=20}${color ffe595}${color1}Jour ${goto 165} Nuit${goto 280} Lune
## Affichages icônes météo journée nuit et lune ##
${image ~/conky/meteo/icones/J0jour.png -p 10,215 -s 120x72}
${image ~/conky/meteo/icones/J0soir.png -p 130,215 -s 120x72}
${execpi 3600 bash ~/conky/meteo/lune.sh}${image ~/conky/meteo/icones/lune.png -p 280,223 -s 45x45}

## Affichage probabilité de précipitations pour la journée et la nuit ##
${voffset -85}${goto 50}${color red}${font}${execpi 120 ~/conky/meteo/afmeteo prob_orage 0 jour}${goto 170}${execpi 120 ~/conky/meteo/afmeteo prob_orage 0 soir}${goto 270}${execpi 120 sed -n '6p' ~/conky/meteo/phases}
## Affichage conditions météo globale pour journée en cours et nuit sur 2 lignes ##
#LIGNE 1#
${voffset 5}${goto 20}${font}${color1}${execpi 120 sed -n '1p' ~/conky/meteo/messages}${goto 150}${execpi 120 sed -n '3p' ~/conky/meteo/messages}
#LIGNE2#
${goto 24}${execpi 120 sed -n '2p' ~/conky/meteo/messages}${goto 150}${execpi 120 sed -n '4p' ~/conky/meteo/messages}
## Affichage données relatives à la lune ##
${voffset -5}${execpi 1200 bash ~/conky/meteo/lune.sh}${voffset -25}${goto 285}${execpi 120 sed -n '3p' ~/conky/meteo/phases}
${goto 285}${execpi 120 sed -n '4p' ~/conky/meteo/phases}
${goto 283}${execpi 120 sed -n '9p' ~/conky/meteo/phases}
${voffset 0}${font}${goto 60}${color1}${hr 2}
################################################# FIN PARTIE 2
### Affichage des prévisions des 2 prochaines journées (J+1 à J+2) ###
## Affichage des noms des 2 prochains jours ##
${voffset 0}${font ChopinScript:style=bold:size=18}${color1}${goto 130}${execpi 120 sed -n '3p' ~/conky/meteo/listejours}${goto 260}${execpi 120 sed -n '5p' ~/conky/meteo/listejours}
${voffset -5}
## Affichage des icônes météo pour le jour ##
${image ~/conky/meteo/icones/J1jour.png -p 100,360 -s 100x60}
${image ~/conky/meteo/icones/J2jour.png -p 235,360 -s 100x60}
## Affichage des T° pour le jour ##
${voffset -60}${font Bitstream Vera Sans Mono:size=10}${goto 195}${color yellow}${execpi 120 ~/conky/meteo/afmeteo temp 1 jour}C${goto 329}${color yellow}${execpi 120 ~/conky/meteo/afmeteo temp 2 jour}C
${goto 187}${color yellow}(${execpi 120 ~/conky/meteo/afmeteo temp_res 1 jour})${goto 321}${color yellow}(${execpi 120 ~/conky/meteo/afmeteo temp_res 2 jour})
## Affichage des probabilités de précipitation pour le jour ##
${voffset -15}${goto 135}${font Arial:size=10}${color red}${execpi 120 ~/conky/meteo/afmeteo prob_orage 1 jour}${goto 265}${font Arial:size=10:style=bold}${color red}${execpi 120 ~/conky/meteo/afmeteo prob_orage 2 jour}
## Affichage sur 2 lignes des conditions météo pour le jour ##
${voffset 10}${goto 104}${color1}${font}${execpi 120 sed -n '5p' ~/conky/meteo/messages}${goto 235}${execpi 120 sed -n '9p' ~/conky/meteo/messages}
${goto 104}${execpi 120 sed -n '6p' ~/conky/meteo/messages}${goto 235}${execpi 120 sed -n '10p' ~/conky/meteo/messages}


## Affichage des icônes météo pour la nuit ##
${image ~/conky/meteo/icones/J1soir.png -p 100,460 -s 100x60}
${image ~/conky/meteo/icones/J2soir.png -p 235,460 -s 100x60}
## Affichage des T° pour la nuit ##
${voffset -30}${goto 195}${color ffe595}${execpi 120 ~/conky/meteo/afmeteo temp 1 soir}C${goto 329}${color ffe595}${execpi 120 ~/conky/meteo/afmeteo temp 2 soir}C
${goto 187}${color ffe595}(${execpi 120 ~/conky/meteo/afmeteo temp_res 1 soir})${goto 321}${color ffe595}(${execpi 120 ~/conky/meteo/afmeteo temp_res 2 soir})
## Affichage des probabilités de précipitation pour la nuit ##
${voffset -10}${goto 135}${color red}${execpi 120 ~/conky/meteo/afmeteo prob_orage 1 soir}${goto 265}${execpi 120 ~/conky/meteo/afmeteo prob_orage 2 soir}
## Affichage sur 2 lignes des conditions météo pour la nuit ##
${voffset 10}${goto 104}${color1}${execpi 120 sed -n '7p' ~/conky/meteo/messages}${goto 235}${execpi 120 sed -n '11p' ~/conky/meteo/messages}
${voffset -5}${goto 104}${execpi 120 sed -n '8p' ~/conky/meteo/messages}${goto 235}${execpi 120 sed -n '12p' ~/conky/meteo/messages}
${voffset -5}${font}${goto 150}${hr 2}

- Télécharger et installer la police suivante : http://img.dafont.com/dl/?f=chopin_script (extraire le fichier téléchargé et double-cliquer sur ChopinScript.otf)
- Arrêter conky puis redémarrer le script météo (dans un terminal: sudo killall conky, puis conky -c ~/conky/meteo/conkyrcmeteo )
- Profiter smile

Je suis plus ou moins débutant, donc soyez indulgents sur le code svp smile

PS: fond d'écran disponible ici : http://nikyo15.legtux.org/background.jpg

Dernière modification par nikyo15 (Le 09/12/2011, à 08:54)

Hors ligne

#330 Le 09/12/2011, à 10:26

destroyedlolo

Re : [Conky] Alternative à weather.com ( icones conkyforecast )

Bon, j'en ai fini avec google : ca marche pas mal (sans fioritures pour le moment). Je le publierai ce soir ou dans le W.E.

Didier-T a écrit :

pour des API voici ce que j'ai trouvé meteorologic et yahoo weather.

Hum, celui de meteorologic est vraiment tres complet, merci (on peut meme obtenir les donnees technique pour le jour meme).
Le flux RSS est utilisable tel quel si on veut se passe des icones.

Je vais jouer un peu avec, merci.

Hors ligne

#331 Le 09/12/2011, à 13:35

Didier-T

Re : [Conky] Alternative à weather.com ( icones conkyforecast )

@ nikyo15,

Bonjour, j'aime bien ta barre de tache. smile
Dis... tu la trouvé où. tongue

Hors ligne

#332 Le 09/12/2011, à 14:24

nikyo15

Re : [Conky] Alternative à weather.com ( icones conkyforecast )

Didier-T a écrit :

@ nikyo15,

Bonjour, j'aime bien ta barre de tache. smile
Dis... tu la trouvé où. tongue

Bonjour !
Si tu entends par barre des tâches le dock en bas, c'est AWN : http://doc.ubuntu-fr.org/avant-window-navigator
J'ai modifié le thème Clearlook pour arriver à ça smile.

Hors ligne

#333 Le 09/12/2011, à 16:24

Didier-T

Re : [Conky] Alternative à weather.com ( icones conkyforecast )

nikyo15 a écrit :
Didier-T a écrit :

@ nikyo15,

Bonjour, j'aime bien ta barre de tache. smile
Dis... tu la trouvé où. tongue

Bonjour !
Si tu entends par barre des tâches le dock en bas, c'est AWN : http://doc.ubuntu-fr.org/avant-window-navigator
J'ai modifié le thème Clearlook pour arriver à ça smile.

Je vais tester ce soir. big_smile
Merci.

Hors ligne

#334 Le 10/12/2011, à 00:48

destroyedlolo

Re : [Conky] Alternative à weather.com ( icones conkyforecast )

Voici donc ce que donne mon script en version texte brute :

prevtxt.png

A notez que je sais pas pourquoi conky/Lua s'acharnent a m'afficher la date en anglais alors que ma "locale" est française mais bon ...

Les scripts sont :

alignment top_left
double_buffer yes
default_color white
background no
update_interval 1.0 # Sera changé dans le script une fois les données récupérées
out_to_console no
out_to_stderr no

own_window yes
own_window_class Conky
own_window_type normal
own_window_hints undecorated,below,sticky,skip_taskbar,skip_pager
own_window_transparent yes

lua_load GoogleMeteo.lua

TEXT
${if_empty ${lua GoogleMeteo_Maj ${curl http://www.google.com/ig/api?weather=Annecy/France&oe=utf8&hl=fr 15 }}}
En attente ...
${else}${iconv_start UTF-8 ISO_8859-1}${color Green}${lua GoogleMeteo_city}${offset 8}$color${voffset -2}${hr}

${color grey}Aujourd'hui : ${color orange}${lua GoogleMeteo_date }
${color grey}Température : ${color orange}${lua GoogleMeteo_Temperature } °C
${color grey}Condition : ${color orange}${lua GoogleMeteo_condition}
${color grey}Humidité : $color${lua GoogleMeteo_humidity}%
${color grey}Vent : $color${lua GoogleMeteo_Wind}

${color grey}Prévision pour ${color orange}${lua GoogleMeteo_pJour 1} ${offset 8}${color grey}${voffset -2}${hr}

${color grey}Condition : $color${lua GoogleMeteo_pCondition 1}
${color grey}Températures : $color${lua GoogleMeteo_pMini 1} ${color grey}/ $color${lua GoogleMeteo_pMaxi 1} ${color grey}°C

${color grey}Prévision pour ${color orange}${lua GoogleMeteo_pJour 2} ${offset 8}${color grey}${voffset -2}${hr}

${color grey}Condition : $color${lua GoogleMeteo_pCondition 2}
${color grey}Températures : $color${lua GoogleMeteo_pMini 2} ${color grey}/ $color${lua GoogleMeteo_pMaxi 2} ${color grey}°C

${color grey}Prévision pour ${color orange}${lua GoogleMeteo_pJour 3} ${offset 8}${color grey}${voffset -2}${hr}

${color grey}Condition : $color${lua GoogleMeteo_pCondition 3}
${color grey}Températures : $color${lua GoogleMeteo_pMini 3} ${color grey}/ $color${lua GoogleMeteo_pMaxi 3} ${color grey}°C

${color grey}Prévision pour ${color orange}${lua GoogleMeteo_pJour 4} ${offset 8}${color grey}${voffset -2}${hr}

${color grey}Condition : $color${lua GoogleMeteo_pCondition 4}
${color grey}Températures : $color${lua GoogleMeteo_pMini 4} ${color grey}/ $color${lua GoogleMeteo_pMaxi 4} ${color grey}°C
${iconv_stop}
$color$hr
${endif}

et

require "lxp"

function conky_GoogleMeteo_Maj( cmd )
    s = conky_parse( cmd )

    if s == "" then    -- Pas de reponse
        return ""
    end
    conky_set_update_interval(900) -- Pas besoin d'avoir des mise a jour frequentes : 15'

        -- Construit la reponse
    prevision = {}
    local idx=0
    local current_conditions = false; local forecast_conditions = false
    callbacks = {
        StartElement = function (parser, name, attrs)
            if name == "city" then
                city = attrs.data;
            elseif name == "forecast_date" then
                forecast_date = attrs.data
            elseif name == "condition" then
                if current_conditions then
                    condition = attrs.data
                elseif forecast_conditions then
                    fcondition = attrs.data
                end
            elseif name == "humidity" then
                humidity = string.match(attrs.data, "%d+")
            elseif name == "wind_condition" then
                wind_condition = string.gsub(attrs.data, "%a+ : ", "" )
            elseif name == "temp_c" then
                temperature = attrs.data
            elseif name == "current_conditions" then
                current_conditions = true
            elseif name == "forecast_conditions" then
                forecast_conditions = true
                idx = idx + 1
            elseif name == "day_of_week" then
                jour = attrs.data
            elseif name == "low" then
                minimum = attrs.data
            elseif name == "high" then
                maximum = attrs.data
            end
        end,
            EndElement = function (parser, name)
            if name == "current_conditions" then
                current_conditions = false
            elseif name == "forecast_conditions" then
                prevision[idx] = { jour=jour, condition=fcondition, minimum=minimum, maximum=maximum }
                forecast_conditions = false
            end
        end
    }
    p = lxp.new(callbacks)
    p:parse(s)
    p:parse()
    p:close() 

        -- Formate la date de la prévision
    local a,m,j = forecast_date:match("(%d+)-(%d+)-(%d+)")
    forecast_date = os.time{year=a, month=m, day=j, hour=0}

    return "ok"
end

function conky_GoogleMeteo_date()
    return os.date("%a %d %b %Y", forecast_date)
end

function conky_GoogleMeteo_city()
    return city
end

function conky_GoogleMeteo_condition()
    return condition
end

function conky_GoogleMeteo_humidity()
    return humidity
end

function conky_GoogleMeteo_Wind()
    return wind_condition
end

function conky_GoogleMeteo_Temperature()
    return temperature
end

function conky_GoogleMeteo_pJour( idx )
    return prevision[tonumber(idx)].jour
end

function conky_GoogleMeteo_pJour( idx )
    return prevision[tonumber(idx)].jour
end

function conky_GoogleMeteo_pCondition( idx )
    return prevision[tonumber(idx)].condition
end

function conky_GoogleMeteo_pMini( idx )
    return prevision[tonumber(idx)].minimum
end

function conky_GoogleMeteo_pMaxi( idx )
    return prevision[tonumber(idx)].maximum
end

Je m'attaque maintenant aux icones. Donc là, 2 solutions :

  • Je me base sur la balise <icon> sauf qu'il semblerait que google les changes de temps en temps

  • Soit je me base sur <condition> ... mais comment trouver la liste exhaustive de ces conditions ? J'ai trouve la version anglaise mais est-ce que qq'un aurait la version Francaise ?

Grace au même lien, j'ai recupere les icons de google ... mais je les changerai par la suite pour qq chose de libre et surtout de plus beau lol

Hors ligne

#335 Le 10/12/2011, à 05:35

adama88

Re : [Conky] Alternative à weather.com ( icones conkyforecast )

Bonjour à tous,
@destroyedlolo : J'ai voulu teser ton conky, mais il ne trouve pas lxp qui semble faire partie de lua, or, je ne trouve pas le paquet. Peux-tu me dire comment l'installer, merci.


Ubuntu 23.10 - Windows 11 famille
Lenovo Y520-15IKBN - Intel® Core™ i5-7300HQ × 4 - Intel® UHD 630  + NVIDIA GeForce GTX 1050
32 Go RAM - Nvme 1To + HDD 1to (DD d'origine)

Hors ligne

#336 Le 10/12/2011, à 09:16

carpediem

Re : [Conky] Alternative à weather.com ( icones conkyforecast )

Didier-T a écrit :
carpediem a écrit :

@ Phyllinux & @ Didier-T, merci de votre aide smile  j'ai testé les deux lignes de commande mais malheureusement aucune ne fonctionne. Toujours le même problème sad

@ shamen456 je ne souviens plus ou j'ai récupéré le script, mais je vais chercher.

cordialement carpediem

essaye ceci

PR_HP=`sed -n 10p ~/conky/conkymeteo/curr_cond|sed 's/ mb//'|sed 's/,/\./'`

Edit : je viens de tester cher moi, sa fonctionne, même avec des pressions à décimale.


Merci @ Didier-T sa fonctionne,

Par contre je rencontre un autre problème wink

1323504569.png   1323505153.png

sur mon barograph les aiguilles de la pression et de la température apparaisse de manière aléatoire.

baro.lua

--==============================================================================
--                                 baro.lua
--
--  author  : SLK-adapted by shamen456
--  version : v2011-06-13
--  license : Distributed under the terms of GNU GPL version 2 or later
--
--==============================================================================

require 'cairo'

--------------------------------------------------------------------------------
--                                                                    gauge DATA
gauge = {

{
    name='cpu',                arg='',                      max_value=1060, sub_value=960,
    x=175,                          y=150,
    graph_radius=60,
    graph_thickness=10,
    graph_start_angle=235,
    graph_unit_angle=2.5,          graph_unit_thickness=2.,
    graph_bg_colour=0xFFFFFF,      graph_bg_alpha=0.4,
    graph_fg_colour=0xB1ADA7,      graph_fg_alpha=0,
    hand_fg_colour=0x000000,       hand_fg_alpha=.0,
    txt_radius=0,
    txt_weight=0,                  txt_size=10.0,
    txt_fg_colour=0xFFFFFF,        txt_fg_alpha=0,
    graduation_radius=50,
    graduation_thickness=8,        graduation_mark_thickness=2,
    graduation_unit_angle=18,
    graduation_fg_colour=0x4F4B41, graduation_fg_alpha=0,
    caption='',
    caption_weight=1,              caption_size=8.0,
    caption_fg_colour=0xFFFFFF,    caption_fg_alpha=0.8,
},
{
    name='execpi',                arg='120 bash ~/conky/conkymeteo/afmeteo pression cc|sed "s/ mb//"',                      max_value=1050, sub_value=950,
    x=175,                          y=150,
    graph_radius=30,
    graph_thickness=70,
    graph_start_angle=255,
    graph_unit_angle=2.1,          graph_unit_thickness=2.,
    graph_bg_colour=0xFFFFFF,      graph_bg_alpha=0.4,
    graph_fg_colour=0xB1ADA7,      graph_fg_alpha=0,
    hand_fg_colour=0xFF0000,       hand_fg_alpha=.5,
    txt_radius=20,
    txt_weight=0,                  txt_size=10.0,
    txt_fg_colour=0xFFFFFF,        txt_fg_alpha=0,
    graduation_radius=70,
    graduation_thickness=8,        graduation_mark_thickness=2,
    graduation_unit_angle=18,
    graduation_fg_colour=0x4F4B41, graduation_fg_alpha=1,
    caption='',
    caption_weight=1,              caption_size=8.0,
    caption_fg_colour=0xFFFFFF,    caption_fg_alpha=0.8,
},
{
    name='execi',                arg='120 ~/conky/conkymeteo/afmeteo temp_res cc',   
    max_value=60,                   sub_value=-30,--valeur de depart du graphe
    x=175,                          y=200,
    graph_radius=20,
    graph_thickness=40,
    graph_start_angle=75,
    graph_unit_angle=2.33,          graph_unit_thickness=1.5,
    graph_bg_colour=0xFFFFFF,      graph_bg_alpha=0.4,
    graph_fg_colour=0xB1ADA7,      graph_fg_alpha=0,
    hand_fg_colour=0xFF0000,       hand_fg_alpha=1,
    txt_radius=18,
    txt_weight=1,                  txt_size=10.0,
    txt_fg_colour=0xC0C0FF,        txt_fg_alpha=0,
    graduation_radius=20,
    graduation_thickness=8,        graduation_mark_thickness=2,
    graduation_unit_angle=11.6,
    graduation_fg_colour=0x4F4B41, graduation_fg_alpha=0.6,
    caption='',
    caption_weight=1,              caption_size=8.0,
    caption_fg_colour=0xFFFFFF,    caption_fg_alpha=0.3,
},
{
    name='execi',                arg='120 ~/conky/conkymeteo/afmeteo temp 0 jour',                      max_value=60, sub_value=-30,
    x=175,                          y=200,
    graph_radius=20,
    graph_thickness=40,
    graph_start_angle=75,
    graph_unit_angle=2.33,          graph_unit_thickness=1.5,
    graph_bg_colour=0xFFFFFF,      graph_bg_alpha=0.,
    graph_fg_colour=0xB1ADA7,      graph_fg_alpha=0,
    hand_fg_colour=0xED7F77,       hand_fg_alpha=1,
    txt_radius=30,
    txt_weight=1,                  txt_size=10.0,
    txt_fg_colour=0xED7F77,        txt_fg_alpha=0,
    graduation_radius=22,
    graduation_thickness=14,        graduation_mark_thickness=2,
    graduation_unit_angle=23.3,
    graduation_fg_colour=0x4F4B41, graduation_fg_alpha=1,
    caption='',
    caption_weight=1,              caption_size=8.0,
    caption_fg_colour=0xFFFFFF,    caption_fg_alpha=0.3,
},

}

-------------------------------------------------------------------------------
--                                                                 rgb_to_r_g_b
-- converts color in hexa to decimal
--
function rgb_to_r_g_b(colour, alpha)
    return ((colour / 0x10000) % 0x100) / 255., ((colour / 0x100) % 0x100) / 255., (colour % 0x100) / 255., alpha
end

-------------------------------------------------------------------------------
--                                                            angle_to_position
-- convert degree to rad and rotate (0 degree is top/north)
--
function angle_to_position(start_angle, current_angle)
    local pos = current_angle + start_angle
    return ( ( pos * (2 * math.pi / 360) ) - (math.pi / 2) )
end

-------------------------------------------------------------------------------
--                                                              draw_gauge_ring
-- displays gauges
--
function draw_gauge_ring(display, data, value)
    local max_value = data['max_value']-data['sub_value']
    local sub_value = data['sub_value']
    local x, y = data['x'], data['y']
    local graph_radius = data['graph_radius']
    local graph_thickness, graph_unit_thickness = data['graph_thickness'], data['graph_unit_thickness']
    local graph_start_angle = data['graph_start_angle']
    local graph_unit_angle = data['graph_unit_angle']
    local graph_bg_colour, graph_bg_alpha = data['graph_bg_colour'], data['graph_bg_alpha']
    local graph_fg_colour, graph_fg_alpha = data['graph_fg_colour'], data['graph_fg_alpha']
    local hand_fg_colour, hand_fg_alpha = data['hand_fg_colour'], data['hand_fg_alpha']
    local graph_end_angle = (max_value * graph_unit_angle) % 360

    -- background ring
    cairo_arc(display, x, y, graph_radius, angle_to_position(graph_start_angle, 0), angle_to_position(graph_start_angle, graph_end_angle))
    cairo_set_source_rgba(display, rgb_to_r_g_b(graph_bg_colour, graph_bg_alpha))
    cairo_set_line_width(display, graph_thickness)
    cairo_stroke(display)

    -- arc of value
    local val = (value-sub_value) % (max_value + 1)
    local start_arc = 0
    local stop_arc = 0
    local i = 1
    while i <= val do
        start_arc = (graph_unit_angle * i) - graph_unit_thickness
        stop_arc = (graph_unit_angle * i)
        cairo_arc(display, x, y, graph_radius, angle_to_position(graph_start_angle, start_arc), angle_to_position(graph_start_angle, stop_arc))
        cairo_set_source_rgba(display, rgb_to_r_g_b(graph_fg_colour, graph_fg_alpha))
        cairo_stroke(display)
        i = i + 1
    end
    local angle = start_arc

    -- hand
    start_arc = (graph_unit_angle * val) - (graph_unit_thickness * 2)
    stop_arc = (graph_unit_angle * val)
    cairo_arc(display, x, y, graph_radius, angle_to_position(graph_start_angle, start_arc), angle_to_position(graph_start_angle, stop_arc))
    cairo_set_source_rgba(display, rgb_to_r_g_b(hand_fg_colour, hand_fg_alpha))
    cairo_stroke(display)

    -- graduations marks
    local graduation_radius = data['graduation_radius']
    local graduation_thickness, graduation_mark_thickness = data['graduation_thickness'], data['graduation_mark_thickness']
    local graduation_unit_angle = data['graduation_unit_angle']
    local graduation_fg_colour, graduation_fg_alpha = data['graduation_fg_colour'], data['graduation_fg_alpha']
    if graduation_radius > 0 and graduation_thickness > 0 and graduation_unit_angle > 0 then
        local nb_graduation = graph_end_angle / graduation_unit_angle
        local i = 0
        while i < nb_graduation do
            cairo_set_line_width(display, graduation_thickness)
            start_arc = (graduation_unit_angle * i) - (graduation_mark_thickness / 2)
            stop_arc = (graduation_unit_angle * i) + (graduation_mark_thickness / 2)
            cairo_arc(display, x, y, graduation_radius, angle_to_position(graph_start_angle, start_arc), angle_to_position(graph_start_angle, stop_arc))
            cairo_set_source_rgba(display,rgb_to_r_g_b(graduation_fg_colour,graduation_fg_alpha))
            cairo_stroke(display)
            cairo_set_line_width(display, graph_thickness)
            i = i + 1
        end
    end

    -- text
    local txt_radius = data['txt_radius']
    local txt_weight, txt_size = data['txt_weight'], data['txt_size']
    local txt_fg_colour, txt_fg_alpha = data['txt_fg_colour'], data['txt_fg_alpha']
    local movex = txt_radius * math.cos(angle_to_position(graph_start_angle, angle))
    local movey = txt_radius * math.sin(angle_to_position(graph_start_angle, angle))
    cairo_select_font_face (display, "ubuntu", CAIRO_FONT_SLANT_NORMAL, txt_weight)
    cairo_set_font_size (display, txt_size)
    cairo_set_source_rgba (display, rgb_to_r_g_b(txt_fg_colour, txt_fg_alpha))
    cairo_move_to (display, x + movex - (txt_size / 2), y + movey + 3)
    cairo_show_text (display, value)
    cairo_stroke (display)

    -- caption
    local caption = data['caption']
    local caption_weight, caption_size = data['caption_weight'], data['caption_size']
    local caption_fg_colour, caption_fg_alpha = data['caption_fg_colour'], data['caption_fg_alpha']
    local tox = graph_radius * (math.cos((graph_start_angle * 2 * math.pi / 360)-(math.pi/2)))
    local toy = graph_radius * (math.sin((graph_start_angle * 2 * math.pi / 360)-(math.pi/2)))
    cairo_select_font_face (display, "ubuntu", CAIRO_FONT_SLANT_NORMAL, caption_weight);
    cairo_set_font_size (display, caption_size)
    cairo_set_source_rgba (display, rgb_to_r_g_b(caption_fg_colour, caption_fg_alpha))
    cairo_move_to (display, x + tox + 5, y + toy + 1)
    -- bad hack but not enough time !
    if graph_start_angle < 105 then
        cairo_move_to (display, x + tox - 30, y + toy + 1)
    end
    cairo_show_text (display, caption)
    cairo_stroke (display)
end


-------------------------------------------------------------------------------
--                                                               go_gauge_rings
-- loads data and displays gauges
--
function go_gauge_rings(display)
    local function load_gauge_rings(display, data)
        local str, value = '', 0
        str = string.format('${%s %s}',data['name'], data['arg'])
        str = conky_parse(str)
        value = tonumber(str)
        draw_gauge_ring(display, data, value)
    end
    
    for i in pairs(gauge) do
        load_gauge_rings(display, gauge[i])
    end
end

-------------------------------------------------------------------------------
--                                                                         MAIN
function conky_main()
    if conky_window == nil then 
        return
    end

    local cs = cairo_xlib_surface_create(conky_window.display, conky_window.drawable, conky_window.visual, conky_window.width, conky_window.height)
    local display = cairo_create(cs)
    
    local updates = conky_parse('${updates}')
    update_num = tonumber(updates)
    
    if update_num > 5 then
        go_gauge_rings(display)
    end

end

Cordialement carpediem

Dernière modification par carpediem (Le 10/12/2011, à 09:21)


"Carpe diem quam minimum credula postero"
(Cueille le jour présent, en te fiant le moins possible au lendemain.)
HORACE

Hors ligne

#337 Le 10/12/2011, à 09:27

gemf

Re : [Conky] Alternative à weather.com ( icones conkyforecast )

Bonjour tout le monde,

Je tiens à vous féliciter pour vos conky qui sont plutôt réussi !
J'ai néanmoins une question, quelqu'un habite-t-il dans la région rhône alpes ou suis-je le seul à rencontrer un bug ?
En effet le petit script meteo de Didier_T ne parvient pas à récupérer la météo de ma ville :
address="http://www.accuweather.com/fr/fr/rhône-alpes/saint-etienne/quick-look.aspx"
Après plusieurs essais seules les villes de rhône alpes ne fonctionne pas,sans doute à cause du "ô" quelqu'un a-t-il une idée d'un moyen de remédier à cela ?

Merci, bon week end

Dernière modification par gemf (Le 10/12/2011, à 10:21)

Hors ligne

#338 Le 10/12/2011, à 09:39

carpediem

Re : [Conky] Alternative à weather.com ( icones conkyforecast )

Je pense avoir résolue le problème smile "enfin j'espère"
j'ai modifier la ligne

arg='120 bash ~/conky/conkymeteo/afmeteo pression cc|sed "s/ mb//"',

par la ligne

arg='120 bash ~/conky/conkymeteo/afmeteo pression cc|sed "s/ mb//"|sed "s/,/\./"',

Cordialement carpediem


"Carpe diem quam minimum credula postero"
(Cueille le jour présent, en te fiant le moins possible au lendemain.)
HORACE

Hors ligne

#339 Le 10/12/2011, à 10:15

carpediem

Re : [Conky] Alternative à weather.com ( icones conkyforecast )

j'aimerai savoir quelle balise faut-il utiliser pour insérer dans mon texte un fichier "tar.gz"

Merci à tous, carpediem


"Carpe diem quam minimum credula postero"
(Cueille le jour présent, en te fiant le moins possible au lendemain.)
HORACE

Hors ligne

#340 Le 10/12/2011, à 13:08

Phyllinux

Re : [Conky] Alternative à weather.com ( icones conkyforecast )

gemf a écrit :

Bonjour tout le monde,

Je tiens à vous féliciter pour vos conky qui sont plutôt réussi !
J'ai néanmoins une question, quelqu'un habite-t-il dans la région rhône alpes ou suis-je le seul à rencontrer un bug ?
En effet le petit script meteo de Didier_T ne parvient pas à récupérer la météo de ma ville :
address="http://www.accuweather.com/fr/fr/rhône-alpes/saint-etienne/quick-look.aspx"
Après plusieurs essais seules les villes de rhône alpes ne fonctionne pas,sans doute à cause du "ô" quelqu'un a-t-il une idée d'un moyen de remédier à cela ?

Merci, bon week end

Bonjour gemf,

Je ne pense pas que le problème vienne du 'ô'.
En effet, l'url que j'utilise contient également ce caractère :

http://www.accuweather.com/fr/fr/provence-alpes-côte-d'azur/marseille/quick-look.aspx?cityid=170960

dans 'côte d'azur'
et cela tourne correctement.


The ship is sinking normally...

Hors ligne

#341 Le 10/12/2011, à 14:37

destroyedlolo

Re : [Conky] Alternative à weather.com ( icones conkyforecast )

adama88 a écrit :

Bonjour à tous,
@destroyedlolo : J'ai voulu teser ton conky, mais il ne trouve pas lxp qui semble faire partie de lua, or, je ne trouve pas le paquet. Peux-tu me dire comment l'installer, merci.

Il faut que tu charge un package nome : lua-expat
Bye

Hors ligne

#342 Le 10/12/2011, à 14:42

gemf

Re : [Conky] Alternative à weather.com ( icones conkyforecast )

Phyllinux a écrit :
gemf a écrit :

Bonjour tout le monde,

Je tiens à vous féliciter pour vos conky qui sont plutôt réussi !
J'ai néanmoins une question, quelqu'un habite-t-il dans la région rhône alpes ou suis-je le seul à rencontrer un bug ?
En effet le petit script meteo de Didier_T ne parvient pas à récupérer la météo de ma ville :
address="http://www.accuweather.com/fr/fr/rhône-alpes/saint-etienne/quick-look.aspx"
Après plusieurs essais seules les villes de rhône alpes ne fonctionne pas,sans doute à cause du "ô" quelqu'un a-t-il une idée d'un moyen de remédier à cela ?

Merci, bon week end

Bonjour gemf,

Je ne pense pas que le problème vienne du 'ô'.
En effet, l'url que j'utilise contient également ce caractère :

http://www.accuweather.com/fr/fr/provence-alpes-côte-d'azur/marseille/quick-look.aspx?cityid=170960

dans 'côte d'azur'
et cela tourne correctement.


En effet Phyllinux, cela marche mieux avec le code de la ville :
"http://www.accuweather.com/fr/fr/rhône- … yid=136556"
J'avais essayé auparavant mais pour une raison indéterminé accuweather.com m'avait  donné un autre code qui correspondait a un saint-etienne en auvergne mais avec rhône alpes dans l'adresse : étrange !
Bref cela marche merci !

Hors ligne

#343 Le 10/12/2011, à 17:27

adama88

Re : [Conky] Alternative à weather.com ( icones conkyforecast )

destroyedlolo a écrit :
adama88 a écrit :

Bonjour à tous,
@destroyedlolo : J'ai voulu tester ton conky, mais il ne trouve pas lxp qui semble faire partie de lua, or, je ne trouve pas le paquet. Peux-tu me dire comment l'installer, merci.

Il faut que tu charge un package nome : lua-expat
Bye

Aussitôt dit, aussitôt fait. Il est sympath ton conky météo, simple et sympath. Juste une petite question, peut-on avoir la prévision sur une semaine ?


Ubuntu 23.10 - Windows 11 famille
Lenovo Y520-15IKBN - Intel® Core™ i5-7300HQ × 4 - Intel® UHD 630  + NVIDIA GeForce GTX 1050
32 Go RAM - Nvme 1To + HDD 1to (DD d'origine)

Hors ligne

#344 Le 10/12/2011, à 18:52

destroyedlolo

Re : [Conky] Alternative à weather.com ( icones conkyforecast )

adama88 a écrit :

Aussitôt dit, aussitôt fait. Il est sympath ton conky météo, simple et sympath.

Merci wink
C'est surtout pour me faire la main avec LUA que je ne connaissais pas : je vais attaquer maintenant l'ajout d'icônes pour que ça soit plus joli. Par contre, côté légèreté, c'est réussi car même sur mon antique Athlon 1.1Ghz, on ne sent pas le script passer. Idem niveau utilisation mémoire. Je vais faire aussi des testes sur un K7 / 600 Mhz.

adama88 a écrit :

Juste une petite question, peut-on avoir la prévision sur une semaine ?

Malheureusement, Google ne propose pas mieux.

Maintenant, comme meteorologic propose un flux RSS, ça ne devrait pas être trop difficile ... Je m'y attelle des que j'ai fini avec les icones de Google ...

Bye

Hors ligne

#345 Le 11/12/2011, à 08:51

Didier-T

Re : [Conky] Alternative à weather.com ( icones conkyforecast )

destroyedlolo a écrit :

Je m'attaque maintenant aux icones. Donc là, 2 solutions :

  • Je me base sur la balise <icon> sauf qu'il semblerait que google les changes de temps en temps

  • Soit je me base sur <condition> ... mais comment trouver la liste exhaustive de ces conditions ? J'ai trouve la version anglaise mais est-ce que qq'un aurait la version Francaise ?

Grace au même lien, j'ai recupere les icons de google ... mais je les changerai par la suite pour qq chose de libre et surtout de plus beau lol

Personnellement j'opterai pour pour la balise <icon>, même si par la suite il faut faire des ajustements, il y a moins de risque qu'avec <condition> dont le contenu peut être tout à fait différent d'un jour à l'autre en fonction de qui saisi les informations.

En tous les cas tu fais du très beau travail, c'est juste dommage de devoir modifier le temps de rafraîchissement du conky, pour les mises à jour ( enfin en même temps sa limite la fuite de mémoire liée aux scripts lua). smile

Hors ligne

#346 Le 11/12/2011, à 09:34

shamen456

Re : [Conky] Alternative à weather.com ( icones conkyforecast )

@Didier-T : merci pour le code...malheureusement je n'arrive toujours pas a le faire fonctionner.... je voudrais afficher le ciel pendant la journée et la lune la nuit...

voici mon script complet et je ne vois pas ce qui cloche....et en même temps je ne vois pas comment faire pour qu'il ne m'affiche pas les résultats des assignations lors de l’exécution...

#!/bin/bash

## Arguments Utilisateurs
#repertoire de travail
dir="$HOME/.conky/ciel"
#taille du carre a decouper
size="360x360"
#coin superieur gauche du carre par rapport au coin sup gauche de l'image
corner="+50+15"
#adresse web
address="http://www.meteobelgium.net/webcam/montignies/photo.jpg"
#
currenttime= date +%k%M | sed 's/ //g'
sunrise= sed -n "13p" $HOME/.conky/meteo/curr_cond | sed 's/^0//' | sed 's/://g' | sed 's/ //g'
sunset= sed -n "14p" $HOME/.conky/meteo/curr_cond | sed 's/0//g' | sed 's/://g' | sed 's/ //g'

if (( $currenttime -gt $sunrise )) || (( $currenttime -lt $sunset ))
then
#echo "entre SR et SS" 
 rm $dir/sky.jpg
 wget --user-agent="Mozilla" $address -O $dir/sky.jpg
 rm $dir/skycrop.jpg
convert $dir/sky.jpg -crop $size$corner $dir/skycrop.jpg
 else
#echo "apres SS ou avant SR"
 rm $dir/moon.jpg
 wget --user-agent="Mozilla" http://static.die.net/moon/576.jpg -O "$dir/moon.jpg"
 rm $dir/skycrop.jpg
 convert  -size $size $dir/moon.jpg -resize $size $dir/skycrop.jpg
fi

Hors ligne

#347 Le 11/12/2011, à 11:57

carpediem

Re : [Conky] Alternative à weather.com ( icones conkyforecast )

Salut à tous, à mon tour de mettre en ligne mes conky.
Je remercie tous ceux qui on contribuer à ce résultat

1323600509.png

pour télécharger les différents scripts cliquer sur lien mes conky,   Fond d'écran

Cordialement et bon conky à tous
carpediem

Dernière modification par carpediem (Le 12/12/2011, à 11:36)


"Carpe diem quam minimum credula postero"
(Cueille le jour présent, en te fiant le moins possible au lendemain.)
HORACE

Hors ligne

#348 Le 11/12/2011, à 12:15

destroyedlolo

Re : [Conky] Alternative à weather.com ( icones conkyforecast )

Didier-T a écrit :

Personnellement j'opterai pour pour la balise <icon>, même si par la suite il faut faire des ajustements, il y a moins de risque qu'avec <condition> dont le contenu peut être tout à fait différent d'un jour à l'autre en fonction de qui saisi les informations.

Ben justement, pour moi les <condition> sont générées automatiquement à partir du model mathématique et non saisie manuellement. Ce qui fait qu'ils sont plus ou moins constant (c'est d'ailleurs plus ou moins ce que dit le lien que j'ai donné).
Les icônes sont eux plus fluctuants : je soupçonne google de le faire pour ajouter un peu de variété dans leurs page (comme ils le font avec le logo google dans la page de recherche).

Didier-T a écrit :

En tous les cas tu fais du très beau travail, c'est juste dommage de devoir modifier le temps de rafraîchissement du conky, pour les mises à jour ( enfin en même temps sa limite la fuite de mémoire liée aux scripts lua). smile

Ben, je me suis rendu compte que conky n'attend pas les réponses de curl. Ce mode asynchrone est intéressante car il évite de bloquer le tout si qq chose ne répond pas ... sauf qu'ici, ca ne nous arrange pas.
Je laisse donc un rafraîchissement a 1s jusqu'a ce que j'obtienne le info et ensuite je le passe à 15m car ça ne sert plus à rien de raffraichir aussi souvent. Supprimer cette ligne n'a aucun impact sur le fonctionnement, si ce n'est d'utiliser un peu de puissance CPU pour rien.

Mais pourquoi y aurait-il des fuites de mémoires dans LUA ?

Hors ligne

#349 Le 11/12/2011, à 12:39

Didier-T

Re : [Conky] Alternative à weather.com ( icones conkyforecast )

destroyedlolo a écrit :

...
Mais pourquoi y aurait-il des fuites de mémoires dans LUA ?

Pourquoi je ne sais pas, mais je l'ai constaté cher moi sur un conky utilisant le script ring.lua, la consommation de ce conky est passer d'environ 4Mo à près de 50Mo en quelques heures (~5 si je me souviens bien), je limite donc au maximum l'utilisation des script lua à regret, car ils donnent des résultats magnifiques.

Hors ligne

#350 Le 11/12/2011, à 13:00

Didier-T

Re : [Conky] Alternative à weather.com ( icones conkyforecast )

shamen456 a écrit :

...
voici mon script complet et je ne vois pas ce qui cloche....et en même temps je ne vois pas comment faire pour qu'il ne m'affiche pas les résultats des assignations lors de l’exécution...

Ceci devrait t'aider.

#!/bin/bash

## Arguments Utilisateurs
#repertoire de travail
dir="$HOME/.conky/ciel"
#taille du carre a decouper
size="360x360"
#coin superieur gauche du carre par rapport au coin sup gauche de l'image
corner="+50+15"
#adresse web
address="http://www.meteobelgium.net/webcam/montignies/photo.jpg"
#
currenttime=$(date +%k%M)
sunrise=$(sed -n "13p" $HOME/.conky/meteo/curr_cond | sed 's/^0//' | sed 's/://g')
sunset=$(sed -n "14p" $HOME/.conky/meteo/curr_cond | sed 's/://g')

if [ $currenttime -gt $sunrise ] && [ $currenttime -lt $sunset ]
then 
#echo "entre SR et SS" 
 rm $dir/sky.jpg
 wget --user-agent="Mozilla" $address -O $dir/sky.jpg
 rm $dir/skycrop.jpg
convert $dir/sky.jpg -crop $size$corner $dir/skycrop.jpg
 else
#echo "apres SS ou avant SR"
 rm $dir/moon.jpg
 wget --user-agent="Mozilla" http://static.die.net/moon/576.jpg -O "$dir/moon.jpg"
 rm $dir/skycrop.jpg
 convert  -size $size $dir/moon.jpg -resize $size $dir/skycrop.jpg
fi

Hors ligne