background yes use_xft yes xftfont URW Chancery L:style=Bold:size=10 xftalpha 1 update_interval 1.0 total_run_times 0 own_window yes own_window_transparent yes own_window_argb_visual yes own_window_type normal own_window_hints undecorated,below,skip_taskbar,skip_pager double_buffer yes minimum_size 410 820 maximum_width 410 text_buffer_size 2048 draw_shades no draw_outline no draw_borders no draw_graph_borders no default_color ffffff default_outline_color black alignment tl gap_x 20 gap_y 60 no_buffers yes uppercase no cpu_avg_samples 2 override_utf8_locale yes # Fonctionne uniquement avec les polices Fixes #use_spacer yes imlib_cache_size 0 uppercase no # -- Déclaration template -- # template0 ${lua fDrawImage ~/.conky/conky-meteo/meteo/images/\1 \2 \3 \4 \5} # -- images fond -- # template1 ${lua Meteo_\1 \2 \3 \4 \5 \6} # -- gestion météo --# template2 ${lua Meteo_\1 \2 \3 \4 \5 \6 \7} # -- icônes météo -- \2=répertoire icônes \3=position \4=taille \5=jour (pour les prévisions) # template3 ${lua Lune_\1} template4 ${lua_parse Images_\1 \2 \3 60 \4} # -- Appelle image -- \2=position \3=taille \4=jour (pour les prévisions) # lua_load ~/.conky/conky-meteo/meteo_lua_2/scripts/meteo2.lua lua_load ~/.conky/conky-meteo/meteo_lua_2/scripts/baro.lua lua_draw_hook_pre main lua_load ~/.conky/conky-meteo/meteo_lua_2/scripts/textwriting.lua lua_draw_hook_post draw_text lua_startup_hook init ~/.conky/conky-meteo/meteo6jours/meteo.cfg TEXT #### Heure #### ${template1 Maj} ${voffset -25}${font LED_mono :style=Medium:size=30}${goto 30}${time %H}${goto 80}: ${goto 95}${time %M}${font LED_mono :size=20:style=Medium}${color 808080}${goto 150}${time %S}${font} ##### Date et Saints du jour ##### ${voffset -40}${goto 220}${color yellow}${font URW Chancery L :size=16:style=Bold}${exec date "+%A %d %B %Y"|sed 's/^.\| [a-z]/\U&/g'}${font}${color} ${voffset -1}${goto 250}Aujourd'hui St :${texeci 1000 wget -O - -q http://fetedujour.fr/ --user-agent="Mozilla/5.0 (Windows NT 5.1; rv:31.0) Gecko/20100101 Firefox/31.0" | grep h2 | head -1 | cut -d">" -f2 | cut -d"<" -f1 | cut -d":" -f2 } ##### Heure mise à jour ##### ${voffset 1}${goto 130}Dernière mise à jour : ${template1 Heure} h ${template1 Minute} ##### Ville plus température et condition actuelles ##### ${voffset 10}${goto 15}${font URW Chancery L :size=12 style:bold}${template1 Ville} : ${font} ${voffset 10}${goto 10}${template1 CondMeteo1} ${voffset 15}${goto 10}${template1 CondMeteo2} ${voffset -55}${goto 240}${font URW Chancery L :size=30:style=Bold}${if_match ${template1 TempAct}<5}${color cornflowerblue}${blink ${template1 TempAct}°}${else}${color ffe595}${template1 TempAct}°${endif} ${font} ##### Affichage infos vent ###### ${voffset 50}${color ffffff}Vent : ${template1 VentDirP} Vitesse : ${template1 VentForce} km/h max: ${template1 Jour_VentRafales 1} Km/h Pluie : ${template1 Jour_NivPrec 1} mm Visibilité: ${template1 Visibilite 1} km #### Prévisions six prochaines heures ##### ${voffset -2}${goto 10}${template1 huitHeures_Heure 1} h ${goto 85}${template1 huitHeures_Heure 2} h ${goto 160}${template1 huitHeures_Heure 3} h ${goto 235}${template1 huitHeures_Heure 4} h ${goto 305}${template1 huitHeures_Heure 5} h ${goto 380}${template1 huitHeures_Heure 6} h ${voffset -5}${goto 15}${template1 huitHeures_Temp 1}° ${goto 90}${template1 huitHeures_Temp 2}° ${goto 165}${template1 huitHeures_Temp 3}° ${goto 240}${template1 huitHeures_Temp 4}° ${goto 310}${template1 huitHeures_Temp 5}° ${goto 385}${template1 huitHeures_Temp 6}° ##### Prévisions six prochains jours ##### ${voffset 35}${alignc 95}${template1 Jour %a_%d 2}${alignc 40}${template1 Jour %a_%d 3}${alignc -15}${template1 Jour %a_%d 4}${alignc -72}${template1 Jour %a_%d 5}${alignc -127}${template1 Jour %a_%d 6}${alignc -175}${template1 Jour %a_%d 7} ${voffset -5}${alignc 85}${color cornflowerblue}${template1 Nuit_Temp 2}°${color white} | ${color red}${template1 Jour_Temp 2}° ${alignc 38}${color cornflowerblue}${template1 Nuit_Temp 3}°${color white} | ${color red}${template1 Jour_Temp 3}° ${alignc -20}${color cornflowerblue}${template1 Nuit_Temp 4}°${color white} | ${color red}${template1 Jour_Temp 4}° ${alignc -72}${color cornflowerblue}${template1 Nuit_Temp 5}°${color white} | ${color red}${template1 Jour_Temp 5}°${alignc -128}${color cornflowerblue}${template1 Nuit_Temp 6}°${color white} | ${color red}${template1 Jour_Temp 6}° ${alignc -173}${color cornflowerblue}${template1 Nuit_Temp 7}°${color white} | ${color red}${template1 Jour_Temp 7}°${font}${color} #### Lunaison #### ${voffset 50}${goto 190}${font URW Chancery L:style=Bold:size=20}Lune ${font} ${template1 horsligne} ${voffset -20}Ephéméride : ${goto 110}${template3 ephemerides} Phase : ${goto 110}${template3 Phases} Taux de visibilitée : ${goto 110}${template3 Visibilite } % ${goto 180}Age : ${template3 Age} La Lune se lève à : ${goto 110}${template3 HLeverLune} : ${template3 MLeverLune} ${goto 180}Et se couche à : ${template3 HCoucherLune} : ${template3 MCoucherLune} #### Pression #### ${voffset 10}${goto 160}${font URW Chancery L:style=Bold:size=20}Baromètre${font} ${voffset 150}${goto 185}${template1 Pression 1} mb #### Affichage base #### ${template0 base.png 0 0 420 330} ${template0 base.png 0 335 420 110} ${template0 base.png 0 450 420 200} #### Réduction de la hauteur du conky #### ${voffset -2000} #### Affichage icones condition actuelle et rose des vents #### ${template2 IconeM ~/.conky/conky-meteo/meteo_lua_2/icones 290 80 90 80} ${template2 IconeV ~/.conky/conky-meteo/meteo_lua_2/icones 240 125 40 40} #### Affichage icones prévisions six prochaines heures #### ${template2 huitHeures_IconeM ~/.conky/conky-meteo/meteo_lua_2/icones 1 215 50 40 1} ${template2 huitHeures_IconeM ~/.conky/conky-meteo/meteo_lua_2/icones 70 215 50 40 2} ${template2 huitHeures_IconeM ~/.conky/conky-meteo/meteo_lua_2/icones 145 215 50 40 3} ${template2 huitHeures_IconeM ~/.conky/conky-meteo/meteo_lua_2/icones 220 215 50 40 4} ${template2 huitHeures_IconeM ~/.conky/conky-meteo/meteo_lua_2/icones 295 215 50 40 5} ${template2 huitHeures_IconeM ~/.conky/conky-meteo/meteo_lua_2/icones 365 215 50 40 6} #### Affichage six prochains jours #### ${template2 Jour_IconeM ~/.conky/conky-meteo/meteo_lua_2/icones 1 285 50 40 2} ${template2 Jour_IconeM ~/.conky/conky-meteo/meteo_lua_2/icones 70 285 50 40 3} ${template2 Jour_IconeM ~/.conky/conky-meteo/meteo_lua_2/icones 145 285 50 40 4} ${template2 Jour_IconeM ~/.conky/conky-meteo/meteo_lua_2/icones 220 285 50 40 5} ${template2 Jour_IconeM ~/.conky/conky-meteo/meteo_lua_2/icones 295 285 50 40 6} ${template2 Jour_IconeM ~/.conky/conky-meteo/meteo_lua_2/icones 365 285 50 40 7} #### Affichage image lune #### ${lua fDrawImage /tmp/lune.png 330 360 60 60} ####Affichage baromètre #### ${lua fDrawImage ~/.conky/conky-meteo/meteo_lua_2/icones/icone_meteo/15.png 60 600 60 40} ${lua fDrawImage ~/.conky/conky-meteo/meteo_lua_2/icones/icone_meteo/18.png 70 550 60 40} ${lua fDrawImage ~/.conky/conky-meteo/meteo_lua_2/icones/icone_meteo/13.png 105 500 60 40} ${lua fDrawImage ~/.conky/conky-meteo/meteo_lua_2/icones/icone_meteo/14.png 158 470 60 40} ${lua fDrawImage ~/.conky/conky-meteo/meteo_lua_2/icones/icone_meteo/6.png 220 470 60 40} ${lua fDrawImage ~/.conky/conky-meteo/meteo_lua_2/icones/icone_meteo/4.png 260 500 60 40} ${lua fDrawImage ~/.conky/conky-meteo/meteo_lua_2/icones/icone_meteo/3.png 280 550 60 40} ${lua fDrawImage ~/.conky/conky-meteo/meteo_lua_2/icones/icone_meteo/1.png 280 600 60 40}
--============================================================================== -- baro.lua -- -- author : SLK-adapted by shamen456 -- version : v2011-06-13 -- license : Distributed under the terms of GNU GPL version 2 or later -- --============================================================================== require 'cairo' -------------------------------------------------------------------------------- -- gauge DATA gauge = { { name='cpu', arg='', max_value=1060, sub_value=960, x=205, y=600, graph_radius=60, graph_thickness=10, graph_start_angle=235, graph_unit_angle=2.5, graph_unit_thickness=2., graph_bg_colour=0xFFFFFF, graph_bg_alpha=0.4, graph_fg_colour=0xB1ADA7, graph_fg_alpha=0, hand_fg_colour=0x000000, hand_fg_alpha=.0, txt_radius=0, txt_weight=0, txt_size=10.0, txt_fg_colour=0xFFFFFF, txt_fg_alpha=0, graduation_radius=50, graduation_thickness=8, graduation_mark_thickness=2, graduation_unit_angle=18, graduation_fg_colour=0x4F4B41, graduation_fg_alpha=0, caption='', caption_weight=1, caption_size=8.0, caption_fg_colour=0xFFFFFF, caption_fg_alpha=0.8, }, { name='lua', arg='Meteo_Pression', max_value=1050, sub_value=950, x=205, y=600, graph_radius=30, graph_thickness=70, graph_start_angle=255, graph_unit_angle=2.1, graph_unit_thickness=2., graph_bg_colour=0xFFFFFF, graph_bg_alpha=0.0, graph_fg_colour=0xB1ADA7, graph_fg_alpha=0, hand_fg_colour=0xFF0000, hand_fg_alpha=0.8, txt_radius=20, txt_weight=0, txt_size=10.0, txt_fg_colour=0xFFFFFF, txt_fg_alpha=0, graduation_radius=70, graduation_thickness=8, graduation_mark_thickness=2, graduation_unit_angle=18, graduation_fg_colour=0x4F4B41, graduation_fg_alpha=1, caption='', caption_weight=1, caption_size=8.0, caption_fg_colour=0xFFFFFF, caption_fg_alpha=0.1, }, { name='lua', arg='Meteo_TempRes', max_value=60, sub_value=-30,--valeur de depart du graphe x=175, y=100, graph_radius=20, graph_thickness=40, graph_start_angle=75, graph_unit_angle=2.33, graph_unit_thickness=1.5, graph_bg_colour=0xFFFFFF, graph_bg_alpha=0, graph_fg_colour=0xB1ADA7, graph_fg_alpha=0, hand_fg_colour=0xFF0000, hand_fg_alpha=0, txt_radius=18, txt_weight=1, txt_size=10.0, txt_fg_colour=0xC0C0FF, txt_fg_alpha=0, graduation_radius=20, graduation_thickness=8, graduation_mark_thickness=2, graduation_unit_angle=11.6, graduation_fg_colour=0xffffff, graduation_fg_alpha=0.9, caption='', caption_weight=1, caption_size=8.0, caption_fg_colour=0xFFFFFF, caption_fg_alpha=0.3, }, { name='lua', arg='Meteo_TempAct', max_value=60, sub_value=-30, x=175, y=100, graph_radius=20, graph_thickness=40, graph_start_angle=75, graph_unit_angle=2.33, graph_unit_thickness=1.5, graph_bg_colour=0xFFFFFF, graph_bg_alpha=0., graph_fg_colour=0xB1ADA7, graph_fg_alpha=0, hand_fg_colour=0xff0000, hand_fg_alpha=1, txt_radius=30, txt_weight=1, txt_size=10.0, txt_fg_colour=0xED7F77, txt_fg_alpha=0, graduation_radius=22, graduation_thickness=14, graduation_mark_thickness=2, graduation_unit_angle=23.3, graduation_fg_colour=0xffffff, graduation_fg_alpha=1, caption='', caption_weight=1, caption_size=8.0, caption_fg_colour=0xFFFFFF, caption_fg_alpha=0.9, }, } ------------------------------------------------------------------------------- -- rgb_to_r_g_b -- converts color in hexa to decimal -- function rgb_to_r_g_b(colour, alpha) return ((colour / 0x10000) % 0x100) / 255., ((colour / 0x100) % 0x100) / 255., (colour % 0x100) / 255., alpha end ------------------------------------------------------------------------------- -- angle_to_position -- convert degree to rad and rotate (0 degree is top/north) -- function angle_to_position(start_angle, current_angle) local pos = current_angle + start_angle return ( ( pos * (2 * math.pi / 360) ) - (math.pi / 2) ) end ------------------------------------------------------------------------------- -- draw_gauge_ring -- displays gauges -- function draw_gauge_ring(display, data, value) local max_value = data['max_value']-data['sub_value'] local sub_value = data['sub_value'] local x, y = data['x'], data['y'] local graph_radius = data['graph_radius'] local graph_thickness, graph_unit_thickness = data['graph_thickness'], data['graph_unit_thickness'] local graph_start_angle = data['graph_start_angle'] local graph_unit_angle = data['graph_unit_angle'] local graph_bg_colour, graph_bg_alpha = data['graph_bg_colour'], data['graph_bg_alpha'] local graph_fg_colour, graph_fg_alpha = data['graph_fg_colour'], data['graph_fg_alpha'] local hand_fg_colour, hand_fg_alpha = data['hand_fg_colour'], data['hand_fg_alpha'] local graph_end_angle = (max_value * graph_unit_angle) % 360 -- background ring cairo_arc(display, x, y, graph_radius, angle_to_position(graph_start_angle, 0), angle_to_position(graph_start_angle, graph_end_angle)) cairo_set_source_rgba(display, rgb_to_r_g_b(graph_bg_colour, graph_bg_alpha)) cairo_set_line_width(display, graph_thickness) cairo_stroke(display) -- arc of value local val = (value-sub_value) % (max_value + 1) local start_arc = 0 local stop_arc = 0 local i = 1 while i <= val do start_arc = (graph_unit_angle * i) - graph_unit_thickness stop_arc = (graph_unit_angle * i) cairo_arc(display, x, y, graph_radius, angle_to_position(graph_start_angle, start_arc), angle_to_position(graph_start_angle, stop_arc)) cairo_set_source_rgba(display, rgb_to_r_g_b(graph_fg_colour, graph_fg_alpha)) cairo_stroke(display) i = i + 1 end local angle = start_arc -- hand start_arc = (graph_unit_angle * val) - (graph_unit_thickness * 2) stop_arc = (graph_unit_angle * val) cairo_arc(display, x, y, graph_radius, angle_to_position(graph_start_angle, start_arc), angle_to_position(graph_start_angle, stop_arc)) cairo_set_source_rgba(display, rgb_to_r_g_b(hand_fg_colour, hand_fg_alpha)) cairo_stroke(display) -- graduations marks local graduation_radius = data['graduation_radius'] local graduation_thickness, graduation_mark_thickness = data['graduation_thickness'], data['graduation_mark_thickness'] local graduation_unit_angle = data['graduation_unit_angle'] local graduation_fg_colour, graduation_fg_alpha = data['graduation_fg_colour'], data['graduation_fg_alpha'] if graduation_radius > 0 and graduation_thickness > 0 and graduation_unit_angle > 0 then local nb_graduation = graph_end_angle / graduation_unit_angle local i = 0 while i < nb_graduation do cairo_set_line_width(display, graduation_thickness) start_arc = (graduation_unit_angle * i) - (graduation_mark_thickness / 2) stop_arc = (graduation_unit_angle * i) + (graduation_mark_thickness / 2) cairo_arc(display, x, y, graduation_radius, angle_to_position(graph_start_angle, start_arc), angle_to_position(graph_start_angle, stop_arc)) cairo_set_source_rgba(display,rgb_to_r_g_b(graduation_fg_colour,graduation_fg_alpha)) cairo_stroke(display) cairo_set_line_width(display, graph_thickness) i = i + 1 end end -- text local txt_radius = data['txt_radius'] local txt_weight, txt_size = data['txt_weight'], data['txt_size'] local txt_fg_colour, txt_fg_alpha = data['txt_fg_colour'], data['txt_fg_alpha'] local movex = txt_radius * math.cos(angle_to_position(graph_start_angle, angle)) local movey = txt_radius * math.sin(angle_to_position(graph_start_angle, angle)) cairo_select_font_face (display, "ubuntu", CAIRO_FONT_SLANT_NORMAL, txt_weight) cairo_set_font_size (display, txt_size) cairo_set_source_rgba (display, rgb_to_r_g_b(txt_fg_colour, txt_fg_alpha)) cairo_move_to (display, x + movex - (txt_size / 2), y + movey + 3) cairo_show_text (display, value) cairo_stroke (display) -- caption local caption = data['caption'] local caption_weight, caption_size = data['caption_weight'], data['caption_size'] local caption_fg_colour, caption_fg_alpha = data['caption_fg_colour'], data['caption_fg_alpha'] local tox = graph_radius * (math.cos((graph_start_angle * 2 * math.pi / 360)-(math.pi/2))) local toy = graph_radius * (math.sin((graph_start_angle * 2 * math.pi / 360)-(math.pi/2))) cairo_select_font_face (display, "ubuntu", CAIRO_FONT_SLANT_NORMAL, caption_weight); cairo_set_font_size (display, caption_size) cairo_set_source_rgba (display, rgb_to_r_g_b(caption_fg_colour, caption_fg_alpha)) cairo_move_to (display, x + tox + 5, y + toy + 1) -- bad hack but not enough time ! if graph_start_angle < 105 then cairo_move_to (display, x + tox - 30, y + toy + 1) end cairo_show_text (display, caption) cairo_stroke (display) end ------------------------------------------------------------------------------- -- go_gauge_rings -- loads data and displays gauges -- function go_gauge_rings(display) local function load_gauge_rings(display, data) local str, value = '', 0 str = string.format('${%s %s}',data['name'], data['arg']) str = conky_parse(str) value = tonumber(str) draw_gauge_ring(display, data, value) end for i in pairs(gauge) do load_gauge_rings(display, gauge[i]) end end ------------------------------------------------------------------------------- -- MAIN function conky_main() if conky_window == nil then return end local cs = cairo_xlib_surface_create(conky_window.display, conky_window.drawable, conky_window.visual, conky_window.width, conky_window.height) local display = cairo_create(cs) local updates = conky_parse('${updates}') update_num = tonumber(updates) if update_num > 5 then go_gauge_rings(display) end end
--[[circlewriting by mrpeachy (2010)]] require 'cairo' function addzero100(num) if tonumber(num) < 10 then return "00" .. num elseif tonumber(num) <100 then return "0" .. num else return num end end 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 circlewriting(cr, text, font, fsize, radi, horiz, verti, tred, tgreen, tblue, talpha, start, finish, var1) local inum=string.len(text) range=finish deg=(finish-start)/(inum-1) degrads=1*(math.pi/180) local textcut=string.gsub(text, ".", "%1@@@") texttable=string.split(textcut, "@@@") for i = 1,inum do ival=i interval=(degrads*(start+(deg*(i-1))))+var1 interval2=degrads*(start+(deg*(i-1))) txs=0+radi*(math.sin(interval)) tys=0-radi*(math.cos(interval)) cairo_select_font_face (cr, font, CAIRO_FONT_SLANT_NORMAL, CAIRO_FONT_WEIGHT_NORMAL); cairo_set_font_size (cr, fsize); cairo_set_source_rgba (cr, tred, tgreen, tblue, talpha); cairo_move_to (cr, txs+horiz, tys+verti); cairo_rotate (cr, interval2) cairo_show_text (cr, (texttable[i])) cairo_stroke (cr) cairo_rotate (cr, -interval2) end end function circlewritingdown(cr, text, font, fsize, radi, horiz, verti, tred, tgreen, tblue, talpha, start, finish, var1) local inum=string.len(text) deg=(start-finish)/(inum-1) degrads=1*(math.pi/180) local textcut=string.gsub(text, ".", "%1@@@") texttable=string.split(textcut, "@@@") for i = 1,inum do ival=i interval=(degrads*(start-(deg*(i-1))))+var1 interval2=degrads*(start-(deg*(i-1))) txs=0+radi*(math.sin(interval)) tys=0-radi*(math.cos(interval)) cairo_select_font_face (cr, font, CAIRO_FONT_SLANT_NORMAL, CAIRO_FONT_WEIGHT_NORMAL); cairo_set_font_size (cr, fsize); cairo_set_source_rgba (cr, tred, tgreen, tblue, talpha); cairo_move_to (cr, txs+horiz, tys+verti); cairo_rotate (cr, interval2+(180*math.pi/180)) cairo_show_text (cr, (texttable[i])) cairo_stroke (cr) cairo_rotate (cr, -interval2-(180*math.pi/180)) end end function conky_draw_text() local updates=conky_parse('${updates}') update_num=tonumber(updates) if update_num > 5 then if conky_window==nil then return end local w=conky_window.width local h=conky_window.height local cs=cairo_xlib_surface_create(conky_window.display, conky_window.drawable, conky_window.visual, w, h) cr=cairo_create(cs) --circlewriting variable cpu=tonumber(conky_parse('${cpu}')) --text must be in quotes text=("Tempete - Pluie - Variable - Beau - Tres Sec") --text=("Stormy - Rain - Change - Fair - Very Dry") --font name must be in quotes font="URW Chancery L" fontsize=15 radius=80 positionx=205 positiony=600 colorred=1 colorgreen=1 colorblue=1 coloralpha=1 --to set start and finish values for circlewriting, if the text will cross 0 degrees then you must calculate for 360+finish degrees --eg if you want to go from 270 to 90, then you will input 270 to 450. Finish has to be greater than start. start=-115 finish=115 letterposition=0 circlewriting(cr, text, font, fontsize, radius, positionx, positiony, colorred, colorgreen, colorblue, coloralpha, start, finish, letterposition) --circlewritingdown variables --mem=tonumber(conky_parse('${memperc}')) --text must be in quotes text=(" 0 ") --font name must be in quotes font="URW Chancery L" fontsize=12 radius=48 positionx=175 positiony=100 colorred=1 colorgreen=1 colorblue=1 coloralpha=1 --to set start and finish values for circlewritingdown, if the text will cross 0 degrees then you must calculate for 0-finish degrees --eg if you want to go from 90 to 270, then you will input 90 to -90. Start has to be greater than finish start=150 finish=144 letterposition=0 circlewritingdown(cr, text, font, fontsize, radius, positionx, positiony, colorred, colorgreen, colorblue, coloralpha, start, finish, letterposition) text=("50") font="URW Chancery L" fontsize=12 radius=48 positionx=175 positiony=100 colorred=1 colorgreen=1 colorblue=1 coloralpha=1 start=268 finish=262 letterposition=0 circlewritingdown(cr, text, font, fontsize, radius, positionx, positiony, colorred, colorgreen, colorblue, coloralpha, start, finish, letterposition) text=("40") font="URW Chancery L" fontsize=12 radius=48 positionx=175 positiony=100 colorred=1 colorgreen=1 colorblue=1 coloralpha=1 start=245 finish=239 letterposition=0 circlewritingdown(cr, text, font, fontsize, radius, positionx, positiony, colorred, colorgreen, colorblue, coloralpha, start, finish, letterposition) text=("30") font="URW Chancery L" fontsize=12 radius=48 positionx=175 positiony=100 colorred=1 colorgreen=1 colorblue=1 coloralpha=1 start=222 finish=216 letterposition=0 circlewritingdown(cr, text, font, fontsize, radius, positionx, positiony, colorred, colorgreen, colorblue, coloralpha, start, finish, letterposition) text=("20") font="URW Chancery L" fontsize=12 radius=48 positionx=175 positiony=100 colorred=1 colorgreen=1 colorblue=1 coloralpha=1 start=199 finish=193 letterposition=0 circlewritingdown(cr, text, font, fontsize, radius, positionx, positiony, colorred, colorgreen, colorblue, coloralpha, start, finish, letterposition) text=("10") font="URW Chancery L" fontsize=12 radius=48 positionx=175 positiony=100 colorred=1 colorgreen=1 colorblue=1 coloralpha=1 start=176 finish=170 letterposition=0 circlewritingdown(cr, text, font, fontsize, radius, positionx, positiony, colorred, colorgreen, colorblue, coloralpha, start, finish, letterposition) text=("-10") font="URW Chancery L" fontsize=12 radius=48 positionx=175 positiony=100 colorred=1 colorgreen=0 colorblue=0 coloralpha=1 start=134 finish=124 letterposition=0 circlewritingdown(cr, text, font, fontsize, radius, positionx, positiony, colorred, colorgreen, colorblue, coloralpha, start, finish, letterposition) text=("-20") font="URW Chancery L" fontsize=12 radius=48 positionx=175 positiony=100 colorred=1 colorgreen=0 colorblue=0 coloralpha=1 start=112 finish=99 letterposition=0 circlewritingdown(cr, text, font, fontsize, radius, positionx, positiony, colorred, colorgreen, colorblue, coloralpha, start, finish, letterposition) end end
background yes use_xft yes xftfont URW Chancery L:style=Bold:size=10 xftalpha 1 update_interval 1.0 total_run_times 0 own_window yes own_window_transparent yes own_window_argb_visual yes own_window_type normal own_window_hints undecorated,below,skip_taskbar,skip_pager double_buffer yes minimum_size 410 145 maximum_width 410 text_buffer_size 2048 draw_shades no draw_outline no draw_borders no draw_graph_borders no default_color ffffff default_outline_color black alignment tl gap_x 0 gap_y 720 no_buffers yes uppercase no cpu_avg_samples 2 override_utf8_locale yes # Fonctionne uniquement avec les polices Fixes #use_spacer yes imlib_cache_size 0 uppercase no # -- Déclaration template -- # template0 ${lua fDrawImage ~/.conky/conky-meteo/meteo/images/\1 \2 \3 \4 \5} # -- images fond -- # template1 ${lua Meteo_\1 \2 \3 \4 \5 \6} # -- gestion météo --# template2 ${lua Meteo_\1 \2 \3 \4 \5 \6 \7} # -- icônes météo -- \2=répertoire icônes \3=position \4=taille \5=jour (pour les prévisions) # template3 ${lua Lune_\1} template4 ${lua_parse Images_\1 \2 \3 60 \4} # -- Appelle image -- \2=position \3=taille \4=jour (pour les prévisions) # lua_load ~/.conky/conky-meteo/meteo_lua_2/scripts/meteo2.lua lua_startup_hook init ~/.conky/conky-meteo/meteo6jours/meteo.cfg color1 lightgreen color2 ff2121 TEXT ${voffset -30}${goto 100}${font URW Chancery L:style=Bold:size=20}Pression Atmospherique ${if_gw}${execi 1200 bash ~/.conky/barograph/barognuplot.sh }${endif}# ${image ~/.conky/barograph/graph.png -s 285x150 -p 50,10 -n}# ${font URW Chancery L:style=Bold:size=8}}# ${voffset -15}${goto 50}${color1} 40 ° ${goto 320}${color2}1040mb ${voffset 06} ${goto 50}${color1} 20 ° ${goto 320}${color2}1020mb ${voffset 05} ${goto 50}${color1} 0 ° ${goto 320}${color2}1000mb ${voffset 09} ${goto 50}${color1}-10 ° ${goto 320}${color2} 980mb ${voffset 06} ${goto 50}${color1}-20 ° ${goto 320}${color2} 960mb ${template0 base.png 0 0 420 155} ${lua fDrawImage ~/.conky/barograph/white.png 70 140 245 12} ${voffset -800}
#!/bin/bash ## files LOG="$HOME/.conky/barograph/ListePression.log" GRAPH="$HOME/.conky/barograph/graph.png" ## Verifier argument ##Infos generales DATE=$(date +"%s") DATE1WEEK=$(date --date="1 week ago" +"%s") # liste des dates de releve du fichier log EPOCH=() while read do EPOCH+=( "$REPLY" ) done< <(awk '{print $1}' "$LOG") # si le fichier existe et contient des valeurs de plus d'une semaine (premiere = plus vieille) #supprimer premiere valeur [[ -f $LOG ]] && { for i in $(seq 0 $(($(wc -l < $LOG)-1))) do [[ $DATE1WEEK -gt ${EPOCH[$i]} ]] && sed -i '1d' $LOG || break done } ## Conversion en hectopascal et soustraction de la pression moyenne pour ramener l'axe a zero PR_HP=`awk '/Pression: / {print int($2)}' ~/.conky/conky-meteo/meteo6jours/reptravail/CC` TEMP=`awk '/Temp: / {print int($2)}' ~/.conky/conky-meteo/meteo6jours/reptravail/CC` PR_CALC=$(bc << EOF scale=0 $PR_HP - 1000 EOF ) echo "$DATE $PR_CALC $TEMP" >> $LOG gnuplot <<EOF set border linewidth 2.5 set terminal png enhanced size 300,170 transparent #font "Ubuntu,10" 400,350 set term png font "URW Chancery L:style=Bold,14" set output "$GRAPH" unset key set grid set xzeroaxis lt 3 lw 1 set yzeroaxis set ytics ("" -40, "" -20, "" 20, "" 40) set mxtics 0 set xdata time set timefmt "%s" set xtics 86400 set format x "%d" set style line 1 lw 2 set style line 2 lw 2 plot ["$DATE1WEEK":"$DATE"] [-40:50] "$LOG" using 1:3 with lines ls 2, "$LOG" using 1:2 with lines ls 1 EOF exit 0
${voffset -20}${font URW Chancery L:style=Bold:size=14}${alignc}${execpi 30 /home/romuald/.conky/blanc/talktime_fr.sh} ${alignc}${if_match ${time %u} == 1}lundi${else}\ ${if_match ${time %u} == 2}mardi${else}\ ${if_match ${time %u} == 3}mercredi${else}\ ${if_match ${time %u} == 4}jeudi${else}\ ${if_match ${time %u} == 5}vendredi${else}\ ${if_match ${time %u} == 6}samedi${else}\ dimanche${endif}${endif}${endif}${endif}${endif}${endif} \ ${if_match ${time %e} <= 9}${time %e}${else}${time %d}${endif} \ ${if_match ${time %m} == 01}janvier${else}\ ${if_match ${time %m} == 02}février${else}\ ${if_match ${time %m} == 03}mars${else}\ ${if_match ${time %m} == 04}avril${else}\ ${if_match ${time %m} == 05}mai${else}\ ${if_match ${time %m} == 06}juin${else}\ ${if_match ${time %m} == 07}juillet${else}\ ${if_match ${time %m} == 08}août${else}\ ${if_match ${time %m} == 09}septembre${else}\ ${if_match ${time %m} == 10}octobre${else}\ ${if_match ${time %m} == 11}novembre${else}\ décembre${endif}${endif}${endif}${endif}${endif}${endif}${endif}${endif}${endif}${endif}${endif} \ ${time %Y}
#!/bin/sh # DC's english time 07/07/09 # Tweaked by Sector11 # Converted to French by Sector11 with help from ragamatrix # find current time t_hr=$(date +%-H) #echo $t_hr t_min=$(date +%-M) #echo $t_min #t_hr=9 #tester #t_min=17 #tester # is it time to ONE ( the only wierd case) if [ $t_hr -eq 12 ] && [ $t_min -gt 32 ] ;then # what minute is it case $t_min in 33|34|35|36|37) echo une heure moins vingt-cinq ;; 38|39|40|41|42) echo une heure moins vingt ;; 43|44|45|46|47) echo une heure moins le quart ;; 48|49|50|51|52) echo une heure moins dix ;; 53|54|55|56|57|58|59) echo une heure moins cinq ;; 58|59) echo presque une heure esac exit fi #echo $t_hr #add one hour for the "to" hour if [ $t_min -gt 32 ] ; then t_hr=$(($t_hr + 1)) # override t_hr fi #echo $t_hr # find out what hour it is and change into text case $t_hr in 0) t_hr_text=minuit ;; 1) t_hr_text="une heure" ;; 2) t_hr_text="deux heure" ;; 3) t_hr_text="trois heure" ;; 4) t_hr_text="quatre heure" ;; 5) t_hr_text="cinq heure" ;; 6) t_hr_text="six heure" ;; 7) t_hr_text="sept heure" ;; 8) t_hr_text="huit heure" ;; 9) t_hr_text="neuf heure" ;; 10) t_hr_text="dix heure" ;; 11) t_hr_text="onze heure" ;; 12) t_hr_text=midi ;; 13) t_hr_text="treize heure" ;; 14) t_hr_text="quatorze heure" ;; 15) t_hr_text="quinze heure" ;; 16) t_hr_text="seize heure" ;; 17) t_hr_text="dix-sept heure" ;; 18) t_hr_text="dix-huit heure" ;; 19) t_hr_text="dix-neuf heure" ;; 20) t_hr_text="vingt heure" ;; 21) t_hr_text="vingt et une heure" ;; 22) t_hr_text="vingt-deux heure" ;; 23) t_hr_text="vingt-trois heure" ;; esac # what minute is it case $t_min in 0|1|2) echo $t_hr_text ;; 3|4|5|6|7) echo $t_hr_text cinq ;; 8|9|10|11|12) echo $t_hr_text dix ;; 13|14|15|16|17) echo $t_hr_text un quart ;; 18|19|20|21|22) echo $t_hr_text vingt ;; 23|24|25|26|27) echo $t_hr_text vingt-cinq;; 28|29|30|31|32) echo $t_hr_text et demie ;; 33|34|35|36|37) echo $t_hr_text moins vingt-cinq ;; 38|39|40|41|42) echo $t_hr_text moins vingt ;; 43|44|45|46|47) echo $t_hr_text moins le quart ;; 48|49|50|51|52) echo $t_hr_text moins dix ;; 53|54|55|56|57) echo $t_hr_text moins cinq ;; 58|59) echo ± $t_hr_text ;; esac
${if_running amarok}Amarok: ${voffset 3}${stippled_hr 1} ${execi 10 ~/.conky/amarok/getcover} ${execi 10 ~/.conky/amarok/Amarok artist} ${execi 10 ~/.conky/amarok/Amarok title} ${execi 10 ~/.conky/amarok/Amarok year} ${execi 1 ~/.conky/amarok/Amarok time} ${execibar 1 ~/.conky/amarok/Amarok progress} ${image ~/.conky/cover.png -p 55,185 -s 200x200 -n} $endif
#!/bin/bash # get Amarok cover art of current track and transform into an album stack # copypasta from http://www.imagemagick.org/Usage/thumbnails/#polaroid # thanks to eightmillion for completely rewriting the script # http://ubuntuforums.org/showpost.php?p=8117609&postcount=9846 # edited by fireandfuel # requires: amarok >= 2.0, dbus, libqt4-dbus, perl # Temp directory must be full path. tempdir="$HOME/.conky/" tempfile="${tempdir}nowplaying" [ -d "$tempdir" ] || mkdir -p "$tempdir" #test if $tempdir exists, if not create it. [ -e "$tempfile" ] || touch "$tempfile" cover="$(qdbus org.kde.amarok /Player GetMetadata | grep arturl: | cut -c 16- | perl -MURI::Escape -lne 'print uri_unescape($_)')" if [[ -z "$cover" ]]; then #test if $cover was set, if not copy nocover.png to cover.png . hash=0 read oldhash < "$tempfile" cover="${tempdir}nocover.png" if [ "$oldhash" == "$hash" ];then : else cp "${cover}" "${tempdir}cover.png" echo 0 > "$tempfile" fi else hash=$(echo "$cover" | md5sum | cut -d" " -f 1) #Generate hash for current song. read oldhash < "$tempfile" if [ "$oldhash" == "$hash" ];then : else convert "${cover}" -resize 200x200 "${tempdir}cover.png" echo $hash > "$tempfile" fi fi exit
#!/bin/bash PROG_NAME1="conky -c /home/$USER/.conky/audacious/conkyrc"# Nom du programme à démarrer/arrêter. PROG_NAME2="/usr/bin/audacious" # Nom du programme à démarrer/arrêter. PROCESSPID1=$(pgrep -f /home/$USER/.conky/audacious/conkyrc)# Récupère le PID du processus. PROCESSPID2=$(pgrep -f "usr/bin/audacious")# Récupére le PID du processus. if [[ "$PROCESSPID1" != "" && "$PROCESSPID2" != "" ]]; then# Si les deux processus existe alors on le(s) kill. kill $PROCESSPID1 && echo "Stop $PROG_NAME1 (PID: $PROCESSPID1)" kill $PROCESSPID2 && echo "Stop $PROG_NAME2 (PID: $PROCESSPID2)" else# Si aucun processus on démarre le programme. kill $PROCESSPID1 $PROG_NAME1 & echo "Start $PROG_NAME1" kill $PROCESSPID2 $PROG_NAME2 & echo "Start $PROG_NAME2" if [[ "$PROCESSPID1" == "" || "$PROCESSPID2" == "" ]]; then# Si un des processus n'existe pas alors on le(s) kill. kill $PROCESSPID1 && echo "Stop $PROG_NAME1 (PID: $PROCESSPID1)" kill $PROCESSPID2 && echo "Stop $PROG_NAME2 (PID: $PROCESSPID2)" echo "Il y a eu un souci au lancement tout a été coupé" fi fi exit 0
background yes use_xft yes xftfont URW Chancery L:style=Bold:size=11 xftalpha 1 update_interval 1.0 total_run_times 0 own_window yes own_window_transparent yes #own_window_color 000000 own_window_argb_visual yes #own_window_argb_value 0 own_window_type normal own_window_hints undecorated,below,skip_taskbar,skip_pager,sticky double_buffer yes minimum_size 250 250 maximum_width 250 text_buffer_size 2048 draw_shades no draw_outline no draw_borders no draw_graph_borders no default_color white default_outline_color white alignment top_right gap_x 0 gap_y 150 no_buffers yes uppercase no cpu_avg_samples 2 override_utf8_locale yes imlib_cache_size 0 # Fonctionne uniquement avec les polices Fixes #use_spacer yes # Taille des pointillés stippled_borders 5 # Couleurs default_color FFFFFF #blanc default_shade_color 333333 default_outline_color black color1 ffffff # color2 e8e8e8 # color3 6495ee # color4 cacaca # color5 e7e7e7 # color6 red lua_load ~/.conky/draw_bg/draw_bg.lua TEXT ${voffset -30}${font URW Chancery L:style=Bold:size=20}${alignc}Radiotray ${font}${lua conky_draw_bg 0 60 140 120 120 0x000000 0.99} ${texeci 60 ~/.conky/radiotray/loungeradio.sh} Radio : ${alignc}${font URW Chancery L:style=Bold:size=14}${execi 10 qdbus net.sourceforge.radiotray /net/sourceforge/radiotray net.sourceforge.radiotray.getCurrentRadio}$font En ce moment : ${font URW Chancery L:style=Bold:size=10}${execi 10 qdbus net.sourceforge.radiotray /net/sourceforge/radiotray getCurrentMetaData| fold -s -w40} ${if_match "${execi 10 qdbus net.sourceforge.radiotray /net/sourceforge/radiotray net.sourceforge.radiotray.getCurrentRadio}" == "RTL"}${image ~/.conky/radiotray/rtl.png -p 55,135 -s 120x120 -n}${else} ${if_match "${execi 10 qdbus net.sourceforge.radiotray /net/sourceforge/radiotray net.sourceforge.radiotray.getCurrentRadio}" == "RTL2"}${image ~/.conky/radiotray/rtl2.jpg -p 55,135 -s 120x120 -n}${else} ${if_match "${execi 10 qdbus net.sourceforge.radiotray /net/sourceforge/radiotray net.sourceforge.radiotray.getCurrentRadio}" == "HOTMIX80"}${image ~/.conky/radiotray/Hotmixradio-80.jpg -p 55,135 -s 120x120 -n}${else} ${if_match "${execi 10 qdbus net.sourceforge.radiotray /net/sourceforge/radiotray net.sourceforge.radiotray.getCurrentRadio}" == "MAXI80"}${image ~/.conky/radiotray/maxi80.jpg -p 55,135 -s 120x120 -n}${else} ${if_match "${execi 10 qdbus net.sourceforge.radiotray /net/sourceforge/radiotray net.sourceforge.radiotray.getCurrentRadio}" == "LOUNGERADIO"}${image ~/.conky/radiotray/loungeradio.jpg -p 55,135 -s 120x120 -n}${endif} ${endif}${endif}${endif}${endif}
#!/bin/bash #pulling info from loung-radio.com for conky by nlinedesignz(at)web(dot)de 2013 wget http://www.lounge-radio.com/code/pushed_files/now.html -O ~/.conky/radiotray/loungeradio.html >/dev/null 2>&1 && #artist=$(awk '/id="artist"/{getline; print}' ~/.conky/radiotray/loungeradio.html | sed "s/<div>\|<\/div>//g") #album=$(awk '/id="album"/{getline; print}' ~/.conky/radiotray/loungeradio.html | sed "s/<div>\|<\/div>//g") #track=$(awk '/id="track"/{getline; print}' ~/.conky/radiotray/loungeradio.html | sed "s/<div>\|<\/div>//g") wget "http://www.lounge-radio.com/code/pushed_files/$(awk '/id="covercontainer"/{print}' ~/.conky/radiotray/loungeradio.html | sed -r 's/.*src="(.*)" width=.*/\1/')" -O ~/.conky/radiotray/loungeradio.jpg >/dev/null 2>&1 && #echo '${image ~/loungeradio.jpg -p 42,42 -s 123x123 }'; #echo 'Artiste:' $artist #echo ' Titre:' $track #echo ' Album:' $album exit
background yes use_xft yes xftfont URW Chancery L:style=Bold:size=11 xftalpha 1 update_interval 1.0 total_run_times 0 own_window yes own_window_transparent yes #own_window_color 000000 own_window_argb_visual yes #own_window_argb_value 0 own_window_type normal own_window_hints undecorated,below,skip_taskbar,skip_pager,sticky double_buffer yes minimum_size 250 250 maximum_width 250 text_buffer_size 2048 draw_shades no draw_outline no draw_borders no draw_graph_borders no default_color white default_outline_color white alignment top_right gap_x 0 gap_y 600 no_buffers yes uppercase no cpu_avg_samples 2 override_utf8_locale yes imlib_cache_size 0 # Fonctionne uniquement avec les polices Fixes #use_spacer yes # Taille des pointillés stippled_borders 5 # Couleurs default_color FFFFFF #blanc default_shade_color 333333 default_outline_color black color1 ffffff lua_load ~/.conky/conky-meteo/meteo_lua_2/scripts/meteo2.lua TEXT ${voffset -30}${font URW Chancery L:style=Bold:size=20}${alignc}Radiotray ${font} Radio : ${alignc}${font URW Chancery L:style=Bold:size=12}${execi 10 qdbus net.sourceforge.radiotray /net/sourceforge/radiotray net.sourceforge.radiotray.getCurrentRadio}$font ${alignc}${voffset 50}En ce moment : ${font URW Chancery L:style=Bold:size=10}${execi 10 qdbus net.sourceforge.radiotray /net/sourceforge/radiotray getCurrentMetaData| fold -s -w40 } ${execi 10 qdbus net.sourceforge.radiotray /net/sourceforge/radiotray getCurrentMetaData| fold -s -w40 > ~/.conky/radiotray/artiste_titre.txt} ${if_match "${execi 10 qdbus net.sourceforge.radiotray /net/sourceforge/radiotray net.sourceforge.radiotray.getCurrentRadio}" == "RTL"}${lua fDrawImage ~/.conky/radiotray/logos/rtl.png 100 50 50 50}${else} ${if_match "${execi 10 qdbus net.sourceforge.radiotray /net/sourceforge/radiotray net.sourceforge.radiotray.getCurrentRadio}" == "HOTMIX80"}${lua fDrawImage ~/.conky/radiotray/logos/hotmix-80.png 100 50 50 50}${else} ${if_match "${execi 10 qdbus net.sourceforge.radiotray /net/sourceforge/radiotray net.sourceforge.radiotray.getCurrentRadio}" == "MAXI80"}${lua fDrawImage ~/.conky/radiotray/logos/maxi80.png 100 50 50 50}${else} ${if_match "${execi 10 qdbus net.sourceforge.radiotray /net/sourceforge/radiotray net.sourceforge.radiotray.getCurrentRadio}" == "RTL2"}${lua fDrawImage ~/.conky/radiotray/logos/rtl2.png 100 50 50 50}${else} ${if_match "${execi 10 qdbus net.sourceforge.radiotray /net/sourceforge/radiotray net.sourceforge.radiotray.getCurrentRadio}" == "MAGNUM LA RADIO"}${lua fDrawImage ~/.conky/radiotray/logos/magnumradio.png 40 50 150 50}${else} ${if_match "${execi 10 qdbus net.sourceforge.radiotray /net/sourceforge/radiotray net.sourceforge.radiotray.getCurrentRadio}" == "LOUNGERADIO"}${lua fDrawImage ~/.conky/radiotray/logos/image.png 100 50 50 50}${else} ${if_match "${execi 10 qdbus net.sourceforge.radiotray /net/sourceforge/radiotray net.sourceforge.radiotray.getCurrentRadio}" == "RFM"}${lua fDrawImage ~/.conky/radiotray/logos/rfm.png 100 50 50 50}${endif} ${endif}${endif}${endif}${endif}${endif}${endif} ${execi 10 ~/.conky/radiotray/pochette.sh} ${lua fDrawImage ~/.conky/radiotray/pochette.png 80 150 100 100} ${voffset -1000}
#bin/bash titre=$(head -1 ~/.conky/radiotray/artiste_titre.txt) lienMiniature=$(wget -U'Googlebot-Image/1.0' -qO - "www.google.fr/search?q=$titre\&tbm=isch" | perl -pe 's!.*?<img .*?src="([^"]*)".*!$1!') wget -qO miniatureGoogleImage $lienMiniature convert ~/miniatureGoogleImage ~/.conky/radiotray/pochette.png
-- De Didier-T require 'cairo' home = os.getenv ('HOME') --Fonction d'affichage function conky_fDrawImage(path,x,y,w,h,arc) path = string.gsub(path, "~", home) path = string.gsub(path, "$HOME", home) local cs = cairo_xlib_surface_create(conky_window.display, conky_window.drawable, conky_window.visual, conky_window.width, conky_window.height) local function fDrawImage(path,x,y,w,h,arc) x=x+(w/2) y=y+(h/2) local img = cairo_image_surface_create_from_png(path) local w_img, h_img = cairo_image_surface_get_width (img), cairo_image_surface_get_height (img) local cr = cairo_create (cs) cairo_translate (cr, x, y) if arc then cairo_rotate (cr, arc) end cairo_scale (cr, w/w_img, h/h_img) cairo_set_source_surface (cr, img, -w_img/2, -h_img/2) cairo_paint (cr) cairo_destroy(cr) cairo_surface_destroy (img) end fDrawImage(path,x,y,w,h,arc) cairo_surface_destroy(cs) return "" end
#!/bin/bash
PROG_NAME1="conky -c /home/$USER/.conky/moc/conkyrc"# Nom du programme à démarrer/arrêter.
PROG_NAME2="/usr/bin/konsole -e /usr/bin/mocp" # Nom du programme à démarrer/arrêter.
PROCESSPID1=$(pgrep -f /home/$USER/.conky/moc/conkyrc)# Récupère le PID du processus.
PROCESSPID2=$(pgrep -f "/usr/bin/mocp")# Récupére le PID du processus.
if [[ "$PROCESSPID1" != "" && "$PROCESSPID2" != "" ]]; then# Si les deux processus existe alors on le(s) kill.
kill $PROCESSPID1 && echo "Stop $PROG_NAME1 (PID: $PROCESSPID1)"
kill $PROCESSPID2 && echo "Stop $PROG_NAME2 (PID: $PROCESSPID2)"
else# Si aucun processus on démarre le programme.
kill $PROCESSPID1
$PROG_NAME1 &
echo "Start $PROG_NAME1"
kill $PROCESSPID2
$PROG_NAME2 &
echo "Start $PROG_NAME2"
if [[ "$PROCESSPID1" == "" || "$PROCESSPID2" == "" ]]; then# Si un des processus n'existe pas alors on le(s) kill.
kill $PROCESSPID1 && echo "Stop $PROG_NAME1 (PID: $PROCESSPID1)"
kill $PROCESSPID2 && echo "Stop $PROG_NAME2 (PID: $PROCESSPID2)"
echo "Il y a eu un souci au lancement tout a été coupé"
fi
fi
exit 0
background yes
use_xft yes
xftfont URW Chancery L:style=Bold:size=10
xftalpha 1
update_interval 1.0
total_run_times 0
own_window yes
own_window_transparent yes
own_window_argb_visual yes
own_window_type normal
own_window_hints undecorated,below,skip_taskbar,skip_pager
double_buffer yes
minimum_size 310 500
maximum_width 310
text_buffer_size 2048
draw_shades no
draw_outline no
draw_borders no
draw_graph_borders no
default_color ffffff #ffd579
default_outline_color black
default_bar_size 230 6
alignment tl
gap_x 0
gap_y 200
no_buffers yes
uppercase no
cpu_avg_samples 2
override_utf8_locale yes
# Fonctionne uniquement avec les polices Fixes
#use_spacer yes
imlib_cache_size 0
uppercase no
TEXT
${font URW Chancery L:style=Bold:size=20}${alignc}Music On Console $font
Artiste : ${goto 150}${moc_artist}
Album : ${goto 150}${moc_album}
Titre : ${goto 150}${moc_song}
${goto 40}${execbar mocp -Q '%cs/%ts*100' | bc -l}
${voffset -20}0:00 ${goto 280}${moc_totaltime}
${goto 140}${moc_curtime}
sed -i -e 's/Clear/Dégagé/' $HOME/1_accuweather/curr_cond-fr
sed -i -e 's/Fog/Brouillard/' $HOME/1_accuweather/curr_cond-fr
background yes use_xft yes xftfont GE Inspira:size=9 xftalpha 1 update_interval 1.0 total_run_times 0 own_window yes own_window_transparent yes own_window_argb_visual yes own_window_type normal own_window_hints undecorated,below,skip_taskbar,skip_pager double_buffer yes minimum_size 450 440 maximum_width 455 text_buffer_size 2048 draw_shades no draw_outline no draw_borders no draw_graph_borders no default_color white #dbc38f default_outline_color black alignment tl gap_x 60 gap_y 60 no_buffers yes uppercase no cpu_avg_samples 2 override_utf8_locale yes # Fonctionne uniquement avec les polices Fixes #use_spacer yes imlib_cache_size 0 uppercase no color7 6495ee color9 red lua_load ~/.conky/lua/image.lua TEXT ${execi 600 bash $HOME/1_accuweather/1_accuweather -f -h} #### Prelier cadre #### ${voffset -30}${font LED_mono :style=Medium:size=55}${color 434343}${goto 27}${time %H}${goto 138}${time %M}${font LED_mono :size=20:style=Medium}${color 808080}${goto 235}${time %S}$font #### Date #### ${voffset -30}${color white}${font GE Inspira:size=9}${alignc -108}${time %A, %d %B %Y}$font ### vent #### ${voffset 10} ${goto 310}${font GE Inspira:size=10}Vent : ${execi 90 sed -n '5p' $HOME/1_accuweather/curr_cond-fr} ${goto 310}Vitesse : ${execi 90 sed -n '6p' $HOME/1_accuweather/curr_cond} ${goto 310}Préssion : ${execi 90 sed -n '8p' $HOME/1_accuweather/curr_cond} ${goto 310}Indice UV : ${execi 90 sed -n '9p' $HOME/1_accuweather/curr_cond} $font #### Ville #### ${voffset -50}${font GE Inspira:size=14:}Sarreguemines : ${font} ${execi 90 sed -n '4p' $HOME/1_accuweather/curr_cond-fr} Temp.: ${execi 90 sed -n '2p' $HOME/1_accuweather/curr_cond} °C Res.: ${execi 90 sed -n '3p' $HOME/1_accuweather/curr_cond} °C Alerte : ${execi 600 sed -n '2p' $HOME/1_accuweather/Alertes} #### Deuxième cadre #### ##### Affichage temperatures ##### ${voffset 1} ${goto 20}${color7}${execi 90 sed -n '9p' $HOME/1_accuweather/first_days}°${color}/${color9}${execi 90 sed -n '8p' $HOME/1_accuweather/first_days}°${color} ${goto 95}${color7}${execi 90 sed -n '14p' $HOME/1_accuweather/first_days}°${color}/${color9}${execi 90 sed -n '13p' $HOME/1_accuweather/first_days}°${color} ${goto 170}${color7}${execi 90 sed -n '19p' $HOME/1_accuweather/first_days}°${color}/${color9}${execi 90 sed -n '18p' $HOME/1_accuweather/first_days}°${color} ${goto 245}${color7}${execi 90 sed -n '24p' $HOME/1_accuweather/first_days}°${color}/${color9}${execi 90 sed -n '23p' $HOME/1_accuweather/first_days}°${color} ${goto 320}${color7}${execi 90 sed -n '4p' $HOME/1_accuweather/last_days}°${color}/${color9}${execi 90 sed -n '3p' $HOME/1_accuweather/last_days}°${color} ${goto 400}${color7}${execi 90 sed -n '9p' $HOME/1_accuweather/last_days}°${color}/${color9}${execi 90 sed -n '8p' $HOME/1_accuweather/last_days}°${color} #### Affichage date #### ${voffset 40} ${goto 20}${execi 3600 echo `date --date="1 day" | awk '{print $1}' | cut -c1-3`}.${execi 3600 echo `date --date="1 day" | awk '{print $3}'`} ${goto 95}${execi 3600 echo `date --date="2 day" | awk '{print $1}' | cut -c1-3`}.${execi 3600 echo `date --date="2 day" | awk '{print $3}'`} ${goto 170}${execi 3600 echo `date --date="3 day" | awk '{print $1}' | cut -c1-3`}.${execi 3600 echo `date --date="3 day" | awk '{print $3}'`} ${goto 245}${execi 3600 echo `date --date="4 day" | awk '{print $1}' | cut -c1-3`}.${execi 3600 echo `date --date="4 day" | awk '{print $3}'`} ${goto 320}${execi 3600 echo `date --date="5 day" | awk '{print $1}' | cut -c1-3`}.${execi 3600 echo `date --date="5 day" | awk '{print $3}'`} ${goto 400}${execi 3600 echo `date --date="6 day" | awk '{print $1}' | cut -c1-3`}.${execi 3600 echo `date --date="6 day" | awk '{print $3}'`} #### Troisième cadre #### ${voffset -22} ${color FFFFFF}${goto 10}${voffset 20}${cpu cpu0}% ${goto 55}${exec expr `cat /sys/class/hwmon/hwmon2/temp1_input` / 1000} ° ${goto 105}${execi 120 hddtemp -n /dev/sda} ° ${goto 155}${hwmon 1 temp 1} ° ${goto 200}${memperc}% ${goto 255}${fs_used_perc /}% ${goto 305}${fs_used_perc /home}% ${goto 350}${downspeed wlp2s0} ${goto 400}${upspeed wlp2s0} ${color 6495ee}${goto 10}CPU ${goto 50}Temp ${goto 100}Disque ${goto 150}Carte ${goto 200}Ram ${goto 250}Racine ${goto 300}Home ${goto 350}Entrant ${goto 400}Sortant $color ${goto 250}Signal : ${wireless_link_qual wlp2s0} %${goto 350}${totaldown wlp2s0}${goto 400}${totalup wlp2s0} ${color FFFFFF}${font caviar dreams:size=8}Uptime: ${uptime_short} ${color FFFFFF}${font caviar dreams:size=8}Processes: ${processes} ${color FFFFFF}${font caviar dreams:size=8}Running: ${running_processes} ${voffset -54} ${color 6495ee}${font caviar dreams:size=8}${alignr 20}${nodename} ${color 6495ee}${font caviar dreams:size=8}${alignr 20}Mageia 5 $machine ${color 6495ee}${font caviar dreams:size=8}${alignr 20}Kernel: ${kernel} #### Affichage des cadres utilisés dans le conky #### ${voffset -935} #### premier cadre #### ${lua fDrawImage $HOME/1_accuweather/fond/base.png 0 40 450 110} ${lua fDrawImage $HOME/1_accuweather/fond/flip_bg.png 22 3 100 100} ${lua fDrawImage $HOME/1_accuweather/fond/flip_bg.png 132 3 100 100} #### Second cadre #### ${lua fDrawImage $HOME/1_accuweather/fond/base.png 0 155 450 85} #### Troisième cadre #### ${lua fDrawImage $HOME/1_accuweather/fond/base.png 0 250 450 85} #### icônes premier cadre #### ${lua fDrawImage $HOME/1_accuweather/0.png 205 70 132 70} ${lua fDrawImage $HOME/1_accuweather/Wind1.png 370 40 90 90} #### icônes Second cadre #### ${lua fDrawImage $HOME/1_accuweather/1.png -15 170 90 55} ${lua fDrawImage $HOME/1_accuweather/2.png 60 170 90 55} ${lua fDrawImage $HOME/1_accuweather/3.png 135 170 90 55} ${lua fDrawImage $HOME/1_accuweather/4.png 215 170 90 55} ${lua fDrawImage $HOME/1_accuweather/5.png 290 170 90 55} ${lua fDrawImage $HOME/1_accuweather/6.png 370 170 90 55} ${voffset - 800}
#!/bin/bash if (( $# < 1 )); then exit fi #put your Accuweather address here #address="http://www.accuweather.com/en/ca/montreal/h3a/weather-forecast/56186" address="http://www.accuweather.com/en/fr/sarreguemines/135050/weather-forecast/135050" #address="http://www.accuweather.com/en/gr/kastoria/178682/weather-forecast/178682" loc_id=$(echo $address|sed 's//weather-forecast.*$//'|sed 's/^.*///') last_number=$(echo $address|sed 's/^.*///') ################################################### #NORMAL FORECAST: -f passed as 1rst or 2nd argument ################################################### if [[ $1 == -f || $2 == -f ]]; then #function: test_image test_image () { case $1 in 1) echo a ;; 2|3) echo b ;; 4|5) echo c ;; 6) echo d ;; 7) echo e ;; 8) echo f ;; 11) echo 0 ;; 12) echo h ;; 13|14) echo g ;; 15) echo m ;; 16|17) echo k ;; 18) echo i ;; 19) echo q ;; 20|21|23) echo o ;; 22) echo r ;; 24|31) echo E ;; 25) echo v ;; 26) echo x ;; 29) echo y ;; 30) echo 5 ;; 32) echo 6 ;; 33) echo A ;; 34|35) echo B ;; 36|37) echo C ;; 38) echo D ;; 39|40) echo G ;; 41|42) echo K ;; 43|44) echo O ;; *) echo - ;; esac } kill -STOP $(pidof conky) killall wget curr_addr="$(echo $address|sed 's/weather-forecast.*$//')"current-weather/"$last_number" wget -O $HOME/1_accuweather/curr_cond_raw "$curr_addr" addr1="$(echo $address|sed 's/weather-forecast.*$//')"daily-weather-forecast/"$last_number" wget -O $HOME/1_accuweather/first_days_raw "$addr1" addr2="$addr1"?day=6 wget -O $HOME/1_accuweather/last_days_raw "$addr2" rm $HOME/1_accuweather/*.png #current conditions if [[ -s $HOME/1_accuweather/curr_cond_raw ]]; then sed -i '/detail-now/,/Astronomy <span class/!d' $HOME/1_accuweather/curr_cond_raw egrep -i '"cond"|icon i-|large-temp|small-temp|wind-point|"wind"|Humidity|Pressure|UV Index|Cloud Cover|Ceiling|Dew Point|Visibility|Duration|Sunrise:|Sunset:|Moonrise:|Moonset:' $HOME/1_accuweather/curr_cond_raw > $HOME/1_accuweather/curr_cond sed -i -e 's/^.*<strong>//g' -e 's/^.*<span>//g' -e 's/^.*icon i-//g' -e 's/^.*large-temp">//g' -e 's/^.*</em> //g' -e 's/^.*"cond">//g' -e 's/^.*wind-point //g' $HOME/1_accuweather/curr_cond sed -i -e 's/">.*$//g' -e 's/°.*$//g' -e 's/</span>.*$//g' -e 's/&#.*$//g' -e 's/ &darr.*$//g' -e 's/ &uarr.*$//g' -e 's/</strong>.*$//g' $HOME/1_accuweather/curr_cond sed -i '1s/-.*$//' $HOME/1_accuweather/curr_cond image=$(sed -n 1p $HOME/1_accuweather/curr_cond) echo $(test_image $image) >> $HOME/1_accuweather/curr_cond cp $HOME/1_accuweather/Forecast_Images_2016/$(sed -n 1p $HOME/1_accuweather/curr_cond).png $HOME/1_accuweather/0.png fi #First 5 days if [[ -s $HOME/1_accuweather/first_days_raw ]]; then sed -i '/.feed-controls/,/.feed-tabs/!d' $HOME/1_accuweather/first_days_raw egrep -i 'href="#"|icon i-|"large-temp"|"small-temp"|temp-label|"cond"' $HOME/1_accuweather/first_days_raw > $HOME/1_accuweather/first_days sed -i -e '/icon/s/-. //g' -e 's/^.*icon i-//g' -e 's/^.*large-temp">//g' -e 's/^.*small-temp">///g' -e 's/^.*"cond">//g' -e 's/^.*href="#">//g' -e 's/^.*"temp-label tonight ">//g' -e 's/^.*"temp-label tonight selected">//g' $HOME/1_accuweather/first_days sed -i -e 's/°.*$//g' -e 's/</a>.*$//g' -e 's/</span>.*$//g' -e 's/">.*$//g' $HOME/1_accuweather/first_days sed -i -e 's/Mon/Monday/' -e 's/Tue/Tuesday/' -e 's/Wed/Wednesday/' -e 's/Thu/Thursday/' -e 's/Fri/Friday/' -e 's/Sat/Saturday/' -e 's/Sun/Sunday/' $HOME/1_accuweather/first_days for (( i=2; i<=22; i+=5 )) do image=$(sed -n "${i}"p $HOME/1_accuweather/first_days) echo $(test_image $image) >> $HOME/1_accuweather/first_days done j=1 for (( i=2; i<=22; i+=5 )) do cp $HOME/1_accuweather/Forecast_Images_2016/$(sed -n ${i}p $HOME/1_accuweather/first_days).png $HOME/1_accuweather/$j.png ((j++)) done fi # icone direction vent wind_direction=$(sed -n 5p $HOME/1_accuweather/curr_cond) if [[ $wind_direction == "S" ]]; then cp $HOME/1_accuweather/vents/"02.png" $HOME/1_accuweather/Wind1.png elif [[ $wind_direction == "South" ]]; then cp $HOME/1_accuweatherI/vents/"02.png" $HOME/1_accuweather/Wind1.png elif [[ $wind_direction == "SSW" ]]; then cp $HOME/1_accuweather/vents/"03.png" $HOME/1_accuweather/Wind1.png elif [[ $wind_direction == "SW" ]]; then cp $HOME/1_accuweather/vents/"04.png" $HOME/1_accuweather/Wind1.png elif [[ $wind_direction == "WSW" ]]; then cp $HOME/1_accuweather/vents/"05.png" $HOME/1_accuweather/Wind1.png elif [[ $wind_direction == "W" ]]; then cp $HOME/1_accuweather/vents/"06.png" $HOME/1_accuweather/Wind1.png elif [[ $wind_direction == "West" ]]; then cp $HOME/1_accuweather/vents/"06.png" $HOME/1_accuweather/Wind1.png elif [[ $wind_direction == "WNW" ]]; then cp $HOME/1_accuweather/vents/"07.png" $HOME/1_accuweather/Wind1.png elif [[ $wind_direction == "NW" ]]; then cp $HOME/1_accuweather/vents/"08.png" $HOME/1_accuweather/Wind1.png elif [[ $wind_direction == "NNW" ]]; then cp $HOME/1_accuweather/vents/"09.png" $HOME/1_accuweather/Wind1.png elif [[ $wind_direction == "N" ]]; then cp $HOMME/1_accuweather/vents/"10.png" $HOME/1_accuweather/Wind1.png elif [[ $wind_direction == "North" ]]; then cp $HOME/1_accuweather/vents/"10.png" $HOME/1_accuweather/Wind1.png elif [[ $wind_direction == "NNE" ]]; then cp $HOME/1_accuweather/vents/"11.png" $HOME/1_accuweather/Wind1.png elif [[ $wind_direction == "NE" ]]; then cp $HOME/1_accuweather/vents/"12.png" $HOME/1_accuweather/Wind1.png elif [[ $wind_direction == "ENE" ]]; then cp $HOME/1_accuweather/vents/"13.png" $HOME/1_accuweather/Wind1.png elif [[ $wind_direction == "E" ]]; then cp $HOME/1_accuweather/vents/"14.png" $HOME/1_accuweather/Wind1.png elif [[ $wind_direction == "East" ]]; then cp $HOME/1_accuweather/vents/"14.png" $HOME/1_accuweather/Wind1.png elif [[ $wind_direction == "ESE" ]]; then cp $HOME/1_accuweather/vents/"15.png" $HOME/1_accuweather/Wind1.png elif [[ $wind_direction == "SE" ]]; then cp $HOME/1_accuweather/vents/"16.png" $HOME/1_accuweather/Wind1.png elif [[ $wind_direction == "SSE" ]]; then cp $HOME/1_accuweather/vents/"17.png" $HOME/1_accuweather/Wind1.png elif [[ $wind_direction == "Variable" ]]; then cp $HOME/1_accuweather/vents/"00.png" $HOME/1_accuweather/Wind1.png fi #Next 5 days if [[ -s $HOME/1_accuweather/last_days_raw ]]; then sed -i '/.feed-controls/,/.feed-tabs/!d' $HOME/1_accuweather/last_days_raw egrep -i 'href="#"|icon i-|large-temp|small-temp|temp-label|"cond"' $HOME/1_accuweather/last_days_raw > $HOME/1_accuweather/last_days sed -i -e '/icon/s/-. //g' -e 's/^.*icon i-//g' -e 's/^.*large-temp">//g' -e 's/^.*small-temp">///g' -e 's/^.*"cond">//g' -e 's/^.*href="#">//g' -e 's/^.*"temp-label tonight ">//g' $HOME/1_accuweather/last_days sed -i -e 's/°.*$//g' -e 's/</a>.*$//g' -e 's/</span>.*$//g' -e 's/">.*$//g' $HOME/1_accuweather/last_days sed -i -e 's/Mon/Monday/' -e 's/Tue/Tuesday/' -e 's/Wed/Wednesday/' -e 's/Thu/Thursday/' -e 's/Fri/Friday/' -e 's/Sat/Saturday/' -e 's/Sun/Sunday/' $HOME/1_accuweather/last_days for (( i=2; i<=22; i+=5 )) do image=$(sed -n "${i}"p $HOME/1_accuweather/last_days) echo $(test_image $image) >> $HOME/1_accuweather/last_days done j=6 for (( i=2; i<=22; i+=5 )) do cp $HOME/1_accuweather/Forecast_Images_2016/$(sed -n ${i}p $HOME/1_accuweather/last_days).png $HOME/1_accuweather/$j.png ((j++)) done fi if [[ $1 != -h && $2 != -h ]]; then kill -CONT $(pidof conky) fi fi ################################################### #HOURLY FORECAST: -h passed as 1rst or 2nd argument ################################################### if [[ $1 == -h || $2 == -h ]]; then #Hourly: First 8h if [[ $1 != -f && $2 != -f ]]; then kill -STOP $(pidof conky) fi killall wget rm $HOME/1_accuweather/hourly_*.png hourly_addr1="$(echo $address|sed 's/weather-forecast.*$//')"hourly-weather-forecast/"$last_number" wget -O $HOME/1_accuweather/hourly_raw1 "$hourly_addr1" if [[ -s $HOME/1_accuweather/hourly_raw1 ]]; then sed -i '/detail-tab-buttons.detail-tab-buttons/,/<div class="hourly-table">/!d' $HOME/1_accuweather/hourly_raw1 egrep -i 'hour=|Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|Sunday|pm</div>|am</div>|icon-weather icon i-|<th>Forecast|<span>.*</span>|<th>Temp|<th>Realfeel|<th>Wind|<th>Rain|<th>Snow|<th>Ice|<th>UV Index|<th>Cloud Cover|<th>Humidity|<th>Dew Point' $HOME/1_accuweather/hourly_raw1 > $HOME/1_accuweather/hourly1 sed -i -e 's/^[ t]*//g' -e 's/^.*<div>//g' -e 's/^.*<span>//g' -e 's/^.*<th>//g' -e 's/^.*icon i-//g' -e 's/-s">.*$//g' -e 's/</div>.*$//g' -e 's/&#.*$//g' -e 's/</span>.*$//g' -e 's/</th>.*$//g' -e 's/^.*href="//g' -e 's/" class=.*$//g' $HOME/1_accuweather/hourly1 sed -i -e 's/Monday/Mon/' -e 's/Tuesday/Tue/' -e 's/Wednesday/Wed/' -e 's/Thursday/Thu/' -e 's/Friday/Fri/' -e 's/Saturday/Sat/' -e 's/Sunday/Sun/' -e 's/r//g' $HOME/1_accuweather/hourly1 j=1 for (( i=4; i<=18; i+=2 )) do cp $HOME/1_accuweather/Forecast_Images_2016/$(sed -n ${i}p $HOME/1_accuweather/hourly1).png $HOME/1_accuweather/hourly_$j.png ((j++)) done fi #Hourly: Next 8h hourly_addr2=$(sed -n 1p $HOME/1_accuweather/hourly1) wget -O $HOME/1_accuweather/hourly_raw2 "$hourly_addr2" if [[ -s $HOME/1_accuweather/hourly_raw2 ]]; then sed -i '/detail-tab-buttons.detail-tab-buttons/,/<div class="hourly-table">/!d' $HOME/1_accuweather/hourly_raw2 egrep -i 'hour=|Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|Sunday|pm</div>|am</div>|icon-weather icon i-|<th>Forecast|<span>.*</span>|<th>Temp|<th>Realfeel|<th>Wind|<th>Rain|<th>Snow|<th>Ice|<th>UV Index|<th>Cloud Cover|<th>Humidity|<th>Dew Point' $HOME/1_accuweather/hourly_raw2 > $HOME/1_accuweather/hourly2 sed -i -e 's/^[ t]*//g' -e 's/^.*<div>//g' -e 's/^.*<span>//g' -e 's/^.*<th>//g' -e 's/^.*icon i-//g' -e 's/-s">.*$//g' -e 's/</div>.*$//g' -e 's/&#.*$//g' -e 's/</span>.*$//g' -e 's/</th>.*$//g' -e 's/^.*href="//g' -e 's/" class=.*$//g' $HOME/1_accuweather/hourly2 sed -i 1d $HOME/1_accuweather/hourly2 sed -i -e 's/Monday/Mon/' -e 's/Tuesday/Tue/' -e 's/Wednesday/Wed/' -e 's/Thursday/Thu/' -e 's/Friday/Fri/' -e 's/Saturday/Sat/' -e 's/Sunday/Sun/' -e 's/r//g' $HOME/1_accuweather/hourly2 j=9 for (( i=4; i<=18; i+=2 )) do cp $HOME/1_accuweather/Forecast_Images_2016/$(sed -n ${i}p $HOME/1_accuweather/hourly2).png $HOME/1_accuweather/hourly_$j.png ((j++)) done fi # Full info, next 16h - altogether16 file rm $HOME/1_accuweather/altogether16 #TIME echo "${color ffe595}TIME${goto 100}" > $HOME/1_accuweather/altogether16 sed -i "1s/$/$(sed -n 2p $HOME/1_accuweather/hourly1):$(sed -n 3p $HOME/1_accuweather/hourly1)/" $HOME/1_accuweather/altogether16 jump_to=160 for (( i=5; i<=17; i+=2 )) do time=$(sed -n ${i}p $HOME/1_accuweather/hourly1) sed -i "1s/$/${goto $jump_to}$time/" $HOME/1_accuweather/altogether16 ((jump_to+=60)) done sed -i "1s/$/${goto 580}$(sed -n 2p $HOME/1_accuweather/hourly2):$(sed -n 3p $HOME/1_accuweather/hourly2)/" $HOME/1_accuweather/altogether16 jump_to=640 for (( i=5; i<=17; i+=2 )) do time=$(sed -n ${i}p $HOME/1_accuweather/hourly2) sed -i "1s/$/${goto $jump_to}$time/" $HOME/1_accuweather/altogether16 ((jump_to+=60)) done sed -i '1s/$/n/' $HOME/1_accuweather/altogether16 #IMAGES jump_to=85 for (( i=1; i<=16; i+=1 )) do sed -i "2s/$/${image $HOME/1_accuweather/hourly_$i.png -s 36x36 -p $jump_to,49}/" $HOME/1_accuweather/altogether16 ((jump_to+=60)) done sed -i '1s/$/nn/' $HOME/1_accuweather/altogether16 #FORECAST echo "FORECAST${color}" >> $HOME/1_accuweather/altogether16 jump_to=100 for (( i=20; i<=27; i+=1 )) do messg=$(sed -n ${i}p $HOME/1_accuweather/hourly1|awk '{print $1}'|cut -c1-8) sed -i "5s/$/${goto $jump_to}$messg/" $HOME/1_accuweather/altogether16 ((jump_to+=60)) done for (( i=20; i<=27; i+=1 )) do messg=$(sed -n ${i}p $HOME/1_accuweather/hourly2|awk '{print $1}'|cut -c1-8) sed -i "5s/$/${goto $jump_to}$messg/" $HOME/1_accuweather/altogether16 ((jump_to+=60)) done sed -i '5s/$/n/' $HOME/1_accuweather/altogether16 jump_to=100 for (( i=20; i<=27; i+=1 )) do messg=$(sed -n ${i}p $HOME/1_accuweather/hourly1|awk '{print $2}'|cut -c1-8) sed -i "6s/$/${goto $jump_to}$messg/" $HOME/1_accuweather/altogether16 ((jump_to+=60)) done for (( i=20; i<=27; i+=1 )) do messg=$(sed -n ${i}p $HOME/1_accuweather/hourly2|awk '{print $2}'|cut -c1-8) sed -i "6s/$/${goto $jump_to}$messg/" $HOME/1_accuweather/altogether16 ((jump_to+=60)) done #TEMPERATURE echo "${color ffe595}${goto 100}${hr 1}" >> $HOME/1_accuweather/altogether16 echo "Température${color}" >> $HOME/1_accuweather/altogether16 jump_to=100 for (( i=29; i<=36; i+=1 )) do messg=$(sed -n ${i}p $HOME/1_accuweather/hourly1) sed -i "8s/$/${goto $jump_to}$messg°/" $HOME/1_accuweather/altogether16 ((jump_to+=60)) done for (( i=29; i<=36; i+=1 )) do messg=$(sed -n ${i}p $HOME/1_accuweather/hourly2) sed -i "8s/$/${goto $jump_to}$messg°/" $HOME/1_accuweather/altogether16 ((jump_to+=60)) done #REAL FEEL echo "${color ffe595}${goto 100}${hr 1}" >> $HOME/1_accuweather/altogether16 echo "Ressentie${color}" >> $HOME/1_accuweather/altogether16 jump_to=100 for (( i=38; i<=45; i+=1 )) do messg=$(sed -n ${i}p $HOME/1_accuweather/hourly1) sed -i "10s/$/${goto $jump_to}$messg°/" $HOME/1_accuweather/altogether16 ((jump_to+=60)) done for (( i=38; i<=45; i+=1 )) do messg=$(sed -n ${i}p $HOME/1_accuweather/hourly2) sed -i "10s/$/${goto $jump_to}$messg°/" $HOME/1_accuweather/altogether16 ((jump_to+=60)) done #WIND echo "${color ffe595}${goto 100}${hr 1}" >> $HOME/1_accuweather/altogether16 echo "Vent${color}" >> $HOME/1_accuweather/altogether16 jump_to=100 for (( i=47; i<=54; i+=1 )) do messg=$(sed -n ${i}p $HOME/1_accuweather/hourly1) sed -i "12s/$/${goto $jump_to}$messg/" $HOME/1_accuweather/altogether16 ((jump_to+=60)) done for (( i=47; i<=54; i+=1 )) do messg=$(sed -n ${i}p $HOME/1_accuweather/hourly2) sed -i "12s/$/${goto $jump_to}$messg/" $HOME/1_accuweather/altogether16 ((jump_to+=60)) done #RAIN echo "${color ffe595}${goto 100}${hr 1}" >> $HOME/1_accuweather/altogether16 echo "Pluie${color}" >> $HOME/1_accuweather/altogether16 jump_to=100 for (( i=64; i<=71; i+=1 )) do messg=$(sed -n ${i}p $HOME/1_accuweather/hourly1) sed -i "14s/$/${goto $jump_to}$messg/" $HOME/1_accuweather/altogether16 ((jump_to+=60)) done for (( i=64; i<=71; i+=1 )) do messg=$(sed -n ${i}p $HOME/1_accuweather/hourly2) sed -i "14s/$/${goto $jump_to}$messg/" $HOME/1_accuweather/altogether16 ((jump_to+=60)) done #SNOW echo "${color ffe595}${goto 100}${hr 1}" >> $HOME/1_accuweather/altogether16 echo "Neige${color}" >> $HOME/1_accuweather/altogether16 jump_to=100 for (( i=73; i<=80; i+=1 )) do messg=$(sed -n ${i}p $HOME/1_accuweather/hourly1) sed -i "16s/$/${goto $jump_to}$messg/" $HOME/1_accuweather/altogether16 ((jump_to+=60)) done for (( i=73; i<=80; i+=1 )) do messg=$(sed -n ${i}p $HOME/1_accuweather/hourly2) sed -i "16s/$/${goto $jump_to}$messg/" $HOME/1_accuweather/altogether16 ((jump_to+=60)) done #ICE echo "${color ffe595}${goto 100}${hr 1}" >> $HOME/1_accuweather/altogether16 echo "Geler${color}" >> $HOME/1_accuweather/altogether16 jump_to=100 for (( i=82; i<=89; i+=1 )) do messg=$(sed -n ${i}p $HOME/1_accuweather/hourly1) sed -i "18s/$/${goto $jump_to}$messg/" $HOME/1_accuweather/altogether16 ((jump_to+=60)) done for (( i=82; i<=89; i+=1 )) do messg=$(sed -n ${i}p $HOME/1_accuweather/hourly2) sed -i "18s/$/${goto $jump_to}$messg/" $HOME/1_accuweather/altogether16 ((jump_to+=60)) done #UV INDEX echo "${color ffe595}${goto 100}${hr 1}" >> $HOME/1_accuweather/altogether16 echo "Index UV${color}" >> $HOME/1_accuweather/altogether16 jump_to=100 for (( i=99; i<=106; i+=1 )) do messg=$(sed -n ${i}p $HOME/1_accuweather/hourly1) sed -i "20s/$/${goto $jump_to}$messg/" $HOME/1_accuweather/altogether16 ((jump_to+=60)) done for (( i=99; i<=106; i+=1 )) do messg=$(sed -n ${i}p $HOME/1_accuweather/hourly2) sed -i "20s/$/${goto $jump_to}$messg/" $HOME/1_accuweather/altogether16 ((jump_to+=60)) done #CLOUD COVER echo "${color ffe595}${goto 100}${hr 1}" >> $HOME/1_accuweather/altogether16 echo "Couv.Nuag.${color}" >> $HOME/1_accuweather/altogether16 jump_to=100 for (( i=108; i<=115; i+=1 )) do messg=$(sed -n ${i}p $HOME/1_accuweather/hourly1) sed -i "22s/$/${goto $jump_to}$messg/" $HOME/1_accuweather/altogether16 ((jump_to+=60)) done for (( i=108; i<=115; i+=1 )) do messg=$(sed -n ${i}p $HOME/1_accuweather/hourly2) sed -i "22s/$/${goto $jump_to}$messg/" $HOME/1_accuweather/altogether16 ((jump_to+=60)) done #HUMIDITY echo "${color ffe595}${goto 100}${hr 1}" >> $HOME/1_accuweather/altogether16 echo "Humidité${color}" >> $HOME/1_accuweather/altogether16 jump_to=100 for (( i=117; i<=124; i+=1 )) do messg=$(sed -n ${i}p $HOME/1_accuweather/hourly1) sed -i "24s/$/${goto $jump_to}$messg/" $HOME/1_accuweather/altogether16 ((jump_to+=60)) done for (( i=117; i<=124; i+=1 )) do messg=$(sed -n ${i}p $HOME/1_accuweather/hourly2) sed -i "24s/$/${goto $jump_to}$messg/" $HOME/1_accuweather/altogether16 ((jump_to+=60)) done #DEW POINT echo "${color ffe595}${goto 100}${hr 1}" >> $HOME/1_accuweather/altogether16 echo "Point de ros.${color}" >> $HOME/1_accuweather/altogether16 jump_to=100 for (( i=126; i<=133; i+=1 )) do messg=$(sed -n ${i}p $HOME/1_accuweather/hourly1) sed -i "26s/$/${goto $jump_to}$messg°/" $HOME/1_accuweather/altogether16 ((jump_to+=60)) done for (( i=126; i<=133; i+=1 )) do messg=$(sed -n ${i}p $HOME/1_accuweather/hourly2) sed -i "26s/$/${goto $jump_to}$messg°/" $HOME/1_accuweather/altogether16 ((jump_to+=60)) done ## English to French cp $HOME/1_accuweather/curr_cond $HOME/1_accuweather/curr_cond-fr if [[ -s $HOME/1_accuweather/curr_cond-fr ]]; then sed -i -e 's/Clear/Dégagé/' $HOME/1_accuweather/curr_cond-fr sed -i -e 's/Cloudy/Nuageux/' $HOME/1_accuweather/curr_cond-fr sed -i -e 's/Mostly cloudy/Peu nuageux/' $HOME/1_accuweather/curr_cond-fr sed -i -e 's/Partly sunny/Ensoleillé/' $HOME/1_accuweather/curr_cond-fr sed -i -e 's/Sunny/Ensoleillé/' $HOME/1_accuweather/curr_cond-fr fi #### Alerts #### wget -O $HOME/1_accuweather/Alertes http://www.accuweather.com/fr/fr/sarreguemines/135050/weather-forecast/135050 sed -i 's/r//' $HOME/1_accuweather/Alertes message1=$(sed -n '/<span>Perspectives</span>/ { n;p; }' $HOME/1_accuweather/Alertes) message2=$(sed -n '/^[ t]*<em>.*</em>$/p' $HOME/1_accuweather/Alertes) echo $message1 > $HOME/1_accuweather/Alertes echo $message2 >> $HOME/1_accuweather/Alertes sed -i -e 's/<p>//' -e 's/</p>.*$//' -e 's/<em>//' -e 's/</em>//' $HOME/1_accuweather/Alertes char_1rst_line=$(sed -n 1p $HOME/1_accuweather/Alertes|wc -c) if (( $char_1rst_line <= 1 )); then sed -i '1s/^$/RAS/' $HOME/1_accuweather/Alertes fi char_2nd_line=$(sed -n 2p $HOME/1_accuweather/Alertes|wc -c) if (( $char_2nd_line <= 1 )); then sed -i '2s/^$/RAS/' $HOME/1_accuweather/Alertes fi sed -i -e 's/NW/NO/g' -e 's/WNW/ONO/g' -e 's/NNW/NNO/g' -e 's/W/O/g' -e 's/SSW/SSO/g' -e 's/SW/SO/g' -e 's/WSW/OSO/g' -e 's/W/O/g' /$HOME/1_accuweather/curr_cond-fr kill -CONT $(pidof conky) fi
Écrit par: loutch, Le: 30-01-2015