SSブログ

Conky 3題(その3:世界の天気予報) [Software on Ubuntu]

仕事の関係で、世界のとある地点の天気(気温)を直ぐに知りたい時があるのだけど、一々、firefox から見るのも何だかな〜

と言う事で、Conky で表示することにしたのだけど、常時、デスクトップに表示すると、此れも邪魔くさい。で、Widget 側に表示することに。

参考にしたのはこちら
  Conky weather scripts using Accuweather/WUnderground/NWS/Weather.com (Page 1) / Community Contributions / Arch Linux Forums
    https://bbs.archlinux.org/viewtopic.php?id=139962


目標は
  1. 世界数ヶ所の1週間の天気(気温)予報を表示
  2. 時差も表示
  3. Conky を複数立ち上げないで、一つのスクリプトで済ます
     (8個も立ちあげると、結構リソース喰うことが判っているので)
  4. widget 側に表示

と云うことで、コーディングした。

先ず、Widget 側への表示は、
    own_window_class ConkyW

としておいてから、
Screenshot_from_2013-01-04 11:10:20.png
CCSM --> Widget Layer --> "動作"タブ --> "class=ConkyW" を入力すれば良い。

最初は、参考にしたスクリプトを、ベタで並べてたのだけど、凄く長くなる。同じスクリプトで、土地毎のコードと表示位置が違うだけなので、サブルーチン化出来ないか調べたら、Named SubRoutine には出来ないが、Template がサブルーチンとして使えることが判った。

Template0 〜 Template8 まで使って、何とか短く纏めることが出来たが、やはり、ルーチン名が無いと、可読性は悪い。

又、表示位置情報を入れるファイル、vreme は如何にしても、関数か出来なかったので、8個準備することになった。今後の課題か。
ソースは此方。"~/.conky/.conky_forcast_world_rc"として保存。

 # -- Conky settings -- #
    background no
    update_interval 30

    cpu_avg_samples 2
    net_avg_samples 2

    override_utf8_locale yes

    double_buffer yes
    no_buffers yes

    text_buffer_size 512
    imlib_cache_size 0

    # -- Window specifications -- #

    own_window_class ConkyW
    own_window yes
    own_window_type normal
    own_window_transparent no
    own_window_hints undecorate,sticky,skip_taskbar,skip_pager
    own_window_colour 000000
    
    own_window_argb_visual yes
    own_window_argb_value 64

    border_inner_margin 0
    border_outer_margin 0

    minimum_size 10 900
    maximum_width 500
    
    alignment tl
    gap_x 0
    gap_y 24

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

    # -- Text settings -- #
    use_xft yes
    xftfont MaiandraGD:size=24
    xftalpha 0.5

    uppercase no

    default_color 8b8b8b

    template0 ${execpi 1800 conkyForecast --location=\1 --template=\2 --refetch}
    template1 ${voffset 50}${goto 0}${font Helvetica LT Std :size=16}${color 909090}${execi 1800 conkyForecast --location=\1 --datatype=CN}${font Helvetica LT Std :size=8} ,${execi 1800 conkyForecast --location=\1 --datatype=CO}${color whitesmoke}${goto 220}${tztime \2 %Z %z}  ${font caviar dreams:style=bold:size=16}${voffset -10}${tztime \2 %H} h
    template2 ${voffset -10}${font Helvetica LT Std :size=8}${execi 1800 conkyForecast --location=\1 --datatype=CT}
    template3 ${voffset 35}${goto 50}${font Helvetica LT Std :size=16}${color d4d4d4}${execi 1800 conkyForecast --location=\1 -u --datatype=HT}${font Helvetica LT Std :size=8}${voffset -25}
    template4 ${goto \2}${execi 1800 conkyForecast --location=\1 --datatype=HT -u --startday=\3}/${color 707070}${execi 1800 conkyForecast --location=\1 --datatype=LT -u --startday=1}${font Helvetica LT Std :size=8}${color white}
    template5 ${template4 \1 110 1}${template4 \1 155 2}${template4 \1 200 3}${template4 \1 245 4}${template4 \1 290 5}
    template6 ${font Helvetica LT Std :size=8}${color 707070}${goto \2}${execi 1800 conkyForecast --location=\1 --datatype=DW --shortweekday --startday=\3}
    template7 ${template6 \1 110 1}${template6 \1 155 2}${template6 \1 200 3}${template6 \1 245 4}${template6 \1 290 5}\n${voffset -4}${color 707070}${font Helvetica LT Std :size=6}${alignr}${execi 1800 conkyForecast --location=\1 --datatype=LU}
    template8 ${template0 \1 \3}\n${template1 \1 \2}\n${template2 \1}\n${template3 \1}\n${voffset -5}${template5 \1}\n${template7 \1}${voffset -47}

TEXT
${voffset -120}${template8 JAXX0099 Japan ~/.conky/.vreme1.template}
${template8 JAXX0046 Japan ~/.conky/.vreme2.template}
${template8 JAXX0121 Japan ~/.conky/.vreme3.template}
${template8 SWXX0136 Europe/Stockholm ~/.conky/.vreme4.template}
${template8 SZXX0041 Europe/Zurich ~/.conky/.vreme5.template}
${template8 SPXX0040 Europe/Madrid ~/.conky/.vreme6.template}
${template8 USAZ0166 US/Arizona ~/.conky/.vreme7.template}
${template8 USHI0026 US/Hawaii ~/.conky/.vreme8.template}


更に、表示位置の情報を記載したファイル "~/.conky/.vreme1.template" を準備する。

${image [--datatype=WI] -p 30,30 -s 48x48}${image [--datatype=WI --startday=1] -p 100,30 -s 36x36}${image [--datatype=WI --startday=2] -p 145,30 -s 36x36}${image [--datatype=WI --startday=3] -p 190,30 -s 36x36}${image [--datatype=WI --startday=4] -p 235,30 -s 36x36}${image [--datatype=WI --startday=5] -p 280,30 -s 36x36}  


大きさと、位置は、ご希望に合わせて調整して下さい。

これで、
  conky -d -c ~/.conky/.conky_forcast_world_rc  > /dev/null 2>&1
で、起動できるのですが、何故か、表側のターミナルで起動しても、widget 側には現れず、行方不明に。プロセスは動いているんだけどね。

と云うことで、widget 側のターミナルから起動しています。

nice!(0)  コメント(1)  トラックバック(0) 

nice! 0

コメント 1

AnthonyElase

If you know how to play live poker you will know how to play Video Poker. [url=https://largetrue.org/most-read/36460-cenata_na_slota_za_infinix_smart]най-добрият ресторант в казино crown[/url] To read full reviews of our six favorite poker sites, click the links below. [url=https://largetrue.org/most-read/20962-closest_casino_to_chicago_il_closest_casino_to]игри слот situs joker игри депозит пулса без силует[/url] Read the review of Jackpot City for more information. [url=https://largetrue.org/most-read/17597-chastni_onlajn_poker_masi]Австралия[/url] Most casinos will openly display their licensing information in the footer or their website.
Bonus Code - 851e86a930ac5844811e8a426f31c2e3
by AnthonyElase (2021-12-25 15:14) 

コメントを書く

お名前:[必須]
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

トラックバック 0

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。