数据中心内有数千英尺的管道,它们被涂上不同的颜色不仅仅是为了好看,更可以方便的区分出每个管道的用途。比如亮粉色的管道是从冷水机抽来的冷水,而绿色管道是送往室外冷却塔的热水。
星期二, 十月 30, 2012
Google的多彩管道
数据中心内有数千英尺的管道,它们被涂上不同的颜色不仅仅是为了好看,更可以方便的区分出每个管道的用途。比如亮粉色的管道是从冷水机抽来的冷水,而绿色管道是送往室外冷却塔的热水。
星期日, 九月 23, 2012
回到页首 Go Top Button
对于较长的页面,非常有必要显示“回到页首”按钮,以帮助用户快速返回到页面的开头。
使用以下HTML代码,在页面底部显示“回到页首”图标:
<div class="backToTopButton"> | |
<a href="#" title="返回页首"><img src="back_to_top_24.png" alt="TOP" /></a> | |
</div> |
使用以下CSS代码,让按钮浮动显示在固定位置--即使在页面滚动时也始终停留在可见范围内:
/* Go Top Link */ | |
div.backToTopButton { | |
font-family: Georgia; | |
font-size: 12px; | |
color: #000000; | |
background-color: #ffffff; | |
padding: 3px 10px 20px 10px; | |
width:50px; | |
text-align: center; | |
border-width : thin thin thin thin; | |
border-color : #999 #999 #999 #999; | |
border-style : solid solid solid solid; | |
border-collapse : collapse; | |
-moz-border-radius: 10px; | |
border-radius: 10px; | |
position: fixed; | |
bottom: -20px; | |
right: 20px; | |
z-index: 200; | |
} | |
div.backToTopButton:hover { | |
color: #ffffff; | |
background-color: #999; | |
/*cursor: pointer;*/ | |
/*cursor: hand;*/ | |
} |
页面显示效果,如下图所示:
您也可以下载完整的示例文件。
星期六, 九月 22, 2012
听姚谦说文艺这回事
文艺最可贵的地方,在于它的独特、稀有却正中下怀的触动。
从小我就常常想,为什么孤单、孤独不好?是负面的词?后来我发现,这是被教育出来的。
记得有个统计数据是,淡忘一个爱过的人,提起他的名字都不再波动,平均起来是需要十八个月的时间。
爱情的本质只是你渴望在某个人身上的投射面,渴望变了,人还是那个人,爱情却消失了。而所有在爱情中写给对方的文字,都是跟自己的对话。
在一段时间内,两个人彼此在同一频率、平行行走、互相欣赏,你们的计划、价值和感受是那么的相同,这一段时间的情感叫做爱情。爱情是有寿命的,就像失恋、上帝给我们的躯体一样。而爱情过后,尽可能把那段时间内的感受、感激留下来,它们才是没有寿命的。
我不会期待找一个各个方面都跟我相契的灵魂伴侣,这样的人应该是不存在的。我只能希望在人生的某些时段,遇到不同的、某些方面和我相契的灵魂伴侣,相携一段时光。
星期六, 九月 01, 2012
城市, 让记忆更荒芜
今天,游荡在中国的任何一个城市,总能看到拆除,总能看到快速发展的同时如何快速地遗忘。我们的记忆在哪里藏身呢?记忆可以是一首歌,可以是一个日记本,可以是一条街,可以是一座工厂,可以是一座城市,更可以是山河大地。我们必须保存我们一个又一个的记忆之盒,在这些盒子里保存的是我们成为人的依据。
--贾樟柯 《温暖的记忆》
星期一, 八月 20, 2012
免费Windows字体管理软件 Font Xplorer
Font Xplorer 是一个免安装的绿色软件,用于管理Windows字体。它可以运行在 Windows 9x/Me/NT4/2000/XP 操作系统下,但不支持Windows Vista/7/8 。
在程序主界面中,可以利用树状结构,浏览已经安装和尚未安装的字体,并安装或删除选中的字体。
安装字体时,可以选择将字体文件保留在当前文件夹(leave where they are);将字体文件复制到系统字体目录(copy to Windows fonts folder);或者将字体文件复制到指定目录(copy to different folder)。
有时为了简短,字体文件的名字会变得不知所云(比如arialbi.ttf);利用Rename fonts to Full Name功能,可以将文件名改为字体的名称(Arial Bold Italic.ttf)。
在字符表(Character Map)中,可以浏览所有字符或放大个别字符;可以根据字符集过滤字符;甚至能够将字符复制为格式文本或适量图像,并粘贴到其它程序中。
注意:Font Xplorer 支持 TrueType 和 OpenType fonts with TrueType outlines;但不支持Adobe Type 1 fonts 和 OpenType fonts with PostScript outlines。
星期六, 八月 18, 2012
星期六, 八月 04, 2012
VIM学习笔记 操作目录(Manipulate Directory)
在目录间移动
使用以下命令,可以显示当前所在的目录:
:pwd
使用以下命令,在Linux下可以进入HOME目录,而在Windows下则显示当前所在目录:
:cd
使用以下命令,可以进入指定的目录:
:cd D:\tepm
使用以下命令,可以返回前一个目录:
:cd -
使用以下命令,可以返回上一级目录:
:cd ..
我们还可以使用以下命令,创建新的目录:
:!mkdir my_project
利用wildmenu选择目录
在vimrc配置文件中,增加以下两条命令,可以在屏幕底部启用wildmenu菜单显示:
set wildmenu
set wildmode=list:longest,full
启用wildmenu菜单之后,在命令行中,第一次点击Tab时, 将列示所有可能与已输入字符相匹配的命令列表;第二次点击Tab时,则将在显示的wildmenu中遍历匹配项;然后点击回车键做出选择。
使用:help wildmode
和:help wildmenu
命令,可以查看更多帮助信息。
在命令行中输入:e
命令,紧接着输入一个空格,然后点击Tab键,将在屏幕底部的wildmenu中,显示当前目录下的子目录和文件列表:
再次点击Tab键,可以选择下一个项目,点击Shift + Tab键则可以选择上一个项目 ;使用左右移动键,也可以在文件列表中进行选择;而使用上下移动键,则可以移动至上一层或下一层目录。点击回车键,将打开选中的文件或文件夹。
如果在命令行中输入:e
命令,紧接着输入一个空格以及文件名的开头部分,然后点击Tab键,那么将在屏幕底部的wildmenu中显示与之相匹配的项目;如果只发现一个匹配项,那么将会直接补全文件名:
星期五, 七月 06, 2012
VIM学习笔记 操作文件(Manipulate File)
:Explore
使用:Explore
命令(注意开头E大写)打开文件浏览器,可以在其中切换目录并选择打开文件。
使用键盘移动光标至文件或文件夹名称上,然后点击Enter回车键,可以在当前窗口中打开该文件或文件夹;如果希望在新建窗口中打开文件或文件夹,那么可以点击o键。
直接使用鼠标点击文件或文件夹名称,也可以在当前窗口中打开该文件或文件夹。
点击大写R键,然后修改窗口底部信息中的第二个文件名,可以重命名当前光标下的文件。
点击大写D键,然后在窗口底部信息中进行确认,则可以删除当前光标下的文件。
点击/键,可以在文件列表中进行查找。
goto file
如果当前文件中包含了其他文件名,那么我们可以移动到文件名位置,然后直接使用gf
命令在新的缓冲区中打开链接的文件。例如下图所示,在HTML文件中引用了CSS文件,那么只需要在CSS文件名处执行gf命令,Vim就会在当前文件夹中查找并打开引用的CSS文件。
如果文件名中没有指明扩展名称,那么可以使用以下命令来指定gf需要查找的文件类型:
:set suffixesadd+=.rb
如果我们希望gf在多个文件夹中尝试查找并打开文件,那么可以使用以下命令来定义文件夹列表:
:set path+=D:/Anthony_GitHub/learn-vim/**
使用以下命令可以查看当前path选项的设置:
:set path?
其中,“.”代表当前文件夹下的所有文件;“**”代表所有子文件夹;“,”用于分隔多个文件夹。
我们也可以使用ctrl-Wf
命令,在新的分割窗口中打开光标下文件。
文件信息
使用以下命令,可以显示当前文件的名字、状态以及行列相关的信息:
:file
"test.txt" [Modified] 134 lines --55%--
使用以下命令,则可以显示当前文件的总行数:
:=
使用g-Ctrl-g
命令,将在状态栏下方显示整个文档的字数和行数,以及当前所处的位置。
如果想要统计当前行的字数,首先移动到行尾,然后使用v
命令进入可视化模式,使用0
命令移动到行头并选中整行文字,最后使用g-Ctrl-g
命令显示选中文本的字数。
在插入模式下,使用<C-R>%
命令,或者在常规模式下,使用"%p
命令,可以将当前文件名粘贴到文本中。
使用以下命令,可以在文本中查找当前文件名:
/<C-R>%
查看文件
使用:view file
命令,将以只读方式打开文件。
使用:set ro
命令,会将当前文件置为只读状态。你在文件中进行的任何修改,都无法保存。当然我们也可以使用:write!
命令,来强制保存文件。
使用:set noma
命令,可以将当前文件置为不可修改状态,Vim会阻止任何修改操作。
新建文件
使用:vi file
命令,在新建缓冲区中编辑名为file的新文件。如果当前文件没有保存,那么将会显示警告信息,此时可以输入:write
命令,来保存当前文件。
使用:vi! file
命令,将不保存当前文件而强制开始编辑新文件。
另存文件
使用以下命令,可以将当前文件另存为以name命名的新文件,并在当前缓冲区中开始编辑新文件:
:file name
工作目录
使用以下命令,可以查看Vim所在的当前工作目录:
:pwd
切换目录
如果想要切换到其它目录,可以使用以下命令:
:cd dir
注意:如果没有指定目录,那么使用:cd
命令,在Linux下,将回到home用户主目录;而在Windows下,则会显示当前工作目录。
如果想要回到前一个工作目录,可以使用以下命令:
:cd -
:Explore | 打开文件浏览器 |
gf | 打开以当前光标下文字命名的文件 |
:file | 显示当前文件的名字、状态以及行列信息 |
:= | 显示当前文件的总行数 |
g-Ctrl-g | 显示行列信息和字数统计 |
:set ro | 将当前文件置为只读状态 |
:set noma | 将当前文件置为不可修改状态 |
:vi | 新建文件 |
:view | 以只读方式打开文件 |
:pwd | 显示当前工作目录 |
:cd | 切换目录 |
星期三, 六月 27, 2012
这些天纠结的收放自如
类似常见问题(FAQ)的网页,通常都会首先显示所有问题列表,然后在用户点击某个问题时自动展开显示详细答案。收放自如的版式,既可以让读者在同一页面中查看大量信息,又不至于因为内容过多而使页面布局凌乱。
方案 1Toggle Visibility
可以使用以下代码,显示或隐藏指定区域。此方案的优势是,代码和结构都非常简单。而不足是,当区域显示后需要再次点击链接以重新隐藏内容。请查看在线实例。
<script type="text/javascript"> | |
/* | |
** Name: toggle_visibility | |
** Desc: toggles id of element to be visible or not | |
*/ | |
function toggle_visibility(id) { | |
var e = document.getElementById(id); | |
if (e.style.display == 'none') | |
e.style.display = 'block'; | |
else | |
e.style.display = 'none'; | |
} | |
</script> | |
<p><a title="Click to show/hide FAQ" href="javascript: toggle_visibility('FAQ1');">Question</a></p> | |
<div style="display: none;" id="FAQ1"> | |
<p>Answer</p> | |
</div> |
方案 2Simple Javascript Accordions
Dezinerfolio使用Javascript开发的Simple Javascript Accordions,提供了横向、纵向和标签页等多种形式的收放效果。此方案的优势是,利用插件减少开发成本。而不足是,需要在页面加载时启动此插件,可能与其它插件产生冲突。请查看在线实例。
方案 3CSS3 Accordion Effect
CSS Ninja使用CSS3开发的Accordion Effect,提供了纯CSS并且支持多种浏览器(包括IE6+)的收放效果。此方案的优势是,CSS便于调试,并且不会与其它插件产生冲突。而不足是,收放效果在IE和非IE浏览器中稍有不同:在非IE中浏览器中,需要点击链接以展开内容;而在IE中,鼠标移动到标题行就会自动扩展显示。请查看在线实例。
注意:以上方案均需要为每段问答指定ID,代码维护成本较高。
星期一, 四月 02, 2012
VIM学习笔记 帮助信息(Help)
查看帮助
使用以下命令或直接按下F1键,可以查看帮助文件:
:help
使用查询命令,可以在帮助文件中查找特定主题的帮助信息。例如使用/mode
命令,即可找到关于模式的帮助信息。
在帮助信息中的命令、选项或章节等链接上双击鼠标或点击ctrl-]键,就可以跳转到相关的帮助信息。点击ctrl-o或ctrl-t则可以在查阅过的帮助信息之间进行跳转。
帮助目录
使用以下命令,可以显示用户手册的目录:
:help usr_toc
精确查找
如果你想要查看特定命令的帮助信息,那么可以直接在帮助命令中指定命令做为参数:
:help :undo
通过set wildmenu
设置命令,可以在窗口底部显示菜单选项。当我们并不知道确切的命令名称时,可以只输入开头的几个字母,然后按下Tab键,就将在wildmenu中显示可能匹配的命令。继续按Tab键,可以在这些命令列表间移动,按下回车键就会显示选中命令的帮助信息。
使用:help ctrl<Tab>
命令,可以列出所有和CTRL键相关的帮助主题。使用:help i_CTRL-R
命令,则只显示在插入模式下CTRL-R的帮助信息;而:help c_CTRL-R
命令,则显示在常规模式下CTRL-R的帮助信息。
模糊查询
如果不知道具体的命令名称,那么可以使用以下命令在所有帮助文件中查询相关信息。例如,使用此命令,将逐一显示所有与插入模式相关的帮助信息。
:helpgrep insert mode
可以使用:cnext
命令,查看下一条帮助信息;使用:cprev
命令,查看上一条帮助信息。
如果有很多相关的帮助信息,可以使用:clist
命令,列示所有包含指定主题的帮助信息。
使用:cwin
命令,则可以在QuickFix窗口中列示所有相关帮助信息的条目。利用鼠标滚轴、方向键或j,k移动命令可以在条目间移动,按下回车键则可以打开当前条目的帮助信息。使用:cclose
命令,可以关闭QuickFix窗口。
更多帮助资源
:help quickref
命令,可以查看快速索引:
:help tips
命令,可以查看使用技巧:
我们还可以访问网页版的Vim帮助文件:English Version|中文版。
:help | 查看帮助 |
:helpgrep | 使用正则表达式模糊查询帮助信息 |
星期六, 三月 03, 2012
VIM学习笔记 交换文件(swap)
在编辑文件的过程中,Vim将会在当前目录中自动生成一个以.swp结尾的临时交换文件,用于备份缓冲区中的内容,以便在意外退出时可以恢复之前编辑的内容。
启用/禁用交换文件
可以使用以下命令,设置生成交换文件:
:set swapfile
可以使用以下命令,设置Vim不产生交换文件:
:set noswapfile
注意,以上设置仅针对当前文件生效。
处理交换文件
当完成编辑并保存退出后,临时交换文件将会被删除;但如果Vim意外退出,那么这个临时文件就会留在硬盘中。当Vim再次启动时,会检查当前目录中是否存在交换文件。如果存在,则意味着Vim正在编辑此文件,或者在上次编辑过程中意外退出,这时Vim就会给出警告信息,并要求我们在以下四个选项中做出选择:
- Open Read-Only(以只读方式打开):如果我们想要查看文件内容或是有另一个编辑过程正在运行,那么可以选择此选项;
- Edit anyway(编辑文件):请尽量不要选择此选项。因为如果同时有两个或是多个编辑过程同时编辑一个文件,那么只有最后一个保存的编辑过程有效;
- Recover(恢复):如果在编辑过程中vim意外退出,那么可以选择此选项尝试从交换文件恢复文档;
- Quit(退出):选择此选项,将取消对此文件的修改。
查看交换文件
Vim意外退出时,并不会覆盖旧的交换文件,而是会重新生成新的交换文件。例如,第一次产生的交换文件名为“.file.txt.swp”;再次意外退出后,将会产生名为“.file.txt.swo”的交换文件;而第三次产生的交换文件则为“.file.txt.swn”;依此类推。
使用以下命令,可以查看当前交换文件的名称:
:swapname
也可以在命令行中使用以下命令,列示当前目录和临时目录下的交换文件:
vim -r
命令的执行结果,如下图所示:
交换文件选项
根据默认设置,交换文件会每隔4000毫秒(4秒)或者200个字符保存一次。我们可以使用以下命令,修改保存交换文件的频率:
:set updatetime=23000
:set updatecount=400
注意,如果我们将updatecount的值为0,那么就将不保存交换文件。
Vim默认在当前文件所处的目录下产生交换文件,我们可以通过directory选项来更改交换文件产生的目录。例如,使用以下命令将交换文件存放在/tmp目录下:
:set directory=/tmp
注意,如果我们将交换文件存储在一个指定目录,那么当编辑不同目录下相同名称的文件时,就会产生命名冲突。我们可以将directory选项设置为一个以逗号分隔的目录列表,并将当前目录(.)设为目录列表的第一个选项,这样交换文件首先会被存放在当前目录下。
:set directory=.,/tmp
保存交换文件
使用以下命令,可以保存修改到交换文件中,而原始文件则保持不变(直到使用:write或ZZ命令退出时原始文件才会被重写)。也就是说,我们可以在丢失原始文件的情况下,使用交换文件来恢复文档。
:preserve
从交换文件恢复
可以使用以下命令,来修复指定的文件:
:recover temp.txt
如果存在多个交换文件,那么可以根据屏幕提示选择从指定的交换文件恢复:
如果没有指定文件名,那么将默认恢复当前缓冲区中的文件。如果试图修复的文件正处于编辑状态,那么将返回错误。如果想要放弃所做的编辑并修复文档,那么可以使用以下命令进行强制修复:
:recover! temp.txt
在命令行下使用以下命令,可以从指定的交换文件进行恢复:
vim -r file.txt.swo
你可以使用以下命令,查看关于交换文件的帮助信息:
:help swap-file
:swapname | 查看当前交换文件的名称 |
:preserve | 保存修改到交换文件 |
:recover | 从交换文件恢复 |
:set swapfile | 启用交换文件 |
:set noswapfile | 禁用交换文件 |
:set updatetime | 设置保存交换文件的时间频率 |
:set updatecount | 设置保存交换文件的字数频率 |
:set directory | 设置用于保存交换文件的文件夹 |
星期五, 二月 10, 2012
星期二, 一月 31, 2012
VIM学习笔记 光标(Cursor)
光标显示选项
可以通过以下命令设置guicursor选项,来定义图形界面下的光标显示:
:set guicursor=mode:style[-highlight],mode:style[-highlight],...
其中,mode是以下选项的组合:
n | 常规模式 |
v | 可视模式 |
ve | 可视模式但不包括selection |
o | 操作符等待模式 |
i | 插入模式 |
r | 替换模式 |
c | 命令行常规模式 |
ci | 命令行插入模式 |
cr | 命令行替换模式 |
sm | 插入模式下的显示匹配 |
a | 所有模式 |
其中,style如下:
horN | 水平栏,字符高度的N个百分比 |
verN | 垂直栏,字符宽度的N个百分比 |
block | 光标块,覆盖整个字符 |
blinkwaitN | 光标开始闪烁前的延迟 |
blinkonN | 光标显示的时间 |
blinkoffN | 光标不显示的时间 |
例如,以下命令会在常规、命令和插入模式下,将光标设置为相当于当前字符50%宽度的方块,并使用ncvCursor组高亮显示:
:set guicursor=n-c-v:ver50-ncvCursor
而以下命令则启用不闪烁的方块光标,在插入模式下,使用iCursor组高亮显示,而在可视化模式下,则使用vCursor高亮显示组。
:set guicursor=i:block-iCursor-blinkon0,v:block-vCursor
关于光标显示的更多信息,请使用以下命令查看帮助文档:
:help guicursor
光标颜色
利用以下命令,可以改变光标的前景色和背景色:
:highlight Cursor guifg=white guibg=black
:highlight iCursor guifg=white guibg=steelblue
光标行/列
利用以下命令,使用CursorLine组高亮显示光标所在的屏幕行:
:set cursorline
而利用以下命令,则使用CursorColumn组高亮显示光标所在的屏幕列:
:set cursorcolumn
使用以下命令同时启用光标行和光标列,将显示“十字架”光标,可以准确定位当前位置:
:set cursorline cursorcolumn
利用以下命令,可以改变光标所在行的颜色:
:highlight CursorLine guibg=lightblue ctermbg=lightgray
可以使用以下命令,取消高亮显示光标所在的行和列:
:set nocursorline nocursorcolumn
:set guicursor | 设置光标选项 |
:set cursorline | 高亮光标所在的屏幕行 |
:set cursorcolumn | 高亮光标所在的屏幕列 |
星期六, 一月 14, 2012
VIM学习笔记 配置文件(vimrc)
在vim启动过程中,首先将查找配置文件并执行其中的命令。而这些初始化文件一般有vimrc、gvimrc和exrc三种。
利用:version
命令,可以得到配置文件的详细信息。
注意:如果执行gvim,那么$VIMRUNTIME/menu.vim也会被执行。
配置文件位置
vimrc是主配置文件,它有全局和用户两种版本。
全局vimrc文件,存放在Vim的安装目录中。可以使用以下命令,确定Vim的安装目录:
:echo $VIM
默认情况下,系统vimrc存放在以下位置:
Linux: /usr/share/vim/vimrc
Windows: c:\program files\vimrc
用户vimrc文件,存放在用户主目录中。可以使用以下命令,确定用户主目录:
:echo $HOME
默认情况下,用户vimrc存放在以下位置:
Linux: /home/username/.vimrc
Windows: c:\documents and settings\username\_vimrc
注意:用户配置文件优先于系统配置文件。
gvimrc是GVIM的配置文件,它也有全局和用户两种版本,并且存放在与vimrc相同的目录中。
默认情况下,系统gvimrc存放在以下位置:
Linux: /usr/share/vim/gvimrc
Windows: c:\program files\vim\_gvimrc
默认情况下,用户gvimrc存放在以下位置:
Linux: /home/username/.gvimrc
Windows: c:\documents and settings\username\_gvimrc
exrc文件,仅用于向后兼容olvi/ex,它的全局和用户两种版本也放置于vimrc相同的目录里。除非你使用vi-compatible模式,否则不需要关注exrc配置文件。
注意:在Unix和Linux下,vim的配置文件被命名为以点开头的隐藏文件;而在Windows下,配置文件则以下划线开头命名。
编辑配置文件
可以使用以下命令,新建缓冲区来编辑配置文件:
:edit $MYVIMRC
也可以使用以下命令,新建标签页来编辑配置文件:
:tabedit $MYVIMRC
例如,我们可以在配置文件中使用以下命令,来设置vim的选项:
:syntax on "打开语法加亮功能
:set shiftwidth=4 "设置缩进宽度为4个空格
其中,单引号(")为注释内容。
应用配置文件
修改配置文件后,需要重新启动Vim,或使用:source命令来应用新的设置:
:source $MYVIMRC
我们可以在配置文件中增加以下命令,在保存后自动应用配置:
autocmd bufwritepost .vimrc source $MYVIMRC
配置文件实例
以下是本人的vim配置文件内容,供各位参考:
set ignorecase smartcase " 搜索时忽略大小写,但在有一个或以上大写字母时仍保持对大小写敏感 | |
set nu " 显示行号 | |
set ruler | |
set rulerformat=%55(%{strftime('%a\ %b\ %e\ %I:%M\ %p')}\ %5l,%-6(%c%V%)\ %P%) | |
set guioptions+=b | |
set guioptions-=T | |
set paste | |
"set clipboard=unnamed " 让Vim和Win共用剪贴板 | |
set cursorline cursorcolumn | |
syntax enable " 打开语法高亮 | |
syntax on " 允许按指定主题进行语法高亮,而非默认高亮主题 | |
colorscheme xoria256 " 指定配色方案 | |
set showcmd " 在命令行显示当前输入的命令 | |
set langmenu=en_US " 将菜单和信息设置为英文 | |
let $LANG = 'en_US' | |
source $VIMRUNTIME/delmenu.vim | |
source $VIMRUNTIME/menu.vim | |
set fileencoding=utf-8 " 设置多编码处理 | |
set encoding=utf-8 | |
set tenc=utf-8 | |
set fileencodings=ucs-bom,utf-8,cp936,gb18030,big5,euc-jp,euc-kr,latin1 | |
"language message zh_CN.UTF-8 | |
filetype on " 开启文件类型侦测 | |
filetype plugin on " 根据侦测到的不同类型加载对应的插件 | |
if has("autocmd") && exists("+omnifunc") | |
autocmd Filetype * | |
\ if &omnifunc == "" | | |
\ setlocal omnifunc=syntaxcomplete#Complete | | |
\ endif | |
endif | |
set laststatus=2 " 设置状态栏 | |
set statusline=%2*%n%m%r%h%w%*\ %F\ %1*[FORMAT=%2*%{&ff}:%{&fenc!=''?&fenc:&enc}%1*]\ [TYPE=%2*%Y%1*]\ [COL=%2*%03v%1*]\ [ROW=%2*%03l%1*/%3*%L(%p%%)%1*]\ [DATE=%2*%{strftime(\"%c\",getftime(expand(\"%%\")))}%1*] | |
"set statusline=%F%m%r%h%w\ [FORMAT=%{&ff}]\ [TYPE=%Y]\ [ASCII=\%03.3b]\ [HEX=\%02.2B]\ [POS=%04l,%04v][%p%%]\ [LEN=%L] | |
function! InsertStatuslineColor(mode) | |
if a:mode == 'i' | |
hi statusline guibg=peru | |
elseif a:mode == 'r' | |
hi statusline guibg=blue | |
else | |
hi statusline guibg=black | |
endif | |
endfunction | |
au InsertEnter * call InsertStatuslineColor(v:insertmode) | |
au InsertLeave * hi statusline guibg=orange guifg=white | |
hi statusline guibg=black | |
hi User1 guifg=gray | |
hi User2 guifg=red | |
hi User3 guifg=white | |
set winaltkeys=no | |
" map | |
nmap <tab> V> | |
nmap <s-tab> V< | |
vmap <tab> >gv | |
vmap <s-tab> <gv | |
" 打开另存为对话框 | |
map <F2> <Esc>:browse saveas<CR> | |
" 使用NERDTree插件查看工程文件 | |
nmap <F3> :NERDTreeToggle planning<CR> | |
" 启用/禁止折行 | |
nmap <silent> <F5> <Esc>:call ToggleWrap()<CR> | |
" 显示/禁止行列光标 | |
nmap <silent> <F6> <Esc>:call ToggleCursor()<CR> | |
" 新建标签页 | |
map <F10> <Esc>:tabnew<CR> | |
" 显示/禁止查找高亮度 | |
nmap <silent> <A-f> <Esc>:call ToggleHLSearch()<CR> | |
function! ToggleWrap() | |
if &wrap | |
set nowrap | |
else | |
set wrap | |
endif | |
endfunction | |
function! ToggleHLSearch() | |
if &hls | |
set nohls | |
else | |
set hls | |
endif | |
endfunction | |
function! ToggleCursor() | |
if &cursorcolumn | |
set nocursorline nocursorcolumn | |
else | |
set cursorline cursorcolumn | |
endif | |
endfunction | |
let mapleader=";" " 定义快捷键的前缀,即<Leader> | |
nmap <leader>v :tabedit $MYVIMRC<CR> | |
" 配置文件 | |
autocmd bufwritepost _vimrc source $MYVIMRC | |
" 设置文件格式 | |
set fileformats=unix,dos,mac | |
" Template | |
autocmd! BufNewFile * silent! 0r $VIM/vimfiles/skel/Template.%:e | |
" 指定备份文件目录 | |
set backupdir=F:\Bak | |
set backupskip=D:/Temp/* | |
" 取消代码自动折叠 | |
autocmd! BufNewFile,BufRead * setlocal nofoldenable | |
" 打开/关闭代码折叠 | |
nnoremap <space> za | |
" 优化大文件编辑 | |
let g:LargeFile=10 | |
" 自动加载文件 | |
set autoread | |
set list! | |
set listchars=nbsp:¬,tab:┈┈,precedes:«,extends:»,trail: | |
hi NonText ctermfg=247 guifg=#a73111 cterm=bold gui=bold | |
hi SpecialKey ctermfg=77 guifg=#654321 | |
augroup filetypedetect | |
au BufNewFile,BufRead *.mxl setf mxl | |
augroup END |
星期日, 一月 08, 2012
柱形图(Bar Chart)
柱形图(Bar Chart),适用于显示一段时间内数据的变化或各系列之间比较。(Show data values in comparison to one another.)
柱形图不仅可表现单一的数据,也可将多种数据进行并列比较。同时,我们还可以对柱形进行艺术加工,柱形本身也能采用其他的象形符号来表现。另外,当参与比较的数据差异较大时,可将柱形转变为用圆形或正方形等紧凑的图形,通过其面积的不同来进行比较。更进一步的话,还能使用立方体\球体,用体积的形式来表示。折线图只能表现数据随时间变化的过程,而柱形图兼具这个功能。此外,饼围所表示的是数据在 100%中所占的比例,使用柱形图,也能在一条柱形中表现这样的比例关系。正因为柱形图是这样一种全能的统计图,所以它是统计图中最为基础的表现形式。
通过为柱形图设置3D效果,可以使显示风格更为现代:
将柱形图横置,可以突显数据对比和排序效果,但是时间概念就会削弱甚至丧失:
下图统计了2011年度F1比赛中各位车手受到处罚的情况。汉密尔顿毫无意外地排名榜首。图表的纵轴表示受罚的次数,并且利用不同的色彩显示了受罚的类型(比如灰色表示通过维修站)。图表的横轴列示车手头像,从受罚最多到受罚最少依次排列,车手的驾驶风格也变得一目了然。通过增加形状、色彩和图像,原本死气沉沉的柱形也可以变得生动活泼,并且体现出更多数据和含义。
结合使用数字和颜色,在以下横向柱形图中,同时统计了2016年F1银石站车手进站和换胎的情况。纵轴列示了各位车手的姓名;而横轴则显示在全部52圈比赛中停站换胎的节奏:其中,数字表示进站圈数,而不同颜色的横轴则代表使用不同类型的轮胎。
卢夫斯·西格在其著作《欧洲地图集》(Atlas of Europe)中,使用艺术化的柱形图展示了西欧的原油消耗: