机翻过程

需要的工具

  • VsCode
  • Translator Helper 插件

机翻过程可以参考: 《提高文档翻译效率神器:VS Code 插件之 Translator Helper》

输出过程

输出中英双文档的过程可以参考:《如何在 Markdown 中双语写作,输出英文或中文文件?》
直接使用这份脚本:一份 Markdown,输出中英双语两份文件
这篇文章总结下来主要是几个命令。

输出为英文

perl -CSD -Mutf8 -i -pe 's/(.*\p{Han}+.*)/<!--- \1 -->/g' main.md

给中文加注释
先给中文加注释,然后把非注释部分变成注释部分。

perl -CSD -Mutf8 -i -pe 's/(.*\S)/<!--- \1 -->/g' main.md
perl -CSD -Mutf8 -i -pe 's/<!--- (.*\p{Han}+.*) -->/\1/g; s/(<!--- <!-- )(.*)( --> -->)/<!-- \2 -->/g' main.md

我的使用方法
在.zshrc中写了4个alias

alias md_en="perl -CSD -Mutf8 -i -pe 's/(.*\p{Han}+.*)/<!--- \1 -->/g'"
alias md_all="perl -CSD -Mutf8 -i -pe 's/(.*\S)/<!--- \1 -->/g'"
alias md_zh="perl -CSD -Mutf8 -i -pe 's/<!--- (.*\p{Han}+.*) -->/\1/g; s/(<!--- <!-- )(.*)( --> -->)/<!-- \2 -->/g'"
alias md_clear="perl -CSD -Mutf8 -i -pe 's/(<!--- )(.*)( -->)/\2/g'"

发中文时用

md_clear xxx.md
md_all xxx.md
md_zh xxx.md

发英文时用

md_clear xxx.md
md_en xxx.md

这样子我翻译好的文章就可以快速切换成中文、英文、双语的状态。
最后再用MWeb发布到博客。

参考资料

  1. 《如何在 Markdown 中双语写作,输出英文或中文文件?》
  2. 《提高文档翻译效率神器:VS Code 插件之 Translator Helper》