Vim 实用技巧必知必会
吴咏炜
前 Intel 资深软件架构师
21753 人已学习
新⼈⾸单¥59
登录后,你可以任选4讲全文学习
课程目录
已完结/共 25 讲
Vim 实用技巧必知必会
15
15
1.0x
00:00/00:00
登录|注册

14|Vim 脚本简介:开始你的深度定制

调用 Vim 的功能
Python 2 和 Python 3 支持
内置函数
事件
重要命令
变量的前缀
匿名函数
函数定义
ifwhilefor语句
字符串拼接
支持的运算符
字典
列表
整数和浮点数表示
unlet命令
let命令
字符串拼接
echo命令
图灵完全的脚本语言
命令行模式执行的命令
课后练习
内容小结
Python 集成
风格指南
Vim 特性
函数和匿名函数
控制结构
表达式
复杂数据结构
数字
变量
打印输出和字符串
语法概要
Vim 脚本简介

该思维导图由 AI 生成,仅供参考

你好,我是吴咏炜。
学到今天,我们已经看到了很多的 Vim 脚本,只是还没有正式地把它作为一门语言来介绍。今天,我就正式向你介绍把 Vim 的功能粘合到一起的语言——Vim 脚本(Vim script)。掌握 Vim 脚本的基本语法之后,你就可以得心应手地定制你的 Vim 环境啦。

语法概要

首先,我们需要知道,通过命令行模式执行的命令就是 Vim 脚本。它是一种图灵完全的脚本语言:图灵完全,说明它的功能够强大,理论上可以完成任何计算任务;脚本语言,说明它不需要编译,可以直接通过解释方式来执行。
当然,这并没有说出 Vim 脚本的真正特点。下面,我们就通过各个不同的角度,进行了解,把 Vim 脚本这头“大象”的基本形状完整地摸出来。
在这一讲里,我们改变一下惯例,除非明确说“正常模式命令”,否则用代码方式显示的都是脚本文件里的代码或者命令行模式命令,也就是说,它们前面都不会加 :。毕竟我们这一讲介绍的全是 Vim 脚本,而不是正常模式的快捷操作。

打印输出和字符串

学习任何一门语言,我们常常以“Hello world!”开始。对于 Vim 脚本,我们不妨也这样——毕竟,打印是一种重要的调试方式,尤其对于没有专门调试器的脚本语言来说。
Vim 脚本的“Hello world!”是下面这样的:
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结

Vim 脚本是一种强大的图灵完全脚本语言,用于定制 Vim 环境。本文通过简洁清晰的示例和说明,全面介绍了 Vim 脚本的基本语法和特点。文章首先介绍了 Vim 脚本的基本语法,包括使用 `echo` 命令打印输出和字符串,变量的定义和取消,数字的表示方式,以及复杂数据结构列表和字典的初始化和访问方法。其次,详细讲解了表达式的使用,包括正则表达式匹配和函数调用。最后,介绍了 Vim 脚本的控制结构,包括条件语句和循环语句的使用方法。此外,文章还涵盖了函数和匿名函数的定义,变量的前缀,重要命令如 `execute` 和 `source`,以及事件的使用。总的来说,本文为读者提供了全面了解和掌握 Vim 脚本的良好参考,展现了 Vim 脚本的灵活性和强大功能。 此外,文章还介绍了 Vim 对其他脚本语言的支持,以 Python 为例进行了简单介绍,展示了在 Vim 脚本中调用 Python 的方式。这为读者提供了更多的选择和灵活性,使他们能够更好地定制自己的 Vim 环境。文章最后提到了 Vim 脚本风格指南,为读者提供了编程规范的参考,帮助他们写出更加规范和易读的 Vim 脚本。 总的来说,本文内容丰富,涵盖了 Vim 脚本的基本语法和特点,以及与其他脚本语言的集成和风格指南,为读者提供了全面了解 Vim 脚本的良好参考。

仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《Vim 实用技巧必知必会》
新⼈⾸单¥59
立即购买
登录 后留言

全部留言(2)

  • 最新
  • 精选
  • 我来也
    干货满满! 照着文章学,看懂基本的vim脚本是没问题了. 看到vim的匿名函数,想不到vim脚本居然还支持函数式编程. vim内置多语言的集成确实强大,现在好多脚本都有Python集成. 我最近看到`vim-visual-multi`插件居然用python来做脚本的测试. 它把Issue中一些bug的测试用例记录下来,然后用python来做测试. 想不到有人写个vim的插件,都这么的专业. 现代的语言还是更友好一点. 我对python不太熟,只能看懂和简单的修改.倒是对Lua比较熟. 作为vim脚本语法的补充,推荐一本电子书: [The VimL Primer](https://book.douban.com/subject/26304281//)

    作者回复: 这一讲又继续赶上来坐沙发啦。������

    2020-08-31
    2
  • 瀚海星尘
    和老师一起写了这么久的配置,可算是能看懂了,哈哈!
    2020-10-23
    1
收起评论
显示
设置
留言
2
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部