星期日, 九月 12, 2010

VIM学习笔记 拼写检查(Spell Check)

从版本7开始,Vim内置了拼写检查功能,但是在默认情况下并没有打开。

启用

首先,你需要使用:echo &spelllang命令确认当前使用哪种语言。比如:“en”代表英语。如果想要改语言,可以使用:set spelllang=en_GB.UTF-8命令。也可以用逗号分隔制定检查set spelllang=en_us,nl,medical多种语言。

然后,你可以通过菜单:工具 -> 拼写检查 -> 打开拼写检查,来启用拼写检查功能。GVim将用红色的波浪线标识出错误的拼写。你也可以使用:set spell命令打开拼写检查,使用:set nospell命令关闭拼写检查。

检查

如果在文件中有很多拼写错误,可以用]s命令移动到下一个拼写错误处,用[s命令移动到上一个拼写错误处。

SpellCheck_1

纠正

如果想要纠正错误的拼写:首先将光标移至错误的单词上,然后执行z=命令列出一组相近的单词,你可以在其中选择正确的拼写。

SpellCheck_2

有些特殊单词(比如图中的"Gvim")也会被标识为错误拼写,如果你希望Vim能够承认它们为正确的拼写,可以使用zg命令。还可以用zw命令取消用户做的拼写识别。

命令小结
:set spell启用拼写检查
:set nospell关闭拼写检查
]s移动到下一个拼写错误处
[s移动到上一个拼写错误处
z=选择正确的拼写
zg添加用户拼写
zw删除用户拼写

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

星期五, 九月 10, 2010

去他妈的教育

教育,我一直以为是及其恶心和丑恶的。

后来听到Pink Floyd的这首Another Brick In the Wall(II)

We don't need no education

We don't need no thought control

No dark sarcasm in the classroom

Teachers leave them kids alone

Hey! Teachers! Leave them kids alone!

All in all it's just another brick in the wall.

All in all you're just another brick in the wall.

后来又看到The Wall这部电影。所有的学生戴着相同的无表情的面具以同样节奏的步伐走向一个绞肉机,既不回头也不朝两边看。机器中有不停敲打的铁锤,看上去像军队一样整齐划一而且十分有力。经过绞肉机后, 所有的孩子都被榨干了灵与肉,从绞肉机另一端出来的是一群行尸走肉。

Brick2-4

Brick2-2

Brick2-6

再后来,又看到劳伦斯的在文明的束缚下

男人始终没有学会的一件事,就是不顾教育的约束,而遵从自己的本能感觉。问题是我们在很小的时候就被抓住了。小男孩在5岁时被赶着去上学。随之而来的便一场使小家伙成为奴隶的把戏。他被送到女教师的手中,送到那些年轻的、中年的、老年的女人们的手中,她们绝对相信自己的力量、正确性和权威,牢牢地控制住孩子,开始“塑造”那些可怜的小鬼。没有人对这些女人塑造年轻男人生活的能力表示过片刻的怀疑。耶稣会的人说:把孩子交给我,直至他7岁,我将能对他未来的一生负责。---可是,女教师并没有耶稣会会士那么聪明,也肯定没耶稣会的人那样清楚自己要做什么,但她们也参加这种把戏。她们把小男孩训练成一个开始成型的男子,今天的男子。

可怜的约尼,可怜的小鬼!开学的第一天总是这样:“约尼,亲爱的,现在你得好好坐着,象个乖孩子,象所有其他的乖孩子。”当他不堪忍受时,便是:“哦,约尼,亲爱的,如果我是你,我一定不哭。看看别的乖孩子,他们都不哭,是吗?亲爱的?做个好孩子。老师给你个小熊玩。约尼想玩小熊吗?好,别哭了!看看别的好孩子。他们在学写---写字!难道约尼不愿意做个好孩子,学习写字吗?”

其实约尼不想学写字。他从心底里不愿做个好孩子不愿学写字。但女教师煞有介事,完全控制了他。可爱的教师带着他进入那条他必须走的路,可怜的小鬼。而一旦进入,他就得乖乖地跟着走,做一个与其他好孩子毫无二致的好孩子。学校犹如一套精致的铁路系统,好孩子们在那儿受到训练,懂得怎样沿着轨道走,直到他们 14岁、16岁或其它什么年龄时才纳入自己的生活轨道。但到了那个年纪,顺着轨道走的习惯已经固定不变了。长大了的好男孩只是从一条轨道挣到另一条轨道而已。而且,沿着轨道走是如此顺当,他从来就没有想到自己是这条轨道的奴隶。好孩子们!

滑稽的是没有任何人,甚至没有一个明智的父亲,对那些学校的嬷嬷们的绝对正确性发生过怀疑。一切都是为了小约尼好。这些女教师们是知道什么对小约尼有好处的。那就是做一个同其他好孩子一样的好孩子。

然而,做个同其他好男孩一样的好孩子,说到底就是做一个奴隶,至少是一个循规蹈矩的机械人。这就意味着亲爱的小约尼将推动他所有的男子汉个性。男子气概的苗头一出现,就会被仔细地剔除。在剔除成长的小男孩的男子气概的嫩芽方面,没有什么能比老处女的手指更灵巧的了。她们把男孩子们变成一个个中性人,俯首听命的孩子。这是一种微妙的,以爱的形式出现的肢解活动,母亲们却对此深信不疑。“哦,我只希望他成为一个好孩子!”她忘记了自己对那个好孩子式的丈夫是多么的厌倦。好男孩对母亲和教师们都非常好。但是,作为男人,由他们构成的民族,只能是软弱无能的。

当然,没有人想让约尼做个坏孩子。人们史希望他是一个男孩,不带任何形容词的男孩。但那是不可能的。在那些条件最好的学校里,孩子们享有最大的“自由”,实际上教师们微妙而无声的强迫却最为厉害。孩子们被悄悄地、一步一步地、毫不放松被逼去做好孩子。他们长大后是好人,但却一无用处。

那么,这民说的“好”空间是什么意思呢?说到底,就是完全与别人一样,丝毫没有自己的灵魂。你当然不应有自己的感情,你必须做好人,必须具有别人预料你会有的感觉,即和其它人一样的感觉。也就是说,你最终什么也感觉不到,你所有的感觉都被扼杀了。所剩下的,只是人为的呆板感情,即每天早晨随着读报时产生的感情。

我永远忘不了上学第一天我哭得多么痛苦。我被人抓住了,套上了绳索。别的男孩也有同感。他们痛恨学校,因为在那儿,他们感到自己就像被抓起来一样;他们痛恨教师,因为他们觉得教师就像狱吏。他们甚至痛恨学习读书和写字。一遍又一遍重复的话是:“走着瞧,等我下矿井后,看我还做什么算术。”他们所期待的就是:下矿井,逃脱控制,做个真正的男子汉。躲进矿井的荒原中,脱离学校的狭轨。

校长是个白胡子、脾气暴躁的好老头。我母亲最尊敬他。记得有一次因为不想承认我的名字是大卫,他大光其火。“大卫!大卫!”他咆哮起来,“大卫是个伟大、优秀人物的名字。你不喜欢大卫这个名字吗?你竟不喜欢大卫这个名字!”他气得脸色发紫。而我却莫名其妙地讨厌大卫这个名字,如今依然如此,他无法强迫我喜欢。可他却想那么做。

事情就是这样。大卫是伟人,优秀人物的名字,所以我得被迫喜欢这个名字。而如果我们的名字是阿纳尼亚斯或亚哈,我就可能被放过。可大卫!不行!很幸运,我父亲并不懂得大卫和达维安全灯空间有什么区别。

grinder

人可能喜欢学习,但根本就不需要教育。教育只是一些泯灭人性,强调一致,着眼产出的加工厂。人类并没有因为教育而发展的如何先进,只是走过了几千的历史。而且是以无数无辜生命的牺牲做为代价。而造成这些灾难的人,普遍受过良好教育。而当某人小偷小摸时,我们就说他缺少教育。那不是很奇怪吗?监狱里的人,是因为没上学而进去的,还是因为上了学才进去的。教育本身应不应该为这些过失也付上责任。

好像坏人都是自学成才,而好人都是精心培养起来的呢?这也太过荒谬。

IT界的乔布斯、拉里森、盖慈,早就证明了,重要的是天份,和教育根本无关。应该考虑的如何减少对知识流动的阻碍,而不是盖几幢大楼,加几个大门,然后把人关进去。

在任何领域中,比如数据库有MySQL, DB2, SQL Server, Oracle, 浏览器有Firefox, Safari, Netscape, IE,这个世界上有很多东西都应该是个性化的,而老师就是把个人化的东西神圣化,这对人性是很可怕的。重要的并不是要找什么样的老师,建什么样的学校。而是要提供人们自由学习的机会和场地。为什么你找点纸印几个字在上面,我就要相信。如果把以色列和巴勒斯坦的教科书放在一起一定很行为艺术。教育被太多谎话和强迫所控制。不如不要。

星期五, 九月 03, 2010

从 Smultron 到 Fraise

Smultron

Smultron在瑞典语中是一种野生草莓的名字。她是一个开源的文本编辑器,味道纯美而且有益健康。

后来,她又移植成了法语草莓Fraise;现在,正结出新的果实。

Fraise_header

Fraise 编辑文本

  • 显示通常不可见的字符(Invisible Characters:换行符或Tab等);
  • 显示或隐藏行号;
  • 选择是否折行(Line Wrap)显示;
  • 大小写转换和首字符大写(Capitalise First Letter);
  • 快捷键Command+Option+F进入即时查找(Live Find)状态。在查找框中输入想要搜索的内容,就会高亮度显示匹配的内容。利用快捷键Command+G定位到下一匹配处。
  • 可以同时在多个文件中进行查找和替换,并支持正则表达式;
  • 可以仅打印选中部分的文本,并且可以打印语法着色;
  • 设置自动完成(Auto-completion),或者按功能键F5可以显示近似匹配的单词;
  • 全屏幕操作。这时屏幕上只会显示你正在编辑的文档,使你专心于当下的任务。

Smultron_LiveFind

Fraise 编辑网页

如果你和我一样喜欢手工编写XHTML代码,那么Smultron绝对会是你的好帮手:

  • 支持语法高亮度(包括HTML,CSS,Java,SQL等等编程语言);
  • 支持多种编码格式(GBK,UTF-8等);
  • 使用快捷键减少缩进;
    • Smultron: Command+[
    • Fraise: Tab
  • 使用快捷键增加缩进
    • Smultron: Command+]
    • Fraise: Shift+Tab
  • 快捷键Command+T自动补全匹配的标签(Close Tag)。
  • 利用“Prepare For XML”菜单,将选中的&,<和>转换为遵从XML标准的&amp;, &lt; and &gt;。
  • 调用颜色选择器,并将选中的颜色以RGB或HEX代码插入代码中。
  • 使用快捷键Control+Shift+D创建本行的副本,可加速编写列表,或重用类似的代码。
  • 储存代码片段(snippets)便于重复使用。
  • 预览(Preview)网页。
  • 验证(Validate)网页。

Smultron_Snippets

如果你希望获得更干净的代码,可以删除那些多余的空格和换行符。这适合像我一样,有“洁癖”的人。

  • 选择“文字”菜单下的“移除不需要的空白”;
  • 选择“文字”菜单下的“移除换行结尾”;
  • 选择“文字”菜单下的“移除Tab...”;
  • 预览网页;

Fraise 编辑多个文件

  • 文档列表(Documents List)。列示和切换正在编辑的多个文档。通过放大图标尺寸,可以预览文档内容。
  • 支持多页面编辑(Tabs)。快捷键Command+Option+Up移动到前一个页面,Command+Option+Down移动到后一个页面。
  • 窗口分隔(Split Window)。将程序界面划分为多个部分,便于阅读较长文档的不同部分或同时编辑多个文件。

Smultron_View

Fraise 对Mac的支持

  • 拖拽一个或多个文件到Smultron的文件列表,将直接打开它们。
  • 集成于系统的“服务”菜单。
  • 支持AppleScript。
  • 与.Mac同步。

Smultron_Service

Fraise 选择合适的版本

Tags: , , , , ,