星期六, 十一月 26, 2011

VIM学习笔记 备份文件(Backup)

Vim利用writebackup和backup两个选项,在编辑文件的过程中,自动生成备份文件,以防止异常情况下的数据丢失。

启用文件备份

在默认情况下,Vim已经设置了writebackup选项。我们可以使用以下命令,启用backup选项。vim将首先删除旧的备份文件,然后再为正在编辑的文件生成新的备份文件:

:set backup

备份文件名称

默认情况下,备份文件的名称是在原始文件名最后加上“~”后缀。例如,正在编辑一个名为“data.txt”的文件,那么Vim将产生名为“data.txt~”的备份文件。我们也可以使用以下命令,来自定义备份文件扩展名,新的备份文件名将命名为“data.txt.bu”。

:set backupext=.bu

备份文件位置

默认情况下,备份文件将存储于原文件相同的目录下。使用以下命令,可以设置备份文件存放到指定位置:

:set backupdir=C:/Temp

需要注意的是,如果在不同目录下编辑相同名称的文件,在保存退出时,Vim会将备份文件放置到同一指定的目录中,名字冲突会使已存在的备份文件被覆盖。

备份文件过滤

如果你并不需要对所有文件都进行备份,那么可以利用以下命令取消对指定目录下文件的备份:

set backupskip=D:/Temp/*

需要注意的是,Windows文件路径中斜线(/)的用法。

禁止文件备份

在保持默认writebackup选项的情况下,我们可以使用以下命令,取消备份文件的生成:

:set nobackup

需要注意的是,如果同时设置了nobackup和nowritebackup选项,那么在磁盘已满而更新文件时会造成数据的丢失,所以我们最好不要改变默认的writebackup选项。

命令小结
:set backup启用文件备份
:set nobackup禁止备份文件
:set backupext设置备份文件扩展名
:set backupdir设置备份文件存储位置
:set backupskip过滤不需备份的文件

Ver: 1.1<上一篇 | 目录 下一篇>

星期六, 十一月 19, 2011

意义的消解

因为没有意义。因为意义被彼此抵消。因为太多影像无时无刻向我们倾销意义。因为对意义无所适从,人的最后的反应,就是发笑。

--陈丹青

星期五, 十一月 18, 2011

VIM学习笔记 多重色彩括号(Rainbow Parentheses)

在编写代码时,经常需要函数嵌套,这就会造成一行代码中会有很多括号,而变得难以阅读。我们可以使用Rainbow Parenthesis插件或者Rainbow Parentheses Improved插件,通过多种颜色来标识匹配的括号。

安装Rainbow Parentheses

首先下载Rainbow Parenthesis;然后在vim中打开下载的vba文件;最后执行:so %命令以完成安装。

plugin_RainbowParentheses_install

配置Rainbow Parentheses

打开vimfiles\autoload\rainbow_parenthesis.vim文件,在第66行插入以下命令,以避免Rainbow Parentheses插件运行时报错。

plugin_RainbowParentheses_workaround1

将该文件第34-49行中的guibg部分删除,以避免Rainbow Parentheses插件改变括号的背景色。

plugin_RainbowParentheses_workaround2

启用Rainbow Parentheses

我们可以使用以下命令,手工启动Rainbow Parentheses插件:

:ToggleRaibowParenthesis

显示效果如下图所示:

plugin_RainbowParentheses

也可以在vimrc文件里添加以下命令,在vim启动时自动加载Rainbow Parentheses插件:

plugin_RainbowParentheses_load

安装Rainbow Parentheses Improved

Rainbow Parentheses Improved在以下几个方面进行了改进:不再限制括号的嵌套层数;可以分别自定义图形界面下和终端上所使用的括号颜色;甚至可以为不同类型的文件设定不同的配置;增加了中文说明。

首先,将下载到的rainbow.vim文件放到vimfiles/plugin文件夹(在linux系统里是~/.vim/plugin文件夹)中。然后,将以下句子,加入到你的vimrc配置文件中:

let g:rainbow_active = 1

启用Rainbow Parentheses Improved

我们可以使用以下命令,手工启动Rainbow Parentheses Improved插件:

:RainbowToggle

显示效果如下图所示:

plugin_RainbowParenthesesImproved

Ver: 1.0<上一篇 | 目录 下一篇>

星期六, 十一月 12, 2011

VIM学习笔记 非可见字符(Listchars)

显示/隐藏

默认情况下,Vim是不会显示space,tabs,newlines,trailing space,wrapped lines等不可见字符的。我们可以使用以下命令打开list选项,来显示非可见字符:

:set list

如下图所示,制表符被显示为“^I”,而行尾则标识为“$”。

set_list_default

我们也可以使用以下命令,重新隐藏不可见字符:

:set nolist

通常我们会利用以下命令,切换显示或隐藏不可见字符:

:set list!

显示符号

使用:set listchars命令,可以配置使用何种符号来显示不可见字符。例如以下命令,将制表符(tab)显示为…;将尾部空格(trail)显示为·;将左则超出屏幕范围部分(precedes)标识为«;将右侧超出屏幕范围部分(extends)标识为»。

set listchars

其中,特殊符号是在插入状态下,点击快捷键Ctrl-k,然后键入编码来输入的。比如,中点是由.M输入;左书名号是由<<输入,右书名号是由>>输入。

可以使用以下命令,查看可以输入的特殊字符:

:digraphs

digraph

如下图所示,通过选择合适的符号和色彩,非可见符号被低调地显示出来––即没有影响实际的文本内容,又能展示容易被忽视的重要信息:

set listchars_result

显示颜色

非可见字符"eol"、"extends"、"precedes"是由NonText高亮组来控制显示颜色的,而"nbsp"、"tab"、"trail"则是由"SpecialKey"高亮组来定义的。

我们可以使用以下语法高亮 (Syntax Highlight)命令,来设置非可见字符的显示颜色和格式:

hi NonText SpecialKey

请使用以下命令,查看关于非可见字符的帮助信息:

:help listchars

命令小结
:set list显示非可见字符
:set nolist隐藏非可见字符
:set listchars设置非可见字符的显示模式

Ver: 1.0<上一篇 | 目录 下一篇>