排序
从 VimScipt 切换至 Lua
为什么选择 Lua 学习 Lua 配置文件结构 初始化文件 ftplugin Options 事件自动命令 用户自定义命令 设置快捷键 变量类型转换 vim.g 访问全局变量的弊端 Lua 在 Neo...
Lua 文件 IO
Lua I/O 库用于读取和处理文件。分为简单模式(和C一样)、完全模式。 简单模式(simple model)拥有一个当前输入文件和一个当前输出文件,并且提供针对这些文件相关的操作。 完全模式(co...
Lua 迭代器
泛型 for 迭代器 无状态的迭代器 迭代器(iterator)是一种对象,它能够用来遍历标准模板库容器中的部分或全部元素,每个迭代器对象代表容器中的确定的地址 在 Lua 中迭代器是一种支持指针类型...
Lua 函数
多返回值 可变参数 在 Lua 中,函数是对语句和表达式进行抽象的主要方法。既可以用来处理一些特殊的工作,也可以用来计算一些值。 Lua 提供了许多的内建函数,你可以很方便的在程序中调用它们,如 pr...
Lua 循环
while 循环 for 循环 数值 for 循环 泛型 for 循环 repeat until 循环 嵌套循环 循环控制语句 很多情况下我们需要做一些有规律性的重复操作,因此在程序中就需要重复执行某...
Vim9Script 与 Lua 的速度比较
前面写过一篇Lua 与 VimL 速度比较的文章, 里面对 Lua 与 VimL 脚本计算速度做了比较。随着 Vim 的更新并且推出了新的脚本语言 Vim9Script, 也想看一下这个新的脚本语言写...
Lua 调试(Debug)
Lua 提供了 debug 库用于提供创建我们自定义调速器的功能。Lua 本身并未有内置的调速器,但很多开发者共享了他们的 Lua 调速器代码。 Lua 中 debug 库包含以下函数: sethoo...
Lua 异常处理
语法错误 运行错误 pcall 和 xpcall、debug 程序运行中错误处理是必要的,在我们进行文件操作,数据转移及web service 调用过程中都会出现不可预期的错误。如果不注重错误信息的处...
Lua 元表(Metatable)
__index 元方法 __newindex 元方法 __tostring 元方法 在 Lua table 中我们可以访问对应的 key 来得到 value 值,但是却无法对两个 table 进行操作...
Lua 模块和包
加载机制 模块类似于一个封装库,从 Lua 5.1 开始,Lua 加入了标准的模块管理机制,可以把一些公用的代码放在一个文件里,以 API 接口的形式在其他地方调用,有利于代码的重用和降低代码耦合度...
Lua 字符串
字符串操作 字符串操作 string.upper 字符串或串(String)是由数字、字母、下划线组成的一串字符。 Lua 语言中字符串可以使用以下三种方式来表示: 单引号间的一串字符。 双引号间的一...
Lua 数据类型
nil(空) boolean(布尔) number(数字) string(字符串) table(表) function(函数) thread(线程) userdata(自定义类型) Lua 是动态类型...
Lua 基本语法
注释 标识符 关键词 全局变量 Lua 提供了交互式编程模式和脚本式编程模式,交互式编程模式可以在命令行中直接输入代码并查看结果。 Lua 的交互式编程可通过 lua -i 或者 lua 命令开启。 ...
12