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.

#26 Le 16/06/2010, à 17:53

ferreol

Re : Postez vos scripts Lua pour Conky !

je poste le mien en texte oblique:

screenshotqj.th.png

Uploaded with ImageShack.us



Text.lua dans home : optimisé pour une resol 1920 x  1080

--[[
Conky Widgets by londonali1010 (2009)

Call this script in Conky using the following before TEXT (assuming you save this script to ~/scripts/conky_widgets.lua):
	lua_load ~/Scripts/conky_widgets.lua
	lua_draw_hook_pre load_text ]]

require 'cairo'
function draw_text()
	if conky_window==nil then return end
	local w=conky_window.width
	local h=conky_window.height
	local cs=cairo_xlib_surface_create(conky_window.display, conky_window.drawable, conky_window.visual, w, h)
	cr=cairo_create(cs)

	
		
-- Font
cairo_select_font_face (cr, "OASIS", CAIRO_FONT_SLANT_NORMAL, CAIRO_FONT_WEIGHT_NORMAL);

-- font size
cairo_set_font_size (cr, 30.0);

--font color
cairo_set_source_rgba (cr, 0.192156863, 0.180392157, 0.156862745, 1);

cairo_translate (cr, -0.0, 0.0);
-- angle
cairo_rotate(cr,-0.52);

-- text position
cairo_move_to (cr, -150.0, 770.0);

-- shown text
cairo_set_font_size (cr, 30.0);
cairo_move_to (cr, -200.0, 750.0);
cairo_set_source_rgba (cr, 0.325490196, 0.258823529, 0.035294118, 0.2);
cairo_show_text (cr, 'IP');

cairo_move_to (cr, -200.0, 800.0);
cairo_set_source_rgba (cr, 0.192156863, 0.180392157, 0.156862745, 0.7);
cairo_set_font_size (cr, 30.0);
cairo_show_text (cr, conky_parse('${addr eth0}'));

cairo_move_to (cr, 250.0, 950.0);
cairo_set_source_rgba (cr, 0.325490196, 0.258823529, 0.035294118, 0.4);
cairo_set_font_size (cr, 30.0);
cairo_show_text (cr, conky_parse('${time  %d %B %Y %H:%M}'));

cairo_set_font_size (cr, 30.0);
cairo_move_to (cr, 950.0, 1490.0);
cairo_set_source_rgba (cr, 0.192156863, 0.180392157, 0.156862745, 0.7);
cairo_show_text (cr, conky_parse('${cpu cpu1}%'));

cairo_set_font_size (cr, 30.0);
cairo_move_to (cr, 930.0, 1450.0);
cairo_set_source_rgba (cr, 0.325490196, 0.258823529, 0.035294118, 0.2);
cairo_show_text (cr, 'CPU1');

cairo_set_font_size (cr, 30.0);
cairo_move_to (cr, 490.0, 1280.0);
cairo_set_source_rgba (cr, 0.192156863, 0.180392157, 0.156862745, 0.7);
cairo_show_text (cr, conky_parse('${cpu cpu2}%'));

cairo_set_font_size (cr, 30.0);
cairo_move_to (cr, 450.0, 1230.0);
cairo_set_source_rgba (cr, 0.325490196, 0.258823529, 0.035294118, 0.2);
cairo_show_text (cr, 'CPU2');

cairo_set_font_size (cr, 30.0);
cairo_move_to (cr, 55.0, 650.0);
cairo_set_source_rgba (cr, 0.192156863, 0.180392157, 0.156862745, 0.7);
cairo_show_text (cr, conky_parse('${mem}'));

cairo_set_font_size (cr, 30.0);
cairo_move_to (cr, 60.0, 600.0);
cairo_set_source_rgba (cr, 0.325490196, 0.258823529, 0.035294118, 0.2);
cairo_show_text (cr, 'RAM');

cairo_set_font_size (cr, 30.0);
cairo_move_to (cr, 980.0, 885.0);
cairo_set_source_rgba (cr, 0.192156863, 0.180392157, 0.156862745, 0.7);
cairo_show_text (cr, conky_parse('${fs_free /}'));

cairo_set_font_size (cr, 30.0);
cairo_move_to (cr, 975.0, 835.0);
cairo_set_source_rgba (cr, 0.325490196, 0.258823529, 0.035294118, 0.3);
cairo_show_text (cr, 'ROOT');

cairo_set_font_size (cr, 30.0);
cairo_move_to (cr, 1150.0, 1285.0);
cairo_set_source_rgba (cr, 0.192156863, 0.180392157, 0.156862745, 0.7);
cairo_show_text (cr, conky_parse('${fs_free /media/windata}'));

cairo_set_font_size (cr, 30.0);
cairo_move_to (cr, 1150.0, 1235.0);
cairo_set_source_rgba (cr, 0.325490196, 0.258823529, 0.035294118, 0.3);
cairo_show_text (cr, 'WIN');

cairo_set_font_size (cr, 30.0);
cairo_move_to (cr, -250.0, 1105.0);
cairo_set_source_rgba (cr, 0.192156863, 0.180392157, 0.156862745, 0.7);
cairo_show_text (cr, conky_parse('${fs_free /media/data}'));

cairo_set_font_size (cr, 30.0);
cairo_move_to (cr, -300.0, 1060.0);
cairo_set_source_rgba (cr, 0.325490196, 0.258823529, 0.035294118, 0.7);
cairo_show_text (cr, 'Data 1To');

cairo_set_font_size (cr, 30.0);
cairo_move_to (cr, 555, 705.0);
cairo_set_source_rgba (cr, 0.192156863, 0.180392157, 0.156862745, 0.7);
cairo_show_text (cr, conky_parse('${fs_free /media/back}'));

cairo_set_font_size (cr, 30.0);
cairo_move_to (cr, 550.0, 660.0);
cairo_set_source_rgba (cr, 0.325490196, 0.258823529, 0.035294118, 0.3);
cairo_show_text (cr, 'Backup');

local file = io.open("/tmp/my_ip.txt","r")    
    local ip_txt
    if file ~= nil then
        ip_txt = file:read("*l")
    end
    if ip_txt~=nil then
        cairo_set_font_size (cr, 30.0);
        cairo_move_to (cr, 250.0, 1400.0);
        cairo_set_source_rgba (cr, 0.325490196, 0.258823529, 0.035294118, 0.2);
        cairo_show_text (cr, ip_txt);
    end
    io.close()


cairo_stroke (cr);




end



function conky_load_text()
 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 cr=cairo_create(cs)    
    
    local updates=conky_parse('${updates}')
    update_num=tonumber(updates)
    
    if update_num>5 then
       draw_text()
    end
end

Hors ligne

#27 Le 16/06/2010, à 22:24

wlourf

Re : Postez vos scripts Lua pour Conky !

Ph3nix_ a écrit :

Pour l'horloge, il n'y a rien d'exceptionnel, j'ai repris le script "conky-rings" ici: http://conky.linux-hardcore.com/beginne … nky-1-7-2/
et je l'ai un peu modifié.. En revanche je n'ai toujours pas trouvé comment faire les aguilles même avec le lien que tu m'as donné. Je dois avoué que je ne sais pas programmé en lua, je reprends juste des scripts smile

tu peux ajouter ceci à la fin de ta fonction principale conky_ring_stats() ça appelera la fonction qui dessine les aiguilles

	clock_r=125
	clock_colour=0xFF0000
	clock_alpha=1
	draw_clock_hands(cr,165,170)
        cairo_destroy(cr)
end

et coller le code de la fonction draw_clock_hands à la fin de ton script.

pour rythmbox je n'utilise pas

pour le réseau, Je me rappelle que Zorg avait posté une astuce que le topic des conky je crois : il detecte la présence d'un fichier à la place de $if_up, tente ta chance là bas !

Edit : pour le net, je suis tombé dessus par hasard sur un autre forum :

${if_existing /proc/net/route eth0}

Dernière modification par wlourf (Le 16/06/2010, à 22:49)

Hors ligne

#28 Le 21/06/2010, à 06:09

chepioq

Re : Postez vos scripts Lua pour Conky !

Bonjour,
Je viens vous rapporter un soucis que j'ai avec les scripts lua:
Je teste actuellement la rawhide de fedora (la future F14) et il y a eu une mise à jour vers kde 4.4.85 (le futur kde4.5)
Avec cette version de kde, certain script lua ne s'affiche pas dans mes conky, par exemple pour le script calendrier de wlourf j'ai juste une fenêtre noire, sans rien dedans et aucun message d'erreur en console.

Le conky calendrier que j'ai fait avec l'image de la lune (avec le script square_to_round.lua) fonctionne à moitié:
j'ai l'image de la lune, mais pas le calendrier... (et pas de message d'erreur)

Par contre le conky texte et le conky rings-var de wlourf s'affichent correctement...

Sur ma F13 et kde 4.4.4 tout fonctionne normalement...

J'en viens donc à penser qu'il y a un soucis avec le calendrier.lua de wlourf et kde 4.4.85, mais franchement, j'ai cherché mais je ne trouve pas...


Tout est dans tout et réciproquement....

Hors ligne

#29 Le 23/06/2010, à 18:08

soza971

Re : Postez vos scripts Lua pour Conky !

Ph3nix_ a écrit :

J'ai regardé mais j'ai pas réussi à le réutiliser:/
Voici ce que donne mon conky pour l'instant
http://pix.louiz.org/upload/original/1276611391.png
Il reste la récupération de l'image de l'album.. son redimensionnement avec imagick
C'est loin d'être fini tongue

salut je pourrais avoir ton script lua , surtout la partie CPU et le code du conky


Asus U80V Obuntu 10.04 64bits

Hors ligne

#30 Le 24/06/2010, à 22:42

wlourf

Re : Postez vos scripts Lua pour Conky !

Bonsoir,

Mise à jour du text widget au post n°15, ajout de déformation sur x et y comme on peut voir sur l'image, par contre impossible de faire une vraie perspective sad et ajout de la réflexion (j'aime bien celle là), tout est expliqué en début de script (j'espère que c'est assez clair!)
5c3906725f7428a194599e325cb04t.jpg
et la config pour cette image:

    text_settings={
		--DEBUT DES PARAMETRES
		{--texte avec réflexion,
		text=conky_parse("${time %H:%M:%S}"),
		x=50,		
		y=50,
		font_name="Japan",
		font_size=50,
		colour={{0,0xFF0000,1},{1,0xCCCCCC,1}},
		orientation="nn",
		reflection_alpha=0.8,
		reflection_length=1,
		reflection_scale=1,        
		},   

		{--texte avec réflexion + grande (scale=2) mais pas complète (length=0.5)
		text=conky_parse("${time %H:%M:%S}"),
		x=50,		
		y=150,
		font_name="Japan",
		font_size=50,
		colour={{0,0xFF0000,1},{1,0xCCCCCC,1}},
		orientation="nn",
		reflection_alpha=0.8,
		reflection_length=0.5,
		reflection_scale=2,        
		}, 


		{--rotation sur x
		text=conky_parse("${time %H:%M}"),
		x=50,		
		y=250,
		font_name="Japan",
		font_size=50,
		colour={{0,0xFF0000,1},{1,0xCCCCCC,1}},
		orientation="nn",
		rotx=10        
		},        

		{--rotation sur y
		text=conky_parse("${time %H:%M}"),
		x=200,		
		y=250,
		font_name="Japan",
		font_size=50,
		colour={{0,0xFF0000,1},{1,0xCCCCCC,1}},
		orientation="nn",
		roty=20        
		},  

		{--rotation sur x-y
		text=conky_parse("${time %H:%M}"),
		x=50,		
		y=350,
		font_name="Japan",
		font_size=50,
		colour={{0,0xFF0000,1},{1,0xCCCCCC,1}},
		orientation="nn",
		roty=20,     
		rotx=30   
		}, 


		{--rotation sur x-y
		text=conky_parse("${time %H:%M}"),
		x=150,		
		y=450,
		font_name="Japan",
		font_size=50,
		colour={{0,0xFF0000,1},{1,0xCCCCCC,1}},
		orientation="nn",
		roty=-20,     
		rotx=-30,
		reflection_alpha=0.8
		},
}

Hors ligne

#31 Le 25/06/2010, à 00:17

Leyna

Re : Postez vos scripts Lua pour Conky !

wlourf merci pour tes tutos ils sont supers! En plus tu fais du pas à pas, c'est parfait c'est comme si j'avançais chapitre par chapitre ^^

Hors ligne

#32 Le 25/06/2010, à 06:08

chepioq

Re : Postez vos scripts Lua pour Conky !

@wlourf
Bonjour,
as tu une idée à propos du problème que j'ai exposé post #28 ?


Tout est dans tout et réciproquement....

Hors ligne

#33 Le 25/06/2010, à 09:38

Vermouth

Re : Postez vos scripts Lua pour Conky !

Fort intéressant ce topic  !
Mois qui suis fan du lua avec conky !

Je suis en train de le refaire d'ailleurs (mon conky).
Je vous posterai tout ça tongue !


Android !
\_/°<

   coin coin...

Hors ligne

#34 Le 25/06/2010, à 11:10

wlourf

Re : Postez vos scripts Lua pour Conky !

@lena, tutos est un bien grand mot ! mais j'essaye de faire des choses assez faciles à paramétrer ! faut me dire si c'est pas le cas.

@chepioq, désolé je n'utilise pas du tout kde ... si tu n'as pas de message d'erreurs, as-tu essayé de lancer un conky minimal pour ce qui est des paramètres de fenêtres:

#own_window_type desktop
#own_window_hints undecorate,sticky,skip_taskbar,skip_pager,below
own_window yes
#own_window_transparent yes
#own_window_argb_visual yes

@vermouth, j'ai vu tes scripts, il y en a des biens mais j'ai un peu de mal avec les "instances" que tu utilises

Hors ligne

#35 Le 25/06/2010, à 12:54

Vermouth

Re : Postez vos scripts Lua pour Conky !

wlourf a écrit :

@vermouth, j'ai vu tes scripts, il y en a des biens mais j'ai un peu de mal avec les "instances" que tu utilises

Tu fait un SpaceDisc perso ?


Android !
\_/°<

   coin coin...

Hors ligne

#36 Le 25/06/2010, à 17:07

wlourf

Re : Postez vos scripts Lua pour Conky !

oui,  j'ai essayé d'afficher le cpu avec ça

local exemple = SpaceExemple:new(conky_parse("$cpu"), Color:new(0.7, 0.3, 0.5), 25, 130, 50)

mais ça marche pas surement parceque "local exemple" n'est pas dans une fonction... mais sinon en relisant j'ai compris le principe de ton script avec objets et instances...

Hors ligne

#37 Le 25/06/2010, à 19:19

soza971

Re : Postez vos scripts Lua pour Conky !

salut a vous je cherches les codes pour les ano.lua et les conky adapté download et upload svp vous auriez?

Dernière modification par soza971 (Le 25/06/2010, à 19:20)


Asus U80V Obuntu 10.04 64bits

Hors ligne

#38 Le 25/06/2010, à 19:41

Vermouth

Re : Postez vos scripts Lua pour Conky !

wlourf a écrit :

oui,  j'ai essayé d'afficher le cpu avec ça

local exemple = SpaceExemple:new(conky_parse("$cpu"), Color:new(0.7, 0.3, 0.5), 25, 130, 50)

mais ça marche pas surement parceque "local exemple" n'est pas dans une fonction... mais sinon en relisant j'ai compris le principe de ton script avec objets et instances...

ça ne marche pas car conky_parse("$cpu") renvoie une chaine et le SpaceExemple à besoin d'un nombre en premier paramètre.
Utilise la fonction tonumber pour convertir la chaine (qui représente un nombre) en nombre (attention:la fonction renvoie nil en cas d'échec donc là aussi faut vérifier que le résultat est pas nil si le cas peu se produire).
Après au niveau de mon code, j'ai fait un peu de POO. Si tu veux plus bien comprendre jette un oeil à PIL, les point 16, 16.1, 16.2, 16.3 suffise à bien comprendre. Si t'a déjà fait du POO javascript ça s'en rapproche (langage à prototype).


Android !
\_/°<

   coin coin...

Hors ligne

#39 Le 25/06/2010, à 21:22

chepioq

Re : Postez vos scripts Lua pour Conky !

wlourf a écrit :

@chepioq, désolé je n'utilise pas du tout kde ... si tu n'as pas de message d'erreurs, as-tu essayé de lancer un conky minimal pour ce qui est des paramètres de fenêtres:

#own_window_type desktop
#own_window_hints undecorate,sticky,skip_taskbar,skip_pager,below
own_window yes
#own_window_transparent yes
#own_window_argb_visual yes

Cela ne change rien, toujours pas de calendrier, pourtant la même configuration fonctionne sur ma F13 avec kde 4.4.5...
Je pense que cela doit être un manque (de quoi je ne saurai le dire) dans kde 4.4.85.
Vu que c'est encore en développement, je vais attendre la prochaine mise à jour et voir ce que cela donnera...
Je te tiens au courant de toute façon...


Tout est dans tout et réciproquement....

Hors ligne

#40 Le 26/06/2010, à 19:33

chepioq

Re : Postez vos scripts Lua pour Conky !

Bonsoir...
J'ai résolu le problème, mais je ne sais pas trop comment l'expliquer...
Pour faire court, j'utilisai un calendar.lua ancienne génération, celui qui n'avait pas la possibilité de faire un dégradé de couleur dans les textes (qui fonctionne donc sur kde 4.4.5 et pas sur kde 4.4.85)

Je l'ai changé pour ta dernière version, que j'ai téléchargé ici: http://ubuntuforums.org/showpost.php?p= … ount=12648 et là miracle cela fonctionne sur kde 4.4.5 et kde 4.4.85.

Ne me demande pas pourquoi, je serai bien incapable de donner une explication...


Tout est dans tout et réciproquement....

Hors ligne

#41 Le 27/06/2010, à 11:32

soza971

Re : Postez vos scripts Lua pour Conky !

Bonjour j'ai un problème avec un anneau .lua qui ne s'affiche pas je cherche ce kil faut mettre dans le ".lua"
luak.jpg

Uploaded with ImageShack.us
voici le code conky

#Fonctionnement de conky 
  total_run_times 0            #Temps en secondes ; 0 = toujours actif
  background yes            #Pour que conky tourne en arrière plan ; no = pour les tests

#Réglages système
  cpu_avg_samples 1            #Nb d'échantillons pour calculer la moyenne d'utilisation CPU
  net_avg_samples 2            #Nb d'échantillons pour calculer la moyenne d'utilisation CPU

#Mémoire
  double_buffer yes            #Éviter le clignotement
  no_buffers yes            #Soustraire les mémoires tampons de la mémoire utilisée
  text_buffer_size 1024            #Taille du cache pour le texte

#Affichage
  out_to_console no            #Affiche le texte sur la sortie standard
  update_interval 1            #Taux de rafraîchissement de la fenêtre (s)

#Fenêtre conky
  alignment top_left            #Alignement
 #---
  minimum_size 130 130            #Taille minimum (px) ; largeur / hauteur
  maximum_width 130            #Largeur maximum (px)
 #---
  gap_x 360                #Écart avec le bord gauche / droit
  gap_y 550                #Écart avec le bord haut / bas
 #---
  draw_shades no            #Afficher les ombres
  draw_outline no            #Afficher les contours de fenêtre
  draw_borders no            #Afficher des contours autour des blocs de texte
  border_width 1            #Largeur du contour
  border_inner_margin 1            #Largeur des marges
 #---
  own_window yes            #Utiliser sa propre fenêtre
  own_window_type override        #Type de fenêtre ; normal / override / desktop
  own_window_transparent yes        #Pseudo transparence

#Mise en forme
  use_xft yes                #Utiliser Xft (polices lissées etc)
  xftalpha .1                #Utiliser Xft
  override_utf8_locale yes         #Force l'UTF8
  uppercase no                #Tout le texte en majuscule
  use_spacer left            #Ajoute des espaces après certains objets (qu'avec des polices fixes)
 #---
  xftfont saxMono:size=9         #Police par défaut
 #---
  stippled_borders 5            #Taille des pointillés

#Couleurs
  default_color 000000             #Couleur par défaut
  default_shade_color 333333        #Couleur des ombres
  default_outline_color black        #Couleur des contours
 #---
  color1 606060                #Gris
  color2 99FF99                #Near black
 #---
  short_units yes            #Unités courtes
  pad_percents 2            #Unité à 2 décimales

#Lua Load
  lua_load /home/soza/.conky/ano10.lua
  lua_draw_hook_pre ring_stats


TEXT
${color}${offset 45}${voffset 40}MB
${color2}${offset 35}${voffset 20} ${exec sensors | grep temp1 | cut -c15-16} °C

et le code lua

--[[
Ring Meters by londonali1010 (2009)

This script draws percentage meters as rings. It is fully customisable; all options are described in the script.

IMPORTANT: if you are using the 'cpu' function, it will cause a segmentation fault if it tries to draw a ring straight away. The if statement on line 145 uses a delay to make sure that this doesn't happen. It calculates the length of the delay by the number of updates since Conky started. Generally, a value of 5s is long enough, so if you update Conky every 1s, use update_num>5 in that if statement (the default). If you only update Conky every 2s, you should change it to update_num>3; conversely if you update Conky every 0.5s, you should use update_num>10. ALSO, if you change your Conky, is it best to use "killall conky; conky" to update it, otherwise the update_num will not be reset and you will get an error.

To call this script in Conky, use the following (assuming that you save this script to ~/scripts/rings.lua):
    lua_load ~/scripts/rings-v1.2.lua
    lua_draw_hook_pre ring_stats

Changelog:
+ v1.2 -- Added option for the ending angle of the rings (07.10.2009)
+ v1.1 -- Added options for the starting angle of the rings, and added the "max" variable, to allow for variables that output a numerical value rather than a percentage (29.09.2009)
+ v1.0 -- Original release (28.09.2009)
]]

settings_table = {
    {
        name='exec sensors',
        arg='grep temp1',
        max=100,
        bg_colour=0x606060,
        bg_alpha=0.6,
        fg_colour=0x99FF99,
        fg_alpha=0.8,
        x=70, y=70,
        radius=44,
        thickness=6,
        start_angle=270,
        end_angle=450
    },
}

require 'cairo'

function rgb_to_r_g_b(colour,alpha)
    return ((colour / 0x10000) % 0x100) / 255., ((colour / 0x100) % 0x100) / 255., (colour % 0x100) / 255., alpha
end

function draw_ring(cr,t,pt)
    local w,h=conky_window.width,conky_window.height

    local xc,yc,ring_r,ring_w,sa,ea=pt['x'],pt['y'],pt['radius'],pt['thickness'],pt['start_angle'],pt['end_angle']
    local bgc, bga, fgc, fga=pt['bg_colour'], pt['bg_alpha'], pt['fg_colour'], pt['fg_alpha']

    local angle_0=sa*(2*math.pi/360)-math.pi/2
    local angle_f=ea*(2*math.pi/360)-math.pi/2
    local t_arc=t*(angle_f-angle_0)

    -- Draw background ring

    cairo_arc(cr,xc,yc,ring_r,angle_0,angle_f)
    cairo_set_source_rgba(cr,rgb_to_r_g_b(bgc,bga))
    cairo_set_line_width(cr,ring_w)
    cairo_stroke(cr)

    -- Draw indicator ring

    cairo_arc(cr,xc,yc,ring_r,angle_0,angle_0+t_arc)
    cairo_set_source_rgba(cr,rgb_to_r_g_b(fgc,fga))
    cairo_stroke(cr)
end

function conky_ring_stats()
    local function setup_rings(cr,pt)
        local str=''
        local value=0

        str=string.format('${%s %s}',pt['name'],pt['arg'])
        str=conky_parse(str)

        value=tonumber(str)
        pct=value/pt['max']

        draw_ring(cr,pct,pt)
    end

    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 cr=cairo_create(cs)    

    local updates=conky_parse('${updates}')
    update_num=tonumber(updates)

    if update_num>5 then
        for i in pairs(settings_table) do
            setup_rings(cr,settings_table[i])
        end
    end
end

Asus U80V Obuntu 10.04 64bits

Hors ligne

#42 Le 27/06/2010, à 20:28

wlourf

Re : Postez vos scripts Lua pour Conky !

@chepioq, bizarre, bizarre !

@soza :
tu peux simplement mettre :

        name='exec sensors | grep temp1 | cut -c15-16',
        arg='',

ou

        name='exec',
        arg='sensors | grep temp1 | cut -c15-16',

qui revient au mếme.

Par contre, j'ai l'impression que tu utilises un conky et un script lua par anneau, c'est peut-être voulu mais tu peux aussi gérer plusieurs anneaux avec un seul script lua:

settings_table = {
    {
       --paramètres anneau 1 ici : name, arg ...
    },
    {
       --paramètres anneau 2 ici : name, arg ...
    },
    {
       --paramètres anneau 3 ici : name, arg ...
    },
}

Dernière modification par wlourf (Le 27/06/2010, à 20:29)

Hors ligne

#43 Le 27/06/2010, à 21:15

soza971

Re : Postez vos scripts Lua pour Conky !

wlourf a écrit :

@chepioq, bizarre, bizarre !

@soza :
tu peux simplement mettre :

        name='exec sensors | grep temp1 | cut -c15-16',
        arg='',

ou

        name='exec',
        arg='sensors | grep temp1 | cut -c15-16',

qui revient au mếme.

Par contre, j'ai l'impression que tu utilises un conky et un script lua par anneau, c'est peut-être voulu mais tu peux aussi gérer plusieurs anneaux avec un seul script lua:

settings_table = {
    {
       --paramètres anneau 1 ici : name, arg ...
    },
    {
       --paramètres anneau 2 ici : name, arg ...
    },
    {
       --paramètres anneau 3 ici : name, arg ...
    },
}

Merci wlourf c bon le premier code a fonctionné pour la température.
Ensuite c clair g 12 ano donc j'ai fait comme tu as dit mais la bizarrement meme les anneaux simples sont devenus double.
sanstitreqh.th.jpg

Uploaded with ImageShack.us
voici le code

--[[
Ring Meters by londonali1010 (2009)

This script draws percentage meters as rings. It is fully customisable; all options are described in the script.

IMPORTANT: if you are using the 'cpu' function, it will cause a segmentation fault if it tries to draw a ring straight away. The if statement on line 145 uses a delay to make sure that this doesn't happen. It calculates the length of the delay by the number of updates since Conky started. Generally, a value of 5s is long enough, so if you update Conky every 1s, use update_num>5 in that if statement (the default). If you only update Conky every 2s, you should change it to update_num>3; conversely if you update Conky every 0.5s, you should use update_num>10. ALSO, if you change your Conky, is it best to use "killall conky; conky" to update it, otherwise the update_num will not be reset and you will get an error.

To call this script in Conky, use the following (assuming that you save this script to ~/scripts/rings.lua):
    lua_load ~/scripts/rings-v1.2.lua
    lua_draw_hook_pre ring_stats

Changelog:
+ v1.2 -- Added option for the ending angle of the rings (07.10.2009)
+ v1.1 -- Added options for the starting angle of the rings, and added the "max" variable, to allow for variables that output a numerical value rather than a percentage (29.09.2009)
+ v1.0 -- Original release (28.09.2009)
]]

settings_table = {
    {
        name='cpu',
        arg='cpu1',
        max=100,
        bg_colour=0x606060,
        bg_alpha=0.6,
        fg_colour=0x99FF99,
        fg_alpha=0.8,
        x=70, y=70,
        radius=54,
        thickness=7,
        start_angle=270,
        end_angle=590
    },
    {
        name='platform',
        arg='coretemp.0 temp 1',
        max=100,
        bg_colour=0x606060,
        bg_alpha=0.6,
        fg_colour=0x99FF99,
        fg_alpha=0.8,
        x=70, y=70,
        radius=44,
        thickness=6,
        start_angle=270,
        end_angle=450
    },
    {
        name='cpu',
        arg='cpu2',
        max=100,
        bg_colour=0x606060,
        bg_alpha=0.6,
        fg_colour=0x99FF99,
        fg_alpha=0.8,
        x=70, y=70,
        radius=54,
        thickness=7,
        start_angle=270,
        end_angle=590
    },
    {
        name='platform',
        arg='coretemp.1 temp 1',
        max=100,
        bg_colour=0x606060,
        bg_alpha=0.6,
        fg_colour=0x99FF99,
        fg_alpha=0.8,
        x=70, y=70,
        radius=44,
        thickness=6,
        start_angle=270,
        end_angle=450
    },
    {
        name='memperc',
        arg='',
        max=100,
        bg_colour=0x606060,
        bg_alpha=0.6,
        fg_colour=0x99FF99,
        fg_alpha=0.8,
        x=70, y=70,
        radius=54,
        thickness=7,
        start_angle=270,
        end_angle=590
    },
    {
        name='fs_used_perc',
        arg='/',
        max=100,
        bg_colour=0x606060,
        bg_alpha=0.6,
        fg_colour=0x99FF99,
        fg_alpha=0.8,
        x=70, y=70,
        radius=54,
        thickness=7,
        start_angle=270,
        end_angle=590
    },
    {
        name='fs_used_perc',
        arg='/media/Mon_Passeport',
        max=100,
        bg_colour=0x606060,
        bg_alpha=0.6,
        fg_colour=0x99FF99,
        fg_alpha=0.8,
        x=70, y=70,
        radius=54,
        thickness=7,
        start_angle=270,
        end_angle=590
    },
    {
        name='fs_used_perc',
        arg='/media/M_CARD',
        max=100,
        bg_colour=0x606060,
        bg_alpha=0.6,
        fg_colour=0x99FF99,
        fg_alpha=0.8,
        x=70, y=70,
        radius=54,
        thickness=7,
        start_angle=270,
        end_angle=590
    },
    {
        name='swapperc',
        arg='',
        max=100,
        bg_colour=0x606060,
        bg_alpha=0.6,
        fg_colour=0x99FF99,
        fg_alpha=0.8,
        x=70, y=70,
        radius=54,
        thickness=7,
        start_angle=270,
        end_angle=590
    },
    {
        name='downspeedf',
        arg='wlan0',
        max=300,
        bg_colour=0x606060,
        bg_alpha=0.6,
        fg_colour=0x99FF99,
        fg_alpha=0.8,
        x=70, y=70,
        radius=54,
        thickness=7,
        start_angle=270,
        end_angle=590
    },
    {
        name='upspeedf',
        arg='wlan0',
        max=30,
        bg_colour=0x606060,
        bg_alpha=0.6,
        fg_colour=0x99FF99,
        fg_alpha=0.8,
        x=70, y=70,
        radius=54,
        thickness=7,
        start_angle=270,
        end_angle=590
    },
    {
        name='exec sensors | grep temp1 | cut -c15-16',
        arg='',
        max=100,
        bg_colour=0x606060,
        bg_alpha=0.6,
        fg_colour=0x99FF99,
        fg_alpha=0.8,
        x=70, y=70,
        radius=44,
        thickness=6,
        start_angle=270,
        end_angle=590
    },
    {
        name='wireless_link_qual',
        arg='wlan0',
        max=70,
        bg_colour=0x606060,
        bg_alpha=0.6,
        fg_colour=0x99FF99,
        fg_alpha=0.8,
        x=70, y=70,
        radius=54,
        thickness=7,
        start_angle=270,
        end_angle=590
    },
    {
        name='battery_percent',
        arg='BAT0',
        max=100,
        bg_colour=0x606060,
        bg_alpha=0.6,
        fg_colour=0x99FF99,
        fg_alpha=0.8,
        x=70, y=70,
        radius=54,
        thickness=7,
        start_angle=270,
        end_angle=590
    },
}

require 'cairo'

function rgb_to_r_g_b(colour,alpha)
    return ((colour / 0x10000) % 0x100) / 255., ((colour / 0x100) % 0x100) / 255., (colour % 0x100) / 255., alpha
end

function draw_ring(cr,t,pt)
    local w,h=conky_window.width,conky_window.height

    local xc,yc,ring_r,ring_w,sa,ea=pt['x'],pt['y'],pt['radius'],pt['thickness'],pt['start_angle'],pt['end_angle']
    local bgc, bga, fgc, fga=pt['bg_colour'], pt['bg_alpha'], pt['fg_colour'], pt['fg_alpha']

    local angle_0=sa*(2*math.pi/360)-math.pi/2
    local angle_f=ea*(2*math.pi/360)-math.pi/2
    local t_arc=t*(angle_f-angle_0)

    -- Draw background ring

    cairo_arc(cr,xc,yc,ring_r,angle_0,angle_f)
    cairo_set_source_rgba(cr,rgb_to_r_g_b(bgc,bga))
    cairo_set_line_width(cr,ring_w)
    cairo_stroke(cr)

    -- Draw indicator ring

    cairo_arc(cr,xc,yc,ring_r,angle_0,angle_0+t_arc)
    cairo_set_source_rgba(cr,rgb_to_r_g_b(fgc,fga))
    cairo_stroke(cr)
end

function conky_ring_stats()
    local function setup_rings(cr,pt)
        local str=''
        local value=0

        str=string.format('${%s %s}',pt['name'],pt['arg'])
        str=conky_parse(str)

        value=tonumber(str)
        pct=value/pt['max']

        draw_ring(cr,pct,pt)
    end

    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 cr=cairo_create(cs)    

    local updates=conky_parse('${updates}')
    update_num=tonumber(updates)

    if update_num>5 then
        for i in pairs(settings_table) do
            setup_rings(cr,settings_table[i])
        end
    end
end

Dernière modification par soza971 (Le 27/06/2010, à 21:21)


Asus U80V Obuntu 10.04 64bits

Hors ligne

#44 Le 27/06/2010, à 22:30

wlourf

Re : Postez vos scripts Lua pour Conky !

tu as fait killall conky avant de relancer ton script ? Tu devrais aussi vérifier les x et y car ils sont presque tous à x=70 et y=70 hmm

Hors ligne

#45 Le 27/06/2010, à 23:17

soza971

Re : Postez vos scripts Lua pour Conky !

pour relancer le script je lance mon .lanceurconky.sh , oui il contient killall conky pourquoi?

les x et y sont a modifier??


Asus U80V Obuntu 10.04 64bits

Hors ligne

#46 Le 28/06/2010, à 17:28

wlourf

Re : Postez vos scripts Lua pour Conky !

oui, ainsi que radius, x et y définissent la position du centre du cercle dans la fenêtre du conky
(0,0) est le coin en haut à gauche.
quand tu fais tes essais, tu ferais mieux de passer par une console pour voir les éventuelles erreurs:

conky -c /chemin/conkyrc

et tu fais Ctrl+C pour stopper le conky.

Hors ligne

#47 Le 28/06/2010, à 17:43

soza971

Re : Postez vos scripts Lua pour Conky !

le problème ne venait pas de la position du cercle quand j'ai mis tous les ano dans un seul fichier le seul ano utilisé pour tous les scripts étaient celui du premier, donc finalement n ayant pas trouvé de solution j'ai remi environ 13 fichiers ano...
j ai mis un ano pour le lecteur audacious j'ai essayé pas mal de commandes mais rien...
sanstitre2cw.th.jpg

Uploaded with ImageShack.us

--[[
Ring Meters by londonali1010 (2009)

This script draws percentage meters as rings. It is fully customisable; all options are described in the script.

IMPORTANT: if you are using the 'cpu' function, it will cause a segmentation fault if it tries to draw a ring straight away. The if statement on line 145 uses a delay to make sure that this doesn't happen. It calculates the length of the delay by the number of updates since Conky started. Generally, a value of 5s is long enough, so if you update Conky every 1s, use update_num>5 in that if statement (the default). If you only update Conky every 2s, you should change it to update_num>3; conversely if you update Conky every 0.5s, you should use update_num>10. ALSO, if you change your Conky, is it best to use "killall conky; conky" to update it, otherwise the update_num will not be reset and you will get an error.

To call this script in Conky, use the following (assuming that you save this script to ~/scripts/rings.lua):
    lua_load ~/scripts/rings-v1.2.lua
    lua_draw_hook_pre ring_stats

Changelog:
+ v1.2 -- Added option for the ending angle of the rings (07.10.2009)
+ v1.1 -- Added options for the starting angle of the rings, and added the "max" variable, to allow for variables that output a numerical value rather than a percentage (29.09.2009)
+ v1.0 -- Original release (28.09.2009)
]]

settings_table = {
    {
        name='exec audtool2 --current-song | cut -b-61',
        arg='/',
        max=100,
        bg_colour=0x606060,
        bg_alpha=0.6,
        fg_colour=0x99FF99,
        fg_alpha=0.8,
        x=200, y=200,
        radius=180,
        thickness=7,
        start_angle=270,
        end_angle=590
    },
}

require 'cairo'

function rgb_to_r_g_b(colour,alpha)
    return ((colour / 0x10000) % 0x100) / 255., ((colour / 0x100) % 0x100) / 255., (colour % 0x100) / 255., alpha
end

function draw_ring(cr,t,pt)
    local w,h=conky_window.width,conky_window.height

    local xc,yc,ring_r,ring_w,sa,ea=pt['x'],pt['y'],pt['radius'],pt['thickness'],pt['start_angle'],pt['end_angle']
    local bgc, bga, fgc, fga=pt['bg_colour'], pt['bg_alpha'], pt['fg_colour'], pt['fg_alpha']

    local angle_0=sa*(2*math.pi/360)-math.pi/2
    local angle_f=ea*(2*math.pi/360)-math.pi/2
    local t_arc=t*(angle_f-angle_0)

    -- Draw background ring

    cairo_arc(cr,xc,yc,ring_r,angle_0,angle_f)
    cairo_set_source_rgba(cr,rgb_to_r_g_b(bgc,bga))
    cairo_set_line_width(cr,ring_w)
    cairo_stroke(cr)

    -- Draw indicator ring

    cairo_arc(cr,xc,yc,ring_r,angle_0,angle_0+t_arc)
    cairo_set_source_rgba(cr,rgb_to_r_g_b(fgc,fga))
    cairo_stroke(cr)
end

function conky_ring_stats()
    local function setup_rings(cr,pt)
        local str=''
        local value=0

        str=string.format('${%s %s}',pt['name'],pt['arg'])
        str=conky_parse(str)

        value=tonumber(str)
        pct=value/pt['max']

        draw_ring(cr,pct,pt)
    end

    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 cr=cairo_create(cs)    

    local updates=conky_parse('${updates}')
    update_num=tonumber(updates)

    if update_num>5 then
        for i in pairs(settings_table) do
            setup_rings(cr,settings_table[i])
        end
    end
end

Dernière modification par soza971 (Le 28/06/2010, à 18:10)


Asus U80V Obuntu 10.04 64bits

Hors ligne

#49 Le 10/07/2010, à 15:30

GrindeR

Re : Postez vos scripts Lua pour Conky !

Salut à tous,

cela fait déjà quelque temps que je travail sur conky, et la découverte de lua me pousse a refaire mon conky.
je m'en sors pas trop mal mais je bloque sur une chose:
comment faire un anneau pour la fonction "fs_used_perc" d'un disque non monté? comme
conky de soza971

j'ai observé sont code lua et je n'est rien de différent, mais mes anneaux pour ces disques non monté me retourne la même occupation que ma racine

2010-07-10-153712_580x190_scrot.png

settings_table = {
	{
		name='memperc',
		arg='',
		max=100,
		bg_colour=0xFFFFFF,
		bg_alpha=0.05,
		fg_colour=0x8B008B,
		fg_alpha=0.7,
		x=75, y=90,
		radius=50,
		thickness=10,
		start_angle=91,
		end_angle=270,
	},
	{
		name="execpi 8 awk '/Cached/ {print $2/1024}' /proc/meminfo | head -1",
		arg='',
		max=2048,
		bg_colour=0xFFFFFF,
		bg_alpha=0.05,
		fg_colour=0x9932CC,
		fg_alpha=0.7,
		x=75, y=90,
		radius=59,
		thickness=5,
		start_angle=91,
		end_angle=180,
	},
	{
		name="execpi 8 awk '/Buffers/ {print $2/(1024)}' /proc/meminfo",
		arg='',
		max=2048,
		bg_colour=0xFFFFFF,
		bg_alpha=0.05,
		fg_colour=0x9932CC,
		fg_alpha=0.7,
		x=75, y=90,
		radius=59,
		thickness=5,
		start_angle=181,
		end_angle=270,
	},
	{
		name='swapperc',
		arg='',
		max=100,
		bg_colour=0xFFFFFF,
		bg_alpha=0.05,
		fg_colour=0xBA55D3,
		fg_alpha=0.7,
		x=75, y=90,
		radius=65,
		thickness=5,
		start_angle=91,
		end_angle=270,
	},
	{
		name='execpi 8 sensors | grep -i "cpu temp" | cut -c 22-23',
		arg='',
		max=100,
		bg_colour=0xFFFFFF,
		bg_alpha=0.05,
		fg_colour=0xC71585,
		fg_alpha=0.7,
		x=185, y=90,
		radius=40,
		thickness=2,
		start_angle=50,
		end_angle=170,
	},
	{
		name='execpi 8 sensors | grep -i "mb Temp" | cut -c 22-23',
		arg='',
		max=100,
		bg_colour=0xFFFFFF,
		bg_alpha=0.05,
		fg_colour=0x9370DB,
		fg_alpha=0.7,
		x=185, y=90,
		radius=40,
		thickness=2,
		start_angle=-70,
		end_angle=50,
	},
	{
		name='cpu',
		arg='cpu1',
		max=100,
		bg_colour=0xFFFFFF,
		bg_alpha=0.05,
		fg_colour=0xBA55D3,
		fg_alpha=0.7,
		x=185, y=90,
		radius=45,
		thickness=5,
		start_angle=-89,
		end_angle=89,
	},
	{
		name='cpu',
		arg='cpu2',
		max=100,
		bg_colour=0xFFFFFF,
		bg_alpha=0.05,
		fg_colour=0x9932CC,
		fg_alpha=0.7,
		x=185, y=90,
		radius=51,
		thickness=5,
		start_angle=-89,
		end_angle=89,
	},
	{
		name='cpu',
		arg='cpu0',
		max=100,
		bg_colour=0xFFFFFF,
		bg_alpha=0.05,
		fg_colour=0x8B008B,
		fg_alpha=0.7,
		x=185, y=90,
		radius=60,
		thickness=10,
		start_angle=-89,
		end_angle=89,
	},
	{
		name='fs_used_perc',
		arg='/',
		max=100,
		bg_colour=0xFFFFFF,
		bg_alpha=0.05,
		fg_colour=0x8B008B,
		fg_alpha=0.7,
		x=295, y=90,
		radius=50,
		thickness=10,
		start_angle=91,
		end_angle=269,
	},
	{
		name='fs_used_perc',
		arg='/media/Ubuntu',
		max=100,
		bg_colour=0xFFFFFF,
		bg_alpha=0.05,
		fg_colour=0x9932CC,
		fg_alpha=0.7,
		x=295, y=90,
		radius=59,
		thickness=5,
		start_angle=91,
		end_angle=269,
	},
	{
		name='fs_used_perc',
		arg='/media/WIN-XP',
		max=100,
		bg_colour=0xFFFFFF,
		bg_alpha=0.05,
		fg_colour=0xBA55D3,
		fg_alpha=0.7,
		x=295, y=90,
		radius=65,
		thickness=5,
		start_angle=91,
		end_angle=269,
	},
	{
		name='fs_used_perc',
		arg='/home/grinder',
		max=100,
		bg_colour=0xFFFFFF,
		bg_alpha=0.05,
		fg_colour=0x8B008B,
		fg_alpha=0.7,
		x=405, y=90,
		radius=60,
		thickness=10,
		start_angle=-89,
		end_angle=89,
	},
}

require 'cairo'

function rgb_to_r_g_b(colour,alpha)
	return ((colour / 0x10000) % 0x100) / 255., ((colour / 0x100) % 0x100) / 255., (colour % 0x100) / 255., alpha
end

function draw_ring(cr,t,pt)
	local w,h=conky_window.width,conky_window.height

	local xc,yc,ring_r,ring_w,sa,ea=pt['x'],pt['y'],pt['radius'],pt['thickness'],pt['start_angle'],pt['end_angle']
	local bgc, bga, fgc, fga=pt['bg_colour'], pt['bg_alpha'], pt['fg_colour'], pt['fg_alpha']

	local angle_0=sa*(2*math.pi/360)-math.pi/2
	local angle_f=ea*(2*math.pi/360)-math.pi/2
	local t_arc=t*(angle_f-angle_0)

	-- Draw background ring

	cairo_arc(cr,xc,yc,ring_r,angle_0,angle_f)
	cairo_set_source_rgba(cr,rgb_to_r_g_b(bgc,bga))
	cairo_set_line_width(cr,ring_w)
	cairo_stroke(cr)

	-- Draw indicator ring

	cairo_arc(cr,xc,yc,ring_r,angle_0,angle_0+t_arc)
	cairo_set_source_rgba(cr,rgb_to_r_g_b(fgc,fga))
	cairo_stroke(cr)
end

function conky_ring_stats()
	local function setup_rings(cr,pt)
		local str=''
		local value=0

		str=string.format('${%s %s}',pt['name'],pt['arg'])
		str=conky_parse(str)

		value=tonumber(str)
		pct=value/pt['max']

		draw_ring(cr,pct,pt)
	end

	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 cr=cairo_create(cs)	

	local updates=conky_parse('${updates}')
	update_num=tonumber(updates)

	if update_num>5 then
		for i in pairs(settings_table) do
			setup_rings(cr,settings_table[i])
		end
	end
end

Informaticien où Troll, j'ai choisis les deux!
MountyHall, la Terre des Trõlls

Hors ligne

#50 Le 10/07/2010, à 15:50

soza971

Re : Postez vos scripts Lua pour Conky !

@Grinder poste ton code conky , aussi je n'ai pas très bien compris ta demande pourrais tu préciser ou reformuler stp

Dernière modification par soza971 (Le 10/07/2010, à 15:52)


Asus U80V Obuntu 10.04 64bits

Hors ligne