文字游戏汉化时通常会采用一种叫“双行文本”的格式。这种格式没有固定的语法,但是大多数符合以下特征
<原文标签1>原文1
<译文标签1>译文1
<原文标签2>原文2
<译文标签2>译文2
本插件为以上格式的双行文本的翻译校对提供全套解决方案,提高工作效率,减少错误,减少不必要的重复劳动
DLTXT默认支持以下格式(用横线隔开)
★00000002★ 原文
☆00000002☆ 译文
-------------------
○000000○ 原文
●000000● 译文
-------------------
★scn00000★ 原文(标题)
☆scn00000☆ 译文(标题)
★nme00001★ 原文(人名)
☆nme00001☆ 译文(人名)
★txt00002★ 原文(文本)
☆txt00002☆ 译文(文本)
-------------------
[0x00000000] 原文
;[0x00000000] 译文
-------------------
@2
//Name:原文(人名)
译文(人名)
//ReplaceName:原文(实际显示人名)
译文(实际显示人名)
//Text:原文
译文
(注:此格式在“提取译文”时不能默认支持,需要手动输入正则表达式:“[^/]”)
-------------------
<0>//Name: 原文(人名)
<0>Name:译文(人名)
<1>//原文
<1>译文
如果你的文本不是默认支持的格式,则需要进行以下设置。设置后除语法高亮外的其他功能均可正常使用。
- 左下角打开设置(Settings),搜索dltxt
- 填写原文开头标签的正则表达式
Original Text Prefix Regex
和译文开头标签的正则表达式Translated Text Prefix Regex
- 如果有除了原文和译文以外的文本(比如控制语句等),填写
Other Prefix Regex
- 关闭语法高亮:
Ctrl + Shift + P
, 输入color theme
, 选择一个不属于dltxt的theme(因为无法支持语法高亮)
在翻译文本时可使用键盘快捷键代替鼠标操作(注:可以在vscode设置中更改默认快捷键绑定)
Alt + Enter
或Ctrl + Enter
移动到下一个译文行标签之后(例如这里的|
的位置:☆00000002☆「|
)Alt + \
或Ctrl + \
移动到上一个译文行标签之后Ctrl + Alt + Space
将当前句的第一个字重复一遍并加一个逗号(例。是吗|,
->。是、是吗|,
)Ctrl + Alt + Enter
将光标后的译文移动到下一行译文开头Ctrl + Alt + \
将光标前的译文移动到上一行译文结尾Alt + Delete
删除光标后的译文直至特定字符(一般用于删除整句话但保留句尾引号)Alt + ]
相当于右箭头,当遇到省略号时移动两次Alt + [
相当于左箭头,当遇到省略号时移动两次
右键菜单中选择Format document
可以对译文进行格式化(不影响原文与标签),可根据设置完成以下任意功能:
- 统一使译文开头的缩进以及对话首尾的括号(
「」
)与原文一致 - 统一省略号(
"....", "。。。" -> "……"
)(注1) - 统一波浪号(
~∼〜 -> ~
)(注1) - 统一破折号(
"ーーー", "---", "---"->"————"
)(注1) - 统一写反的、或半角的单引号、双引号
(
"英双" “中双” '英单' ‘中单’ ”反的“ -> “英双” “中双” ‘英单’ ‘中单’ “反的”
) - 将常用标点符号统一为中文全角标点(
,.:;!?()『』<半角空格><tab> -> ,。:;!?()“”<全角空格><全角空格>
) - 将英文与数字统一为全角(默认关闭) (
123ABCdef -> 123ABCdef
) - 去除对话句末的句号 (
。」-> 」
) - 自定义翻译表(例如自动翻译人名)
注1: 可自定义想要统一成的符号
将双行文本中的译文单独提取,用户进行修改(如批量替换)后,再将改变的文本应用回去
- 打开双行文本,右键,选择
提取译文
- 此时会提示输入译文行首的正则表达式,如果直接回车会使用设置中填写的正则表达式。(本插件默认支持的格式大多数不需要填写,直接回车就行)
(例:如果使用的格式是译文开头没有标签,但原文开头都以
/
标注的话,则可以输入[^/]
) - 在右半窗口会显示提取的译文。完成修改之后,在右键菜单中选择
应用译文至双行文本
,完成 - 注:上一步操作可使用
Ctrl + Z
撤销
在右键菜单或命令框中选择“复制原文到未翻译的译文行”即可
这个功能主要用于专有名词的翻译统一,能把组内所有人打开的文本中的专有名词高亮,并显示对应释义,来减少专有名词翻译不统一的情况。
- 选中文本中一个词语,可右键定义为该词为专有名词
- 对专有名词的翻译会同步到云端,全组共享
- 该游戏所有出现的专有名词都会显示高亮
- 把鼠标放到高亮的专有名词上可以查看其对应翻译
- 访问SimpleTM服务器simpletm.jscrosoft.com并注册账号
- 在你的主页下方创建一个项目,项目名称不能和别人已经创建的项目重复
- 如果你的组里还有其他组员需要加入当前项目,请在主页中点击项目名称,输入该组员的用户id,并给予其相应权限,点击
设置权限
即可。设置成功后,组员的主页中会显示该项目。
- 在主页找到你的
APIToken
,并复制 - 用vscode打开需要翻译的文本所在的文件夹
- 在vscode中左下角打开设置(Settings),搜索
dltxt
,在SimpleTM:User Name
处填写SimpleTM的用户名 - 在
SimpleTM:Api Token
处填入刚才复制的APIToken - 左上角搜索栏下面选择Workspace,在
SimpleTM:Project
处输入第2步创建的项目的名称。这一步会让vscode认为当前文件夹里的所有文本都是这个项目的文本 - 选中你想同步的词(原文),在右键菜单中,选择
DLTXT: 添加词条
,输入译文翻译并回车,词条就被同步到云端了,并且项目内所有人的文本中这个词条都会被高亮,把鼠标移动到高亮原文上能看到对应释义。 - 如果想更改释义,选中文本,在右键菜单中,选择
DLTXT: 更新词条
,输入译文并回车即可。如果想删除词条,则什么都不输入直接回车。 - 插件每隔30秒回自动同步云端词条
(注:SimpleTM是开源的:Github,如有需要可以自己搭服务器)
- 无:用户无权访问该项目
- 只读:用户只能查寻词条,但不能对词条进行更新
- 读写:用户可以读取词条、更新词条、增加新词条
- 管理员:在读写权限的基础上,用户还能改变当前项目中其他用户的权限,并可以删除该项目
- 点击左下角设置按钮,点Settings
- 在Settings的搜索栏中搜索dltxt
- 搜索栏下方有一个User和Workspace选项,User是当前用户的设置,Workspace是当前文件夹(工作区)的设置,如果两个都填写了则会优先使用Workspace设置。所以建议与游戏有关的设置填写在Workspace中,与用户自己使用习惯等有关的设置填写在User中。
为了更好的体验,建议对vscode进行如下设置:
- 右下角打开设置
Settings
,- 搜索
editor.wordSeparators
- 改成
~`!@#$%^&*()-=+[{]}\|;:'",.<>/?★☆○●「」『』“”,、。!?…… —
(这样就可以用ctrl+Left
ctrl+right
了.)
- 搜索
npm run compile && npm run esbuild
vsce login <username of dev.azure.com>
vsce package
vsce publish
- 重写README
- 删除联网查词功能
- 支持多个文件的错误检测
- 智能识别双行文本的文件,不是双行文本不检测错误
- 更改设置后不需要reload
- 修复prevLine bug
- 修复关键词和错误高亮不能关闭的bug
- 把SimpleTM项目名放到了设置中
- 添加支持高亮的格式
- 添加错误检测
- 自定义翻译表
- 使用esbuild打包,提高加载速度
- 优化关键词显示样式
- 自定义skipchars前缀和deleteAllAfter后缀
- deleteAfterAll(删除光标后的翻译直到特定字符)
- 自定义省略号,破折号,波浪号
- 删除moji查词
- 优化部分算法
- 添加快捷键
- 修复moji
- 增加调整格式的快捷键
- Moji辞書支持登录账号
- Moji辞書
- 大幅提高文本格式化算法可靠性,解决了添括号时对『双层直角括号』处理不正确的问题
- 优化运行速度
- 快捷键:重复当前句子的第一个字
- 增加浅色主题
- 联网查词
- 命令整合至右键菜单,增加易用性
- 应用单行译文时不再需要选中双行文本
- 格式化文本:功能增至8种
- 更新设置格式(与之前版本不兼容,需要重新填写设置)
- 格式化文本;自动添加空格、括号
- 提取译文
- 将修改后的译文再应用到双行文本中
- 项目管理
- 添加、删除项目
- 将其他用户添加到自己的项目
- 更改自己管理的项目中的其他用户的权限
- 用户只能访问有权访问的项目
- 用户需要使用用户名和APIToken才能使用云端同步功能
- 因为数据库更新,服务器停止了对1.0之前版本的支持
- keyword defining/highlighting/syncing (beta)
Ctrl + Enter
andCtrl + \
gives the same effect asAlt + ...
- syntax highlights for common formats
- auto name tag inferring
- hotkey support for common formats
- the format is customizable if your format is not in common formats
- syntax highlights for certain double-line-txt-files-for-translation
- hotkey to nagivate
Alt + Enter
go to next line to editAlt + \
go to previous line to edit