Page 2013 of 2348 FirstFirst ... 1013151319131963200320112012201320142015202320632113 ... LastLast
Results 20,121 to 20,130 of 23480

Thread: Post your .conkyrc files w/ screenshots

  1. #20121
    Join Date
    Jan 2008
    Beans
    130

    Re: Post your .conkyrc files w/ screenshots

    Trying to isolate the albumart mystery, here is a simple conky just for rhythmbox info. I get an error(?) as shown in picture.

    Screenshot-1.png

    the conkyrc:
    Code:
    # Create own window instead of using desktop (required in nautilus)
    own_window yes
    own_window_hints undecorated,below,skip_taskbar
    background no
     
    # Use double buffering (reduces flicker, may not work for everyone)
    double_buffer yes
     
    # fiddle with window
    use_spacer right
    use_xft yes
     
    text_buffer_size 600
    mpd_port 6605
    # Update interval in seconds
    update_interval 1
     
    # Minimum size of text area
    minimum_size 150 500
     
    # Draw shades?
    draw_shades yes
     
    # Text stuff
    draw_outline no # amplifies text if yes
    draw_borders no
     
    uppercase no # set to yes if you want all text to be in uppercase
     
    # Stippled borders?
    stippled_borders 8
     
    # border margins
    border_margin 5
     
    # border width
    border_width 1
     
    # Default colors and also border colors, grey90 == #e5e5e5
    default_color white
    default_shade_color black
    default_outline_color white
     
    own_window_colour black
    own_window_transparent no
     
    # 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 5
    gap_y 5
     
    # stuff after 'TEXT' will be formatted on screen
     
    override_utf8_locale no
    xftfont Terminus:size=8
    xftalpha 0.8
    imlib_cache_size 0
     
    TEXT
    
    ${if_running rhythmbox}
    
    ${color ddaa00}Artist: ${color E0E0E0}${exec conkyRhythmbox --datatype=AR}
    ${color ddaa00}Album: ${color E0E0E0}${exec conkyRhythmbox --datatype=AL}
    ${color ddaa00}Song: ${color E0E0E0}${exec conkyRhythmbox --datatype=TI}
    ${execibar 1 conkyRhythmbox --datatype=PP} 
    ${exec conkyRhythmbox --datatype=PP}%
    ${if_match ${exec conkyRhythmbox --datatype=PP} <= 2 }
    ${exec /home/davejr/.conky/music/albumart}
    ${endif}
    ${image /home/davejr/.album -p 0,300 -s 100x100}
    ${endif}
    ...and the albumart script:
    Code:
    $#!/bin/bash
    fail=`echo "Unknown"`
    artist=`conkyRhythmbox --datatype=AR`
    album=`conkyRhythmbox --datatype=AL`
    str="`echo "$artist $album" | sed -e s/\\ /+/g`"
    if [ "$artist" = "$fail" ]; then
            echo "Rhythmbox is not playing"
            if [ -f /home/davejr/.album ]; then
                    rm /home/davejr/.album
            fi
    else
            wget `wget "http://www.albumart.org/index.php?srchkey=&itempage=1&newsearch=1&searchindex=Music" -q -O - | 
            grep "http://www.albumart.org/images/zoom-icon.jpg" -m 1 | 
            sed -e 's/" border="0" class="image_border.*//' |
            sed -e 's/.*img src="//'` -q -O /home/davejr/.album
    fi
    Both are in /home/davejr/.conky/music

  2. #20122
    Join Date
    Oct 2009
    Location
    Under a rock
    Beans
    Hidden!

    Re: Post your .conkyrc files w/ screenshots

    have a look here for music and album art display
    http://crunchbanglinux.org/forums/to...s-for-18-apps/

  3. #20123
    Join Date
    Jun 2012
    Beans
    0

    Re: Post your .conkyrc files w/ screenshots

    Quote Originally Posted by davesbrain View Post
    Not sure why this is happening. It starts my conky as well as the baseline conky, simultaneously. Not cool. And, as I mentioned before, cpu pegs out at 100% and temp skyrockets. As soon as I close conky, temp returns to normal.
    Attachment 220112

    And some code:
    Code:
    ####
    ## Use XFT? Required to Force UTF8 (see below).
    #
    use_xft yes
    xftfont LiberationSans:size=8.85
    xftalpha 0.7
    text_buffer_size 2048
    
    ####
    ## Force UTF8? Requires XFT (see above).
    ## Displays degree symbol, instead of °, etc.
    #
    override_utf8_locale yes
    
    ####
    ## Update interval in seconds.
    #
    update_interval .1
    #music_player_interval 1
    ####
    ## This is the number of times Conky will update before quitting.
    ## Set to zero to run forever.
    #
    total_run_times 0
    
    ####
    ## Create own window instead of using desktop (required in nautilus)?
    #
    own_window yes
    own_window_transparent no
    own_window_type normal
    #own_window_hints undecorated,below,sticky,skip_taskbar,skip_pager
    #own_window_title conky
    
    
    ####
    ## Use double buffering? Reduces flicker.
    #
    double_buffer yes
    
    ####
    ## Draw shades?
    #
    draw_shades yes
    default_shade_color 292421
    draw_outline no
    draw_graph_borders no
    
    ####
    ## Draw outlines?
    #
    draw_outline no
    
    ####
    ## Draw borders around text?
    #
    draw_borders no
    
    
    ####
    ## Print text to stdout?
    ## Print text in console?
    #
    out_to_ncurses no
    out_to_console no
    
    ####
    ## Text alignment.
    #
    alignment top_right
    
    ####
    ## Minimum size of text area.
    #
    maximum_width 246
    
    ####
    ## Gap between text and screen borders.
    #
    gap_x 0
    gap_y 24
    
    ####
    ## Shorten MiB/GiB to M/G in stats.
    #
    short_units yes
    
    ####
    ## Pad % symbol spacing after numbers.
    #
    pad_percents 0
    
    ####
    ## Pad spacing between text and borders.
    #
    border_inner_margin 4
    
    ####
    ## Limit the length of names in "Top Processes".
    #
    top_name_width 10
    
    ####
    ## Subtract file system -/+buffers/cache from used memory?
    ## Set to yes, to produce meaningful physical memory stats.
    #
    no_buffers yes
    
    ####
    ## Set to yes, if you want all text to be in UPPERCASE.
    #
    uppercase no
    
    ####
    ## Number of cpu samples to average.
    ## Set to 1 to disable averaging.
    #
    cpu_avg_samples 2
    
    ####
    ## Number of net samples to average.
    ## Set to 1 to disable averaging.
    #
    net_avg_samples 2
    
    ####
    ## My colors (suit yourself)
    #
    color0 White            #FFFFFF
    color1 Ivory            #FFFFF0
    color2 Ivory2           #EEEEE0
    color3 Ivory3           #CDCDC1
    color4 Tan1             #FFA54F
    color5 Tan2             #EE9A49
    color6 Gray             #7E7E7E
    color7 AntiqueWhite4    #8B8378
    color8 DimGray          #696969
    color9 Tomato           #FF6347
    
    
    ####
    ## Load Lua for shading (optional).
    ## Set the path to your script here.
    #
    
    lua_load /home/davejr/.conky/MyConkyLatest/bargraph_small.lua
    lua_draw_hook_post main_bars
    
    #lua_load /home/davejr/.conky/MyConkyLatest/Radar/radartest.lua
    #lua_draw_hook_pre radar
    
    TEXT
    ####     LOGO     ####
    ${voffset -33}${font OpenLogos:size=100}${color0}v${voffset -67}${font Arial:bold:size=18}${color5}${pre_exec cat /etc/*release | grep 'RELEASE' | awk -F'=' '{print $2}'}${font}
    ####     TIME     ####
    ${voffset 20}${font Arial:bold:size=8.75}${color4}TIME&DATE${offset 8}${color8}${voffset -2}${hr 2}${font}
    ${voffset 1}${if_match ${time %l}<=9}${voffset -4}${font RadioSpace:size=32}${color3}${alignc 7}${time %l:%M%p}${font}${else}${if_match ${time %l}>=10}${voffset -4}${font RadioSpace:size=32}${color3}${alignc -1}${time %l:%M%p}${font}${endif}${endif}
    ####   CALENDAR   ####
    ${voffset 18}${font LiberationMono:size=8}${color1}${alignc 75}${time %A}${font}
    ${voffset -3}${if_match ${time %e}<=9}${font LiberationMono:size=22}${color4}${alignc 83}${time %e}${font}${else}${if_match ${time %e}>=10}${font LiberationMono:size=22}${color9}${alignc 75}${time %e}${font}${endif}${endif}
    ${voffset -1}${font LiberationMono:size=8}${color1}${alignc 75}${time %B}${font}
    ${voffset -3}${font LiberationMono:size=8}${color1}${alignc 73}${time %Y}${font}
    ${voffset -80}${font LiberationMono:size=9}${color1}${execpi 60 VinDSL_Cal_5=`date +%-d`; cal | sed '1d' | sed s/^/"\$\{offset 90"\}/ | sed '/^ *$/d' | sed 's/\<'"$VinDSL_Cal_5"'\>/${color9}&${color3}/'}${font}
    ${voffset -100}${font CutOutsFor3DFX:size=64}${color8}${alignc 110}2${font}
    ####    SYSTEM    ####
    ${voffset 18}${font Arial:bold:size=8.75}${color4}SYSTEM${offset 8}${color8}${voffset -2}${hr 2}${font}
    ${voffset 4}${font OpenLogos:size=10}${color2}u${voffset -4}${font}${color1}${offset 5}${sysname}${offset 5}${kernel}${alignr}${machine}
    ${voffset 2}${font StyleBats:size=10}${color2}q${voffset -1}${font}${color1}${offset 5}Uptime${alignr}${uptime}
    ${voffset 2}${font StyleBats:size=10}${color2}o${voffset -1}${font}${color1}${offset 5}File${offset 3}System${alignr}${fs_type}
    ####  PROCESSORS  ####
    ${voffset 4}${font Arial:bold:size=8.75}${color4}PROCESSORS${offset 8}${color8}${voffset -2}${hr 2}${font}
    ${voffset 4}${font StyleBats:size=14}${color2}A${voffset -7}${font}${color1}${offset 5}AMD${offset 3}Athlon64 ${cpu cpu1}%${alignr}${freq_g cpu0}${offset 1}GHz
    ${voffset 8}${goto 10}${font Weather:size=16}${color0}y ${font}${voffset -7}${goto 25}CPU Temp:${hwmon temp 1}ºC
    ####    MEMORY    ####
    ${voffset 6}${font Arial:bold:size=8.75}${color4}MEMORY${offset 8}${color8}${voffset -2}${hr 2}${font}
    ${voffset 4}${font StyleBats:size=14}${color2}k${voffset -6}${font}${color1}${offset 3}RAM${goto 97}${mem}${goto 133}/${offset 5}${memmax}${alignr}${memperc}%
    ####     HDD      ####
    ${voffset 6}${font Arial:bold:size=8.75}${color4}HDD${offset 8}${color8}${voffset -2}${hr 2}${font}
    ${voffset 4}${font StyleBats:size=14}${color2}x${voffset -6}${font}${color1}${offset 4}LINUX${goto 95}${fs_used /}${goto 133}/${offset 5}${fs_size /}${alignr}${fs_free_perc /}%
    
    ${voffset 1}${font StyleBats:size=14}${color2}x${voffset -6}${font}${color1}${offset 4}WinXP${goto 95}${fs_used /media/1CB8948DB89466D4}${goto 133}/${offset 5}${fs_size /media/1CB8948DB89466D4}${alignr}${fs_free_perc /media/1CB8948DB89466D4}%
    
    ${voffset 1}${font StyleBats:size=14}${color2}x${voffset -6}${font}${color1}${offset 4}NetDisk${goto 95}${fs_used /media/NetDisk}${goto 133}/${offset 5}${fs_size /media/NetDisk}${alignr}${fs_free_perc /media/NetDisk}%
    
    ${voffset 1}${font StyleBats:size=14}${color2}x${voffset -6}${font}${color1}${offset 4}NewVolume${goto 95}${fs_used /media/NewVolume}${goto 133}/${offset 5}${fs_size /media/NewVolume}${alignr}${fs_free_perc /media/NewVolume}%
    
    #### TOP PROCESSES ####
    ${voffset 1}${font Arial:bold:size=8.75}${color4}TOP PROCESSES${offset 8}${color8}${voffset -2}${hr 2}${font}
    ${voffset 4}${font StyleBats:size=10}${color1}h${voffset -3}${font}${color1}${offset 5}${top_mem name 1}${goto 115}${top_mem mem_res 1}${alignr}${top_mem mem 1}%
    ${voffset 2}${font StyleBats:size=10}${color1}h${voffset -3}${font}${color1}${offset 5}${top_mem name 2}${goto 115}${top_mem mem_res 2}${alignr}${top_mem mem 2}%
    ${voffset 2}${font StyleBats:size=10}${color1}h${voffset -3}${font}${color1}${offset 5}${top_mem name 3}${goto 115}${top_mem mem_res 3}${alignr}${top_mem mem 3}%
    ${voffset 2}${font StyleBats:size=10}${color1}h${voffset -3}${font}${color1}${offset 5}${top_mem name 4}${goto 115}${top_mem mem_res 4}${alignr}${top_mem mem 4}%
    ####   NETWORK    ####
    ${voffset 4}${font Arial:bold:size=8.75}${color4}NETWORK${offset 8}${color8}${voffset -2}${hr 2}${font}
    ${voffset 6}${font PizzaDudeBullets:size=14}${color1}T${font}${color1}${offset 5}${voffset -7}Down${goto 115}${downspeed eth0}
    ${font}${goto 25}${color1}${voffset -2}${offset 5}Downloaded${goto 115}${totaldown eth0}${voffset -15}${downspeedgraph eth0 20,100 ff0000 0000ff}
    ${font PizzaDudeBullets:size=14}${color1}N${font}${color1}${voffset -6}${offset 5}Up${goto 115}${upspeed eth0}
    ${font}${color1}${goto 25}${voffset -2}${offset 5}Uploaded${goto 115}${totalup eth0}${voffset -15}${upspeedgraph eth0 20,100 0000ff ff0000}
    you have bargraph_small.lua
    radartest.lua

    please post it

  4. #20124
    Join Date
    Oct 2009
    Location
    Under a rock
    Beans
    Hidden!

    Re: Post your .conkyrc files w/ screenshots

    Last edited by mrpeachy; June 29th, 2012 at 08:11 PM.

  5. #20125
    Join Date
    Jan 2008
    Beans
    130

    Re: Post your .conkyrc files w/ screenshots

    Mr peachy is right. Radar is his and it IS cool. I like it, thank you! Props given. Here's the bargraph_small.lua. Your's WILL be different and will require some modification to reflect your hard drives. I did add a cpu temp meter to mine as well.


    Code:
    --[[
    BARGRAPH WIDGET
    v2.1 by wlourf (07 Jan. 2011)
    this widget draws a bargraph with different effects 
    http://u-scripts.blogspot.com/2010/07/bargraph-widget.html
    	
    To call the script in a conky, use, before TEXT
    	lua_load /path/to/the/script/bargraph.lua
    	lua_draw_hook_pre main_rings
    and add one line (blank or not) after TEXT
    	
    Parameters are :
    3 parameters are mandatory
    name - the name of the conky variable to display, for example for {$cpu cpu0}, just write name="cpu"
    arg  - the argument of the above variable, for example for {$cpu cpu0}, just write arg="cpu0"
           arg can be a numerical value if name=""
    max  - the maximum value the above variable can reach, for example, for {$cpu cpu0}, just write max=100
    	
    Optional parameters:
    x,y	  - coordinates of the starting point of the bar, default = middle of the conky window
    cap	  - end of cap line, ossibles values are r,b,s (for round, butt, square), default="b"
    	    http://www.cairographics.org/samples/set_line_cap/
    angle	  - angle of rotation of the bar in degress, default = 0 (i.e. a vertical bar)
    	    set to 90 for an horizontal bar
    skew_x	  - skew bar around x axis, default = 0
    skew_y	  - skew bar around y axis, default = 0
    blocks    - number of blocks to display for a bar (values >0) , default= 10
    height	  - height of a block, default=10 pixels
    width	  - width of a block, default=20 pixels
    space	  - space between 2 blocks, default=2 pixels
    angle_bar - this angle is used to draw a bar on a circular way (ok, this is no more a bar !) default=0
    radius	  - for cicular bars, internal radius, default=0
    	    with radius, parameter width has no more effect.
    
    Colours below are defined into braces {colour in hexadecimal, alpha}
    fg_colour    - colour of a block ON, default= {0x00FF00,1}
    bg_colour    - colour of a block OFF, default = {0x00FF00,0.5}
    alarm	     - threshold, values after this threshold will use alarm_colour colour , default=max
    alarm_colour - colour of a block greater than alarm, default=fg_colour
    smooth	     - (true or false), create a gradient from fg_colour to bg_colour, default=false 
    mid_colour   - colours to add to gradient, with this syntax {position into the gradient (0 to1), colour hexa, alpha}
    	       for example, this table {{0.25,0xff0000,1},{0.5,0x00ff00,1},{0.75,0x0000ff,1}} will add
    	       3 colours to gradient created by fg_colour and alarm_colour, default=no mid_colour
    led_effect   - add LED effects to each block, default=no led_effect
    	       if smooth=true, led_effect is not used
    	       possibles values : "r","a","e" for radial, parallel, perdendicular to the bar (just try!)
    	       led_effect has to be used with theses colours :
    fg_led	     - middle colour of a block ON, default = fg_colour
    bg_led	     - middle colour of a block OFF, default = bg_colour
    alarm_led    - middle colour of a block > ALARM,  default = alarm_colour
    
    reflection parameters, not available for circular bars
    reflection_alpha  - add a reflection effect (values from 0 to 1) default = 0 = no reflection
    		    other values = starting opacity
    reflection_scale  - scale of the reflection (default = 1 = height of text)
    reflection_length - length of reflection, define where the opacity will be set to zero
    		    values from 0 to 1, default =1
    reflection	  - position of reflection, relative to a vertical bar, default="b"
    		    possibles values are : "b","t","l","r" for bottom, top, left, right
    draw_me     	  - if set to false, text is not drawn (default = true or 1)
    		    it can be used with a conky string, if the string returns 1, the text is drawn :
    		    example : "${if_empty ${wireless_essid wlan0}}${else}1$endif",
    
    v1.0 (10 Feb. 2010) original release
    v1.1 (13 Feb. 2010) numeric values can be passed instead conky stats with parameters name="", arg = numeric_value	
    v1.2 (28 Feb. 2010) just renamed the widget to bargraph
    v1.3 (03 Mar. 2010) added parameters radius & angle_bar to draw the bar in a circular way
    v2.0 (12 Jul. 2010) rewrite script + add reflection effects and parameters are now set into tables
    v2.1 (07 Jan. 2011) Add draw_me parameter and correct memory leaks, thanks to "Creamy Goodness"
    
    --      This program is free software; you can redistribute it and/or modify
    --      it under the terms of the GNU General Public License as published by
    --      the Free Software Foundation version 3 (GPLv3)
    --     
    --      This program is distributed in the hope that it will be useful,
    --      but WITHOUT ANY WARRANTY; without even the implied warranty of
    --      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    --      GNU General Public License for more details.
    --     
    --      You should have received a copy of the GNU General Public License
    --      along with this program; if not, write to the Free Software
    --      Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
    --      MA 02110-1301, USA.		
    
    ]]
    
    require 'cairo'
    
    ----------------START OF PARAMETERS ----------
    function conky_main_bars()
    	local bars_settings={
    		{	--[ Graph for CPU1 ]--
    			name="cpu",
    			arg="cpu1",
    			max=100,
    			alarm=50,
    			alarm_colour={0xFF0000,0.60},
    			bg_colour={0xFFFFFF,0.20},
    			fg_colour={0x00FF00,0.55},
    			mid_colour={{0.45,0xFFFF00,0.70}},
    			x=31,y=290,
    			blocks=18,
                            space=2,
    			height=10,width=4,
    			angle=90,
                            smooth=true
    			},
                   {	--[ Graph for hwmon temp 1 ]--
    			name="hwmon temp 1",
    			arg="hwmon temp 1",
    			max=100,
    			alarm=50,
    			alarm_colour={0xFF0000,0.60},
    			bg_colour={0xFFFFFF,0.20},
    			fg_colour={0x00FF00,0.55},
    			mid_colour={{0.45,0xFFFF00,0.70}},
    			x=31,y=312,
    			blocks=18,
                            space=2,
    			height=10,width=4,
    			angle=90,
                            smooth=true
    			},
    		{	--[ Graph for Memory ]--
    			name="memperc",
    			arg="",
    			max=100,
    			alarm=50,
    			alarm_colour={0xFF0000,0.60},
    			bg_colour={0xFFFFFF,0.20},
    			fg_colour={0x00FF00,0.55},
    			mid_colour={{0.45,0xFFFF00,0.70}},
    			x=30,y=346,
    			blocks=18,
    			space=2,
    			height=10,width=4,
    			angle=90,
    			smooth=true
    			},
    		{	--[ Graph for Root ]--
                            name="fs_used_perc",
    			arg="/",
    			max=100,
    			alarm=50,
    			alarm_colour={0xFF0000,0.60},
    			bg_colour={0xFFFFFF,.20},
    			fg_colour={0x00FF00,0.50},
    			mid_colour={{0.45,0xFFFF00,0.70}},
    			x=31,y=381,
    			blocks=18,
    			space=2,
    			height=10,width=4,
    			angle=90,
    			smooth=true
    			},		
                    {	--[ Graph for WinXP ]--
    			name="fs_used_perc",
    			arg="/media/1CB8948DB89466D4",
    			max=100,
    			alarm=50,
    			alarm_colour={0xFF0000,0.60},
    			bg_colour={0xFFFFFF,0.20},
    			fg_colour={0x00FF00,0.50},
    			mid_colour={{0.45,0xFFFF00,0.70}},
    			x=31,y=408,
    			blocks=18,
    			space=2,
    			height=10,width=4,
    			angle=90,
    			smooth=true
    			},
                   {	--[ Graph for NetDisc ]--
                            name="fs_used_perc",
    			arg="/media/NetDisk",
    			max=100,
    			alarm=50,
    			alarm_colour={0xFF0000,0.60},
    			bg_colour={0xFFFFFF,0.20},
    			fg_colour={0x00FF00,0.50},
    			mid_colour={{0.45,0xFFFF00,0.70}},
    			x=31,y=435,
    			blocks=18,
    			space=2,
    			height=10,width=4,
    			angle=90,
    			smooth=true
    			},
                   {	--[ Graph for NewVolume ]--
                            name="fs_used_perc",
    			arg="/media/NewVolume",
    			max=100,
    			alarm=50,
    			alarm_colour={0xFF0000,0.60},
    			bg_colour={0xFFFFFF,0.20},
    			fg_colour={0x00FF00,0.50},
    			mid_colour={{0.45,0xFFFF00,0.70}},
    			x=31,y=462,
    			blocks=18,
    			space=2,
    			height=10,width=4,
    			angle=90,
    			smooth=true
    			},
    		 }	
    -----------END OF PARAMETERS--------------
    
    
        
    	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)
    	
    	cr = cairo_create(cs)    
    	--prevent segmentation error when reading cpu state
        if tonumber(conky_parse('${updates}'))>3 then
            for i in pairs(bars_settings) do
            	
            	draw_multi_bar_graph(bars_settings[i])
            	
            end
        end
    	cairo_destroy(cr)
    	cairo_surface_destroy(cs)
    	cr=nil
    
    end
    
    
    
    function draw_multi_bar_graph(t)
    	cairo_save(cr)
    	--check values
    	if t.draw_me == true then t.draw_me = nil end
    	if t.draw_me ~= nil and conky_parse(tostring(t.draw_me)) ~= "1" then return end	
    	if t.name==nil and t.arg==nil then 
    		print ("No input values ... use parameters 'name' with 'arg' or only parameter 'arg' ") 
    		return
    	end
    	if t.max==nil then
    		print ("No maximum value defined, use 'max'")
    		return
    	end
    	if t.name==nil then t.name="" end
    	if t.arg==nil then t.arg="" end
    
    	--set default values	
    	if t.x == nil		then t.x = conky_window.width/2 end
    	if t.y == nil		then t.y = conky_window.height/2 end
    	if t.blocks == nil	then t.blocks=10 end
    	if t.height == nil	then t.height=10 end
    	if t.angle == nil 	then t.angle=0 end
    	t.angle = t.angle*math.pi/180
    	--line cap style
    	if t.cap==nil		then t.cap = "b" end
    	local cap="b"
    	for i,v in ipairs({"s","r","b"}) do 
    		if v==t.cap then cap=v end
    	end
    	local delta=0
    	if t.cap=="r" or t.cap=="s" then delta = t.height end
    	if cap=="s" then 	cap = CAIRO_LINE_CAP_SQUARE
    	elseif cap=="r" then
    		cap = CAIRO_LINE_CAP_ROUND
    	elseif cap=="b" then
    		cap = CAIRO_LINE_CAP_BUTT
    	end
    	--end line cap style
    	--if t.led_effect == nil	then t.led_effect="r" end
    	if t.width == nil	then t.width=20 end
    	if t.space == nil	then t.space=2 end
    	if t.radius == nil	then t.radius=0 end
    	if t.angle_bar == nil	then t.angle_bar=0 end
    	t.angle_bar = t.angle_bar*math.pi/360 --halt angle
    	
    	--colours
    	if t.bg_colour == nil 	then t.bg_colour = {0x00FF00,0.5} end
    	if #t.bg_colour~=2 		then t.bg_colour = {0x00FF00,0.5} end
    	if t.fg_colour == nil 	then t.fg_colour = {0x00FF00,1} end
    	if #t.fg_colour~=2 		then t.fg_colour = {0x00FF00,1} end
    	if t.alarm_colour == nil 	then t.alarm_colour = t.fg_colour end
    	if #t.alarm_colour~=2 		then t.alarm_colour = t.fg_colour end
    
    	if t.mid_colour ~= nil then	
    		for i=1, #t.mid_colour do    
    		    if #t.mid_colour[i]~=3 then 
    		    	print ("error in mid_color table")
    		    	t.mid_colour[i]={1,0xFFFFFF,1} 
    		    end
    		end
        end
        
    	if t.bg_led ~= nil and #t.bg_led~=2	then t.bg_led = t.bg_colour end
    	if t.fg_led ~= nil and #t.fg_led~=2	then t.fg_led = t.fg_colour end
    	if t.alarm_led~= nil and #t.alarm_led~=2 then t.alarm_led = t.fg_led end
    	
    	if t.led_effect~=nil then
    		if t.bg_led == nil then t.bg_led = t.bg_colour end
    		if t.fg_led == nil 	then t.fg_led = t.fg_colour end
    		if t.alarm_led == nil  then t.alarm_led = t.fg_led end
    	end
    	
    
    	if t.alarm==nil then t.alarm = t.max end --0.8*t.max end
    	if t.smooth == nil then t.smooth = false end
    
    	if t.skew_x == nil then 
    		t.skew_x=0 
    	else
    		t.skew_x = math.pi*t.skew_x/180	
    	end
    	if t.skew_y == nil then 
    		t.skew_y=0
    	else
    		t.skew_y = math.pi*t.skew_y/180	
    	end
    	
    	if t.reflection_alpha==nil then t.reflection_alpha=0 end
    	if t.reflection_length==nil then t.reflection_length=1 end
    	if t.reflection_scale==nil then t.reflection_scale=1 end
    	
    	--end of default values
    	
    
     	local function rgb_to_r_g_b(col_a)
    		return ((col_a[1] / 0x10000) % 0x100) / 255., ((col_a[1] / 0x100) % 0x100) / 255., (col_a[1] % 0x100) / 255., col_a[2]
    	end
    	
    	
    	--functions used to create patterns
    
    	local function create_smooth_linear_gradient(x0,y0,x1,y1)
    		local pat = cairo_pattern_create_linear (x0,y0,x1,y1)
    		cairo_pattern_add_color_stop_rgba (pat, 0, rgb_to_r_g_b(t.fg_colour))
    		cairo_pattern_add_color_stop_rgba (pat, 1, rgb_to_r_g_b(t.alarm_colour))
    		if t.mid_colour ~=nil then
    			for i=1, #t.mid_colour do
    				cairo_pattern_add_color_stop_rgba (pat, t.mid_colour[i][1], rgb_to_r_g_b({t.mid_colour[i][2],t.mid_colour[i][3]}))
    			end
    		end
    		return pat
    	end
    
    	local function create_smooth_radial_gradient(x0,y0,r0,x1,y1,r1)
    		local pat =  cairo_pattern_create_radial (x0,y0,r0,x1,y1,r1)
    		cairo_pattern_add_color_stop_rgba (pat, 0, rgb_to_r_g_b(t.fg_colour))
    		cairo_pattern_add_color_stop_rgba (pat, 1, rgb_to_r_g_b(t.alarm_colour))
    		if t.mid_colour ~=nil then
    			for i=1, #t.mid_colour do
    				cairo_pattern_add_color_stop_rgba (pat, t.mid_colour[i][1], rgb_to_r_g_b({t.mid_colour[i][2],t.mid_colour[i][3]}))
    			end
    		end
    		return pat
    	end
    	
    	local function create_led_linear_gradient(x0,y0,x1,y1,col_alp,col_led)
    		local pat = cairo_pattern_create_linear (x0,y0,x1,y1) ---delta, 0,delta+ t.width,0)
    		cairo_pattern_add_color_stop_rgba (pat, 0.0, rgb_to_r_g_b(col_alp))
    		cairo_pattern_add_color_stop_rgba (pat, 0.5, rgb_to_r_g_b(col_led))
    		cairo_pattern_add_color_stop_rgba (pat, 1.0, rgb_to_r_g_b(col_alp))
    		return pat
    	end
    
    	local function create_led_radial_gradient(x0,y0,r0,x1,y1,r1,col_alp,col_led,mode)
    		local pat = cairo_pattern_create_radial (x0,y0,r0,x1,y1,r1)
    		if mode==3 then
    			cairo_pattern_add_color_stop_rgba (pat, 0, rgb_to_r_g_b(col_alp))				
    			cairo_pattern_add_color_stop_rgba (pat, 0.5, rgb_to_r_g_b(col_led))
    			cairo_pattern_add_color_stop_rgba (pat, 1, rgb_to_r_g_b(col_alp))				
    		else
    			cairo_pattern_add_color_stop_rgba (pat, 0, rgb_to_r_g_b(col_led))
    			cairo_pattern_add_color_stop_rgba (pat, 1, rgb_to_r_g_b(col_alp))				
    		end
    		return pat
    	end
    
    
    
    
    
    
    	local function draw_single_bar()
    		--this fucntion is used for bars with a single block (blocks=1) but 
    		--the drawing is cut in 3 blocks : value/alarm/background
    		--not zvzimzblr for circular bar
    		local function create_pattern(col_alp,col_led,bg)
    			local pat
    			
    			if not t.smooth then
    				if t.led_effect=="e" then
    					pat = create_led_linear_gradient (-delta, 0,delta+ t.width,0,col_alp,col_led)
    				elseif t.led_effect=="a" then
    					pat = create_led_linear_gradient (t.width/2, 0,t.width/2,-t.height,col_alp,col_led)
    				elseif  t.led_effect=="r" then
    					pat = create_led_radial_gradient (t.width/2, -t.height/2, 0, t.width/2,-t.height/2,t.height/1.5,col_alp,col_led,2)
    				else
    					pat = cairo_pattern_create_rgba  (rgb_to_r_g_b(col_alp))
    				end
    			else
    				if bg then
    					pat = cairo_pattern_create_rgba  (rgb_to_r_g_b(t.bg_colour))
    				else
    					pat = create_smooth_linear_gradient(t.width/2, 0, t.width/2,-t.height)
    				end
    			end
    			return pat
    		end
    		
    		local y1=-t.height*pct/100
    		local y2,y3
    		if pct>(100*t.alarm/t.max) then 
    			y1 = -t.height*t.alarm/100
    			y2 = -t.height*pct/100
    			if t.smooth then y1=y2 end
    		end
    		
    		if t.angle_bar==0 then
    		
    			--block for fg value
    			local pat = create_pattern(t.fg_colour,t.fg_led,false)
    			cairo_set_source(cr,pat)
    			cairo_rectangle(cr,0,0,t.width,y1)
    			cairo_fill(cr)
    			cairo_pattern_destroy(pat)
    		
    			-- block for alarm value			
    			if not t.smooth and y2 ~=nil then 
    				pat = create_pattern(t.alarm_colour,t.alarm_led,false)
    				cairo_set_source(cr,pat)
    				cairo_rectangle(cr,0,y1,t.width,y2-y1)
    				cairo_fill(cr)
    				y3=y2
    				cairo_pattern_destroy(pat)
    			else
    				y2,y3=y1,y1
    			end
    			-- block for bg value
    			cairo_rectangle(cr,0,y2,t.width,-t.height-y3)
    			pat = create_pattern(t.bg_colour,t.bg_led,true)
    			cairo_set_source(cr,pat)
    			cairo_pattern_destroy(pat)
    			cairo_fill(cr)
    		end		
    	end  --end single bar
    	
    
    
    
    
    
    	local function draw_multi_bar()
    		--function used for bars with 2 or more blocks
    		for pt = 1,t.blocks do 
    			--set block y
    			local y1 = -(pt-1)*(t.height+t.space)
    			local light_on=false
    			
    			--set colors
    			local col_alp = t.bg_colour
    			local col_led = t.bg_led
    			if pct>=(100/t.blocks) or pct>0 then --ligth on or not the block
    				if pct>=(pcb*(pt-1))  then 
    					light_on = true
    					col_alp = t.fg_colour
    					col_led = t.fg_led
    					if pct>=(100*t.alarm/t.max) and (pcb*pt)>(100*t.alarm/t.max) then 
    						col_alp = t.alarm_colour 
    						col_led = t.alarm_led 
    					end
    				end
    			end
    
    			--set colors
    			--have to try to create gradients outside the loop ?
    			local pat 
    			
    			if not t.smooth then
    				if t.angle_bar==0 then
    					if t.led_effect=="e" then
    						pat = create_led_linear_gradient (-delta, 0,delta+ t.width,0,col_alp,col_led)
    					elseif t.led_effect=="a" then
    						pat = create_led_linear_gradient (t.width/2, -t.height/2+y1,t.width/2,0+t.height/2+y1,col_alp,col_led)					
    					elseif  t.led_effect=="r" then
    						pat = create_led_radial_gradient (t.width/2, y1, 0, t.width/2,y1,t.width/1.5,col_alp,col_led,2)	
    					else
    						pat = cairo_pattern_create_rgba  (rgb_to_r_g_b(col_alp))
    					end
    				else
    					 if t.led_effect=="a"  then
    						 pat = create_led_radial_gradient (0, 0, t.radius+(t.height+t.space)*(pt-1),
    														 0, 0, t.radius+(t.height+t.space)*(pt),						 
    											 col_alp,col_led,3)	
    					else
    						pat = cairo_pattern_create_rgba  (rgb_to_r_g_b(col_alp))					
    					end
    					
    				end
    			else
    				
    				if light_on then
    					if t.angle_bar==0 then
    						pat = create_smooth_linear_gradient(t.width/2, t.height/2, t.width/2,-(t.blocks-0.5)*(t.height+t.space))
    					else
    						pat = create_smooth_radial_gradient(0, 0, (t.height+t.space),  0,0,(t.blocks+1)*(t.height+t.space),2)
    					end
    				else		
    					pat = cairo_pattern_create_rgba  (rgb_to_r_g_b(t.bg_colour))
    				end
    			end
    			cairo_set_source (cr, pat)
    			cairo_pattern_destroy(pat)
    
    			--draw a block
    			if t.angle_bar==0 then
    				cairo_move_to(cr,0,y1)
    				cairo_line_to(cr,t.width,y1)
    			else		
    				cairo_arc( cr,0,0,
    					t.radius+(t.height+t.space)*(pt)-t.height/2,
    					 -t.angle_bar -math.pi/2 ,
    					 t.angle_bar -math.pi/2)
    			end
    			cairo_stroke(cr)
    		end	
    	end
    	
    	
    	
    	
    	local function setup_bar_graph()
    		--function used to retrieve the value to display and to set the cairo structure
    		if t.blocks ~=1 then t.y=t.y-t.height/2 end
    		
    		local value = 0
    		if t.name ~="" then
    			value = tonumber(conky_parse(string.format('${%s %s}', t.name, t.arg)))
    			--$to_bytes doesn't work when value has a decimal point,
    			--https://garage.maemo.org/plugins/ggit/browse.php/?p=monky;a=commitdiff;h=174c256c81a027a2ea406f5f37dc036fac0a524b;hp=d75e2db5ed3fc788fb8514121f67316ac3e5f29f
    			--http://sourceforge.net/tracker/index.php?func=detail&aid=3000865&group_id=143975&atid=757310
    			--conky bug?
    			--value = (conky_parse(string.format('${%s %s}', t.name, t.arg)))
    			--if string.match(value,"%w") then
    			--	value = conky_parse(string.format('${to_bytes %s}',value))
    			--end
    		else
    			value = tonumber(t.arg)
    		end
    
    		if value==nil then value =0 end
    		
    		pct = 100*value/t.max
    		pcb = 100/t.blocks
    		
    		cairo_set_line_width (cr, t.height)
    		cairo_set_line_cap  (cr, cap)
    		cairo_translate(cr,t.x,t.y)
    		cairo_rotate(cr,t.angle)
    
    		local matrix0 = cairo_matrix_t:create()
    		tolua.takeownership(matrix0)
    		cairo_matrix_init (matrix0, 1,t.skew_y,t.skew_x,1,0,0)
    		cairo_transform(cr,matrix0)
    
    	
    		
    		--call the drawing function for blocks
    		if t.blocks==1 and t.angle_bar==0 then
    			draw_single_bar()
    			if t.reflection=="t" or t.reflection=="b" then cairo_translate(cr,0,-t.height) end
    		else
    			draw_multi_bar()
    		end
    
    		--dot for reminder
    		--[[
    		if t.blocks ~=1 then
    			cairo_set_source_rgba(cr,1,0,0,1)
    			cairo_arc(cr,0,t.height/2,3,0,2*math.pi)
    			cairo_fill(cr)
    		else
    			cairo_set_source_rgba(cr,1,0,0,1)
    			cairo_arc(cr,0,0,3,0,2*math.pi)
    			cairo_fill(cr)
    		end]]
    		
    		--call the drawing function for reflection and prepare the mask used		
    		if t.reflection_alpha>0 and t.angle_bar==0 then
    			local pat2
    			local matrix1 = cairo_matrix_t:create()
    			tolua.takeownership(matrix1)
    			if t.angle_bar==0 then
    				pts={-delta/2,(t.height+t.space)/2,t.width+delta,-(t.height+t.space)*(t.blocks)}
    				if t.reflection=="t" then
    					cairo_matrix_init (matrix1,1,0,0,-t.reflection_scale,0,-(t.height+t.space)*(t.blocks-0.5)*2*(t.reflection_scale+1)/2)
    					pat2 = cairo_pattern_create_linear (t.width/2,-(t.height+t.space)*(t.blocks),t.width/2,(t.height+t.space)/2)
    				elseif t.reflection=="r" then
    					cairo_matrix_init (matrix1,-t.reflection_scale,0,0,1,delta+2*t.width,0)
    					pat2 = cairo_pattern_create_linear (delta/2+t.width,0,-delta/2,0)
    				elseif t.reflection=="l" then
    					cairo_matrix_init (matrix1,-t.reflection_scale,0,0,1,-delta,0)
    					pat2 = cairo_pattern_create_linear (-delta/2,0,delta/2+t.width,-0)
    				else --bottom
    					cairo_matrix_init (matrix1,1,0,0,-1*t.reflection_scale,0,(t.height+t.space)*(t.reflection_scale+1)/2)
    					pat2 = cairo_pattern_create_linear (t.width/2,(t.height+t.space)/2,t.width/2,-(t.height+t.space)*(t.blocks))
    				end
    			end
    			cairo_transform(cr,matrix1)
    
    			if t.blocks==1 and t.angle_bar==0 then
    				draw_single_bar()
    				cairo_translate(cr,0,-t.height/2) 
    			else
    				draw_multi_bar()
    			end
    			
    			
    			cairo_set_line_width(cr,0.01)
    			cairo_pattern_add_color_stop_rgba (pat2, 0,0,0,0,1-t.reflection_alpha)
    			cairo_pattern_add_color_stop_rgba (pat2, t.reflection_length,0,0,0,1)
    			if t.angle_bar==0 then
    				cairo_rectangle(cr,pts[1],pts[2],pts[3],pts[4])
    			end
    			cairo_clip_preserve(cr)
    			cairo_set_operator(cr,CAIRO_OPERATOR_CLEAR)
    			cairo_stroke(cr)
    			cairo_mask(cr,pat2)
    			cairo_pattern_destroy(pat2)
    			cairo_set_operator(cr,CAIRO_OPERATOR_OVER)
    			
    		end --reflection
    		pct,pcb=nil
    	end --setup_bar_graph()
    	
    	--start here !
    	setup_bar_graph()
    	cairo_restore(cr)
    end

  6. #20126
    Join Date
    Jan 2008
    Beans
    130

    Re: Post your .conkyrc files w/ screenshots

    ...I think I'll just set this right here...
    Props to VinDSL, Tobigusgeekus, Wlourf, and MrPeachy

    Screenshot-1.jpg

    starter script:
    Code:
    #!/bin/bash
    
    
    sleep 1
    conky -c /home/davejr/.conky/MyConkyLatest/newconkyrc &
    
    exit 0
    the Conky:
    Code:
    ####
    ## Use XFT? Required to Force UTF8 (see below).
    #
    use_xft yes
    xftfont LiberationSans:size=8.85
    xftalpha 0.7
    text_buffer_size 2048
    
    ####
    ## Force UTF8? Requires XFT (see above).
    ## Displays degree symbol, instead of °, etc.
    #
    override_utf8_locale yes
    
    ####
    ## Update interval in seconds.
    #
    update_interval 1
    music_player_interval 1
    ####
    ## This is the number of times Conky will update before quitting.
    ## Set to zero to run forever.
    #
    total_run_times 0
    
    ####
    ## Create own window instead of using desktop (required in nautilus)?
    #
    own_window yes
    own_window_transparent no
    own_window_type override
    #own_window_hints undecorated,below,sticky,skip_taskbar,skip_pager
    #own_window_title conky
    
    
    ####
    ## Use double buffering? Reduces flicker.
    #
    double_buffer yes
    
    ####
    ## Draw shades?
    #
    draw_shades yes
    default_shade_color 292421
    draw_outline no
    draw_graph_borders no
    
    
    ####
    ## Draw outlines?
    #
    draw_outline no
    
    ####
    ## Draw borders around text?
    #
    draw_borders no
    
    
    ####
    ## Print text to stdout?
    ## Print text in console?
    #
    out_to_ncurses no
    out_to_console no
    
    ####
    ## Text alignment.
    #
    alignment top_right
    
    ####
    ## Minimum size of text area.
    #
    maximum_width 246
    
    ####
    ## Gap between text and screen borders.
    #
    gap_x 0
    gap_y 24
    
    ####
    ## Shorten MiB/GiB to M/G in stats.
    #
    short_units yes
    
    ####
    ## Pad % symbol spacing after numbers.
    #
    pad_percents 0
    
    ####
    ## Pad spacing between text and borders.
    #
    border_inner_margin 4
    
    ####
    ## Limit the length of names in "Top Processes".
    #
    top_name_width 10
    
    ####
    ## Subtract file system -/+buffers/cache from used memory?
    ## Set to yes, to produce meaningful physical memory stats.
    #
    no_buffers yes
    
    ####
    ## Set to yes, if you want all text to be in UPPERCASE.
    #
    uppercase no
    
    ####
    ## Number of cpu samples to average.
    ## Set to 1 to disable averaging.
    #
    cpu_avg_samples 2
    
    ####
    ## Number of net samples to average.
    ## Set to 1 to disable averaging.
    #
    net_avg_samples 2
    
    ####
    ## My colors (suit yourself)
    #
    color0 White            #FFFFFF
    color1 Ivory            #FFFFF0
    color2 Ivory2           #EEEEE0
    color3 Ivory3           #CDCDC1
    color4 Tan1             #FFA54F
    color5 Tan2             #EE9A49
    color6 Gray             #7E7E7E
    color7 AntiqueWhite4    #8B8378
    color8 DimGray          #696969
    color9 Tomato           #FF6347
    
    
    ####
    ## Load Lua for shading (optional).
    ## Set the path to your script here.
    #
    
    lua_load /home/davejr/.conky/MyConkyLatest/bargraph_small.lua
    lua_draw_hook_post main_bars
    
    lua_load /home/davejr/.conky/MyConkyLatest/Radar/radartest.lua
    lua_draw_hook_pre radar
    
    TEXT
    ####     LOGO     ####
    ${voffset -33}${font OpenLogos:size=100}${color0}v${voffset -67}${font Arial:bold:size=18}${color5}${pre_exec cat /etc/*release | grep 'RELEASE' | awk -F'=' '{print $2}'}${font}
    ####     TIME     ####
    ${voffset 20}${font Arial:bold:size=8.75}${color4}TIME&DATE${offset 8}${color8}${voffset -2}${hr 2}${font}
    ${voffset 1}${if_match ${time %l}<=9}${voffset -4}${font RadioSpace:size=32}${color3}${alignc 7}${time %l:%M%p}${font}${else}${if_match ${time %l}>=10}${voffset -4}${font RadioSpace:size=32}${color3}${alignc -1}${time %l:%M%p}${font}${endif}${endif}
    ####   CALENDAR   ####
    ${voffset 18}${font LiberationMono:size=8}${color1}${alignc 75}${time %A}${font}
    ${voffset -3}${if_match ${time %e}<=9}${font LiberationMono:size=22}${color4}${alignc 83}${time %e}${font}${else}${if_match ${time %e}>=10}${font LiberationMono:size=22}${color9}${alignc 75}${time %e}${font}${endif}${endif}
    ${voffset -1}${font LiberationMono:size=8}${color1}${alignc 75}${time %B}${font}
    ${voffset -3}${font LiberationMono:size=8}${color1}${alignc 73}${time %Y}${font}
    ${voffset -80}${font LiberationMono:size=9}${color1}${execpi 60 VinDSL_Cal_5=`date +%-d`; cal | sed '1d' | sed s/^/"\$\{offset 90"\}/ | sed '/^ *$/d' | sed 's/\<'"$VinDSL_Cal_5"'\>/${color9}&${color3}/'}${font}
    ${voffset -100}${font CutOutsFor3DFX:size=64}${color8}${alignc 110}2${font}
    ####    SYSTEM    ####
    ${voffset 18}${font Arial:bold:size=8.75}${color4}SYSTEM${offset 8}${color8}${voffset -2}${hr 2}${font}
    ${voffset 4}${font OpenLogos:size=10}${color2}u${voffset -4}${font}${color1}${offset 5}${sysname}${offset 5}${kernel}${alignr}${machine}
    ${voffset 2}${font StyleBats:size=10}${color2}q${voffset -1}${font}${color1}${offset 5}Uptime${alignr}${uptime}
    ${voffset 2}${font StyleBats:size=10}${color2}o${voffset -1}${font}${color1}${offset 5}File${offset 3}System${alignr}${fs_type}
    ####  PROCESSORS  ####
    ${voffset 4}${font Arial:bold:size=8.75}${color4}PROCESSORS${offset 8}${color8}${voffset -2}${hr 2}${font}
    ${voffset 4}${font StyleBats:size=14}${color2}A${voffset -7}${font}${color1}${offset 5}AMD${offset 3}Athlon64 ${cpu cpu1}%${alignr}${freq_g cpu0}${offset 1}GHz
    ${voffset 8}${goto 10}${font Weather:size=16}${color0}y ${font}${voffset -7}${goto 25}CPU Temp:${hwmon temp 1}ºC
    ####    MEMORY    ####
    ${voffset 6}${font Arial:bold:size=8.75}${color4}MEMORY${offset 8}${color8}${voffset -2}${hr 2}${font}
    ${voffset 4}${font StyleBats:size=14}${color2}k${voffset -6}${font}${color1}${offset 3}RAM${goto 97}${mem}${goto 133}/${offset 5}${memmax}${alignr}${memperc}%
    ####     HDD      ####
    ${voffset 6}${font Arial:bold:size=8.75}${color4}HDD${offset 8}${color8}${voffset -2}${hr 2}${font}
    ${voffset 4}${font StyleBats:size=14}${color2}x${voffset -6}${font}${color1}${offset 4}LINUX${goto 95}${fs_used /}${goto 133}/${offset 5}${fs_size /}${alignr}${fs_used_perc /}%
    
    ${voffset 1}${font StyleBats:size=14}${color2}x${voffset -6}${font}${color1}${offset 4}WinXP${goto 95}${fs_used /media/1CB8948DB89466D4}${goto 133}/${offset 5}${fs_size /media/1CB8948DB89466D4}${alignr}${fs_used_perc /media/1CB8948DB89466D4}%
    
    ${voffset 1}${font StyleBats:size=14}${color2}x${voffset -6}${font}${color1}${offset 4}NetDisk${goto 95}${fs_used /media/NetDisk}${goto 133}/${offset 5}${fs_size /media/NetDisk}${alignr}${fs_used_perc /media/NetDisk}%
    
    ${voffset 1}${font StyleBats:size=14}${color2}x${voffset -6}${font}${color1}${offset 4}NewVolume${goto 95}${fs_used /media/NewVolume}${goto 133}/${offset 5}${fs_size /media/NewVolume}${alignr}${fs_used_perc /media/NewVolume}%
    
    #### TOP PROCESSES ####
    ${voffset 1}${font Arial:bold:size=8.75}${color4}TOP PROCESSES${offset 8}${color8}${voffset -2}${hr 2}${font}
    ${voffset 4}${font StyleBats:size=10}${color1}h${voffset -3}${font}${color1}${offset 5}${top_mem name 1}${goto 115}${top_mem mem_res 1}${alignr}${top_mem mem 1}%
    ${voffset 2}${font StyleBats:size=10}${color1}h${voffset -3}${font}${color1}${offset 5}${top_mem name 2}${goto 115}${top_mem mem_res 2}${alignr}${top_mem mem 2}%
    ${voffset 2}${font StyleBats:size=10}${color1}h${voffset -3}${font}${color1}${offset 5}${top_mem name 3}${goto 115}${top_mem mem_res 3}${alignr}${top_mem mem 3}%
    ${voffset 2}${font StyleBats:size=10}${color1}h${voffset -3}${font}${color1}${offset 5}${top_mem name 4}${goto 115}${top_mem mem_res 4}${alignr}${top_mem mem 4}%
    ####   NETWORK    ####
    ${voffset 4}${font Arial:bold:size=8.75}${color4}NETWORK${offset 8}${color8}${voffset -2}${hr 2}${font}
    ${voffset 6}${font PizzaDudeBullets:size=14}${color1}T${font}${color1}${offset 5}${voffset -7}Down${goto 115}${downspeed eth0}
    ${font}${goto 25}${color1}${voffset -2}${offset 5}Downloaded${goto 115}${totaldown eth0}${voffset -15}${downspeedgraph eth0 20,100 ff0000 0000ff}
    ${font PizzaDudeBullets:size=14}${color1}N${font}${color1}${voffset -6}${offset 5}Up${goto 115}${upspeed eth0}
    ${font}${color1}${goto 25}${voffset -2}${offset 5}Uploaded${goto 115}${totalup eth0}${voffset -15}${upspeedgraph eth0 20,100 0000ff ff0000}
    ####   WEATHER    ####
    ${font Arial:bold:size=8.75}${color FFA54F}WEATHER${offset 8}${color 696969}${voffset -2}${hr 2}${font}
    ${texeci 60 bash /home/davejr/.conky/MyConkyLatest/Accuweather/acc_usa_images}
    ${goto 145}${voffset -15}$color${font Arial:size=10}${execpi 60 sed -n '3p' /home/davejr/.conky/MyConkyLatest/Accuweather/curr_cond}${font}
    ${voffset 13}${goto 145}${color FFA54F}TEMP:$color${alignr}${execpi 60 sed -n '4p' /home/davejr/.conky/MyConkyLatest/Accuweather/curr_cond}°F 
    ${goto 145}${color FFA54F}WIND:$color${alignr}${execpi 60 sed -n '6p' /home/davejr/.conky/MyConkyLatest/Accuweather/curr_cond} ${execpi 60 sed -n '14p' /home/davejr/.conky/MyConkyLatest/Accuweather/curr_cond}
    ${goto 145}${color FFA54F}HUM:$color${alignr}${execpi 60 sed -n '7p' /home/davejr/.conky/MyConkyLatest/Accuweather/curr_cond}
    ${goto 145}${color FFA54F}PRESS:$color${alignr}${execpi 60 sed -n '8p' /home/davejr/.conky/MyConkyLatest/Accuweather/curr_cond}
    ${goto 145}${color FFA54F}CLOUD CVR:$color${alignr}${execpi 60 sed -n '9p' /home/davejr/.conky/MyConkyLatest/Accuweather/curr_cond}
    ${goto 145}${color FFA54F}UV INDEX:$color${alignr 10}${execpi 60 sed -n '10p' /home/davejr/.conky/MyConkyLatest/Accuweather/curr_cond}
    ${goto 145}${color FFA54F}DEW PNT:$color${alignr}${execpi 60 sed -n '11p' /home/davejr/.conky/MyConkyLatest/Accuweather/curr_cond}
    ${goto 145}${color FFA54F}VISIB.:$color${alignr}${execpi 60 sed -n '13p' /home/davejr/.conky/MyConkyLatest/Accuweather/curr_cond}
    
    ${voffset -10}${goto 20}${color FFA54F}SUNRISE:$color${goto 80}${execpi 600 sed -n '15p' /home/davejr/.conky/MyConkyLatest/Accuweather/curr_cond}${goto 140}${color FFA54F}SUNSET:$color${goto 195}${execpi 600 sed -n '16p' /home/davejr/.conky/MyConkyLatest/Accuweather/curr_cond}
    ${voffset -5}${color 696969}${hr 1}
    ${font Arial:size=9}${goto 18}${color FFA54F}${execpi 600 sed -n '6p' /home/davejr/.conky/MyConkyLatest/Accuweather/tod_ton}${goto 83}${execpi 600 sed -n '11p' /home/davejr/.conky/MyConkyLatest/Accuweather/tod_ton}${goto 143}${execpi 600 sed -n '16p' /home/davejr/.conky/MyConkyLatest/Accuweather/tod_ton}$color${goto 208}${font Arial:size=9}${color FFA54F}${execpi 600 sed -n '21p' /home/davejr/.conky/MyConkyLatest/Accuweather/tod_ton}$color
    
    
    ${voffset 5}${font Arial:size=8}${goto 15}H:${execpi 600 sed -n '9p' /home/davejr/.conky/MyConkyLatest/Accuweather/tod_ton}°F${goto 82}H:${execpi 600 sed -n '14p' /home/davejr/.conky/MyConkyLatest/Accuweather/tod_ton}°F${goto 143}H:${execpi 600 sed -n '19p' /home/davejr/.conky/MyConkyLatest/Accuweather/tod_ton}°F${font Arial:size=8}${goto 207}H:${execpi 600 sed -n '24p' /home/davejr/.conky/MyConkyLatest/Accuweather/tod_ton}°F
    ${font Arial:size=8}${goto 15}L:${execpi 600 sed -n '10p' /home/davejr/.conky/MyConkyLatest/Accuweather/tod_ton}°F${goto 82}L:${execpi 600 sed -n '15p' /home/davejr/.conky/MyConkyLatest/Accuweather/tod_ton}°F${goto 143}L:${execpi 600 sed -n '20p' /home/davejr/.conky/MyConkyLatest/Accuweather/tod_ton}°F${font Arial:size=8}${goto 207}L:${execpi 600 sed -n '25p' /home/davejr/.conky/MyConkyLatest/Accuweather/tod_ton}°F
    ####   MUSIC    ####
    ${voffset 4}${font Arial:bold:size=8.75}${color4}MUSIC${offset 8}${color8}${voffset -2}${hr 2}${font}
    ${if_running rhythmbox}
    ${voffset -10}${goto 15}${color4}${font}ARTIST:${goto 70}$color${exec rhythmbox-client --no-start --print-playing-format %aa}
    ${goto 15}${color4}${font}ALBUM:${goto 70}$color${exec rhythmbox-client --no-start --print-playing-format %at}
    ${goto 15}${color4}${font}SONG:${goto 70}$color${exec rhythmbox-client --no-start --print-playing-format %tt}
    ${voffset -2}${goto 15}${color8}${execibar 1 conkyRhythmbox --datatype=PP}‬
    ${goto 15}$color${exec rhythmbox-client --no-start --print-playing-format %te}${goto 125}${exec conkyRhythmbox --datatype=PP}%${alignr}${exec rhythmbox-client --no-start --print-playing-format %td}
    
    
    ${image /home/davejr/.conky/MyConkyLatest/Accuweather/cc.png -p 213,620 -s 30x30}
    ${image /home/davejr/.conky/MyConkyLatest/Accuweather/7.png -p 5,800 -s 40x40}
    ${image /home/davejr/.conky/MyConkyLatest/Accuweather/12.png -p 72,800 -s 40x40}
    ${image /home/davejr/.conky/MyConkyLatest/Accuweather/17.png -p 133,800 -s 40x40}
    ${image /home/davejr/.conky/MyConkyLatest/Accuweather/22.png -p 197,800 -s 40x40}
    the bargraph_small.lua:
    Code:
    --[[
    BARGRAPH WIDGET
    v2.1 by wlourf (07 Jan. 2011)
    this widget draws a bargraph with different effects 
    http://u-scripts.blogspot.com/2010/07/bargraph-widget.html
    	
    To call the script in a conky, use, before TEXT
    	lua_load /path/to/the/script/bargraph.lua
    	lua_draw_hook_pre main_rings
    and add one line (blank or not) after TEXT
    	
    Parameters are :
    3 parameters are mandatory
    name - the name of the conky variable to display, for example for {$cpu cpu0}, just write name="cpu"
    arg  - the argument of the above variable, for example for {$cpu cpu0}, just write arg="cpu0"
           arg can be a numerical value if name=""
    max  - the maximum value the above variable can reach, for example, for {$cpu cpu0}, just write max=100
    	
    Optional parameters:
    x,y	  - coordinates of the starting point of the bar, default = middle of the conky window
    cap	  - end of cap line, ossibles values are r,b,s (for round, butt, square), default="b"
    	    http://www.cairographics.org/samples/set_line_cap/
    angle	  - angle of rotation of the bar in degress, default = 0 (i.e. a vertical bar)
    	    set to 90 for an horizontal bar
    skew_x	  - skew bar around x axis, default = 0
    skew_y	  - skew bar around y axis, default = 0
    blocks    - number of blocks to display for a bar (values >0) , default= 10
    height	  - height of a block, default=10 pixels
    width	  - width of a block, default=20 pixels
    space	  - space between 2 blocks, default=2 pixels
    angle_bar - this angle is used to draw a bar on a circular way (ok, this is no more a bar !) default=0
    radius	  - for cicular bars, internal radius, default=0
    	    with radius, parameter width has no more effect.
    
    Colours below are defined into braces {colour in hexadecimal, alpha}
    fg_colour    - colour of a block ON, default= {0x00FF00,1}
    bg_colour    - colour of a block OFF, default = {0x00FF00,0.5}
    alarm	     - threshold, values after this threshold will use alarm_colour colour , default=max
    alarm_colour - colour of a block greater than alarm, default=fg_colour
    smooth	     - (true or false), create a gradient from fg_colour to bg_colour, default=false 
    mid_colour   - colours to add to gradient, with this syntax {position into the gradient (0 to1), colour hexa, alpha}
    	       for example, this table {{0.25,0xff0000,1},{0.5,0x00ff00,1},{0.75,0x0000ff,1}} will add
    	       3 colours to gradient created by fg_colour and alarm_colour, default=no mid_colour
    led_effect   - add LED effects to each block, default=no led_effect
    	       if smooth=true, led_effect is not used
    	       possibles values : "r","a","e" for radial, parallel, perdendicular to the bar (just try!)
    	       led_effect has to be used with theses colours :
    fg_led	     - middle colour of a block ON, default = fg_colour
    bg_led	     - middle colour of a block OFF, default = bg_colour
    alarm_led    - middle colour of a block > ALARM,  default = alarm_colour
    
    reflection parameters, not available for circular bars
    reflection_alpha  - add a reflection effect (values from 0 to 1) default = 0 = no reflection
    		    other values = starting opacity
    reflection_scale  - scale of the reflection (default = 1 = height of text)
    reflection_length - length of reflection, define where the opacity will be set to zero
    		    values from 0 to 1, default =1
    reflection	  - position of reflection, relative to a vertical bar, default="b"
    		    possibles values are : "b","t","l","r" for bottom, top, left, right
    draw_me     	  - if set to false, text is not drawn (default = true or 1)
    		    it can be used with a conky string, if the string returns 1, the text is drawn :
    		    example : "${if_empty ${wireless_essid wlan0}}${else}1$endif",
    
    v1.0 (10 Feb. 2010) original release
    v1.1 (13 Feb. 2010) numeric values can be passed instead conky stats with parameters name="", arg = numeric_value	
    v1.2 (28 Feb. 2010) just renamed the widget to bargraph
    v1.3 (03 Mar. 2010) added parameters radius & angle_bar to draw the bar in a circular way
    v2.0 (12 Jul. 2010) rewrite script + add reflection effects and parameters are now set into tables
    v2.1 (07 Jan. 2011) Add draw_me parameter and correct memory leaks, thanks to "Creamy Goodness"
    
    --      This program is free software; you can redistribute it and/or modify
    --      it under the terms of the GNU General Public License as published by
    --      the Free Software Foundation version 3 (GPLv3)
    --     
    --      This program is distributed in the hope that it will be useful,
    --      but WITHOUT ANY WARRANTY; without even the implied warranty of
    --      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    --      GNU General Public License for more details.
    --     
    --      You should have received a copy of the GNU General Public License
    --      along with this program; if not, write to the Free Software
    --      Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
    --      MA 02110-1301, USA.		
    
    ]]
    
    require 'cairo'
    
    ----------------START OF PARAMETERS ----------
    function conky_main_bars()
    	local bars_settings={
    		{	--[ Graph for CPU1 ]--
    			name="cpu",
    			arg="cpu1",
    			max=100,
    			alarm=50,
    			alarm_colour={0xFF0000,0.60},
    			bg_colour={0xFFFFFF,0.20},
    			fg_colour={0x00FF00,0.55},
    			mid_colour={{0.45,0xFFFF00,0.70}},
    			x=31,y=290,
    			blocks=18,
                            space=2,
    			height=10,width=4,
    			angle=90,
                            smooth=true
    			},
                   {	--[ Graph for hwmon temp 1 ]--
    			name="hwmon temp 1",
    			arg="hwmon temp 1",
    			max=100,
    			alarm=50,
    			alarm_colour={0xFF0000,0.60},
    			bg_colour={0xFFFFFF,0.20},
    			fg_colour={0x00FF00,0.55},
    			mid_colour={{0.45,0xFFFF00,0.70}},
    			x=31,y=312,
    			blocks=18,
                            space=2,
    			height=10,width=4,
    			angle=90,
                            smooth=true
    			},
    		{	--[ Graph for Memory ]--
    			name="memperc",
    			arg="",
    			max=100,
    			alarm=50,
    			alarm_colour={0xFF0000,0.60},
    			bg_colour={0xFFFFFF,0.20},
    			fg_colour={0x00FF00,0.55},
    			mid_colour={{0.45,0xFFFF00,0.70}},
    			x=30,y=346,
    			blocks=18,
    			space=2,
    			height=10,width=4,
    			angle=90,
    			smooth=true
    			},
    		{	--[ Graph for Root ]--
                            name="fs_used_perc",
    			arg="/",
    			max=100,
    			alarm=50,
    			alarm_colour={0xFF0000,0.60},
    			bg_colour={0xFFFFFF,.20},
    			fg_colour={0x00FF00,0.50},
    			mid_colour={{0.45,0xFFFF00,0.70}},
    			x=31,y=381,
    			blocks=18,
    			space=2,
    			height=10,width=4,
    			angle=90,
    			smooth=true
    			},		
                    {	--[ Graph for WinXP ]--
    			name="fs_used_perc",
    			arg="/media/1CB8948DB89466D4",
    			max=100,
    			alarm=50,
    			alarm_colour={0xFF0000,0.60},
    			bg_colour={0xFFFFFF,0.20},
    			fg_colour={0x00FF00,0.50},
    			mid_colour={{0.45,0xFFFF00,0.70}},
    			x=31,y=408,
    			blocks=18,
    			space=2,
    			height=10,width=4,
    			angle=90,
    			smooth=true
    			},
                   {	--[ Graph for NetDisc ]--
                            name="fs_used_perc",
    			arg="/media/NetDisk",
    			max=100,
    			alarm=50,
    			alarm_colour={0xFF0000,0.60},
    			bg_colour={0xFFFFFF,0.20},
    			fg_colour={0x00FF00,0.50},
    			mid_colour={{0.45,0xFFFF00,0.70}},
    			x=31,y=435,
    			blocks=18,
    			space=2,
    			height=10,width=4,
    			angle=90,
    			smooth=true
    			},
                   {	--[ Graph for NewVolume ]--
                            name="fs_used_perc",
    			arg="/media/NewVolume",
    			max=100,
    			alarm=50,
    			alarm_colour={0xFF0000,0.60},
    			bg_colour={0xFFFFFF,0.20},
    			fg_colour={0x00FF00,0.50},
    			mid_colour={{0.45,0xFFFF00,0.70}},
    			x=31,y=462,
    			blocks=18,
    			space=2,
    			height=10,width=4,
    			angle=90,
    			smooth=true
    			},
    		 }	
    -----------END OF PARAMETERS--------------
    
    
        
    	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)
    	
    	cr = cairo_create(cs)    
    	--prevent segmentation error when reading cpu state
        if tonumber(conky_parse('${updates}'))>3 then
            for i in pairs(bars_settings) do
            	
            	draw_multi_bar_graph(bars_settings[i])
            	
            end
        end
    	cairo_destroy(cr)
    	cairo_surface_destroy(cs)
    	cr=nil
    
    end
    
    
    
    function draw_multi_bar_graph(t)
    	cairo_save(cr)
    	--check values
    	if t.draw_me == true then t.draw_me = nil end
    	if t.draw_me ~= nil and conky_parse(tostring(t.draw_me)) ~= "1" then return end	
    	if t.name==nil and t.arg==nil then 
    		print ("No input values ... use parameters 'name' with 'arg' or only parameter 'arg' ") 
    		return
    	end
    	if t.max==nil then
    		print ("No maximum value defined, use 'max'")
    		return
    	end
    	if t.name==nil then t.name="" end
    	if t.arg==nil then t.arg="" end
    
    	--set default values	
    	if t.x == nil		then t.x = conky_window.width/2 end
    	if t.y == nil		then t.y = conky_window.height/2 end
    	if t.blocks == nil	then t.blocks=10 end
    	if t.height == nil	then t.height=10 end
    	if t.angle == nil 	then t.angle=0 end
    	t.angle = t.angle*math.pi/180
    	--line cap style
    	if t.cap==nil		then t.cap = "b" end
    	local cap="b"
    	for i,v in ipairs({"s","r","b"}) do 
    		if v==t.cap then cap=v end
    	end
    	local delta=0
    	if t.cap=="r" or t.cap=="s" then delta = t.height end
    	if cap=="s" then 	cap = CAIRO_LINE_CAP_SQUARE
    	elseif cap=="r" then
    		cap = CAIRO_LINE_CAP_ROUND
    	elseif cap=="b" then
    		cap = CAIRO_LINE_CAP_BUTT
    	end
    	--end line cap style
    	--if t.led_effect == nil	then t.led_effect="r" end
    	if t.width == nil	then t.width=20 end
    	if t.space == nil	then t.space=2 end
    	if t.radius == nil	then t.radius=0 end
    	if t.angle_bar == nil	then t.angle_bar=0 end
    	t.angle_bar = t.angle_bar*math.pi/360 --halt angle
    	
    	--colours
    	if t.bg_colour == nil 	then t.bg_colour = {0x00FF00,0.5} end
    	if #t.bg_colour~=2 		then t.bg_colour = {0x00FF00,0.5} end
    	if t.fg_colour == nil 	then t.fg_colour = {0x00FF00,1} end
    	if #t.fg_colour~=2 		then t.fg_colour = {0x00FF00,1} end
    	if t.alarm_colour == nil 	then t.alarm_colour = t.fg_colour end
    	if #t.alarm_colour~=2 		then t.alarm_colour = t.fg_colour end
    
    	if t.mid_colour ~= nil then	
    		for i=1, #t.mid_colour do    
    		    if #t.mid_colour[i]~=3 then 
    		    	print ("error in mid_color table")
    		    	t.mid_colour[i]={1,0xFFFFFF,1} 
    		    end
    		end
        end
        
    	if t.bg_led ~= nil and #t.bg_led~=2	then t.bg_led = t.bg_colour end
    	if t.fg_led ~= nil and #t.fg_led~=2	then t.fg_led = t.fg_colour end
    	if t.alarm_led~= nil and #t.alarm_led~=2 then t.alarm_led = t.fg_led end
    	
    	if t.led_effect~=nil then
    		if t.bg_led == nil then t.bg_led = t.bg_colour end
    		if t.fg_led == nil 	then t.fg_led = t.fg_colour end
    		if t.alarm_led == nil  then t.alarm_led = t.fg_led end
    	end
    	
    
    	if t.alarm==nil then t.alarm = t.max end --0.8*t.max end
    	if t.smooth == nil then t.smooth = false end
    
    	if t.skew_x == nil then 
    		t.skew_x=0 
    	else
    		t.skew_x = math.pi*t.skew_x/180	
    	end
    	if t.skew_y == nil then 
    		t.skew_y=0
    	else
    		t.skew_y = math.pi*t.skew_y/180	
    	end
    	
    	if t.reflection_alpha==nil then t.reflection_alpha=0 end
    	if t.reflection_length==nil then t.reflection_length=1 end
    	if t.reflection_scale==nil then t.reflection_scale=1 end
    	
    	--end of default values
    	
    
     	local function rgb_to_r_g_b(col_a)
    		return ((col_a[1] / 0x10000) % 0x100) / 255., ((col_a[1] / 0x100) % 0x100) / 255., (col_a[1] % 0x100) / 255., col_a[2]
    	end
    	
    	
    	--functions used to create patterns
    
    	local function create_smooth_linear_gradient(x0,y0,x1,y1)
    		local pat = cairo_pattern_create_linear (x0,y0,x1,y1)
    		cairo_pattern_add_color_stop_rgba (pat, 0, rgb_to_r_g_b(t.fg_colour))
    		cairo_pattern_add_color_stop_rgba (pat, 1, rgb_to_r_g_b(t.alarm_colour))
    		if t.mid_colour ~=nil then
    			for i=1, #t.mid_colour do
    				cairo_pattern_add_color_stop_rgba (pat, t.mid_colour[i][1], rgb_to_r_g_b({t.mid_colour[i][2],t.mid_colour[i][3]}))
    			end
    		end
    		return pat
    	end
    
    	local function create_smooth_radial_gradient(x0,y0,r0,x1,y1,r1)
    		local pat =  cairo_pattern_create_radial (x0,y0,r0,x1,y1,r1)
    		cairo_pattern_add_color_stop_rgba (pat, 0, rgb_to_r_g_b(t.fg_colour))
    		cairo_pattern_add_color_stop_rgba (pat, 1, rgb_to_r_g_b(t.alarm_colour))
    		if t.mid_colour ~=nil then
    			for i=1, #t.mid_colour do
    				cairo_pattern_add_color_stop_rgba (pat, t.mid_colour[i][1], rgb_to_r_g_b({t.mid_colour[i][2],t.mid_colour[i][3]}))
    			end
    		end
    		return pat
    	end
    	
    	local function create_led_linear_gradient(x0,y0,x1,y1,col_alp,col_led)
    		local pat = cairo_pattern_create_linear (x0,y0,x1,y1) ---delta, 0,delta+ t.width,0)
    		cairo_pattern_add_color_stop_rgba (pat, 0.0, rgb_to_r_g_b(col_alp))
    		cairo_pattern_add_color_stop_rgba (pat, 0.5, rgb_to_r_g_b(col_led))
    		cairo_pattern_add_color_stop_rgba (pat, 1.0, rgb_to_r_g_b(col_alp))
    		return pat
    	end
    
    	local function create_led_radial_gradient(x0,y0,r0,x1,y1,r1,col_alp,col_led,mode)
    		local pat = cairo_pattern_create_radial (x0,y0,r0,x1,y1,r1)
    		if mode==3 then
    			cairo_pattern_add_color_stop_rgba (pat, 0, rgb_to_r_g_b(col_alp))				
    			cairo_pattern_add_color_stop_rgba (pat, 0.5, rgb_to_r_g_b(col_led))
    			cairo_pattern_add_color_stop_rgba (pat, 1, rgb_to_r_g_b(col_alp))				
    		else
    			cairo_pattern_add_color_stop_rgba (pat, 0, rgb_to_r_g_b(col_led))
    			cairo_pattern_add_color_stop_rgba (pat, 1, rgb_to_r_g_b(col_alp))				
    		end
    		return pat
    	end
    
    
    
    
    
    
    	local function draw_single_bar()
    		--this fucntion is used for bars with a single block (blocks=1) but 
    		--the drawing is cut in 3 blocks : value/alarm/background
    		--not zvzimzblr for circular bar
    		local function create_pattern(col_alp,col_led,bg)
    			local pat
    			
    			if not t.smooth then
    				if t.led_effect=="e" then
    					pat = create_led_linear_gradient (-delta, 0,delta+ t.width,0,col_alp,col_led)
    				elseif t.led_effect=="a" then
    					pat = create_led_linear_gradient (t.width/2, 0,t.width/2,-t.height,col_alp,col_led)
    				elseif  t.led_effect=="r" then
    					pat = create_led_radial_gradient (t.width/2, -t.height/2, 0, t.width/2,-t.height/2,t.height/1.5,col_alp,col_led,2)
    				else
    					pat = cairo_pattern_create_rgba  (rgb_to_r_g_b(col_alp))
    				end
    			else
    				if bg then
    					pat = cairo_pattern_create_rgba  (rgb_to_r_g_b(t.bg_colour))
    				else
    					pat = create_smooth_linear_gradient(t.width/2, 0, t.width/2,-t.height)
    				end
    			end
    			return pat
    		end
    		
    		local y1=-t.height*pct/100
    		local y2,y3
    		if pct>(100*t.alarm/t.max) then 
    			y1 = -t.height*t.alarm/100
    			y2 = -t.height*pct/100
    			if t.smooth then y1=y2 end
    		end
    		
    		if t.angle_bar==0 then
    		
    			--block for fg value
    			local pat = create_pattern(t.fg_colour,t.fg_led,false)
    			cairo_set_source(cr,pat)
    			cairo_rectangle(cr,0,0,t.width,y1)
    			cairo_fill(cr)
    			cairo_pattern_destroy(pat)
    		
    			-- block for alarm value			
    			if not t.smooth and y2 ~=nil then 
    				pat = create_pattern(t.alarm_colour,t.alarm_led,false)
    				cairo_set_source(cr,pat)
    				cairo_rectangle(cr,0,y1,t.width,y2-y1)
    				cairo_fill(cr)
    				y3=y2
    				cairo_pattern_destroy(pat)
    			else
    				y2,y3=y1,y1
    			end
    			-- block for bg value
    			cairo_rectangle(cr,0,y2,t.width,-t.height-y3)
    			pat = create_pattern(t.bg_colour,t.bg_led,true)
    			cairo_set_source(cr,pat)
    			cairo_pattern_destroy(pat)
    			cairo_fill(cr)
    		end		
    	end  --end single bar
    	
    
    
    
    
    
    	local function draw_multi_bar()
    		--function used for bars with 2 or more blocks
    		for pt = 1,t.blocks do 
    			--set block y
    			local y1 = -(pt-1)*(t.height+t.space)
    			local light_on=false
    			
    			--set colors
    			local col_alp = t.bg_colour
    			local col_led = t.bg_led
    			if pct>=(100/t.blocks) or pct>0 then --ligth on or not the block
    				if pct>=(pcb*(pt-1))  then 
    					light_on = true
    					col_alp = t.fg_colour
    					col_led = t.fg_led
    					if pct>=(100*t.alarm/t.max) and (pcb*pt)>(100*t.alarm/t.max) then 
    						col_alp = t.alarm_colour 
    						col_led = t.alarm_led 
    					end
    				end
    			end
    
    			--set colors
    			--have to try to create gradients outside the loop ?
    			local pat 
    			
    			if not t.smooth then
    				if t.angle_bar==0 then
    					if t.led_effect=="e" then
    						pat = create_led_linear_gradient (-delta, 0,delta+ t.width,0,col_alp,col_led)
    					elseif t.led_effect=="a" then
    						pat = create_led_linear_gradient (t.width/2, -t.height/2+y1,t.width/2,0+t.height/2+y1,col_alp,col_led)					
    					elseif  t.led_effect=="r" then
    						pat = create_led_radial_gradient (t.width/2, y1, 0, t.width/2,y1,t.width/1.5,col_alp,col_led,2)	
    					else
    						pat = cairo_pattern_create_rgba  (rgb_to_r_g_b(col_alp))
    					end
    				else
    					 if t.led_effect=="a"  then
    						 pat = create_led_radial_gradient (0, 0, t.radius+(t.height+t.space)*(pt-1),
    														 0, 0, t.radius+(t.height+t.space)*(pt),						 
    											 col_alp,col_led,3)	
    					else
    						pat = cairo_pattern_create_rgba  (rgb_to_r_g_b(col_alp))					
    					end
    					
    				end
    			else
    				
    				if light_on then
    					if t.angle_bar==0 then
    						pat = create_smooth_linear_gradient(t.width/2, t.height/2, t.width/2,-(t.blocks-0.5)*(t.height+t.space))
    					else
    						pat = create_smooth_radial_gradient(0, 0, (t.height+t.space),  0,0,(t.blocks+1)*(t.height+t.space),2)
    					end
    				else		
    					pat = cairo_pattern_create_rgba  (rgb_to_r_g_b(t.bg_colour))
    				end
    			end
    			cairo_set_source (cr, pat)
    			cairo_pattern_destroy(pat)
    
    			--draw a block
    			if t.angle_bar==0 then
    				cairo_move_to(cr,0,y1)
    				cairo_line_to(cr,t.width,y1)
    			else		
    				cairo_arc( cr,0,0,
    					t.radius+(t.height+t.space)*(pt)-t.height/2,
    					 -t.angle_bar -math.pi/2 ,
    					 t.angle_bar -math.pi/2)
    			end
    			cairo_stroke(cr)
    		end	
    	end
    	
    	
    	
    	
    	local function setup_bar_graph()
    		--function used to retrieve the value to display and to set the cairo structure
    		if t.blocks ~=1 then t.y=t.y-t.height/2 end
    		
    		local value = 0
    		if t.name ~="" then
    			value = tonumber(conky_parse(string.format('${%s %s}', t.name, t.arg)))
    			--$to_bytes doesn't work when value has a decimal point,
    			--https://garage.maemo.org/plugins/ggit/browse.php/?p=monky;a=commitdiff;h=174c256c81a027a2ea406f5f37dc036fac0a524b;hp=d75e2db5ed3fc788fb8514121f67316ac3e5f29f
    			--http://sourceforge.net/tracker/index.php?func=detail&aid=3000865&group_id=143975&atid=757310
    			--conky bug?
    			--value = (conky_parse(string.format('${%s %s}', t.name, t.arg)))
    			--if string.match(value,"%w") then
    			--	value = conky_parse(string.format('${to_bytes %s}',value))
    			--end
    		else
    			value = tonumber(t.arg)
    		end
    
    		if value==nil then value =0 end
    		
    		pct = 100*value/t.max
    		pcb = 100/t.blocks
    		
    		cairo_set_line_width (cr, t.height)
    		cairo_set_line_cap  (cr, cap)
    		cairo_translate(cr,t.x,t.y)
    		cairo_rotate(cr,t.angle)
    
    		local matrix0 = cairo_matrix_t:create()
    		tolua.takeownership(matrix0)
    		cairo_matrix_init (matrix0, 1,t.skew_y,t.skew_x,1,0,0)
    		cairo_transform(cr,matrix0)
    
    	
    		
    		--call the drawing function for blocks
    		if t.blocks==1 and t.angle_bar==0 then
    			draw_single_bar()
    			if t.reflection=="t" or t.reflection=="b" then cairo_translate(cr,0,-t.height) end
    		else
    			draw_multi_bar()
    		end
    
    		--dot for reminder
    		--[[
    		if t.blocks ~=1 then
    			cairo_set_source_rgba(cr,1,0,0,1)
    			cairo_arc(cr,0,t.height/2,3,0,2*math.pi)
    			cairo_fill(cr)
    		else
    			cairo_set_source_rgba(cr,1,0,0,1)
    			cairo_arc(cr,0,0,3,0,2*math.pi)
    			cairo_fill(cr)
    		end]]
    		
    		--call the drawing function for reflection and prepare the mask used		
    		if t.reflection_alpha>0 and t.angle_bar==0 then
    			local pat2
    			local matrix1 = cairo_matrix_t:create()
    			tolua.takeownership(matrix1)
    			if t.angle_bar==0 then
    				pts={-delta/2,(t.height+t.space)/2,t.width+delta,-(t.height+t.space)*(t.blocks)}
    				if t.reflection=="t" then
    					cairo_matrix_init (matrix1,1,0,0,-t.reflection_scale,0,-(t.height+t.space)*(t.blocks-0.5)*2*(t.reflection_scale+1)/2)
    					pat2 = cairo_pattern_create_linear (t.width/2,-(t.height+t.space)*(t.blocks),t.width/2,(t.height+t.space)/2)
    				elseif t.reflection=="r" then
    					cairo_matrix_init (matrix1,-t.reflection_scale,0,0,1,delta+2*t.width,0)
    					pat2 = cairo_pattern_create_linear (delta/2+t.width,0,-delta/2,0)
    				elseif t.reflection=="l" then
    					cairo_matrix_init (matrix1,-t.reflection_scale,0,0,1,-delta,0)
    					pat2 = cairo_pattern_create_linear (-delta/2,0,delta/2+t.width,-0)
    				else --bottom
    					cairo_matrix_init (matrix1,1,0,0,-1*t.reflection_scale,0,(t.height+t.space)*(t.reflection_scale+1)/2)
    					pat2 = cairo_pattern_create_linear (t.width/2,(t.height+t.space)/2,t.width/2,-(t.height+t.space)*(t.blocks))
    				end
    			end
    			cairo_transform(cr,matrix1)
    
    			if t.blocks==1 and t.angle_bar==0 then
    				draw_single_bar()
    				cairo_translate(cr,0,-t.height/2) 
    			else
    				draw_multi_bar()
    			end
    			
    			
    			cairo_set_line_width(cr,0.01)
    			cairo_pattern_add_color_stop_rgba (pat2, 0,0,0,0,1-t.reflection_alpha)
    			cairo_pattern_add_color_stop_rgba (pat2, t.reflection_length,0,0,0,1)
    			if t.angle_bar==0 then
    				cairo_rectangle(cr,pts[1],pts[2],pts[3],pts[4])
    			end
    			cairo_clip_preserve(cr)
    			cairo_set_operator(cr,CAIRO_OPERATOR_CLEAR)
    			cairo_stroke(cr)
    			cairo_mask(cr,pat2)
    			cairo_pattern_destroy(pat2)
    			cairo_set_operator(cr,CAIRO_OPERATOR_OVER)
    			
    		end --reflection
    		pct,pcb=nil
    	end --setup_bar_graph()
    	
    	--start here !
    	setup_bar_graph()
    	cairo_restore(cr)
    end
    the radartest.lua:
    Code:
    --[[
    call 
    lua_load /home/davejr/.conky/MyConkyLatest/Radar/radartest.lua
    lua_draw_hook_pre radar
    ]]
    
    require 'cairo'
    require 'imlib2'
    ------------------------------------------------------------------------------
    function string:split(delimiter)
    local result = { }
    local from  = 1
    local delim_from, delim_to = string.find( self, delimiter, from  )
    while delim_from do
    table.insert( result, string.sub( self, from , delim_from-1 ) )
    from  = delim_to + 1
    delim_from, delim_to = string.find( self, delimiter, from  )
    end
    table.insert( result, string.sub( self, from  ) )
    return result
    end
    --------------------------------------------------------------------------------
    
    function conky_radar()
    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)
    cr = cairo_create(cs)
    local updates=tonumber(conky_parse('${updates}'))
    if updates>5 then
    --#########################################################################################################
    --#########################################################################################################
    file="/home/davejr/.conky/MyConkyLatest/Radar/FTG_Topo_Short.jpg"
    image(75,700,135,135,file)
    
    interval=60
    timer=(updates % interval)+1
    if timer==1 or updates==10 then
    if timer==1 or updates==10 then
    os.execute("rm /home/davejr/.conky/MyConkyLatest/Radar/FTG_N0R_0.gif")
    os.execute("rm /home/davejr/.conky/MyConkyLatest/Radar/FTG_N0R_Legend_0.gif")
    os.execute("rm /home/davejr/.conky/MyConkyLatest/Radar/FTG_Warnings_0.gif")
    
    os.execute("wget --directory-prefix=/home/davejr/.conky/MyConkyLatest/Radar/ http://radar.weather.gov/ridge/RadarImg/N0R/FTG_N0R_0.gif")
    os.execute("wget --directory-prefix=/home/davejr/.conky/MyConkyLatest/Radar/ http://radar.weather.gov/ridge/Legend/N0R/FTG_N0R_Legend_0.gif")
    os.execute("wget --directory-prefix=/home/davejr/.conky/MyConkyLatest/Radar/ http://radar.weather.gov/ridge/Warnings/Short/FTG_Warnings_0.gif")
    end
    end
    file="/home/davejr/.conky/MyConkyLatest/Radar/FTG_N0R_0.gif"
    image(75,700,130,130,file)
    
    file="/home/davejr/.conky/MyConkyLatest/Radar/FTG_County_Short.gif"
    image(75,700,130,130,file)
    
    file="/home/davejr/.conky/MyConkyLatest/Radar/FTG_Highways_Short.gif"
    image(75,700,130,130,file)
    
    file="/home/davejr/.conky/MyConkyLatest/Radar/FTG_City_Short.gif"
    image(75,700,130,130,file)
    
    file="/home/davejr/.conky/MyConkyLatest/Radar/FTG_N0R_Legend_0.gif"
    image(75,700,130,130,file)
    
    file="/home/davejr/.conky/MyConkyLatest/Radar/FTG_Warnings_0.gif"
    image(75,700,130,130,file)
    
    end-- if updates>5
    cairo_destroy(cr)
    cairo_surface_destroy(cs)
    cr=nil
    end-- end main function
    
    function image(center_x,center_y,w,h,file)
    show = imlib_load_image(file)
    if show == nil then return end
    imlib_context_set_image(show)
    if tonumber(w)==0 then 
    width=imlib_image_get_width() 
    else
    width=tonumber(w)
    end
    if tonumber(h)==0 then 
    height=imlib_image_get_height() 
    else
    height=tonumber(h)
    end
    iacross=center_x-(width/2)
    idown=center_y-(height/2)
    imlib_context_set_image(show)
    scaled=imlib_create_cropped_scaled_image(0, 0, imlib_image_get_width(), imlib_image_get_height(), width, height)
    imlib_free_image()
    imlib_context_set_image(scaled)
    imlib_render_image_on_drawable(iacross, idown)
    imlib_free_image()
    end
    and the acc_usa_images script:
    Code:
    #!/bin/bash
    
    #function: test_image_day
    test_image_day () {
        case $1 in
             su)
               echo 1su
             ;;
             msu)
               echo 2msu
             ;;
             psu)
               echo 3psu
             ;;
             ic)
               echo 4ic
             ;;
             h)
               echo 5h
             ;;
             mc)
               echo 6mc
             ;;
             c)
               echo 7c
             ;;
             d)
               echo 8d
             ;;
             f)
               echo 9f
             ;;
             s)
               echo 10s
             ;;
             mcs)
               echo 11mcs
             ;;
             psus)
               echo 12psus
             ;;
             t)
               echo 13t
             ;;
             mct)
               echo 14mct
             ;;
             psut)
               echo 15psut
             ;;
             r)
               echo 16r
             ;;
             fl)
               echo 17fl
             ;;
             mcfl)
               echo 18mcfl
             ;;
             psfl)
               echo 19psfl
             ;;
             sn)
               echo 20sn
             ;;
             mcsn)
               echo 21mcsn
             ;;
             i)
               echo 22i
             ;;
             sl)
               echo 23sl
             ;;
             fr)
               echo 24fr
             ;;
             rsn)
               echo 25rsn
             ;;
             w)
               echo 26w
             ;;
             ho)
               echo 27ho
             ;;
             co)
               echo 28co
             ;;
             cl)
               echo 29cl 
             ;;
             mcl)
               echo 31mcl
             ;;
             pc)
               echo 32pc 
             ;;
             pcs)
               echo 36pcs
             ;;
             pct)
               echo 38pct 
             ;;
            esac
    } 
    
    #function: test_image_night
    test_image_night () {
        case $1 in
    		 su)
               echo 1su
             ;;
             msu)
               echo 2msu
             ;;
             psu)
               echo 3psu
             ;;
             c)
               echo 7c
             ;;
             d)
               echo 8d
             ;;
             f)
               echo 9f
             ;;
             s)
               echo 10s
             ;;
             psus)
               echo 12psus
             ;;
             t)
               echo 13t
             ;;
             psut)
               echo 15psut
             ;;
             r)
               echo 16r
             ;;
             fl)
               echo 17fl
             ;;
             psfl)
               echo 19psfl
             ;;
             sn)
               echo 20sn
             ;;
             i)
               echo 22i
             ;;
             sl)
               echo 23sl
             ;;
             fr)
               echo 24fr
             ;;
             rsn)
               echo 25rsn
             ;;
             ho)
               echo 27ho
             ;;
             co)
               echo 28co
             ;;
             cl)
               echo 29cl 
             ;;
             w)
               echo 30w
             ;;
             mcl)
               echo 31mcl
             ;;
             pc)
               echo 32pc 
             ;;
             ic)
               echo 33ic
             ;;
             h)
               echo 34h
             ;;
             mc)
               echo 35mc 
             ;;
             pcs)
               echo 36pcs
             ;;
             mcs)
               echo 37mcs 
             ;;
             pct)
               echo 38pct 
             ;;
             mct)
               echo 39mct 
             ;;
             mcfl)
               echo 40mcfl 
             ;;
             mcsn)
               echo 41mcsn 
             ;;
            esac
    }
    
    #put your Accuweather address here
    address="http://www.accuweather.com/en/us/denver-co/80203/weather-forecast/347810?unit=f"
    #http://www.accuweather.com/en/us/midway-oh/43151/weather-forecast/2214620"
    
    loc_id=$(echo $address|sed 's/\/weather-forecast.*$//'|sed 's/^.*\///')
    last_number=$(echo $address|sed 's/^.*\///')
    
    kill -STOP $(pidof conky)
    killall wget
    
    curr_addr="$(echo $address|sed 's/weather-forecast.*$//')"current-weather/"$loc_id"us?day=1
    wget -O /home/davejr/.conky/MyConkyLatest/Accuweather/curr_cond_raw "$curr_addr"
    
    addr1="$(echo $address|sed 's/weather-forecast.*$//')"daily-weather-forecast/"$last_number"
    wget -O /home/davejr/.conky/MyConkyLatest/Accuweather/tod_ton_raw "$addr1"
    
    addr2="$addr1"?day=6
    wget -O /home/davejr/.conky/MyConkyLatest/Accuweather/last_days_raw "$addr2"
    
    
    if [[ -s /home/davejr/.conky/MyConkyLatest/Accuweather/curr_cond_raw ]]; then
    
    	#current conditions
    	sed -i '/detail-now/,/Moonrise/!d' /home/davejr/.conky/MyConkyLatest/Accuweather/curr_cond_raw
    	egrep -i '"cond"|Humidity|Pressure|Cloud Cover|UV Index|Dew Point|Amount of Precipitation|Visibility|AM|PM|mph|icons-wind|detail-tab-panel|icon i-' /home/davejr/.conky/MyConkyLatest/Accuweather/curr_cond_raw > /home/davejr/.conky/MyConkyLatest/Accuweather/curr_cond
    	sed -i -e 's/^.*icon i-//g' -e 's/^.*tab-panel //g' -e 's/^.*start">//g' -e 's/^.*finish">//g' /home/davejr/.conky/MyConkyLatest/Accuweather/curr_cond
    	sed -i 's/^.*<li>//g' /home/davejr/.conky/MyConkyLatest/Accuweather/curr_cond
    	sed -i -e 's/<strong>//g' -e 's/<\/strong>//g' -e 's/<\/li>//g' /home/davejr/.conky/MyConkyLatest/Accuweather/curr_cond
    	sed -i -e '1d' -e 's/^.*center;">//g' -e 's/^.*icons-wind\///g' -e 's/\.gif.*$//g' /home/davejr/.conky/MyConkyLatest/Accuweather/curr_cond
    	sed -i -e 's/^.*"cond">//g' -e 's/temp">/\n/g' -e 's/realfeel">/\n/g' /home/davejr/.conky/MyConkyLatest/Accuweather/curr_cond
    	sed -i -e 's/">.*$//g' -e 's/<\/span>.*$//g' -e 's/<span>.*$//g' /home/davejr/.conky/MyConkyLatest/Accuweather/curr_cond
    	sed -i -e 's/&deg;//g' -e 's/&nbsp;//g' -e 's/RealFeel&reg; //g' -e 's/<\/div>.*$//g' -e '15d' /home/davejr/.conky/MyConkyLatest/Accuweather/curr_cond
    	sed -i -e 's/Humidity: //g' -e 's/Pressure: //g' -e 's/Cloud Cover: //g' -e 's/UV Index: //g' /home/davejr/.conky/MyConkyLatest/Accuweather/curr_cond
    	sed -i -e 's/Dew Point: //g' -e 's/Amount of Precipitation(1 Hr): //g' -e 's/Visibility: //g' /home/davejr/.conky/MyConkyLatest/Accuweather/curr_cond
    	sed -i 's/ i-alarm.*$//g' /home/davejr/.conky/MyConkyLatest/Accuweather/curr_cond
    	time=$(sed -n 1p /home/davejr/.conky/MyConkyLatest/Accuweather/curr_cond)
    	image=$(sed -n 2p /home/davejr/.conky/MyConkyLatest/Accuweather/curr_cond)
    	if [[ $time == day ]]; then
    	    sed -i 2s/$image/$(test_image_day $image)/ /home/davejr/.conky/MyConkyLatest/Accuweather/curr_cond
    	elif [[ $time == night ]]; then
    	    sed -i 2s/$image/$(test_image_night $image)/ /home/davejr/.conky/MyConkyLatest/Accuweather/curr_cond
    	fi
    	cp /home/davejr/.conky/MyConkyLatest/Accuweather/Forecast_Images/$(sed -n 2p /home/davejr/.conky/MyConkyLatest/Accuweather/curr_cond).png /home/davejr/.conky/MyConkyLatest/Accuweather/cc.png
    
    fi
    
    
    if [[ -s /home/davejr/.conky/MyConkyLatest/Accuweather/tod_ton_raw ]]; then
    
    	#today - tonight - first 4 days
    	sed -i '/current first/,/<h4>Night<\/h4>/!d' /home/davejr/.conky/MyConkyLatest/Accuweather/tod_ton_raw 
    	egrep -i 'h3|"cond"|temp|icon i-|RealFeel' /home/davejr/.conky/MyConkyLatest/Accuweather/tod_ton_raw > /home/davejr/.conky/MyConkyLatest/Accuweather/tod_ton
    	sed -i -e 's/^.*"#">//' -e 's/<\/a>.*$//' /home/davejr/.conky/MyConkyLatest/Accuweather/tod_ton
    	now=$(sed -n 1p /home/davejr/.conky/MyConkyLatest/Accuweather/tod_ton)
    	if [[ $now == Tonight || $now == Overnight ]]; then
    		sed -i '1s/night/night\n/' /home/davejr/.conky/MyConkyLatest/Accuweather/tod_ton
    	fi
    	sed -i -e 's/^.*icon i-//g' -e 's/^.*"cond">//g' /home/davejr/.conky/MyConkyLatest/Accuweather/tod_ton
    	sed -i -e '1,21s/^.*"temp">//g' -e 's/^.*"">//g' -e 's/Lo<\/span> /\n/' /home/davejr/.conky/MyConkyLatest/Accuweather/tod_ton
    	sed -i -e '27s/<span>&deg;/\n/' -e 's/<\/a>.*$//g' -e 's/"><.*$//g' -e 's/<\/span><\/span> <span class="realfeel">RealFeel&reg; //g' -e 's/^[ ,\t]*//g' /home/davejr/.conky/MyConkyLatest/Accuweather/tod_ton
    	sed -i -e 's/^ *//g' -e '22s/<span>&deg;/\n/' -e 's/<span>.*$//g' -e 's/<\/span>.*"temp">/\n/' /home/davejr/.conky/MyConkyLatest/Accuweather/tod_ton
    	sed -i -e 's/<\/span>.*$//g' -e 's/&deg;.*$//g' /home/davejr/.conky/MyConkyLatest/Accuweather/tod_ton
    	sed -i -e 's/Tomorrow/TOM./' -e 's/Monday/MON/' -e 's/Tuesday/TUES/' -e 's/Wednesday/WED/' -e 's/Thursday/THURS/' -e 's/Friday/FRI/' -e 's/Saturday/SAT/' -e 's/Sunday/SUN/' /home/davejr/.conky/MyConkyLatest/Accuweather/tod_ton
    	sed -i 's/ i-alarm.*$//g' /home/davejr/.conky/MyConkyLatest/Accuweather/tod_ton
    	for (( i=7; i<=22; i+=5 ))
    	  do
    	      image_raw=$(sed -n "${i}"p /home/davejr/.conky/MyConkyLatest/Accuweather/tod_ton)
    	      sed -i ${i}s/$image_raw/$(test_image_day $image_raw)/ /home/davejr/.conky/MyConkyLatest/Accuweather/tod_ton
    	      cp /home/davejr/.conky/MyConkyLatest/Accuweather/Forecast_Images/$(sed -n ${i}p /home/davejr/.conky/MyConkyLatest/Accuweather/tod_ton).png /home/davejr/.conky/MyConkyLatest/Accuweather/$i.png
    	  done
    	image_raw=$(sed -n 26p /home/davejr/.conky/MyConkyLatest/Accuweather/tod_ton)
    	sed -i 26s/$image_raw/$(test_image_day $image_raw)/ /home/davejr/.conky/MyConkyLatest/Accuweather/tod_ton
    	cp /home/davejr/.conky/MyConkyLatest/Accuweather/Forecast_Images/$(sed -n 26p /home/davejr/.conky/MyConkyLatest/Accuweather/tod_ton).png /home/davejr/.conky/MyConkyLatest/Accuweather/today.png
    	image_raw=$(sed -n 30p /home/davejr/.conky/MyConkyLatest/Accuweather/tod_ton)
    	sed -i 30s/$image_raw/$(test_image_night $image_raw)/ /home/davejr/.conky/MyConkyLatest/Accuweather/tod_ton
    	cp /home/davejr/.conky/MyConkyLatest/Accuweather/Forecast_Images/$(sed -n 30p /home/davejr/.conky/MyConkyLatest/Accuweather/tod_ton).png /home/davejr/.conky/MyConkyLatest/Accuweather/tonight.png
    
    fi
    
    
    if [[ -s /home/davejr/.conky/MyConkyLatest/Accuweather/last_days_raw ]]; then
    
    	#last days
    	sed -i '/day=6/,/<h4>Night<\/h4>/!d' /home/davejr/.conky/MyConkyLatest/Accuweather/last_days_raw 
    	egrep -i 'h3|"cond"|temp|icon i-|RealFeel' /home/davejr/.conky/MyConkyLatest/Accuweather/last_days_raw > /home/davejr/.conky/MyConkyLatest/Accuweather/last_days
    	sed -i -e 's/^.*icon i-//g' -e 's/^.*"cond">//g' /home/davejr/.conky/MyConkyLatest/Accuweather/last_days
    	sed -i -e '1,21s/^.*"temp">//g' -e 's/^.*"#">//g' -e 's/Lo<\/span> /\n/' /home/davejr/.conky/MyConkyLatest/Accuweather/last_days
    	sed -i -e '27s/<span>&deg;/\n/' -e 's/<\/a>.*$//g' -e 's/"><.*$//g' -e 's/<\/span><\/span> <span class="realfeel">RealFeel&reg; //g' /home/davejr/.conky/MyConkyLatest/Accuweather/last_days
    	sed -i -e 's/^ *//g' -e '22s/<span>&deg;/\n/' -e 's/<span>.*$//g' -e 's/<\/span>.*"temp">/\n/' /home/davejr/.conky/MyConkyLatest/Accuweather/last_days
    	sed -i -e 's/<\/span>.*$//g' -e 's/&deg;.*$//g' -e 's/^[ ,\t]*//g' /home/davejr/.conky/MyConkyLatest/Accuweather/last_days
    	sed -i -e 's/Monday/MON/' -e 's/Tuesday/TUES/' -e 's/Wednesday/WED/' -e 's/Thursday/THURS/' -e 's/Friday/FRI/' -e 's/Saturday/SAT/' -e 's/Sunday/SUN/' /home/davejr/.conky/MyConkyLatest/Accuweather/last_days
    	sed -i 's/ i-alarm.*$//g' /home/davejr/.conky/MyConkyLatest/Accuweather/last_days
    	for (( i=2; i<=22; i+=5 ))
    	  do
    	      image_raw=$(sed -n "${i}"p /home/davejr/.conky/MyConkyLatest/Accuweather/last_days)
    	      sed -i ${i}s/$image_raw/$(test_image_day $image_raw)/ /home/davejr/.conky/MyConkyLatest/Accuweather/last_days
    	      cp /home/davejr/.conky/MyConkyLatest/Accuweather/Forecast_Images/$(sed -n ${i}p /home/davejr/.conky/MyConkyLatest/Accuweather/last_days).png /home/davejr/.conky/MyConkyLatest/Accuweather/N$i.png
    	  done
    	  
    fi
    
    
    if [[ -s /home/davejr/.conky/MyConkyLatest/Accuweather/tod_ton_raw && -s /home/davejr/.conky/MyConkyLatest/Accuweather/last_days_raw ]]; then
    
    	#messages - messages_curr
    	sed -n 27p /home/davejr/.conky/MyConkyLatest/Accuweather/tod_ton > /home/davejr/.conky/MyConkyLatest/Accuweather/messages_curr
    	sed -n 31p /home/davejr/.conky/MyConkyLatest/Accuweather/tod_ton >> /home/davejr/.conky/MyConkyLatest/Accuweather/messages_curr
    	sed -n 8p /home/davejr/.conky/MyConkyLatest/Accuweather/tod_ton > /home/davejr/.conky/MyConkyLatest/Accuweather/messages_raw
    	sed -n 13p /home/davejr/.conky/MyConkyLatest/Accuweather/tod_ton >> /home/davejr/.conky/MyConkyLatest/Accuweather/messages_raw
    	sed -n 18p /home/davejr/.conky/MyConkyLatest/Accuweather/tod_ton >> /home/davejr/.conky/MyConkyLatest/Accuweather/messages_raw
    	sed -n 23p /home/davejr/.conky/MyConkyLatest/Accuweather/tod_ton >> /home/davejr/.conky/MyConkyLatest/Accuweather/messages_raw
    	sed -n 3p /home/davejr/.conky/MyConkyLatest/Accuweather/last_days >> /home/davejr/.conky/MyConkyLatest/Accuweather/messages_raw
    	sed -n 8p /home/davejr/.conky/MyConkyLatest/Accuweather/last_days >> /home/davejr/.conky/MyConkyLatest/Accuweather/messages_raw
    	sed -n 13p /home/davejr/.conky/MyConkyLatest/Accuweather/last_days >> /home/davejr/.conky/MyConkyLatest/Accuweather/messages_raw
    	sed -n 18p /home/davejr/.conky/MyConkyLatest/Accuweather/last_days >> /home/davejr/.conky/MyConkyLatest/Accuweather/messages_raw
    	sed -n 23p /home/davejr/.conky/MyConkyLatest/Accuweather/last_days >> /home/davejr/.conky/MyConkyLatest/Accuweather/messages_raw
    	for (( i=1; i<=4; i++))
    		do
    			no=$(sed -n ${i}p /home/davejr/.conky/MyConkyLatest/Accuweather/messages_curr|wc -c)
    			if (( no<=31 )); then
    				sed -i $i"s/$/\n/" /home/davejr/.conky/MyConkyLatest/Accuweather/messages_curr
    				i=$((i+1))
    			elif (( no>31 )); then
    				sed -i $i"s/^\(.\{31\}\)/\1\n/" /home/davejr/.conky/MyConkyLatest/Accuweather/messages_curr
    				i=$((i+1))
    			fi
    		done
    	cat /home/davejr/.conky/MyConkyLatest/Accuweather/messages_raw| cut -c -40 > /home/davejr/.conky/MyConkyLatest/Accuweather/messages
    	for (( i=1; i<=18; i++))
    		do
    			no=$(sed -n ${i}p /home/davejr/.conky/MyConkyLatest/Accuweather/messages|wc -c)
    			if (( no<=21 )); then
    				sed -i $i"s/$/\n/" /home/davejr/.conky/MyConkyLatest/Accuweather/messages
    				i=$((i+1))
    			elif (( no>21 )); then
    				sed -i $i"s/^\(.\{21\}\)/\1\n/" /home/davejr/.conky/MyConkyLatest/Accuweather/messages
    				i=$((i+1))
    			fi
    		done
    		
    fi
    
    
    kill -CONT $(pidof conky)
    these are the images that go with the weather, cropped and squared:
    Forecast_Images.zip

  7. #20127
    Join Date
    Aug 2010
    Location
    Arizona USA
    Beans
    3,001
    Distro
    Ubuntu Development Release

    Re: Post your .conkyrc files w/ screenshots

    Quote Originally Posted by davesbrain View Post
    ...I think I'll just set this right here...
    Gorgeous!
    Intel ® P4 Extreme Edition 3.4 (Gallatin) || DFI ® LanParty PRO875B rev B1
    Crucial ® Ballistix Tracer PC4000 1GB || Mountain Mods U2-UFO Opti-1203
    XFX 7600GT 560M AGP (PV-T73A-UDF3) || Corsair HX520W Modular PSU

  8. #20128
    Join Date
    Jan 2007
    Beans
    Hidden!

    Re: Post your .conkyrc files w/ screenshots

    Quote Originally Posted by davesbrain View Post
    Trying to isolate the albumart mystery, here is a simple conky just for rhythmbox info. I get an error(?) as shown in picture.

    Screenshot-1.png
    Colored in GREEN is what you didn't included when you typed this script in your editor, but what is essential - you omitted $STR string with album and artist name so www.albumart.org returns some garbage instead a link to cover, which in turn makes second wget to go insane because it expects URI as a input, not some garbage text.
    But most of it is because script is not well formated and use BASHizm that's less recognizable. If linuxfanboi would use "$()" as command parser instead of "``", and made some indentation, then it could be easier to figure it out.
    Quote Originally Posted by davesbrain View Post
    ...and the albumart script:
    Code:
    $#!/bin/bash
    fail=`echo "Unknown"`
    artist=`conkyRhythmbox --datatype=AR`
    album=`conkyRhythmbox --datatype=AL`
    str="`echo "$artist $album" | sed -e s/\\ /+/g`"
    if [ "$artist" = "$fail" ]; then
            echo "Rhythmbox is not playing"
            if [ -f /home/davejr/.album ]; then
                    rm /home/davejr/.album
            fi
    else
            wget `wget "http://www.albumart.org/index.php?srchkey=$str&amp;itempage=1&amp;newsearch=1&amp;searchindex=Music" -q -O - | 
            grep "http://www.albumart.org/images/zoom-icon.jpg" -m 1 | 
            sed -e 's/" border="0" class="image_border.*//' |
            sed -e 's/.*img src="//'` -q -O /home/davejr/.album
    fi
    Both are in /home/davejr/.conky/music
    Linux Debian Sid (Minted) x86_64/3.12.10, Conky 2.0_pre, Xorg 7.7/1.15.0, KDE 4.11.5, Lenovo T61, Intel X3100, HITACHI HTS722010K9SA00 100GB, WDC_WD5000BEVT 500GB
    Linux user No.: 483055 | My Conky Pitstop corner | One4All project

  9. #20129
    Join Date
    Jan 2008
    Beans
    130

    Re: Post your .conkyrc files w/ screenshots

    Thank you dk75. I tried your suggestion, but still same thing.

  10. #20130
    Join Date
    Dec 2007
    Location
    Central CA
    Beans
    459
    Distro
    Ubuntu 12.04 Precise Pangolin

    Re: Post your .conkyrc files w/ screenshots

    Quote Originally Posted by davesbrain View Post
    ...I think I'll just set this right here...
    Props to VinDSL, Tobigusgeekus, Wlourf, and MrPeachy
    Oooh! I see the networking stuff I was hoping to add later. Thanks for the timely posting!




Page 2013 of 2348 FirstFirst ... 1013151319131963200320112012201320142015202320632113 ... LastLast

Tags for this Thread

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •