组内用于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でもなぁ
原文已有特效标签