这次来介绍的是我VSCode
扩展:AegiKit
的使用介绍。这里准备简单介绍一下这个扩展的功能和用法。
https://github.com/Yesterday17/AegiKit
功能列表
功能列表其实 Readme
里也有,但是鉴于不是所有人都会看这个,加之 Readme
里也说得比较简单,所以我在这里也列一下好了。
ASS
基础高亮- 卡拉
OK
模板行(template
)的高亮 - 卡拉
OK
代码行(code
)的高亮 Lua
代码格式化Lua
代码压缩(minify
)
下面就从几个大类来简单说明一下好了。
ASS
基础高亮
这个其实没什么好说的,为 VSCode
增加了新的 tmLanguage
支持
卡拉 OK 模板行高亮
AegiKit
为这种高亮定义了一种全新的文件后缀:karatmpl
,以方便实现更精准的功能对应。
样式
首先先来看一下效果吧:
默认情况下,karatmpl
文件会开启自动换行,以方便阅读。对于被感叹号(!
)包裹的内联 Lua
代码,也会根据 Lua
的高亮进行代码高亮的显示。
内联变量补全($
)
对于内联变量,只要你输入 $
字符,就会显示 kara-templater
可用的所有内联变量。其中部分变量有中文解释,便于书写代码。
内联变量在代码中也有自己的高亮,以表明其身份。
颜色预览
对于诸如 1c
等表示颜色的标签,AegiKit
基于 VSCode
实现了颜色预览与编辑的功能。如下图所示:
这张图中,我们可以通过这个小方格来实时查看当前对应的颜色。此外,还可以通过 VSCode
的颜色拾取器来主动选择颜色:
不过目前,颜色选择的功能还没有和透明度关联起来,因此选择透明度是没有用的。
卡拉 OK 代码行高亮
Lua
代码在卡拉 OK
自动化中起到了非常关键的作用。可惜的是,Aegisub
并没有对 Lua
,即卡拉 OK
代码行的高亮支持。并且在 Aegisub
中书写 Lua
也不是那么流畅。于是我把代码行高亮的部分也加到了 VSCode
里。
虽然目前代码行并没有太多的补全,但之后是有可能会有的。毕竟代码行也许要很多补全的内容,包括 _G
、maxj
、j
之类的。
代码格式化
AegiKit
自带了 Lua
的代码格式整理器,可以将 Aegisub
中单行的 Lua
代码变成人能正常阅读的多行代码。
代码格式化的方式和其他语言没有区别,按照正常的 VSCode
操作方式进行就可以了。
代码压缩
和上面的步骤相反,当我们想要将代码复制到 ASS
中时,我们需要压缩代码。这时候就可以使用代码压缩功能了。只需要使用这个命令就行了:
它会将目前编辑器中的代码压缩。
我还在寻找其他不修改当前源码,但可以获取压缩后源码的方式,所以可能还会有变动(