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.

#1301 Le 09/08/2016, à 13:01

pianistocrate

Re : [5] Conky : Postez vos conkyrc ou certaines parties intéressantes

Je suis peut-être quelque peu obtus, mais, au regard de ce que renvoie la commande

man strftime

, les heures, est-ce que ça ne devrait pas être plutôt :

 %H     The  hour as a decimal number using a 24-hour clock (range 00 to
              23).

?
Et si les minutes, c'est bien :

 %M     The minute as a decimal number (range 00 to 59).

Est-ce que l'argument heures-minutes ça ne devrait pas plutôt être arg='%H.%M', que arg='%M.%S', ?
Parce que %S, ça ne peut pas être à la fois les minutes et les secondes... hmm

  %s     The number of seconds since the Epoch, 1970-01-01 00:00:00 +0000
              (UTC). (TZ)

       %S     The  second as a decimal number (range 00 to 60).  (The range is
              up to 60 to allow for occasional leap seconds.)

Dernière modification par pianistocrate (Le 09/08/2016, à 13:02)


« Un spécialiste est un homme qui sait de plus en plus de choses, sur un sujet de plus en plus restreint, et qui finit par tout savoir… sur rien. »      Oscar Wilde

Hors ligne

#1302 Le 09/08/2016, à 14:35

chepioq

Re : [5] Conky : Postez vos conkyrc ou certaines parties intéressantes

Dans la partie du script que tu cites il n'y a pas d'appelle à l'heure

date '+%M.%S' :

[dominique@host-192-168-1-2 ~]$ date '+%M.%S'
24.02

Ce qui signifie 24 minutes et 02 secondes

La partie qui indique l'heure est un peu plus haut :

    {
        -- Edit this table to customise your rings.
        -- You can create more rings simply by adding more elements to settings_table.
        -- "name" is the type of stat to display; you can choose from 'cpu', 'memperc', 'fs_used_perc', 'battery_used_perc'.
        name='time',
        -- "arg" is the argument to the stat type, e.g. if in Conky you would write ${cpu cpu0}, 'cpu0' would be the argument. If you would not use an argument in the Conky variable, use ''.
        arg='%I.%M',
        -- "max" is the maximum value of the ring. If the Conky variable outputs a percentage, use 100.
        max=12,
        -- "bg_colour" is the colour of the base ring.
        bg_colour=0xffffff,
        -- "bg_alpha" is the alpha value of the base ring.
        bg_alpha=0.1,
        -- "fg_colour" is the colour of the indicator part of the ring.
        fg_colour=0x0066FF,
        -- "fg_alpha" is the alpha value of the indicator part of the ring.
        fg_alpha=0.2,
        -- "x" and "y" are the x and y coordinates of the centre of the ring, relative to the top left corner of the Conky window.
        x=100, y=150,
        -- "radius" is the radius of the ring.
        radius=50,
        -- "thickness" is the thickness of the ring, centred around the radius.
        thickness=5,
        -- "start_angle" is the starting angle of the ring, in degrees, clockwise from top. Value can be either positive or negative.
        start_angle=0,
        -- "end_angle" is the ending angle of the ring, in degrees, clockwise from top. Value can be either positive or negative, but must be larger than start_angle.
        end_angle=360
    },

C'est arg='%I.%M'

[dominique@host-192-168-1-2 ~]$ date '+%I.%M'
03.34

Ce qui signifie 3 heure 34


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

Hors ligne

#1303 Le 09/08/2016, à 14:47

pianistocrate

Re : [5] Conky : Postez vos conkyrc ou certaines parties intéressantes

OK, mais j'ai mis dans le poste #1354 plus haut, la partie "horloge" du script. Si j'y vois bien l'arg %M %S, je n'y vois pas l'autre argument %I %M que tu cites.
Je vais remettre l'intégralité du code du script.lua pour que tu puisses t'en faire une idée complète.

--[[
Clock Rings by Linux Mint (2011) reEdited by despot77

This script draws percentage meters as rings, and also draws clock hands if you want! It is fully customisable; all options are described in the script. This script is based off a combination of my clock.lua script and my rings.lua 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/clock_rings.lua
    lua_draw_hook_pre clock_rings
    
Changelog:
+ v1.0 -- Original release (30.09.2009)
   v1.1p -- Jpope edit londonali1010 (05.10.2009)
*v 2011mint -- reEdit despot77 (18.02.2011)
]]

settings_table = {
    {
        -- Edit this table to customise your rings.
        -- You can create more rings simply by adding more elements to settings_table.
        -- "name" is the type of stat to display; you can choose from 'cpu', 'memperc', 'fs_used_perc', 'battery_used_perc'.
        name='time',
        -- "arg" is the argument to the stat type, e.g. if in Conky you would write ${cpu cpu0}, 'cpu0' would be the argument. If you would not use an argument in the Conky variable, use ''.
        arg='%I.%M',
        -- "max" is the maximum value of the ring. If the Conky variable outputs a percentage, use 100.
        max=12,
        -- "bg_colour" is the colour of the base ring.
        bg_colour=0xffffff,
        -- "bg_alpha" is the alpha value of the base ring.
        bg_alpha=0.1,
        -- "fg_colour" is the colour of the indicator part of the ring.
        fg_colour=0x0066FF,
        -- "fg_alpha" is the alpha value of the indicator part of the ring.
        fg_alpha=0.2,
        -- "x" and "y" are the x and y coordinates of the centre of the ring, relative to the top left corner of the Conky window.
        x=100, y=150,
        -- "radius" is the radius of the ring.
        radius=50,
        -- "thickness" is the thickness of the ring, centred around the radius.
        thickness=5,
        -- "start_angle" is the starting angle of the ring, in degrees, clockwise from top. Value can be either positive or negative.
        start_angle=0,
        -- "end_angle" is the ending angle of the ring, in degrees, clockwise from top. Value can be either positive or negative, but must be larger than start_angle.
        end_angle=360
    },
    {
        name='time',
        arg='%M.%S',
        max=60,
        bg_colour=0xffffff,
        bg_alpha=0.1,
        fg_colour=0x0066FF,
        fg_alpha=0.4,
        x=100, y=150,
        radius=56,
        thickness=5,
        start_angle=0,
        end_angle=360
    },
    {
        name='time',
        arg='%S',
        max=60,
        bg_colour=0xffffff,
        bg_alpha=0.1,
        fg_colour=0x0066FF,
        fg_alpha=0.6,
        x=100, y=150,
        radius=62,
        thickness=5,
        start_angle=0,
        end_angle=360
    },
    {
        name='time',
        arg='%d',
        max=31,
        bg_colour=0xffffff,
        bg_alpha=0.1,
        fg_colour=0x0066FF,
        fg_alpha=0.8,
        x=100, y=150,
        radius=70,
        thickness=5,
        start_angle=-90,
        end_angle=90
    },
    {
        name='time',
        arg='%m',
        max=12,
        bg_colour=0xffffff,
        bg_alpha=0.1,
        fg_colour=0x0066FF,
        fg_alpha=0.6,
        x=100, y=150,
        radius=76,
        thickness=5,
        start_angle=-90,
        end_angle=90
    },
    {
        name='cpu',
        arg='cpu0',
        max=100,
        bg_colour=0xffffff,
        bg_alpha=0.2,
        fg_colour=0x0066FF,
        fg_alpha=0.8,
        x=50, y=300,
        radius=25,
        thickness=4,
        start_angle=-90,
        end_angle=180
    },
    {
        name='cpu',
        arg='cpu1',
        max=100,
        bg_colour=0xffffff,
        bg_alpha=0.2,
        fg_colour=0x0066FF,
        fg_alpha=0.8,
        x=50, y=300,
        radius=20,
        thickness=4,
        start_angle=-90,
        end_angle=180
    },    
    {
        name='memperc',
        arg='',
        max=100,
        bg_colour=0xffffff,
        bg_alpha=0.2,
        fg_colour=0x0066FF,
        fg_alpha=0.8,
        x=75, y=350,
        radius=25,
        thickness=5,
        start_angle=-90,
        end_angle=180
    },
    {
        name='swapperc',
        arg='',
        max=100,
        bg_colour=0xffffff,
        bg_alpha=0.2,
        fg_colour=0x0066FF,
        fg_alpha=0.8,
        x=100, y=400,
        radius=25,
        thickness=5,
        start_angle=-90,
        end_angle=180
    },
    {
        name='fs_used_perc',
        arg='/',
        max=100,
        bg_colour=0xffffff,
        bg_alpha=0.2,
        fg_colour=0x0066FF,
        fg_alpha=0.8,
        x=125, y=450,
        radius=25,
        thickness=5,
        start_angle=-90,
        end_angle=180
    },
    {
        name='fs_used_perc',
        arg='/home',
        max=100,
        bg_colour=0xffffff,
        bg_alpha=0.2,
        fg_colour=0x0066FF,
        fg_alpha=0.8,
        x=125, y=450,
        radius=20,
        thickness=4,
        start_angle=-90,
        end_angle=180
    },    
        {
        name='downspeedf',
        arg='eth0',
        max=100,
        bg_colour=0xffffff,
        bg_alpha=0.2,
        fg_colour=0x0066FF,
        fg_alpha=0.8,
        x=150, y=500,
        radius=25,
        thickness=4,
        start_angle=-90,
        end_angle=180
    },
        {
        name='upspeedf',
        arg='eth0',
        max=100,
        bg_colour=0xffffff,
        bg_alpha=0.2,
        fg_colour=0xff3300,
        fg_alpha=0.8,
        x=150, y=500,
        radius=20,
        thickness=4,
        start_angle=-90,
        end_angle=180
    },
}

-- Use these settings to define the origin and extent of your clock.

clock_r=65

-- "clock_x" and "clock_y" are the coordinates of the centre of the clock, in pixels, from the top left of the Conky window.

clock_x=100
clock_y=150

show_seconds=true

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 draw_clock_hands(cr,xc,yc)
    local secs,mins,hours,secs_arc,mins_arc,hours_arc
    local xh,yh,xm,ym,xs,ys
    
    secs=os.date("%S")    
    mins=os.date("%M")
    hours=os.date("%I")
        
    secs_arc=(2*math.pi/60)*secs
    mins_arc=(2*math.pi/60)*mins+secs_arc/60
    hours_arc=(2*math.pi/12)*hours+mins_arc/12
        
    -- Draw hour hand
    
    xh=xc+0.7*clock_r*math.sin(hours_arc)
    yh=yc-0.7*clock_r*math.cos(hours_arc)
    cairo_move_to(cr,xc,yc)
    cairo_line_to(cr,xh,yh)
    
    cairo_set_line_cap(cr,CAIRO_LINE_CAP_ROUND)
    cairo_set_line_width(cr,5)
    cairo_set_source_rgba(cr,1.0,1.0,1.0,1.0)
    cairo_stroke(cr)
    
    -- Draw minute hand
    
    xm=xc+clock_r*math.sin(mins_arc)
    ym=yc-clock_r*math.cos(mins_arc)
    cairo_move_to(cr,xc,yc)
    cairo_line_to(cr,xm,ym)
    
    cairo_set_line_width(cr,3)
    cairo_stroke(cr)
    
    -- Draw seconds hand
    
    if show_seconds then
        xs=xc+clock_r*math.sin(secs_arc)
        ys=yc-clock_r*math.cos(secs_arc)
        cairo_move_to(cr,xc,yc)
        cairo_line_to(cr,xs,ys)
    
        cairo_set_line_width(cr,1)
        cairo_stroke(cr)
    end
end

function conky_clock_rings()
    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)
        if value == nil then value = 0 end
        pct=value/pt['max']
        
        draw_ring(cr,pct,pt)
    end
    
    -- Check that Conky has been running for at least 5s

    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
    
    draw_clock_hands(cr,clock_x,clock_y)
end

Dernière modification par pianistocrate (Le 09/08/2016, à 15:01)


« Un spécialiste est un homme qui sait de plus en plus de choses, sur un sujet de plus en plus restreint, et qui finit par tout savoir… sur rien. »      Oscar Wilde

Hors ligne

#1304 Le 09/08/2016, à 14:50

chepioq

Re : [5] Conky : Postez vos conkyrc ou certaines parties intéressantes

La partie dont je te parle est juste après
settings_table = {
Juste avant la partie que tu cites.

Si tu ne l'avais pas tu n'aurais pas l'horloge complète

Ce qui porte à confusion c'est que l'on crois que ce ne sont que des commentaires, alors que les dit commentaires ne sont seulement les lignes commençants par --

Dernière modification par chepioq (Le 09/08/2016, à 14:52)


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

Hors ligne

#1305 Le 09/08/2016, à 18:58

chepioq

Re : [5] Conky : Postez vos conkyrc ou certaines parties intéressantes

Et si tu enléves tous les commentaires tu as ceci :

settings_table = {
    {
        name='time',
        arg='%I.%M',
        max=12,
        bg_colour=0xffffff,
        bg_alpha=0.1,
        fg_colour=0x0066FF,
        fg_alpha=0.2,
        x=100, y=150,
        radius=50,
        thickness=5,
        start_angle=0,
        end_angle=360
    },

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

Hors ligne

#1306 Le 09/08/2016, à 19:02

pianistocrate

Re : [5] Conky : Postez vos conkyrc ou certaines parties intéressantes

Sauf erreur de ma part, et de mes yeux qui me joueraient des tours en relisant, dans l'intégralité du script que tu as dans mon post précédent (#1358), il n'y a pas l'ombre d'un arg='%I.%M'.
On y trouve, dans l'ordre :
1.

name='time',
        arg='%M.%S',

2.

 name='time',
        arg='%S',

3.

name='time',
        arg='%d',

4.

name='time',
        arg='%m',

et c'est fini pour ce qui concerne le "time". Après, on passe au cpu, et on ne revient plus nulle part sur le "time" :

name='cpu',
        arg='cpu0',

Regarde l'intégralité du passage :

 {
        name='time',
        arg='%M.%S',
        max=60,
        bg_colour=0xffffff,
        bg_alpha=0.1,
        fg_colour=0x0066FF,
        fg_alpha=0.4,
        x=100, y=150,
        radius=56,
        thickness=5,
        start_angle=0,
        end_angle=360
    },
    {
        name='time',
        arg='%S',
        max=60,
        bg_colour=0xffffff,
        bg_alpha=0.1,
        fg_colour=0x0066FF,
        fg_alpha=0.6,
        x=100, y=150,
        radius=62,
        thickness=5,
        start_angle=0,
        end_angle=360
    },
    {
        name='time',
        arg='%d',
        max=31,
        bg_colour=0xffffff,
        bg_alpha=0.1,
        fg_colour=0x0066FF,
        fg_alpha=0.8,
        x=100, y=150,
        radius=70,
        thickness=5,
        start_angle=-90,
        end_angle=90
    },
    {
        name='time',
        arg='%m',
        max=12,
        bg_colour=0xffffff,
        bg_alpha=0.1,
        fg_colour=0x0066FF,
        fg_alpha=0.6,
        x=100, y=150,
        radius=76,
        thickness=5,
        start_angle=-90,
        end_angle=90
    },
    {
        name='cpu',
        arg='cpu0',

hmm


« Un spécialiste est un homme qui sait de plus en plus de choses, sur un sujet de plus en plus restreint, et qui finit par tout savoir… sur rien. »      Oscar Wilde

Hors ligne

#1307 Le 09/08/2016, à 19:12

chepioq

Re : [5] Conky : Postez vos conkyrc ou certaines parties intéressantes

Bon je me répète mais tu as bien un arg='%I.%M'. dans ton fichier du post 1358


settings_table = {
    {
        -- Edit this table to customise your rings.
        -- You can create more rings simply by adding more elements to settings_table.
        -- "name" is the type of stat to display; you can choose from 'cpu', 'memperc', 'fs_used_perc', 'battery_used_perc'.
        name='time',
        -- "arg" is the argument to the stat type, e.g. if in Conky you would write ${cpu cpu0}, 'cpu0' would be the argument. If you would not use an argument in the Conky variable, use ''.
        arg='%I.%M',
        -- "max" is the maximum value of the ring. If the Conky variable outputs a percentage, use 100

Regarde mes deux précédent post 1359 et 1360


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

Hors ligne

#1308 Le 09/08/2016, à 19:34

pianistocrate

Re : [5] Conky : Postez vos conkyrc ou certaines parties intéressantes

Nos posts se sont croisés... Le #1361 répondait à ton #1359, le #1360 s'est intercalé entretemps. Pas grave.
Mais ça ne résout pas le problème. sad
Pas facile à lire ces scripts. Je n'en comprends pas la logique ; j'aurais placé le arg='%I.%M' entre le arg='%M.%S', et le arg='%S',.
Ils sont identiques, sauf le radius (logique, sinon les cercles se chevaucheraient) et le fameux fg_alpha=0.2 pour I-M et fg_alpha=0.6 pour S.
Peut-être essayer d'aligner le fg_alpha du I-M sur celui du S ?


« Un spécialiste est un homme qui sait de plus en plus de choses, sur un sujet de plus en plus restreint, et qui finit par tout savoir… sur rien. »      Oscar Wilde

Hors ligne

#1309 Le 10/08/2016, à 05:31

chepioq

Re : [5] Conky : Postez vos conkyrc ou certaines parties intéressantes

Pour tester j'ai mis tous les fg_alpha de l'horloge à 1 :
1470802949.jpg

On vois bien que cette valeur joue sur la visibilité des cercles.

D'autre part je me suis fait un nouveau clock_rings.lua, je trouve qu'il est plus clair sans les commentaires au milieu du code (je les ai déplacés au debut du fichier) :

--[[
Clock Rings by Linux Mint (2011) reEdited by despot77

This script draws percentage meters as rings, and also draws clock hands if you want! It is fully customisable; all options are described in the script. This script is based off a combination of my clock.lua script and my rings.lua 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/clock_rings.lua
    lua_draw_hook_pre clock_rings
    
Changelog:
+ v1.0 -- Original release (30.09.2009)
   v1.1p -- Jpope edit londonali1010 (05.10.2009)
*v 2011mint -- reEdit despot77 (18.02.2011)
   -- Edit this settings_table to customise your rings.
   -- You can create more rings simply by adding more elements to settings_table.
   -- "name" is the type of stat to display; you can choose from 'cpu', 'memperc', 'fs_used_perc', 'battery_used_perc'.
   -- "arg" is the argument to the stat type, e.g. if in Conky you would write ${cpu cpu0}, 'cpu0' would be the argument. If you would not use an argument in the Conky variable, use ''.
   -- "max" is the maximum value of the ring. If the Conky variable outputs a percentage, use 100.
   -- "bg_colour" is the colour of the base ring.
   -- "bg_alpha" is the alpha value of the base ring.
   -- "fg_colour" is the colour of the indicator part of the ring.
   -- "fg_alpha" is the alpha value of the indicator part of the ring.
   -- "x" and "y" are the x and y coordinates of the centre of the ring, relative to the top left corner of the Conky window.
   -- "radius" is the radius of the ring.
   -- "thickness" is the thickness of the ring, centred around the radius.
   -- "start_angle" is the starting angle of the ring, in degrees, clockwise from top. Value can be either positive or negative.
   -- "end_angle" is the ending angle of the ring, in degrees, clockwise from top. Value can be either positive or negative, but must be larger than start_angle.
]]

settings_table = {
    {
        name='time',
        arg='%I.%M',
        max=12,
        bg_colour=0xffffff,
        bg_alpha=0.1,
        fg_colour=0x0066FF,
        fg_alpha=0.2,
        x=100, y=150,
        radius=50,
        thickness=5,
        start_angle=0,
        end_angle=360
    },
    {
        name='time',
        arg='%M.%S',
        max=60,
        bg_colour=0xffffff,
        bg_alpha=0.1,
        fg_colour=0x0066FF,
        fg_alpha=0.4,
        x=100, y=150,
        radius=56,
        thickness=5,
        start_angle=0,
        end_angle=360
    },
    {
        name='time',
        arg='%S',
        max=60,
        bg_colour=0xffffff,
        bg_alpha=0.1,
        fg_colour=0x0066FF,
        fg_alpha=0.6,
        x=100, y=150,
        radius=62,
        thickness=5,
        start_angle=0,
        end_angle=360
    },
    {
        name='time',
        arg='%d',
        max=31,
        bg_colour=0xffffff,
        bg_alpha=0.1,
        fg_colour=0x0066FF,
        fg_alpha=0.8,
        x=100, y=150,
        radius=70,
        thickness=5,
        start_angle=-90,
        end_angle=90
    },
    {
        name='time',
        arg='%m',
        max=12,
        bg_colour=0xffffff,
        bg_alpha=0.1,
        fg_colour=0x0066FF,
        fg_alpha=1,
        x=100, y=150,
        radius=76,
        thickness=5,
        start_angle=-90,
        end_angle=90
    },
    {
        name='cpu',
        arg='cpu0',
        max=100,
        bg_colour=0xffffff,
        bg_alpha=0.2,
        fg_colour=0x0066FF,
        fg_alpha=0.8,
        x=50, y=300,
        radius=25,
        thickness=4,
        start_angle=-90,
        end_angle=180
    },
    {
        name='cpu',
        arg='cpu1',
        max=100,
        bg_colour=0xffffff,
        bg_alpha=0.2,
        fg_colour=0x0066FF,
        fg_alpha=0.8,
        x=50, y=300,
        radius=20,
        thickness=4,
        start_angle=-90,
        end_angle=180
    },    
    {
        name='memperc',
        arg='',
        max=100,
        bg_colour=0xffffff,
        bg_alpha=0.2,
        fg_colour=0x0066FF,
        fg_alpha=0.8,
        x=75, y=350,
        radius=25,
        thickness=5,
        start_angle=-90,
        end_angle=180
    },
    {
        name='swapperc',
        arg='',
        max=100,
        bg_colour=0xffffff,
        bg_alpha=0.2,
        fg_colour=0x0066FF,
        fg_alpha=0.8,
        x=100, y=400,
        radius=25,
        thickness=5,
        start_angle=-90,
        end_angle=180
    },
    {
        name='fs_used_perc',
        arg='/',
        max=100,
        bg_colour=0xffffff,
        bg_alpha=0.2,
        fg_colour=0x0066FF,
        fg_alpha=0.8,
        x=125, y=450,
        radius=25,
        thickness=4,
        start_angle=-90,
        end_angle=180
    },
    {
        name='fs_used_perc',
        arg='/home',
        max=100,
        bg_colour=0xffffff,
        bg_alpha=0.2,
        fg_colour=0x0066FF,
        fg_alpha=0.8,
        x=125, y=450,
        radius=20,
        thickness=4,
        start_angle=-90,
        end_angle=180
    },    
        {
        name='downspeedf',
        arg='enp4s0',
        max=100,
        bg_colour=0xffffff,
        bg_alpha=0.2,
        fg_colour=0x0066FF,
        fg_alpha=0.8,
        x=150, y=500,
        radius=25,
        thickness=4,
        start_angle=-90,
        end_angle=180
    },
        {
        name='upspeedf',
        arg='enp4s0',
        max=100,
        bg_colour=0xffffff,
        bg_alpha=0.2,
        fg_colour=0xff3300,
        fg_alpha=0.8,
        x=150, y=500,
        radius=20,
        thickness=4,
        start_angle=-90,
        end_angle=180
    },
}

-- Use these settings to define the origin and extent of your clock.

clock_r=65

-- "clock_x" and "clock_y" are the coordinates of the centre of the clock, in pixels, from the top left of the Conky window.

clock_x=100
clock_y=150

show_seconds=true

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 draw_clock_hands(cr,xc,yc)
    local secs,mins,hours,secs_arc,mins_arc,hours_arc
    local xh,yh,xm,ym,xs,ys
    
    secs=os.date("%S")    
    mins=os.date("%M")
    hours=os.date("%I")
        
    secs_arc=(2*math.pi/60)*secs
    mins_arc=(2*math.pi/60)*mins+secs_arc/60
    hours_arc=(2*math.pi/12)*hours+mins_arc/12
        
    -- Draw hour hand
    
    xh=xc+0.7*clock_r*math.sin(hours_arc)
    yh=yc-0.7*clock_r*math.cos(hours_arc)
    cairo_move_to(cr,xc,yc)
    cairo_line_to(cr,xh,yh)
    
    cairo_set_line_cap(cr,CAIRO_LINE_CAP_ROUND)
    cairo_set_line_width(cr,5)
    cairo_set_source_rgba(cr,1.0,1.0,1.0,1.0)
    cairo_stroke(cr)
    
    -- Draw minute hand
    
    xm=xc+clock_r*math.sin(mins_arc)
    ym=yc-clock_r*math.cos(mins_arc)
    cairo_move_to(cr,xc,yc)
    cairo_line_to(cr,xm,ym)
    
    cairo_set_line_width(cr,3)
    cairo_stroke(cr)
    
    -- Draw seconds hand
    
    if show_seconds then
        xs=xc+clock_r*math.sin(secs_arc)
        ys=yc-clock_r*math.cos(secs_arc)
        cairo_move_to(cr,xc,yc)
        cairo_line_to(cr,xs,ys)
    
        cairo_set_line_width(cr,1)
        cairo_stroke(cr)
    end
end

function conky_clock_rings()
    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)
        if value == nil then value = 0 end
        pct=value/pt['max']
        
        draw_ring(cr,pct,pt)
    end
    
    -- Check that Conky has been running for at least 5s

    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
    
    draw_clock_hands(cr,clock_x,clock_y)
end

Dernière modification par chepioq (Le 10/08/2016, à 05:33)


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

Hors ligne

#1310 Le 10/08/2016, à 10:09

pianistocrate

Re : [5] Conky : Postez vos conkyrc ou certaines parties intéressantes

chepioq a écrit :

Pour tester j'ai mis tous les fg_alpha de l'horloge à 1 :
http://pix.toile-libre.org/upload/img/1470802949.jpg

On vois bien que cette valeur joue sur la visibilité des cercles.

J'ai mis côte à côte tes 2 copies d'écran, et ça fait effectivement une grosse différence.

D'autre part je me suis fait un nouveau clock_rings.lua, je trouve qu'il est plus clair sans les commentaires au milieu du code (je les ai déplacés au debut du fichier)]

Est-ce que tu me suggérerais de le tester sur ma config ? wink


« Un spécialiste est un homme qui sait de plus en plus de choses, sur un sujet de plus en plus restreint, et qui finit par tout savoir… sur rien. »      Oscar Wilde

Hors ligne

#1311 Le 10/08/2016, à 10:26

chepioq

Re : [5] Conky : Postez vos conkyrc ou certaines parties intéressantes

pianistocrate a écrit :

D'autre part je me suis fait un nouveau clock_rings.lua, je trouve qu'il est plus clair sans les commentaires au milieu du code (je les ai déplacés au debut du fichier)]

Est-ce que tu me suggérerais de le tester sur ma config ? wink

Non c'est juste une clarification du code, pour que ce soit plus lisible.
Ce nouveau code donnera exactement le même resultat que l'ancien.


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

Hors ligne

#1312 Le 10/08/2016, à 10:50

jlfh0816

Re : [5] Conky : Postez vos conkyrc ou certaines parties intéressantes

@chepioq
Je suis rentré un peu plus tôt que prévu si bien que j'ai pu tester tes suggestions.
Pour être dans les mêmes conditions de lua que toi, je me suis fait un nouveau clock-ring.lua en copiant-collant purement et simplement le tien (celui du post #1364).
Il fonctionne très bien chez moi comme tu peux le constater sur cette capture d'écran.
J'ai seulement remplacé la couleur bleue par la couleur orange et, comme tu le proposais, j'ai aussi mis tous les fg_alpha à 1 (donc opaques).
Voici le résultat sur l'horloge :
1470821580.png
En gros, les cercles des heures et des minutes restent impertubablement grisés, c'est comme si le fg_alpha y reste bloqué sur la valeur 0. Ils ne sont matérialisés que par le bg_alpha=0.1..... Bizarre puisque les modifications de fg_alpha fonctionnent bien sur les autres anneaux.
Qu'ont-ils donc de spécial ces anneaux heures-minutes ?
As-tu déjà été confronté à ce comportement de fg_alpha sur ta Fedora ?


Xubuntu - Voyager 18.04 et 22.04

Hors ligne

#1313 Le 10/08/2016, à 10:58

chepioq

Re : [5] Conky : Postez vos conkyrc ou certaines parties intéressantes

C'est bizarre, et je ne vois pas trop ce qui se passe.

Que retourne les commandes, en user :

date '+%I.%M'
date '+%M.%S'

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

Hors ligne

#1314 Le 10/08/2016, à 11:02

pianistocrate

Re : [5] Conky : Postez vos conkyrc ou certaines parties intéressantes

@ jlfh0816
Est-ce que tu pourrais poster ton code, de telle sorte que je puisse revenir aux couleurs traditionnelles d'Ubuntu ; et que, également, le quantième du mois soit bien décalé à droite des autres éléments (sur cette version, il mord un peu sur l'année et le jour) ?
Est-ce que ta modif affecte également la couleur des petits cercles liés aux cpu, / & /home etc ?

Je réponds par le même voyage au post de chepioq qui vient de s'intercaler pendant que j'écris celui-ci :

jgs@jgs-OptiPlex-755:~$ date '+%I.%M'
11.59
jgs@jgs-OptiPlex-755:~$ date '+%M.%S'
01.09

« Un spécialiste est un homme qui sait de plus en plus de choses, sur un sujet de plus en plus restreint, et qui finit par tout savoir… sur rien. »      Oscar Wilde

Hors ligne

#1315 Le 10/08/2016, à 11:04

jlfh0816

Re : [5] Conky : Postez vos conkyrc ou certaines parties intéressantes

chepioq a écrit :

C'est bizarre, et je ne vois pas trop ce qui se passe.

Que retourne les commandes, en user :

date '+%I.%M'
date '+%M.%S'

Voilà:

nini @ voyager1604  ~
└─ $ ▶ date '+%I.%M'
12.02
nini @ voyager1604  ~
└─ $ ▶ date '+%M.%S'
03.17
nini @ voyager1604  ~
└─ $ ▶

Xubuntu - Voyager 18.04 et 22.04

Hors ligne

#1316 Le 10/08/2016, à 11:10

jlfh0816

Re : [5] Conky : Postez vos conkyrc ou certaines parties intéressantes

pianistocrate a écrit :

@ jlfh0816
Est-ce que tu pourrais poster ton code, de telle sorte que je puisse revenir aux couleurs traditionnelles d'Ubuntu ; et que, également, le quantième du mois soit bien décalé à droite des autres éléments (sur cette version, il mord un peu sur l'année et le jour) ?
Est-ce que ta modif affecte également la couleur des petits cercles liés aux cpu, / & /home etc ?

@pianistocrate
Oui, bien sûr, voilà mon conkyrc:

# Conky settings #
background no
update_interval 1
own_window_argb_visual yes
cpu_avg_samples 2
net_avg_samples 2

override_utf8_locale yes

double_buffer yes
no_buffers yes

text_buffer_size 2048
#imlib_cache_size 0

temperature_unit fahrenheit

# Window specifications #

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

border_inner_margin 0
border_outer_margin 0

minimum_size 200 250
maximum_width 200

alignment tr
gap_x 35
gap_y 55

# Graphics settings #
draw_shades no
draw_outline no
draw_borders no
draw_graph_borders no

# Text settings #
use_xft yes
xftfont caviar dreams:size=8
xftalpha 0.5

uppercase no

temperature_unit celsius


default_color FFFFFF

# Lua Load  #
lua_load ~/.conky/conky-extra/conky11/clock_rings.lua
lua_draw_hook_pre clock_rings

TEXT
${voffset 8}${color FF6600}${font caviar dreams:size=16}${time %A}${font}${voffset -8}${alignr 10}${color FFFFFF}${font caviar dreams:size=38}${time %e}${font}
${color FFFFFF}${voffset -30}${color FFFFFF}${font caviar dreams:size=18}${time %b}${font}${voffset -3} ${color FFFFFF}${font caviar dreams:size=20}${time %Y}${font}${color FF6600}${hr}
${voffset 140}${font caviar dreams:size=10}${alignr}Plougonvelin${font}
${font caviar dreams:size=12}${color FFFFFF}${alignr}${weather http://weather.noaa.gov/pub/data/observations/metar/stations/ LFRB temperature temperature 30} °C${font}
${image ~/.conky/conky-extra/conky11/new-ubuntu-logo.png -p 64,125 -s 70x20}

${color FFFFFF}${goto 25}${voffset 35}${cpu cpu0}%
${color FF6600}${goto 25}CPU
${color FFFFFF}${goto 50}${voffset 23}${memperc}%
${color FF6600}${goto 50}RAM
${color FFFFFF}${goto 75}${voffset 23}${swapperc}%
${color FF6600}${goto 75}Swap
${color FFFFFF}${goto 100}${voffset 23}${fs_used_perc /}%
${color FF6600}${goto 100}Disk
${color FFFFFF}${goto 125}${voffset 25}${downspeed wlp2s0}
${color FFFFFF}${goto 125}${upspeed wlp2s0}
${color FF6600}${goto 125}Net



${color FFFFFF}${font caviar dreams:size=8}Uptime: ${uptime_short}
${color FFFFFF}${font caviar dreams:size=8}Processes: ${processes}
${color FFFFFF}${font caviar dreams:size=8}Running: ${running_processes}


${color FF6600}${font caviar dreams:size=8}${alignr}${nodename}
${color FF6600}${font caviar dreams:size=8}${alignr}${exec cat /etc/issue.net}  $machine
${color FF6600}${font caviar dreams:size=8}${alignr}Kernel: ${kernel}

Quant au clock_rings.lua, c'est celui de chepioq que j'ai copié-collé de son post #1364

Pour les modifications entraînées par fg_alpha, elles fonctionnent effectivement sur toutes les autres informations (cpu, swap, etc ...).
Il n'y a que ces deux anneaux heures-minutes qui ne veulent rien savoir ... hmm

Dernière modification par jlfh0816 (Le 10/08/2016, à 11:15)


Xubuntu - Voyager 18.04 et 22.04

Hors ligne

#1317 Le 10/08/2016, à 11:12

chepioq

Re : [5] Conky : Postez vos conkyrc ou certaines parties intéressantes

Les résultats sont conformes, donc je ne vois vraiment pas ce qui peut coincer.
Surtout que cela fonctionne pour tous tes autres anneaux, je suis un peu dubitatif, et je ne peux malheureusement pas reproduire ce bug sur ma Fedora.


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

Hors ligne

#1318 Le 10/08/2016, à 11:18

jlfh0816

Re : [5] Conky : Postez vos conkyrc ou certaines parties intéressantes

chepioq a écrit :

Les résultats sont conformes, donc je ne vois vraiment pas ce qui peut coincer.
Surtout que cela fonctionne pour tous tes autres anneaux, je suis un peu dubitatif, et je ne peux malheureusement pas reproduire ce bug sur ma Fedora.

@chepioq
Pas grave, ça n'empêche pas l'essentiel du conky de fonctionner.
En tout cas, je te remercie d'avoir eu la gentillesse de te pencher sur mon problème ! big_smile


Xubuntu - Voyager 18.04 et 22.04

Hors ligne

#1319 Le 10/08/2016, à 11:28

jlfh0816

Re : [5] Conky : Postez vos conkyrc ou certaines parties intéressantes

pianistocrate a écrit :

@ jlfh0816
Est-ce que tu pourrais poster ton code, de telle sorte que je puisse revenir aux couleurs traditionnelles d'Ubuntu ; et que, également, le quantième du mois soit bien décalé à droite des autres éléments (sur cette version, il mord un peu sur l'année et le jour) ?

@pianistocrate
Pour déplacer le quantième du mois dans l'horloge vers la droite, c'est à la ligne 58 que cela se passe. J'ai mis {alignr 10} mais tu peux mettre {alignr 0} pour aller au maximum à droite:

TEXT
${voffset 8}${color FF6600}${font caviar dreams:size=16}${time %A}${font}${voffset -8}${alignr 0}${color FFFFFF}${font caviar dreams:size=38}${time %e}${font}

Dernière modification par jlfh0816 (Le 10/08/2016, à 11:31)


Xubuntu - Voyager 18.04 et 22.04

Hors ligne

#1320 Le 10/08/2016, à 12:01

pianistocrate

Re : [5] Conky : Postez vos conkyrc ou certaines parties intéressantes

jlfh0816 a écrit :
pianistocrate a écrit :

@ jlfh0816
Est-ce que tu pourrais poster ton code, de telle sorte que je puisse revenir aux couleurs traditionnelles d'Ubuntu ; et que, également, le quantième du mois soit bien décalé à droite des autres éléments (sur cette version, il mord un peu sur l'année et le jour) ?

@pianistocrate
Pour déplacer le quantième du mois dans l'horloge vers la droite, c'est à la ligne 58 que cela se passe. J'ai mis {alignr 10} mais tu peux mettre {alignr 0} pour aller au maximum à droite:

TEXT
${voffset 8}${color FF6600}${font caviar dreams:size=16}${time %A}${font}${voffset -8}${alignr 0}${color FFFFFF}${font caviar dreams:size=38}${time %e}${font}

Ton conkyrc est nickel question couleurs, et le quantième s'est bien décalé, mais je n'ai plus de pendule ni de cercles (cf copie-écran ci-dessous), et je n'ai plus non plus les 2 processeurs et les 2 cercles du disque dur (le / et le /home) ; je vais revérifier le script du lua.
1470826539.png


« Un spécialiste est un homme qui sait de plus en plus de choses, sur un sujet de plus en plus restreint, et qui finit par tout savoir… sur rien. »      Oscar Wilde

Hors ligne

#1321 Le 10/08/2016, à 12:08

chepioq

Re : [5] Conky : Postez vos conkyrc ou certaines parties intéressantes

Tu as surement copié le conky de jlfh0816 sans modifier le chemin du script lua, qui est chez lui : ~/.conky/conky-extra/conky11/clock_rings.lua
tandis que chez toi c'est ~/.conky/clock_rings.lua
Et faire la même modification pour le logo ubuntu


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

Hors ligne

#1322 Le 10/08/2016, à 12:33

jlfh0816

Re : [5] Conky : Postez vos conkyrc ou certaines parties intéressantes

@pianistocrate
Oui, chepioq a raison, c'est sûrement cela l'explication.
Je ne pensais pas que tu ferais un copié-collé. En plus, c'est en version conky 1.09 ...(l'ancienne version).
Désolé de t'avoir induit (bien involontairement) en erreur mais il fallait seulement t'en inspirer pour rétablir la couleur orange et l'alignement du jour sur ton propre conky.
Le reste (les chemins) ne sont valables que sur mon PC.

Dernière modification par jlfh0816 (Le 10/08/2016, à 12:33)


Xubuntu - Voyager 18.04 et 22.04

Hors ligne

#1323 Le 10/08/2016, à 12:59

pianistocrate

Re : [5] Conky : Postez vos conkyrc ou certaines parties intéressantes

Vous avez raison tous les 2.
J'ai remis la version précédente - en décalant le quantième selon les indications données - et tout est revenu. Mais en bleu. roll
Si je veux repasser les cercles en orange, je suppose qu'il faut que je change le code-couleur. Je vais chercher de mon côté, mais si vous avez ça sous la main... wink Je suppose également qu'un "rechercher-remplacer" dans gedit ferait l'affaire, non ?


« Un spécialiste est un homme qui sait de plus en plus de choses, sur un sujet de plus en plus restreint, et qui finit par tout savoir… sur rien. »      Oscar Wilde

Hors ligne

#1324 Le 10/08/2016, à 13:32

pianistocrate

Re : [5] Conky : Postez vos conkyrc ou certaines parties intéressantes

Voilà, une fois le tout rectifié : le quantième déplacé, et les cercles passés en orange (vous ne le voyez pas, mais c'est en vert pour le downspeed, et en rouge pour le upspeed) cool

1470831942.png

Restent ces .... d'heures et minutes qui ne s'affichent toujours pas. roll

@ jlfh0816 : vous avez beau temps du côté de la pointe St-Mathieu ? wink Parce qu'à Quimper, c'est plutôt tristounet ! Tu parles d'un mois d'août ! roll


« Un spécialiste est un homme qui sait de plus en plus de choses, sur un sujet de plus en plus restreint, et qui finit par tout savoir… sur rien. »      Oscar Wilde

Hors ligne

#1325 Le 10/08/2016, à 14:35

jlfh0816

Re : [5] Conky : Postez vos conkyrc ou certaines parties intéressantes

pianistocrate a écrit :

@ jlfh0816 : vous avez beau temps du côté de la pointe St-Mathieu ? wink Parce qu'à Quimper, c'est plutôt tristounet ! Tu parles d'un mois d'août ! roll

On a une petite brise rafraîchissante idéale pour calmer les ardeurs du soleil (si, si, ... il fait un super soleil et un ciel bien dégagé ici cool ! )
Kenavo !


Xubuntu - Voyager 18.04 et 22.04

Hors ligne