使用CONKY-colors配置和汉化conky完全教程,兼容13.04版Unity桌面和Gnome-Shell桌面

各种窗口管理器和美化相关
回复
头像
yq-ysy
论坛版主
帖子: 4432
注册时间: 2008-07-19 12:44
来自: 广西(桂)南宁(邕)

使用CONKY-colors配置和汉化conky完全教程,兼容13.04版Unity桌面和Gnome-Shell桌面

#1

帖子 yq-ysy » 2011-01-06 21:34

个性化配置conky不再难,中文汉化超简单!CONKY-colors详细教程。
兼容Unity和Gnome-Shell桌面,包括图形天气、农历、月相、股票行情等

上一个版本的 CONKY-colors 9.0b版于2013年10月17日发布,待适用于14.04的CONKY-colors最新版发布后,本教程再作更新。
很多人喜欢美化桌面系统监视软件conky,但苦于弄不明白配置文件,搞不清如何中文汉化。
现在有了CONKY-colors这个辅助配置工具,一切都变得简单了,只需几步你就可以实现你的个性化conky!
参考资料: http://gnome-look.org/content/show.php/ ... tent=92328
CONKY-colors 9.0b版(百度云盘)下载: http://pan.baidu.com/s/1mgJxfLI

配置后Gnome-Shell桌面上的Conky效果(新版):
conky-colors 8.0.5
conky-colors 8.0.5
配置后Unity桌面上的Conky效果(旧版):

图片

以下为使用conkycolors配置conky的方法和步骤:

(一)、在“软件中心”安装 conky 1.9.0-2 高可配置性系统监视器(过渡包)
Conky是一个可以显示系统中任何信息的系统监视器软件,它可以把信息呈现于您的默认桌面上,也可以在一个独立的窗口里。Conky有很多内建的功能,也能执行外部的程序或脚本(包括直接执行和通过内建的lua支持)。这是一个过渡包,方便过渡到新的分包方式上。您可以在安装或升级后安全地将其删除。
安装conky
安装conky
(二)、下载安装所需的其他软件
快捷键 Ctrl Alt T 打开一个终端,运行以下命令

代码: 全选

sudo apt-get install aptitude python-keyring python-statgrab ttf-ubuntu-font-family hddtemp curl lm-sensors conky-all
sudo chmod u+s /usr/sbin/hddtemp
sudo sensors-detect 
安装和配置的过程中,遇到提示时,全部回答yes。
然后重启图形界面(注销重新登录,或者重启电脑)。

(三)、下载conkycolors并编译安装
官方网址 http://gnome-look.org/content/show.php/ ... tent=92328
下载页面 http://helmuthdu.deviantart.com/art/CON ... -244793180?
点击右边的 Download File 即可下载最新版本的CONKY-colors。
CONKY-colors 9.0b版(百度云盘)下载: http://pan.baidu.com/s/1mgJxfLI

下载后,放在用户主目录下,解压缩,得到conky_colors目录
快捷键 Ctrl Alt T 终端运行以下命令编译安装

代码: 全选

cd conky_colors
make
sudo make install
(四)、配置生成conkyrc文件
快捷键 Ctrl Alt T 打开一个终端运行以下命令查看帮助,

代码: 全选

conky-colors --help
按自己需要实现的功能选择相应参数,然后运行conky-colors生成.conkycolors目录和相关文件,
你至少需要运行一次这个命令!否则没有.conkycolors这个目录,或者缺少某些程序文件。例如:

代码: 全选

conky-colors --theme=custom --default-color=black --color0=cyan --color1=green --color2=orange --color3=red --ubuntu --cpu=2 --updates --proc=3 --clock=lucky --calendar --nvidia --hd=default --hdtemp1=sda --photo --photord --network --unit=C --side=right --bbcweather=1586 --weather=CHXX0100 --rhythmbox=cd
出现提示
Ubuntu/Debian distro? [y][n]:
根据您所使用的是不是Ubuntu系统或Debian系统,选择y或n 。
也可以直接回车,又出现一个提示:
nity or [g]nome-shell:
根据您所使用的是Unity桌面还是Gnome桌面,选择u或g 。

然后生成conkyrc配置文件,存放在 /home/用户名/.conkycolors 目录下,
如果没有.conkycolors这个目录,可以自己创建。
提示:在Linux中,凡是名称以点号开头的文件或文件夹,默认都是隐藏不见的。
在窗口中,按下 Ctrl H 键即可显示隐藏文件。
在终端下,可以用 ls -a 命令查看隐藏文件。

如果安装了新的字体,可以在终端运行以下命令更新系统的字体缓存

代码: 全选

sudo fc-cache -v -f
(五)、测试和修改
(1)、在测试之前,使用Unity桌面的用户请注意:
a、如果安装有Tweak Tool的话,
点击左侧“Dash主页”->“更多程序”->“自定义”->“已安装程序”->“Tweak Tool”
在弹出的窗口中,确保“Desktop桌面”里的第一行Have file manager handle the desktop是“开启”状态。
Advanced Settings
Advanced Settings
b、如果安装有gconf-editor的话,快捷键 Ctrl Alt T 打开一个终端运行gconf-editor,
在“配置编辑器”窗口中确保 / -> apps -> nautilus -> preferences ->右边的show_desktop是勾选上的。
preferences.png
使用Unity桌面的用户,如果不这样设置,就运行conky,会产生“花屏”的故障。
但是,这样设置之后,3D桌面特效的“不同桌面不同壁纸”功能就没有了,鱼和熊掌不能兼得。
使用Gnome-Shell桌面的用户,没有这样的问题,不论是否做这些设定都没有影响。

(2)、现在开始测试:
快捷键 Ctrl Alt T 打开一个终端,运行以下命令测试conkyrc配置文件,按 Ctrl C 可以结束进程。

代码: 全选

conky -c ~/.conkycolors/conkyrc
可以一边运行着conky一边修改编辑conkyrc配置文件,快捷键 Ctrl Alt T 打开一个终端,运行以下命令,
编辑好后,不用关闭,点击保存2次就能触发conky刷新,就能看到修改后的效果。

代码: 全选

gedit ~/.conkycolors/conkyrc &
(3)、测试的过程中,
如果带有天气股票等需要访问网络的栏目,则conkyrc启动的过程会稍微慢一些,这是网络延迟造成的正常现像。
有时图片幻灯片会无法显示,“我的相册”栏目变成空白,不用担心,过一会就能恢复正常。
如果脚本程序有错误,刚conkyrc启动时终端会有出错提示。如果长时间没有反应,按 Ctrl C 可以结束进程。

—— conky中文汉化方法 ——
汉化的方法也很简单,只要修改conkyrc配置文件中的font相关选项,改为使用系统默认自带的TTF中文字体即可。
我的汉化脚本conkyrc-default-CN内使用的是Ubuntu 12.04 Linux系统自带的“文泉驿微米黑”,字体文件是放在 /usr/share/fonts/turetype/wqy 在conkyrc脚本中的字体调用名称为 WenQuanYi Micro Hei,把它用作等宽字体时的字体调用名称为 WenQuanYi Micro Hei Mono 。(双击字体文件,在字体浏览器的标题栏就可以看到应该使用的字体调用名称)
也可以使用自行下载的其他ttf或ttc字体,但需要把自定义的字体复制到 /usr/share/fonts/TTF/conky/ 目录里。例如:可以从微软windows系统的 C:\windows\Font 复制中文黑体字simhei.ttf字体到 /usr/share/fonts/TTF/conky/ 目录里,字体调用名称为 simhei 。
conky-colors的字体目录
conky-colors的字体目录
“conky-colors参数的用法、农历、月相、图文天气显示方法”
请参考相关程序脚本和已CN汉化的配置文件压缩包conkycolors_CN.tar.gz.txt,
里面的“conkycolors_805_参数说明”和“conkyrc-default-CN详解分析”文件。

(六)、下载相关程序脚本和已CN汉化的配置文件、天气等字体文件
conkycolors_CN.tar.gz.txt
我的配置文件、相关程序脚本、相关教程和使用说明
(37.95 KiB) 已下载 2673 次
weather_fonts.tar.gz.txt
天气字体文件
(46.31 KiB) 已下载 1922 次
conkycolors_font.tar.gz.txt
新旧两版Conkycolors字体文件全集
(336.82 KiB) 已下载 1213 次
提示:conkycolors 最新的 9.0b 版作了较大改动,使用本配置文件有可能出错。
请按教程及下载的说明文件自行配置。

新版本使用了全新的图标字体文件,放在 /usr/share/fonts/conkycolors/ 目录里。

我的conkycolors_CN.tar.gz.txt文件压缩包,和weather_fonts.tar.gz.txt以及conkycolors_font.tar.gz.txt天气字体文件压缩包,
下载后请重新命名,删除.txt后缀,然后解压缩
其中包括了已经汉化的各个模式配置文件和相关的程序脚本,请复制到指定的目录。
注意:您至少需要执行一次带参数的conky-colors命令,才能生成.conkycolors目录和相关文件,
有些程序脚本,也是需要您执行带有相关参数的conky-colors命令,才会生成,例如:多媒体程序和图片程序。
————天气字体文件解压缩后复制到/usr/share/fonts/conkycolors/目录
(使用下列命令复制,或者使用 sudo nautilus 以管理员身份在窗口中复制粘贴)
sudo cp ./weather_fonts/*.ttf /usr/share/fonts/conkycolors/

————以下文件复制到 ~/.conkycolors/ 目录
conkyrc-default-CN  默认模式配置文件——已汉化
conkyrc-cairo-CN   开罗模式配置文件——已汉化
conkyrc-ring-CN   指环模式配置文件——已汉化
conkyrc-board    平板模式配置文件——不需要汉化
conkyrc-slim     细长模式配置文件——不需要汉化
conkyrc-weather-CN  三个网站的天气配置文件——已汉化
conkyrc        链接文件,用于切换conkycolors模式

————以下文件复制到 ~/.conkycolors/bin 目录
lunar        农历程序文件
mond        月相程序文件(需要与农历程序文件搭配使用)
stockwidget     股票程序文件

————以下文件复制到 /usr/share/conkycolors/scripts/ 目录
(需要使用命令 sudo nautilus 以管理员身份在窗口中复制粘贴)
conkyBoard.lua    平板模式程序文件——已汉化
conkySlim.lua    细长模式程序文件——已汉化
conkyHD1.py     硬盘信息程序文件——已汉化

————以下文件为相关教程和使用指南
安装调试步骤
conkycolors_805_参数说明
conkyrc-default-CN详解分析

提示:
(1)在13.04版农历显示错误,修改主目录下.conkycolors/bin/lunar文件内容,
把parse_date()这一行下面的 d=${*:-$(date)}; leap= 改为 d=${*:-$(date +"%Y/%m/%d")}; leap= 即可正确显示。
2013年6月8日恰逢农历四月是小月只有二十九天,因此需要手动调整农历程序,修正误差:
修改这一行 sft=$(( ( $(date -d "$d" +%s) - $(date -d "${START}/01/01" +%s) ) / 60 / 60 / 24 ))
在最后的双括号之内加上(或者减去)误差的天数即可:
修改后 sft=$(( ( $(date -d "$d" +%s) - $(date -d "${START}/01/01" +%s) ) / 60 / 60 / 24 +1 ))
(2)新版的CONKY-colors都没有了weather天气字体文件,所以需要自己下载天气字体文件复制到指定的目录。
(3)显示ATI显卡信息的方法:请参考本文最后“感谢网友分享”部分(345楼)。
(4)背景全透明显示,修改配置文件,消除自动退出或自动上移的情况,请参考本文最后“感谢网友分享”部分(566楼)
(5)使用Moon Phases字体实现月相的新程序,请参考本文最后“感谢网友分享”部分(597楼)。
(6)修改导致conky变卡的显示对外IP的脚本程序,请参考本文最后“感谢网友分享”部分(627楼)。
(七)、自定义:主题颜色、图片目录、城市天气
也许我的CN汉化配置文件里设定的颜色,与您的桌面背景颜色并不搭配,您可以修改自定义的颜色。
主题颜色————位于CN汉化配置文件的 Graphics settings 栏目下,default_color默认色,color0 图标颜色 color1 温度百分比颜色 color2 数值和进度条颜色 color3 自定义备用颜色。
图片目录————位于 ~/.conkycolors/bin/conkyPhotoRandom 文件的 source= 项目中,默认是系统 /usr/share/backgrounds 里的桌面壁纸图片,您可以修改为用户主目录的图片文件夹 ~/图片
因为需要调用到convert这个程序,Ubuntu 13.04版需要补充安装一个图片转换软件。命令如下:

代码: 全选

apt-get install imagemagick
城市天气————位于CN汉化配置文件的 WEATHER 栏目下,请在www.weather.com.cn网站搜索栏中输入您所在的城市拼音字母(或英文名称),然后在浏览器的地址栏可以看到相应的城市代码。例如:南宁nanning的代码为101300101。把城市代码复制到程序中,替换原来的城市代码位置。

(八)、设定开机自动运行
启动器栏的“Dash主页”->“应用程序”->“自定义”->“已安装”->“启动应用程序”->点击“添加”按钮,
在弹出的“添加启动程序”窗口中,“名称”和“注释”栏可以任意输入,在“命令”这栏输入

代码: 全选

/usr/share/conkycolors/bin/conkyStart
start_at_boot.png
开机自启动命令为什么不使用之前测试时的 conky -c ~/.conkycolors/conkyrc 命令呢?
这是因为 /usr/share/conkycolors/bin/conkyStart 命令运行时会“故意”sleep等待25秒钟,
因此conky -c ~/.conkycolors/conkyrc 启动速度比 /usr/share/conkycolors/bin/conkyStart 快,
在开机时如果使用conky -c ~/.conkycolors/conkyrc 的话,会造成conky已经提前启动,
而此时桌面还没启动完,conky比桌面更早出现,形成难看的默认的黑色界面,
所以应该在开机时使用比较启动慢的 /usr/share/conkycolors/bin/conkyStart 命令。
提示:在Ubuntu 12.04版上会有开机无法启动conky的情况,
只需修改conkyStart文件把其中的sleep等待命令延长到300秒或600妙更长就可以了。
另外,可以修改导致conky变卡的显示对外IP的脚本程序,请参考本文最后“感谢网友分享”部分(627楼)。



(九)、轻松切换conkycolors模式
之前设定的开机自动运行的文件conkyStart默认调用的也是~/.conkycolors/conkyrc文件,
所以,我们准备好了几个模式的CN汉化配置文件之后,
只需使用 ln -s 命令就能很方便地把conkyrc文件链接到诸如conkyrc-default-CN的汉化配置文件上,
不需要再修改“启动应用程序”或conkyStart文件,就能实现轻松切换conkycolors模式,岂不快哉!

代码: 全选

rm ~/.conkycolors/conkyrc
ln -s ~/.conkycolors/conkyrc-default-CN ~/.conkycolors/conkyrc
这样,在下次启动电脑时,或者再次执行 conky -c ~/.conkycolors/conkyrc 时,就已经更换了模式了。

祝大家顺利,快乐定制出自己的个性化CONKY!

感谢以下网友分享使用经验,并已经在新版CONKY-colors汉化及程序代码中借鉴采用

感谢网友 xzap 分享——《中文的conky天气显示脚本,2010.2.18更新,修正时间错误》
http://forum.ubuntu.com.cn/viewtopic.php?f=33&t=217816
感谢网友 founderznd 在75楼分享——“在日历里实现月相图形显示”的程序脚本
viewtopic.php?f=94&t=313031&start=60#p2225302
感谢网友 hawkyutao 在《Conky完整中文显示》7楼分享——“显示农历”的程序脚本[/size]
viewtopic.php?f=94&t=326352#p2278026
感谢网友 drunkfish 在151楼分享——某解决些CPU温度显示问题
viewtopic.php?f=94&t=313031&start=150#p2364191
感谢网友 drunkfish 在161楼分享——“股票行情”的程序脚本
viewtopic.php?f=94&t=313031&start=150#p2368016
感谢网友 北狮运动12 在174楼分享——日历里突出显示“今天”乱码的解决方法
viewtopic.php?f=94&t=313031&start=165#p2377446
感谢网友 Eastsun 在178楼分享——右键点击桌面conky会消失不见的解决方法
viewtopic.php?f=94&t=313031&start=165#p2384138
感谢网友 kimminhee 分享——关于conky显示CD封面的方法
感谢网友 haiyy 在301楼分享——显示硬盘的汉化信息的方法
viewtopic.php?f=94&t=313031&start=300#p2626079
感谢网友 languh 在352楼分享——显示ATI显卡信息的方法
viewtopic.php?f=94&t=313031&start=345#p2736896

代码: 全选

##############
#  -   ATI 显卡信息   - #
##############
${voffset -15}${font WenQuanYi Micro Hei:style=Bold:size=8}显卡 $stippled_hr${font}
${color0}${voffset -6}${font Poky:size=17}M${font}${color}${goto 32}${voffset -8}型号:${GOTO -13}${color1}${execi 4 aticonfig --odgt | grep -A 0 'Default Adapter - ' | cut -c18-34} ${font}${color}
${color0}${voffset -6}${font Poky:size=17}N${font}${color}${goto 32}${voffset -8}时钟:${GOTO -13}${color1}${execi 4 aticonfig --odgc | grep -A 0 'Current Clocks' | cut -c46-48} MHz${color}
${GOTO 110}${voffset -15}核心时钟:${GOTO 160}${color1}${execi 4 aticonfig --odgc | grep -A 0 'Current Clocks' | cut -c32-34} MHz${color}
${color0}${voffset -3}${font Poky:size=17}N${font}${color}${goto 32}${voffset -8}GPU 温度:${GOTO 100}${color1}${execi 4 aticonfig --odgt | grep -A 0 'Sensor 0' | cut -c42-46} ºC${font}${color}
感谢网友 languh 在356楼分享——带有ATI图标的字体
图片
viewtopic.php?f=94&t=313031&start=345#p2739129
感谢网友 shotim 在371楼分享——关于Ubuntu 12.04版的conky无法开机自动启动的解决方法
viewtopic.php?f=94&t=313031&start=360#p2766118
感谢网友 intel 在373楼分享——调用accuweather.com的天气程序脚本
viewtopic.php?f=94&t=313031&start=360#p2767650
感谢网友 xfz329 在566楼分享——解决背景全透明时,显示桌面conky自动退出或上移的方法
viewtopic.php?f=94&t=313031&start=555#p3006986

代码: 全选

own_window_class Conky
own_window yes
own_window_type destop
own_window_transparent yes
own_window_argb_visual true
own_window_argb_value 0 # 数值为透明度。
own_window_hints undecorated,below,sticky # 删除了其中的skip_pager与skip_taskbar
感谢网友 whu_hyzs 在597楼分享——使用Moon Phases字体实现月相的程序
viewtopic.php?f=94&t=313031&start=585#p3025770
感谢网友 whu_hyzs 在627楼分享——修改导致conky变卡的显示对外IP的脚本程序
viewtopic.php?f=94&t=313031&start=615#p3034676

代码: 全选

#!/bin/bash
wget http://myip.com.tw/ -q -O - |
grep -Eo '\<[[:digit:]]{1,3}(\.[[:digit:]]{1,3}){3}\>' | head -n 1
-----------------------------------------------------------------------------------------------------------------------------
上次由 yq-ysy 在 2011-05-15 19:22,总共编辑 22 次。
头像
lgxwqq
帖子: 1145
注册时间: 2009-12-04 13:29

Re: 2011新年新版本CONKY-colors详细教程,个性化配置conky不再难,中文汉化超简单!

#2

帖子 lgxwqq » 2011-01-06 21:36

正解! :em11
关注和奉献Tianjin Linux User Group的建设,热心参与开源社区,Linux爱好者,python初学者,希望成为一名geek,求交流求指导

我知道发QQ群是不对的。。。可是:Linux天津qq群104029520 73809331,终有一天会没有QQ的。。

Blog:http://www.freetstar.com //欢迎
twitter:https://twitter.com/freetstar
头像
lgxwqq
帖子: 1145
注册时间: 2009-12-04 13:29

Re: 2011新年新版本CONKY-colors详细教程,个性化配置conky不再难,中文汉化超简单!

#3

帖子 lgxwqq » 2011-01-06 21:37

谢谢lz,回来有时间整整这个,我现在的conky太简单了
关注和奉献Tianjin Linux User Group的建设,热心参与开源社区,Linux爱好者,python初学者,希望成为一名geek,求交流求指导

我知道发QQ群是不对的。。。可是:Linux天津qq群104029520 73809331,终有一天会没有QQ的。。

Blog:http://www.freetstar.com //欢迎
twitter:https://twitter.com/freetstar
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙

Re: 2011新年新版本CONKY-colors详细教程,个性化配置conky不再难,中文汉化超简单!

#6

帖子 eexpress » 2011-01-06 21:56

中文汉化
:em04

蛋痛,不如多看man
搞这么复杂。
● 鸣学
头像
peteryeh64
论坛版主
帖子: 9377
注册时间: 2008-12-20 15:43
系统: 家kubuntu20.04
来自: 心靈深處

Re: 2011新年新版本CONKY-colors详细教程,个性化配置conky不再难,中文汉化超简单!

#7

帖子 peteryeh64 » 2011-01-06 21:57

:em11 ...強帖...感謝分享...
[论坛版主行为规定]+[PITIVI簡易教程]+[CAD裝draftsight2018sp3]+[网易云音乐]+[ubuntu裝迅雷]
[releases.ubuntu.com]+[cdimage.ubuntu.com]+[old-releases.ubuntu.com]
[學ubuntu必須拜讀懶蝸牛"笨兔兔的故事"=viewtopic.php?f=112&t=162040][Linux明日的希望在中國]
头像
yq-ysy
论坛版主
帖子: 4432
注册时间: 2008-07-19 12:44
来自: 广西(桂)南宁(邕)

Re: 2011新年新版本CONKY-colors详细教程,个性化配置conky不再难,中文汉化超简单!

#8

帖子 yq-ysy » 2011-01-06 22:10

eexpress 写了:中文汉化 蛋痛,不如多看man 搞这么复杂。
呵呵,我都没看过 man 手册呢,是看着 --help 然后自己折腾出来的。
头像
yq-ysy
论坛版主
帖子: 4432
注册时间: 2008-07-19 12:44
来自: 广西(桂)南宁(邕)

Re: 个性化配置conky不再难,中文汉化超简单!2011新年新版本CONKY-colors详细教程

#9

帖子 yq-ysy » 2011-01-09 23:48

旧版BBC天气图文效果程序代码

研究了两天sed命令才弄出来的———真是超级难,简直像是外星人用的编程语言。
把下面这段代码贴到conkyrc文件的weather天气栏里,就可以用图像表示天气了(晴、多云、雨等)。
由于论坛屏蔽,请把网址中~bbc~中的~号去除,另:记得把1586替换为你所在的城市的代码,
你还可以自己为各个小项添加voffset和goto参数以精细调节各项位置。
weather.png
weather.png (26.69 KiB) 查看 193749 次
这段天气的程序实在是太长了,conky有点吃不消,如果有朋友能改进为程序文件调用就好了。
注意!测试时若出现 Conky: too many special things in text 错误提示并退出,
或减少硬盘挂载,或关闭多媒体播放器,或删减几个不必须的栏目,即可恢复正常。
整个conkyrc脚本总长度也不能太长 若超出一些则conky最后一项会显示缺失,
若超出太长则CONKY会报错不运行 如果一定要添加,可删除一些带#号的注释行以腾出空间 。
#
########## - BBCWEATHER - ##########
#
#由于论坛屏蔽,请把网址中的~号去除,另:记得把1586替换为你所在的城市的代码,
### 标题栏 ###
${voffset -8}${font simhei:style=Bold:size=9}天气 WEATHER $stippled_hr${font}
### 判断英文替换云图(17个)###
{goto 5}${voffset 4}${font weather:style=Bold:size=22}${color0}${execi 600 curl -s --connect-timeout 30 "http://newsrss.~bbc~.co.uk/weather/forecast/1586/ObservationsRSS.xml" | sed -n '/HKT/n;s/\. .*$//p' | sed 's/light snow shower/j/;t w-0;s/light snow/j/;t w-0;s/light rain shower/g/;t w-0;s/light rain/g/;t w-0;s/heavy rain shower/h/;t w-0;s/heavy rain/h/;t w-0;s/sunny intervals/b/;t w-0;s/sunny/a/;t w-0;s/white cloud/d/;t w-0;s/grey cloud/e/;t w-0;s/sleet shower/k/;t w-0;s/sleet/k/;t w-0;s/clear sky/l/;t w-0;s/partly cloudy/m/;t w-0;s/hail shower/v/;t w-0;s/mist/c/;t w-0;:w-0;'}${color}${font}
### 当前温度 ###
${goto 32}${voffset -29}温度 Temperature: ${font Droid Sans:style=Bold:size=8}${color1}${execi 600 curl -s --connect-timeout 30 "http://newsrss.~bbc~.co.uk/weather/forecast/1586/ObservationsRSS.xml" | sed -n '/Temperature/p' | sed -e 's/&#xB0;/ /g' | sed -e 's/&#37;/%/g' | sed 's/^.*Temperature: //' | sed 's/ C.*$//'}°C${color}${font}
### 最高温度 最低温度 ###
${goto 32}${voffset 0}${color0}${font VariShapes Solid:size=8}q${font}${color}${color2}最高 ${execi 600 curl -s --connect-timeout 30 "http://newsrss.~bbc~.co.uk/weather/forecast/1586/Next3DaysRSS.xml" | sed -n '/Max Temp/p' | sed '2!d' | sed -e 's/&#xB0;/ /g' | sed -e 's/&#37;/%/g' | sed 's/<[^>]*>//g' | sed 's/^.*Max Temp: //' | sed 's/ C.*$//'}°C${color} ${voffset -2}${color0}${font VariShapes Solid:size=8}Q${font}${voffset -1}${color}${color2}最低 ${execi 600 curl -s --connect-timeout 30 "http://newsrss.~bbc~.co.uk/weather/forecast/1586/Next3DaysRSS.xml" | sed -n '/Max Temp/p' | sed '2!d' | sed -e 's/&#xB0;/ /g' | sed -e 's/&#37;/%/g' | sed 's/<[^>]*>//g' | sed 's/^.*Min Temp: //' | sed 's/ C.*$//'}°C${color}
### 温度计标志 ### 地球标志 ###
${goto 165}${voffset -23}${color0}${font Weather:size=20}y${font}${color}${goto 175}${voffset -18}${font Martin Vogel's Symbols:size=20}m${font}
### 相对湿度 进度条 ### 冒烟茶杯标志 ###
${goto 4}${voffset -10}${color0}${font Martin Vogel's Symbols:size=18}K${font}${color}${goto 32}${voffset -12}相对湿度 Relative Humidity:
${goto 38}${voffset 2}${font Droid Sans:style=Bold:size=8}${color1}${execi 600 curl -s --connect-timeout 30 "http://newsrss.~bbc~.co.uk/weather/forecast/1586/ObservationsRSS.xml.xml" | sed -n '/Humidity/p' | sed 's/\(.*\)Humidity: \(.*\)&#37\;\(.*\)/\2/'}%${color}${font} ${color1}${execbar curl -s --connect-timeout 30 "http://newsrss.~bbc~.co.uk/weather/forecast/1586/ObservationsRSS.xml.xml" | sed -n '/Humidity/p' | sed 's/\(.*\)Humidity: \(.*\)&#37\;\(.*\)/\2/'}${color}${font}
### 风向 风速 ### 旗帜标志 ###
${goto 0}${voffset 0}${color0}${font Webdings:size=24}w${font}${color}${goto 32}${voffset -14}风向 Wind Direction: ${font Arrows:style=Bold:size=18}${color2}${voffset -10}${execi 600 curl -s --connect-timeout 30 "http://newsrss.~bbc~.co.uk/weather/forecast/1586/ObservationsRSS.xml" | sed -n '/Wind Direction/p' | sed 's/\(.*\)Wind Direction: \(.*\), Wind Speed\(.*\)/\2/' | sed 's/SSW/b/;t w-0;s/WSW/d/;t w-0;s/WNW/f/;t w-0;s/NNW/h/;t w-0;s/NNE/j/;t w-0;s/ENE/l/;t w-0;s/ESE/n/;t w-0;s/SSE/p/;t w-0;s/SW/c/;t w-0;s/NW/g/;s/NE/k/;t w-0;s/SE/o/;t w-0;t w-0;s/S/a/;t w-0;s/W/e/;t w-0;s/N/i/;t w-0;s/E/m/;t w-0;:w-0;'}${color}${font}
${goto 32}${voffset 4}风速 Wind Speed: ${font Droid Sans:style=Bold:size=8}${color1}${execi 600 curl -s --connect-timeout 30 "http://newsrss.~bbc~.co.uk/weather/forecast/1586/ObservationsRSS.xml" | sed -n '/Wind Speed/p' | sed 's/\(.*\)Wind Speed: \(.*\)mph,\(.*\)/\2/'}${color}${font} mph英里/小时
### 大气压 ### 眼睛标志 ###
${goto 0}${voffset 0}${color0}${font PizzadudeBullets:size=24}1${font}${color}${goto 32}${voffset -12}大气压 Pressure: ${font simhei:style=Bold:size=8}${color2}${execi 600 curl -s --connect-timeout 30 "http://newsrss.~bbc~.co.uk/weather/forecast/1586/ObservationsRSS.xml" | sed -n '/Pressure/p' | sed 's/\(.*\)Pressure: \(.*\), Visibility\(.*\)/\2/' | sed 's/mb,/ mb兆帕/;s/ rising/高压/;s/ falling/低压/;'}${color}${font}
### 能见度 ###
${goto 32}${voffset 2}能见度 Visibility: ${font simhei:style=Bold:size=8}${color1}${execi 600 curl -s --connect-timeout 30 "http://newsrss.~bbc~.co.uk/weather/forecast/1586/ObservationsRSS.xml" | sed -n '/Visibility/p' | sed 's/\(.*\)Visibility: \(.*\)<\/description>\(.*\)/\2/' | sed 's/Good/好/;t w-0;s/Very good/很好/;t w-0;s/Poor/差/;t w-0;s/Very poor/很差/;t w-0;s/Moderate/中等/;t w-0;s/Fog/有雾/;t w-0;:w-0;'}${color}${font}
### 日出 日落 ###
${goto 4}${voffset 2}${font simhei:style=Bold:size=8}${color2}${execi 600 curl -s --connect-timeout 30 "http://newsrss.~bbc~.co.uk/weather/forecast/1586/Next3DaysRSS.xml" | sed -n '/Sunrise/p' | sed 's/\(.*\)Sunrise: \(.*\)<\/description>\(.*\)/Sunrise: \2/' | sed '1!d' | sed 's/Sunrise: /日出 Sunrise: /;s/Sunset: /日落 Sunset: /;s/HKT//;s/HKT//;s/\,//;'}${color}${font}
下面特解释一下其中一段程序的sed大意,有兴趣的朋友也可以继续钻研一下sed这个外星人编程语言,
把weather天气代码完善了

代码: 全选

${voffset 2}${goto 32}气象 ${font weather:style=Bold:size=28}${color2}${execi 600 curl -s --connect-timeout 30 "http://newsrss.~bbc~.co.uk/weather/forecast/1586/ObservationsRSS.xml" |sed -n '/HKT/n;s/\. .*$//p'| sed 's/sunny/a/;t w-0;s/sunny intervals/b/;t w-0;s/white cloud/d/;t w-0;s/grey cloud/e/;t w-0;s/light rain/g/;t w-0;s/light rain shower/g/;t w-0;s/heavy rain/h/;t w-0;s/heavy rain shower/h/;t w-0;s/light snow/j/;t w-0;s/light snow shower/j/;t w-0;s/sleet/k/;t w-0;s/sleet shower/k/;t w-0;s/clear sky/l/;t w-0;s/partly cloudy/m/;t w-0;s/hail shower/v/;t w-0;s/mist/c/;t w-0;:w-0;'}${color}${font}
[
font weather: 指定字体; size=28 字号加大到28显示大一些;
有些字体直接用文件名调用会不成功,需要使用字体的正式名称(在系统用窗口查看,在标题栏上)。
execi 600 大概是执行一次命令的时间间隔吧,不管它,照抄;
### ### 写程序时可以在终端里用命令行直接测试从 curl -s 到 w-0;' 这一段代码 ### ###
curl -s --connect-timeout 30 调用网址源代码(其内容含HTML代码);
| 把得到的结果管道输送到下一个命令;
sed -n '/HKT/n;s/\. .*$//p'
sed是单行程序语言,-n只输出有改变的行,/HKT/搜索含有HKT关键字(香港时间)的那一行;
n;带有HKT那一行的下一行;
s/\. .*$//替换“.”号及其后面的内容(即\. .*$)为空(即//两斜杠之间什么都没有)
p打印有变化的结果 '结束这一句
| sed 's/sunny/a/;刚才的结果继续在这句处理,先判断再跳转:
搜索如果有sunny就替换为a(即weather.ttf的太阳符号)
t w-0;然后t跳转到w-0这一句
(这里就相当于case语句,后面很多句都一样照搬 s/heavy rain/h/;t w-0;)
这里要注意的是,把较长的天气用词排在前面,把较短的天气用词排在后面。
例如,heavy rain shower应该排在heavy rain的前面,否则会出现匹配重复的情况。
……… ……… ………
:w-0;' 标记w-0所在,后面不跟任何命令,等于无操作结束
(如果没有t w-0;跳转,sed等于没有判断,会全部都执行一遍)。

另外,在谷歌google也有免注册的天气,http://www.google.com.hk 里直接搜索“天气”两个字,
不用城市代码,自动检测IP所属城市的天气就能显示在搜索结果的网页上。
但是因为我还不知道如何用sed提取中文字符,所以没有使用谷歌google天气。
谷歌google提供的API天气编程接口网址:(把最后的nanning替换成你所在的地址拼音)
(中文,但天气结果不如网页搜索的准确)http://www.google.com.hk/ig/api?weather=nanning
(英文,&hl=en 但天气结果偏差更大)http://www.google.com.hk/ig/api?weather=nanning&hl=en

不过由于网站的天气用语和 weather.ttf 的符号不是完全一一对应的,所以这段程序也许还有遗漏之处。
在conky-colors更新的版本出来前,先将就着用吧。

使用 ObservationsRSS.xml 的有:
(当天的天气尽量用这个文件的内容,更准确。)

天况 grey cloud
温度 Temperature: 8°C (46°F),
风向 Wind Direction: NE,
风速 Wind Speed: 4mph,
相对湿度 Relative Humidity: 63%,
大气压 Pressure: 1025mb, rising,
能见度 Visibility: Good

使用 Next3DaysRSS.xml 的有:

最高温度 Max Temp: 10°C (50°F),
最低温度 Min Temp: 4°C (39°F),
日出 Sunrise: 07:29HKT,
日落 Sunset: 18:19HKT

http://newsrss.~bbc~.co.uk/weather/
天气用词对应 weather.ttf 字体符号一览表

a 晴 Sunny
b 间晴 Sunny Intervals
c 薄雾 mist
d 多云 White Cloud
e 阴 Grey Cloud
f 雷

g 小雨 Light Rain
g 小雨 Light Rain Shower
h 大雨 Heavy Rain
h 大雨 Heavy Rain Shower

i 雷雨
j 小雪 Light Snow
j 小雪 Light Snow Shower
k 大雨雪 Sleet Shower
k 大雨雪 Sleet

l 夜晴 Clear Sky
mn 夜多云 Partly Cloudy

v 冰雹 Hail Shower

风向 Wind Direction 用词对应 Arrows.ttf 字体符号一览表

a S 南
b SSW 西南偏南
c SW 西南
d WSW 西南偏西
e W 西
f WNW 西北偏西
g NW 西北
h NNW 西北偏北(西区柯克的著名电影)
i N 北
j NNE 东北偏北
k NE 东北
l ENE 东北偏东
m E 东
n ESE 东南偏东
o SE 东南
p SSE 东南偏南

大气压 Pressure: 1028mb,兆帕 rising,升 falling,降

能见度 Visibility 用词对应 PizzadubeBullets.ttf 字体符号一览表
也可以对应 simhei.ttf 汉字

A Good 好
C Very good 很好
E Poor 差
F Very poor 很差
I Fog 有雾
J Moderate 中等

Webdings.ttf E 沙漠太阳;
Marvosym.ttf m 地球 Y 太极;
weather.ttf N 月亮

YaHoo天气和Weather天气的页面提取分析及替换字体方法也是一样的,大家可以自行尝试编写程序
YaHoo天气XML页面地址: http://weather.yahooapis.com/forecastrss?p=CHXX0100&u=c
Weather天气XML页面地址: http://rss.weather.com/weather/rss/loca ... ar=LWO_rss
上次由 yq-ysy 在 2011-02-20 10:48,总共编辑 5 次。
头像
红世之徒
帖子: 70
注册时间: 2010-04-30 19:13

Re: conky个性化配置不再难,中文汉化超简单!2011新年新版本CONKY-colors详细教程_9楼更新天气图片

#13

帖子 红世之徒 » 2011-01-11 22:08

我的中文汉化不成功,在时间、日历那里显示的是几个空格!
头像
蒙毅酋长
帖子: 136
注册时间: 2009-08-29 17:55

Re: conky个性化配置不再难,中文汉化超简单!2011新年新版本CONKY-colors详细教程_9楼更新天气图片

#14

帖子 蒙毅酋长 » 2011-01-11 22:10

为什么CPU的温度显示不出来呢?
大容量Dropbox网盘请点http://db.tt/v9y9d8b2
回复