×

vi 命令手册

vi/vim 命令大全

vim 命令手册

Vim 关于Vim 安装Vim 用法Vim 配置vim 配置.vimrc方案vim 配置.vimrc方案1vim 配置.vimrc方案2Vim 文件合并Vim 技巧和建议Vim 插件Vim 参阅

Vimscript 编程参考

Vimscript 前言Vimscript 鸣谢Vimscript 预备知识Vimscript 打印信息Vimscript 设置选项Vimscript 基本映射Vimscript 模式映射Vimscript 精确映射Vimscript LeadersVimscript 编辑你的Vimrc文件Vimscript AbbreviationsVimscript 更多的MappingsVimscript 锻炼你的手指本地缓冲区的设置和映射Vimscript 自动命令Vimscript 本地缓冲区缩写Vimscript 自动命令组Operator-Pending 映射Operator-Pending 更多映射Vimscript 状态条Vimscript 负责任的编码Vimscript 变量Vimscript 变量作用域Vimscript 条件语句Vimscript 比较Vimscript 函数Vimscript 函数参数Vimscript 数字Vimscript 字符串Vimscript 字符串函数Vimscript Execute命令Vimscript Normal命令Vimscript 执行normal!Vimscript 基本的正则表达式Grep 运算符Operator 第1部分Grep 运算符Operator 第2部分Grep 运算符Operator 第3部分Vimscript 列表Vimscript 循环Vimscript 字典Vimscript 切换Vimscript 函数式编程Vimscript 路径Vimscript 创建一个完整的插件Vimscript 基本插件配置方式用Pathogen配置插件Vimscript 检测文件类型Vimscript 基本语法高亮Vimscript 高级语法高亮Vimscript 基本折叠Vimscript 高级折叠Vimscript 段移动原理Vimscript Potion段移动Vimscript 外部命令Vimscript 自动加载Vimscript 文档Vimscript 发布Vimscript 还剩下什么?

Vimscript 检测文件类型


让我们创建一个Potion文件作为插件的测试样本。

factorial = (n):
    total = 1
    n to 1 (i):
        total *= i.
    total.

10 times (i):
    i string print
    '! is: ' print
    factorial (i) string print
    "\n" print.

这个代码创建了一个简单的阶乘函数并调用它10次,逐次输出结果。继续前进并用potion factorial.pn执行它。 输出结果应该像这样:

0! is: 0
1! is: 1
2! is: 2
3! is: 6
4! is: 24
5! is: 120
6! is: 720
7! is: 5040
8! is: 40320
9! is: 362880

如果你得不到这个输出,或者你得到一个错误,停下来并排查问题所在。 这个代码应该会正常工作的。

这跟学习Vimscript没有关系,不过它能让你成为更好的程序猿。

检测Potion文件

用Vim打开factorial.pn并执行下面命令:

:set filetype?

Vim将显示filetype=,因为它还不认识.pn文件。让我们解决这个问题。

在你的插件的repo中创建ftdetect/potion.vim。在它里面加入下面几行:

au BufNewFile,BufRead *.pn set filetype=potion

这创建了一个单行自动命令:一个设置.pn文件的filetype为potion的命令。很简明吧。

注意我们_没有_像之前经常做的那样使用一个自动命令组。 Vim自动替你把ftdetect/*.vim文件包装成自动命令组,所以你不需要操心。

关闭factorial.pn并重新打开它。现在再执行前面的命令:

:set filetype?

这次Vim显示filetype=potion。当Vim启动时,它加载~/.vim/bundle/potion/ftdetect/potion.vim里的自动命令组, 而当它打开factorial.pn时,自动命令起效,设置filetypepotion

既然已经让Vim识别了Potion文件,我们可以继续前进来做些有用的东西了。

练习

阅读:help ft。不要担心你看不懂里面的内容。

阅读:help setfiletype

修改Potion插件中的ftdetect/potion.vim。 用setfiletype代替set filetype


分类导航

关注微信下载离线手册

bootwiki移动版 bootwiki
(群号:472910771)