中山公园汇川路联通新时空酒店式公寓二楼大厅。funny.
突然体会到,iPad 放在 dock 上看,无比登对。 7 hours 55 minutes ago
喜欢 OSX 或 FreeBSD 的一个原因是,光标默认为块状不闪烁,这给人以一种坚毅沉着,并且自信的美感。它静观其变,随需而动,没有半点多余。而跳动的光标则充斥着急迫感,浮躁且功利。
gvim 中要启用块状不闪烁光标,在 .gvimrc 中加入:
set gcr=a:block-blinkon0
gcr 是 guicursor 的简写,a 表示所有模式,冒号后面是对应模式下的行为参数,每个参数用 – 分隔,block 说明用块状光标,blinkon 表示亮起光标时长,时长为零表示禁用闪烁。也可以是 blinkoff0 或者 blinkwait0。具体参考 :help gcr。
不喜欢括号成对高亮,看到了心里就烦。这个功能是 hi_paren 插件提供的。要关闭它,.vimrc 中加上:
let loaded_matchparen = 1
在编辑过程中,可以用命令 :NoMatchParen 关闭,或者 :DoMatchParen 打开。具体参考 :help hi_paren。
单是 bd 命令能删除 buffer,但在 MBE 的窗口中还留着文件名。遍寻之后才知道,在该文件名上按 d 就可关闭。
第一次看到 JavaScript 里面三个等号的比较运算符。竟然这么多年来从未见过,要么我寡闻,要么我术业不精。原来 === 是说除了数据相同外,数据类型也要相同。对应的还有 !== 作不等同比较。
以前选颜色,要么抄袭,看到喜欢的,查取源代码或者用工具点取;要么用 RGB 配色板凭感觉选一块,不过很难取出想要的那种感觉。
前些天忽然意识到,选颜色该用 HSB 模式,更自然,更便捷,更精确。第一步选色系(H),第二步调整饱和度(S),淡一点或者浓一点,第三步调整亮度(B),亮一点或者暗一点,最后再微调一下。基本上这么做可以很快取到预想中的颜色,容易把握。如果要用 RGB 来获取相同的颜色,些许的微调就可能完全偏离预想的效果。不信的人可以试试看比较一下。所以最后推论为:RGB 是面向机器的,为了让机器容易描述的一种平均分布;HSB 是面向人的,按照人最自然的方式描述一种颜色。
之前想要 gedit 上的 F9 功能,在窗口左侧列出文件目录,展开点选打开文件。这个在 gedit 上也是用一个插件实现的,不过目前好像成了默认启用的插件,以前不是。
我讨厌在 vim 里面每次都打全路径,特别是在 web 开发的时候,要编辑的文件分散各处。看 byte of vim 书的时候试用 Project.vim 插件,提供类似功能。不过开始还是遇到了些小麻烦。装好插件后,运行 :Project 会在左侧开一个窗口,书上说这时候键入 \\c 就可以创建一个项目,按照提问一步步输入后,出来的项目只有当前目录下的文件,并没有子目录的入口。搞了很久,hui 说看了文档,应该是大写 C,也就是用 \\C 创建项目,书上笔误。唯一差别就是大写的使用递归,正是我要的。
但如果每次开始的时候都这么创建一遍,岂不麻烦。既然文档说默认使用 ~/.vimproject 文件保存项目入口等信息,那一定有办法用别的文件。于是照着例子写了个配置文件 testing.vim,运行 :Project testing.vim 加载,但同样没有子目录和文件入口。几番迷糊试验之后,忽然发现 testing.vim 内的格式被我篡改为不小心乱敲的一些字符,这才恍然意识到,\\C 后左侧的窗口本质上是打开了 testing.vim 文件进行编辑,只不过将其内容作特定解释,将相关的操作也作了额外的绑定罢了。所以 testing.vim 里面项目入口只会根据文件里定义好的来。所以之前网上搜到过一篇文章,说用 python 写脚本递归生成 project 格式的项目文件,其实大可不必,直接用 \\C 建个新项目,于是所有的入口都有了,再保存为 app.vim 就可以了。以后再开始的时候只需要指定加载这个项目文件;如果项目中的目录文件有变化,\\r 刷新一下,再保存好就可以了。
Raid 诟病 gedit 没有 UltraEdit 的 F8 功能,也就是自动列出当前文件中函数清单,点击跳到该函数位置。我没找过,我想 gedit 应该有这类插件的。
现在转到 Mac 底下,没有 gedit,也不想付钱买 Textmate,还是学 vim 比较靠谱。虽然学习曲线比较陡峭。现在基本上已经配置得差不多了,配色方案,snippet,project,taglist 都有了。taglist 就是 UE F8。
不过,Mac 下面的 taglist 插件默认不能用,报告无法创建 tags 清单。同样的配置在 ubuntu 下倒可以正常使用。因为 sudo apt-get install ctags 装了最新的版本。taglist 插件其实就是调用了 ctags 这个外部命令来生成函数清单的。而 Mac 下的 ctags 连 –version 都不能用,man 出来的信息都还是 93 年的,于是 sudo port install ctags。还是不能用,因为默认 ctags 取自/usr/bin/ctags,而 darwinport 装的放在 /opt 下面,找到 /opt/local/bin/ctags, 试了下 –version 没错,最后 ln -s 一下,再试就正常工作了。
升到 2.7, UI 设计变化挺大,也比较符合我的 taste。