vim_thumb

Learning Vimscript The Hard Way — (I) Preface/前言

原书链接:http://learnvimscriptthehardway.stevelosh.com/

前言

程序员将他们的想法(ideas)变成文本(text)。

这些文本可以转变成(gets turned into)一些数字(numbers)然后那些数字碰上了(bumps into)其他的数字,然后一切就发生了(make things happen)

作为一个程序员,我们使用文本编辑器(text editors)来在我们脑袋中的取出想法,然后创造了一块我们称之为“程序”的文本。全职的程序员在他们的一生当中花上数万个小时和文本编辑器打交道,在这个过程当中,他们会干下面这些事情:

  • 从他们脑袋中取出来原始的文本(raw text)放进电脑;
  • 修正这些文本中的错误;
  • 重新构造(restructuring)这些文本,用另一个方式来规划(formulate)这个问题;
  • 编写文档来说明如何(how)以及为何(why)要用这种方式(particular way)来完成这些事情;
  • 与其他程序员交流所有者些事情;

Vim是一个不可思议的好东西,但直到你真正花上一些时间来按照你特定的工作(particular work)、喜好(habits)以及指法(fingers)来配置好它,它才会真正的大放异彩。这本书会为你介绍 Vimscript,用于自定义 Vim 的主要编程语言。你可以将你的 Vim 变成一个你私人定制的文本编辑器,并令你以后的 Vim 使用更为有效。

我在下文提及的东西并不是严格仅仅关于 Vimscript,而包括更多有关学习和变得更为有效的内容。如果你仅仅是整天瞎搞(wind up fiddling)你的编辑器而不是用来工作,Vimscript 并不会帮到你很多,所以有必要达到一个平衡。

这本书的风格跟其他有关编程的书籍有些不同,它引导你通过输入名来看实际的效果,而不是仅仅告诉你 Vimscript 是如何工作的。

有时候,这本书在为你解释如何用“正解”来解决一个问题之前,会把你带进死胡同(dead ends)【意思是在告诉你答案之前让你想到头破】,但很多其他的书不会这样干,或者仅仅在告诉你答案之后,对最棘手的问题(sticky issues)一带而过。然而这样的方式是不靠谱的(isn’t how things typically happen in the real world)【上帝不会告诉你神来之笔在哪里】。【这本书】通常会让你写一小段的 Vimscript,然后恰好把你引导到那个你需要理解的点子(run into a quirk of the language)上。通过一步一步完成这本书的进度,而不是匆匆而过,我希望能让你熟悉到Vimscript的这些特异功能(peculiarities),让你遇到自己特有的问题(edge cases of your own)的时候,能够准备好【如何处理】。【有言道】熟能生巧。

这本书的每一章都会关注一个独立的主题。他们很简短但是富含信息(packed with information),因此别跳过(skim)它们。如果你真的希望从这本书得到最多的东西,你需要一字一句地把所有命令敲出来(actually type in all of the commands)。你可能已经是一个有经验的程序员,已经可以直接阅读就能理解代码。如果是这样,没关系【作者的意思还是要你敲,即使你很牛】,学习 Vim 和 Vimscript 与学习一个普通的编程语言有着不同的体验。

你需要输入所有的命令

你需要做所有的练习

这两点如此重要有两个原因:

首先,Vimscript 已经很老而且有很多尘封的角落(dusty corners)和曲折的走廊(twisty hallways)【估计作者的意思是那些很神奇难以用常规思维理解的规则】。一个配置选项(configuration option)可以完完全全改变整个语言的工作方式。通过输入每一课中的每个命令,做完每个练习,你会在你的Vim构建(build)【推敲】或者配置(configuration)一些简单的命令(the simpler commands)的时候发现问题,在这里它们会更容易诊断(diagnose)和修正(fix)。

第二,Vimscript 即是 Vim(Vimscript is Vim),如果要在 Vim 中保存一个文件,你会输入 :write (或 :w)然后按回车(press return),【相应地】如果要在 Vimscript 里面保存一个文件,你会用 write。许多你学到的 Vimscript 命令你也可以在你日常的编辑(day-to-day editing)中使用,但只有当它们被深深地烙在你的意识中(in your muscle memory)才能如此,而这些仅仅通过阅读【不去动手敲命令】是不会有(doesn’t happen)的。

我希望你觉得这本书有用。并不是说这是一本全面的 Vimscript 指南,而是说要让你通过这个语言【Vimscript】来将你的Vim定制到合自己口味(mold to your taste),为其他用户写一些简单的插件和阅读其他人的代码(通常是 :help)、以及识别出一些常见的陷阱的时候感到舒服。

祝你好运!


【待续】


【转载请附】愿以此功德,回向 >>

原文链接:https://www.huangwenchao.com.cn/2014/06/vimscript-hard-i.html【Learning Vimscript The Hard Way — (I) Preface/前言】

《Learning Vimscript The Hard Way — (I) Preface/前言》有1个想法

发表评论

电子邮件地址不会被公开。 必填项已用*标注