Ubuntu下conky安装与配置

date: 2015.08.22; modification:2015.08.22

目录:

1 安装

sudo apt-get install

2 配置文件

配置文件为: ~/.conkyrc

如果没有可以手动创建一个. 先给出一个配置文件的例子, 后文给出解释:

background no
cpu_avg_samples 4
net_avg_samples 2
out_to_console no
use_xft yes
xftfont iYaHei:size=12
own_window_transparent no
xftalpha 0.8
mail_spool $MAIL
update_interval 1
own_window yes
own_window_transparent yes
own_window_hints undecorated,below,skip_taskbar
own_window_type override
double_buffer yes
minimum_size 260 5
maximum_width 400
draw_shades no
draw_outline no
draw_borders no
stippled_borders no
border_margin 4
border_width 1
default_color #FFFFFF
default_shade_color black
default_outline_color green
gap_x 5
gap_y 5
alignment top_right
use_spacer none
no_buffers yes
uppercase no
TEXT
${color #2E8B57}${font iYaHei:size=8}随便写个什么东西当标题{font}${color}${color #87CEEB}${hr 1}${color}
${font iYaHei:size=20}${color #87CEEB}${time %l:%M:%S}${font}${alignr}这是时间${color}
${color #87CEEB}${alignc}${font iYaHei:size=8}${time %b%d日星期%a}${color}${font}
${color #2E8B57}系统信息:${color}${color #87CEEB}${hr 1}${color}
${color #2E8B57}宿主信息:${color}${alignr}${color #87CEEB}$nodename${color}
${color #2E8B57}内核信息:${color}${alignr}${color #87CEEB}$kernel${color}
${color #2E8B57}开机时长:${color}${alignr}${color #87CEEB}$uptime${color}
${color #2E8B57}CPU温度:${color}${alignr}${color #87CEEB}${acpitemp}°C${color}

${color #2E8B57}stock${color}${color #87CEEB}${hr 1}${color}
${execi 3 python ~/.conky/stock.py}

${font iYaHei:size=8}${color #2E8B57}${execi 99999 cat /proc/cpuinfo | grep "model name" -m1 | cut -d":" -f2 | cut -d" " -f2- | sed 's#Processor ##'}${font iYaHei:size=8}${color}
${color #2E8B57}CPU1 ${cpu cpu1}%${alignr}CPU2 ${cpu cpu2}%${color}
${voffset -6}${cpugraph cpu1 25,115 000000 ff4500 }  $alignr${offset -2}${cpugraph cpu2 25,115 000000 436eee}
${color #2E8B57}Ram ${color}${alignr}${color #082E54}$mem / $memmax ($memperc%)${color}
${color #87CEEB}${membar 4}${color}
${color #2E8B57}swap ${color}${alignr}${color #082E54}$swap / $swapmax ($swapperc%)${color}
${color #87CEEB}${swapbar 4}${color}
${color #2E8B57}Highest CPU${color}${alignc}${color #87CEEB}CPU%${color}${color #082E54}${alignr}MEM%${color}
${color #2E8B57}${top name 1}${color}${alignc}${color #87CEEB}${top cpu 1}${color}${color #082E54}${alignr}${top mem 1}${color}
${color #2E8B57}${top name 2}${color}${alignc}${color #87CEEB}${top cpu 2}${color}${color #082E54}${alignr}${top mem 2}${color}
${color #2E8B57}${top name 3}${color}${alignc}${color #87CEEB}${top cpu 3}${color}${color #082E54}${alignr}${top mem 3}${color}
${color #2E8B57}Highest MEM ${color}${alignc}${color #87CEEB}CPU% ${color}${color #082E54}${alignr}MEM%${color}
${color #2E8B57}${top_mem name 1}${color}${alignc}${color #87CEEB}${top_mem cpu 1}${color}${color #082E54}${alignr}${top_mem mem 1}${color}
${color #2E8B57}${top_mem name 2}${color}${alignc}${color #87CEEB}${top_mem cpu 2}${color}${color #082E54}${alignr}${top_mem mem 2}${color}
${color #2E8B57}${top_mem name 3}${color}${alignc}${color #87CEEB}${top_mem cpu 3}${color}${color #082E54}${alignr}${top_mem mem 3}${color}
${color #2E8B57}文件系统${color}${color #87CEEB}${hr 1}${color}
${color #2E8B57}Root:${color} ${alignr}${color #87CEEB}${fs_free /} ${color} @ ${color #87CEEB}${fs_size /}${color}
${color #082E54}${fs_bar 4 /}${color}
${color #2E8B57}Home:${color} ${alignr}${color #87CEEB}${fs_free /home} ${color} @ ${color #87CEEB}${fs_size /home}${color}
${color #082E54}${fs_bar 4 /home}${color}
${color #2E8B57}网络流量${color}${color #87CEEB}${hr 1}${color}
${color #082E54}Down ${downspeed eth0} k/s ${alignr}Up ${upspeed eth0} k/s${color}
${color #082E54}${downspeedgraph eth0 25,107} ${alignr}${upspeedgraph eth0 25,107}${color}
${color #082E54}Total ${totaldown eth0} ${alignr}Total ${totalup eth0}${color}
${color #2E8B57}天气状况${color}${color #87CEEB}${hr 1}${color}
${execi 3600 python ~/.conky/conkyForecast.py --location=CHXX0133 --datatype=CN}
${font Weather:size=25}${color gold}${execi 3600 python ~/.conky/conkyForecast.py --location=CHXX0133 --datatype=WF}${font}${color}${voffset -20}${offset 18}${execi 3600 python ~/.conky/conkyForecast.py --location=CHXX0133 --datatype=CC}${offset 10}${execi 3600 python ~/.conky/conkyForecast.py --location=CHXX0133 --datatype=HT}${offset 10}${execi 3600 python ~/.conky/conkyForecast.py --location=CHXX0133 --datatype=WS} ${font Arrows:size=8}${execi 3600 python ~/.conky/conkyForecast.py --location=CHXX0133 --datatype=BF}$font
${offset 60}Sol: ${color}${execi 3600 python ~/.conky/conkyForecast.py --location=CHXX0133 --datatype=SR}-${execi 3600 python ~/.conky/conkyForecast.py --location=CHXX0133 --datatype=SS}
${font Weather:size=20}${execi 3600 python ~/.conky/conkyForecast.py --location=CHXX0133 --datatype=WF --startday=1 --endday=4 --spaces=1}${font}
${execi 3600 python ~/.conky/conkyForecast.py --location=CHXX0133 --datatype=HT --startday=1 --endday=4 --spaces=11}
${color #2E8B57}E-MAIL${color}${color #87CEEB}${hr 1}${color}
You have ${color red}${texeci 1800 perl ~/.conky/check_gmail.sh} ${color}new mail(s)
${color #2E8B57}RSS${color}${color #87CEEB}${hr 1}${color}
${rss http://hi.baidu.com/dongfengxiao/rss 5 item_titles 3}

3 配置文件详解

当然, 默认的配置文件也不适合每个人, 所以还需要进行个性化配置. 不过它的配置文件初看起来非常乱, 给人一种无所适从的感觉. 其实Conky的配置参数并不多, 只要掌握了规律还是非常容易入手的, 下面分析一下:

首先, Conky的配置文件分为两个部分, 第一部分对Conky的全局属性做设定, 比如字体, 嵌入桌面等等; 第二部分是定义Conky的输出格式, 也就是Conky呈现在桌面上的样式.

3.1 全局属性

在全局属性的部分, 重要的参数有:

3.2 输出样式定义

下面介绍一下输出样式定义区:

Conky样式定义的语法和编写网页有点相似, 首先, 以字符"TEXT"标志样式定义的开始. Conky样式的定义以行为单位, 每一行对应Conky输出到屏幕时的一行.

每一行可以分为样式属性, 文字和元素. 其中样式属性和元素都以"$"开头, 并包含在"{}"里面, "${}"应该放在应用目标的前面.

样式属性如颜色, 字体大小, 停靠位置等.

3.2.1 颜色

颜色的定义格式为:

${color #5000a0}

其中的16位值色可以用X中定义的颜色名称代替, 如:

${color snow}

你可以在/etc/X11/rgb.txt中找到全部颜色的列表.

3.2.2 字体

字体属性的定义格式如下:

${font Monospace:style=Bold:size=10}

上面三个字体属性中任何一个不设定则使用上面定义的默认值.

3.2.3 对齐

${alignr}表示以该参数定义的元素向右对齐, ${alignl}表示左对齐, ${alignc}表示居中对齐.

需要注意的是, ${}中定义的颜色和字体属性将一直影响到Conky配置文件的最后, 即如果你在前面定义了第一行的颜色为"white", 那么以后各行的颜色都是白色. 所以原则上你需要为每一行甚至每一行的各个元素设定颜色或者字体属性.

3.2.4 文字

文字即Conky显示在屏幕上的文字, 它不需要特别的定义, 你希望Conky显示什么文字就添加什么文字即可.

元素即呈现在屏幕上的那些进度条, 你要监视的系统状态等等, 格式为:

${监视目标 参数}

如果没有参数, 也可以直接使用:

${监视目标}

的格式.

下面介绍一些常用的元素和其参数的格式:

4 vim编辑Conky语法高亮

使Vim支持Conky配置文件的语法高亮

默认情况下, Vim不认识Conky的配置文件, 使用Vim打开".conkyrc"文件无法实现语法高亮.

首先, 下载Vim的Conky配置文件语法高亮插件. 然后将其复制到用户主目录下的".vim/syntax"文件夹(如果没有则新建)里. 最后在 ".vim/ftdetect"文件夹里建立一个新文件, 命名为"conkyrc.vim", 在里面添加如下内容:

au BufNewFile,BufRead *conkyrc set filetype=conkyrc

再打开Conky的配置文件就可以实现语法高亮了.