组内用于Aegisub的实用lua脚本
目录:
在release的最新版本中下载zhimengsub_lua_scripts_<发布时间>.zip
解压后,把所有lua脚本和zmsub_utils文件夹放入<aegisub安装目录>\automation\autoload内,重新启动aegisub即可。
文件名:zmsub.set_tags_for_dialogues.lua
配合'织梦-对白-2304'样式使用,为选中的中字\N日字格式的对白添加特效{\fnSource Han Sans JP Bold\fs55\fsvp10},并规范空格、数字宽度。具体操作解释及实例见拆解步骤。
可以放心对已经添加过特效的行再次执行脚本,不用担心重复添加特效标签。
示例:
| 执行前 | 执行后 | 备注 |
|---|---|---|
比如说\N例えば |
{\blur3\yshad2.5\xshad1.5}比如说\N{\fnSource Han Sans JP Bold\fs55\fsvp10}例えば |
完整添加特效 |
比如说\N{\fnSource Han Sans JP Bold\fs55\fsvp10}例えば |
{\blur3\yshad2.5\xshad1.5}比如说\N{\fnSource Han Sans JP Bold\fs55\fsvp10}例えば |
添加模糊阴影 |
{\blur3\yshad2.5\xshad1.5}比如说\N例えば |
{\blur3\yshad2.5\xshad1.5}比如说\N{\fnSource Han Sans JP Bold\fs55\fsvp10}例えば |
添加日字特效 |
文件名:zmsub.remove_tags_for_dialogues.lua
直接把所有特效(花括号部分)删除
示例:
| 执行前 | 执行后 |
|---|---|
{\blur3\yshad2.5\xshad1.5}比如说\N{\fnSource Han Sans JP Bold\fs55\fsvp10}例えば |
比如说\N例えば |
文件名:zmsub.check_symbols.lua
检查中字和日字部分(以\N区分)的符号是否一致,即一边出现的符号另一边也要出现。目前检查的符号有…,。?!,.!、「」『』【】。
不一致的行会被选中并注释。
不一致示例:
好\Nは…はい「求你了 別砍到我」\N「頼む 当てないでくれ
一致示例:
好…\Nは…はい「求你了 別砍到我」\N「頼む 当てないでくれ」
-
按语言拆分
文件名:
zmsub.lyric_sort_by_lang.lua选中按时间交错排序的双字台词,会把台词按语言拆为两块。
示例:
执行前:
[JP1]臆病 風に吹かれて [ZH1]怯懦 被裹挟在风中 [JP2]逃げ出すことさえ 考えていた [ZH2]甚至早就 想要落荒而逃 [JP3]自信なんて 何一つなかったのに [ZH3]明明我身上 没有分毫自信 [JP4]積み重ねていく日々が 少しずつ強くなっていく絆 [ZH4]日子一天天流淌 带来愈发深厚的羁绊执行后:
[JP1]臆病 風に吹かれて [JP2]逃げ出すことさえ 考えていた [JP3]自信なんて 何一つなかったのに [JP4]積み重ねていく日々が 少しずつ強くなっていく絆 [ZH1]怯懦 被裹挟在风中 [ZH2]甚至早就 想要落荒而逃 [ZH3]明明我身上 没有分毫自信 [ZH4]日子一天天流淌 带来愈发深厚的羁绊 -
按时间交错
文件名:
zmsub.lyric_sort_by_time.lua选中按语言聚集排序的双字台词,会把前半部分和后半部分交错在一起。
示例:
执行前:
[ZH1]怯懦 被裹挟在风中 [ZH2]甚至早就 想要落荒而逃 [ZH3]明明我身上 没有分毫自信 [ZH4]日子一天天流淌 带来愈发深厚的羁绊 [JP1]臆病 風に吹かれて [JP2]逃げ出すことさえ 考えていた [JP3]自信なんて 何一つなかったのに [JP4]積み重ねていく日々が 少しずつ強くなっていく絆执行后:
[ZH1]怯懦 被裹挟在风中 [JP1]臆病 風に吹かれて [ZH2]甚至早就 想要落荒而逃 [JP2]逃げ出すことさえ 考えていた [ZH3]明明我身上 没有分毫自信 [JP3]自信なんて 何一つなかったのに [ZH4]日子一天天流淌 带来愈发深厚的羁绊 [JP4]積み重ねていく日々が 少しずつ強くなっていく絆
文件名:zmsub.smart_join_lines_wspace.lua(用空格分隔)、zmsub.smart_join_lines_nospace.lua(无分隔符)
直接合并多行已处理过的对白。把中文和日文分别合并至各自部分(以\N区分),并保留模糊阴影(2304)特效。
合并时的分隔符分为空格或不含分隔符。
示例:
执行前:
{\blur3\yshad2.5\xshad1.5}好重\N{\fnSource Han Sans JP Bold\fs55\fsvp10}重っ
{\blur3\yshad2.5\xshad1.5}原来这么厚啊\N{\fnSource Han Sans JP Bold\fs55\fsvp10}こんな分厚いんだね
执行后(使用空格分隔):
{\blur3\yshad2.5\xshad1.5}好重 原来这么厚啊\N{\fnSource Han Sans JP Bold\fs55\fsvp10}重っ こんな分厚いんだね
文件名: zmsub.detailed_steps.lua
添加对白特效脚本按顺序依次执行了下面几个功能,你可以按需手动运行其中的步骤。
一般不需要用到,就算只做了下面的部分步骤(如已经插入日字特效,需要单独插入模糊阴影),直接运行完整版也可以达到目的。
-
插入日字特效
为选中的
中字\N日字格式插入{\fnSource Han Sans JP Bold\fs55\fsvp10},并删掉(忽略特效标签后的)头尾的\N。对于
\N含有一定的容错识别能力,如:/N、\\N、\NN等等;头尾的识别还包括/、\等等。具体使用的正则表达式为:
- 句中:
([\\\\/]+N+)+ - 开头:
^([\\\\/]+N*)+ - 结尾:
([\\\\/]+N*)+$
示例:
执行前 执行后 备注 谢谢\Nありがとう谢谢\N{\fnSource Han Sans JP Bold\fs55\fsvp10}ありがとう正常情况 \N谢谢\\N//N\NNありがとう\N谢谢\N{\fnSource Han Sans JP Bold\fs55\fsvp10}ありがとう\N的容错处理{\blur3\yshad2.5\xshad1.5}\N谢谢\Nありがとう\N{\bord3}{\blur3\yshad2.5\xshad1.5}谢谢\N{\fnSource Han Sans JP Bold\fs55\fsvp10}ありがとう{\bord3}清理头尾 \N时忽略特效标签 - 句中:
-
规范空格、数字宽度
全角空格替换为半角、多个连续空格替换为一个空格;开头、结尾的空格将被删除。
对白(中日分别处理)只有一个数字则全角,出现两个以上数字全部半角。
示例:
执行前 执行后 备注 开头结尾、中间存在(多个)半角/全角空格 [开头] 但 但是 [结尾]\N[开头] だ だけど [结尾]但 但是\Nだ だけど开头结尾空格处理无视特效标签 {\blur3\yshad2.5\xshad1.5} 但 但是 \N だ だけど {\blur0}{\blur3\yshad2.5\xshad1.5}但 但是\Nだ だけど{\blur0}一个半角数字 1年左右\N1年くらい1年左右\N1年くらい多个全角数字 15或16万吧\N15 16万かな15或16万吧\N15 16万かな多个全角数字 5或6万吧\N5 6万かな5或6万吧\N5 6万かな -
插入模糊阴影(2304)
每行开头插入
\blur3\yshad2.5\xshad1.5特效。示例:
执行前 执行后 备注 但是啊\Nでもなぁ{\blur3\yshad2.5\xshad1.5}但是啊\Nでもなぁ原文无特效标签 {\fn40}但是啊\Nでもなぁ{\blur3\yshad2.5\xshad1.5\fn40}但是啊\Nでもなぁ原文已有特效标签