| 
UID2546积分161帖子30主题5论坛币888 威望0 EP值138 MP值0 阅读权限50注册时间2015-5-9在线时间52 小时最后登录2025-10-25
 
 
 | 
| 本帖最后由 Seekladoom 于 2022-6-6 02:28 编辑 
 原作者插件的开源链接:
 https://github.com/DCTewi/Aegisub-Helper
 
 附上横行写法文件的压缩包:
 
  Aegisub Helper 标准模板示例(含使用教程).part1.rar
(0 Bytes, 下载次数: 2652) 
  Aegisub Helper 标准模板示例(含使用教程).part2.rar
(0 Bytes, 下载次数: 2645) github备份下载
 
 题外话:需求分析(或许是这个插件诞生的根本原因)
 但凡用过Aegisub写模板的朋友就会知道,即便是在Aegisub上有各种lua插件和lua库加持的情况下,稍微复杂点的特效,代码一长,其可读性慢慢就会变得令人完全无法接受(AUTO4本身不支持换行写法是特效复杂以后可读性丧失的根本原因,不过AUTO4这个是Aegisub最初设计时就定下来的了,目前已无法改动),就像下图这样:
 
   
 为此才会有像下面这样的中间过程写法诞生:
 
   
 中间过程写法:将AUTO4模板中的代码复制到新建的txt或lua文件中去,为了提高修改代码时的可读性,在代码中的斜杠"“、逗号”,"等处按下回车键换行,方便观察并修改各部分代码的相关变量、判断关系等内容。
 
 
 安装
 直接在VSCode的插件商店中上搜Aegisub即可,具体如下图的操作步骤所示:
 
   
 功能介绍及使用方法
 (1)代码补全:支持ASS特效标签和Aegisub内联变量的专有名词补全
 ASS特效标签补全:输入斜杠"“弹出内联变量补全下拉列表
 
   
 Aegisub内联变量补全:输入”$"弹出内联变量补全下拉列表
 
   
 code行 换行写法补全:输入"co"弹出code下拉列表按钮,点击后出现code行的标准格式代码
 
   
 
   
 template行 换行写法补全:输入"te"弹出template下拉列表按钮,点击后出现template行的标准格式代码
 
   
 
   
 (2)一键转AUTO4模板代码格式
 一键转AUTO4的方法很简单,按照作者给的gif写好换行代码以后,直接按快捷键 Ctrl+Alt+B 或按Ctrl+Shift+P找到编译至ASS文件的下拉列表选项即可将写好的.aegs换行代码文件编译为.aegs.generated文件,再将里面的代码直接复制粘贴到ass字幕文件中去即可。
 如下是原作者给的gif操作演示:
 编译为ass字幕文件的AUTO4代码格式
 
   
 复制粘贴到Aegisub打开的ass字幕文件中去
 
   
 我自己写的Aegisub Helper 通用处理模板是这样写的:
 
   
 代码如下:
 
 复制代码<font face="微软雅黑">-----Aegisub中的code行 注释分隔行-----
%[ 特效修饰语 # -----code行----- @ 0
%]
-----code行-----
%[ code once # 说话人 @ 0
num = 100
%]
-----Aegisub中的template行 注释分隔行-----
%[ 特效修饰语 # -----template行----- @ 0
%]
-----template行-----
%[ template noblank # 说话人 @ 0
!retime("line",0,0)!
{
\an5
\move(
$center,
$middle,
!$center+num!,
!$middle+num!,
0,
$ldur
)
\fad(200,200)
}
%]
</font>
编译后的代码长这样:
 
   
 编译后代码如下:
 
 复制代码Comment: 0,0:00:00.00,0:00:00.00,Default,-----code行-----,0,0,0,特效修饰语,
Comment: 0,0:00:00.00,0:00:00.00,Default,说话人,0,0,0,code once,num = 100
Comment: 0,0:00:00.00,0:00:00.00,Default,-----template行-----,0,0,0,特效修饰语,
Comment: 0,0:00:00.00,0:00:00.00,Default,说话人,0,0,0,template noblank,!retime("line",0,0)!{\an5\move($center,$middle,!$center+num!,!$middle+num!,0,$ldur)\fad(200,200)}
上述代码复制到Aegisub中的样子:
 
   
 希望这个插件以及这篇专栏能够帮到更多用Aegisub制作ASS卡拉OK特效字幕的朋友们,尽可能减轻编写模板时的工作压力。
 
 
 
 
 
 
 
 
 | 
 |