上一章讲的东西比较多,完全理解会有点难,所以这一章来点容易的。我们已经学习了如何定义本地缓冲区的映射和设置选项,现在以同样的方式来学习本地缓冲区的缩写。
打开你的foo
和bar
这两个文件,切换到foo
,然后执行下面的命令:
:iabbrev <buffer> --- —
在文件foo
下进入插入模式输入下面的文本:
Hello --- world.
Vim会为你将---
替换为“Hello“。现在切换到bar
试试。在bar
中替换不会发生,这是因为我们所定义的缩写被设置为只用于foo
的本地缓冲区。
使用本地缓冲区的缩写和自动命令来创建一个简单的“snippet”系统。
执行下面的命令:
:autocmd FileType python :iabbrev <buffer> iff if:<left>
:autocmd FileType javascript :iabbrev <buffer> iff if ()<left>
打开一个Javascript文件然后输入iff
缩写。然后再打开一个Python文件试试。Vim会依据文件类型在当前行执行合适的缩写。
为你经常编辑的文件创建更多的针对不同类型的文件的“snippet”缩写。你可以为绝大多数语言创建return
的缩写,为javascript创建function
的缩写,以及为HTML文件创建“
和”
的缩写。
将你创建的snippets加入到你的~/.vimrc
文件中。
记住:最好的学习使用这些snippets的方法是_禁用_之前你做这些事情的方式。执行:iabbrev <buffer> return NOPENOPENOPE
会_强迫_你使用缩写,这个命令在你输入return的时候不会输出任何东西。为了节省学习的时间,为你刚才创建的snippets都创建一个上面的缩写来_强迫_你使用你创建的snippets。
Operators和movements所包含的理念是Vim中的一个非常重要的概念,也是Vim之所以这么高效的最大原因所在。在这一章我们会在这一块...
目前为止,我们已经完成了一个原型,是时候扩充它,让它更加强大。记住:我们初始目标是创建"grep运算符"。我们还需要做一大堆新...
一、设计背景大家都知道易用性和易维护性一直是goframe一直努力建设的,也是goframe有别其他框架和组件比较大的一点差异...
SVG 滤镜 本节介绍了 SVG 滤镜。SVG滤镜用来增加对SVG图形的特殊效果。SVG 滤镜 在本教程中,我们将仅展示一个可能采用的特殊效...
XSL-FO region-start 对象XSL-FO 参考手册XSL-FO 中,页面的左侧栏由 region-start对象定义。 定义和用法 fo:region-start 对象...