一个依托Visual Studio来提取和替换项目文件中硬编码字符串来快速实现资源化的工具
目前代码内已实现.cs文件和.xaml文件的解析。
此工具不是开箱即用的,你必须通过修改代码来实现你自己项目的资源化文本替换。 本项目初衷只是为了将我负责的WPF项目中的需要本地化的硬编码字符串移动到资源文件中以实现本地化,我并不保证这个工具以后还会进行更新。
- 通过代码中定义的规则获取文件中的需要资源化的文本。
- 不同项目使用的资源化方法不同,请自行修改替换规则。
- 可快速在Visual Studio中定位代码。
- 选择目标resx资源文件后,只需要输入一个资源化键名称即可将其写入资源文件,并将原字符串替换为资源化代码。
- 如果资源文件中已存在相同的文本,可以选择直接使用已有项的键,也可以创建新的资源项。
- 先检查是否一切就绪
- 确保你已经在项目中实现了适用于你项目的通用资源化框架。
- 确保你已经将本项目中预定义的资源化替换文本修改为适用于你项目的资源化代码。
- 确认是否已经打开Visual Studio并加载了解决方案。
- 在正式进行资源化修改前,先测试一遍看看是否有问题。
- 加载你需要资源化的目录。
- 注意代码中扫描文件部分关于排除的目录的定义,要么将需要排除的从目录中移除,要么将这些目录加入排除列表中。
- 加载你需要写入资源键的资源文件。
- 如果你在软件外部修改了资源文件,请点击重载资源文件来同步修改。
- 在界面中筛选你需要进行资源化的字符串。
- 可根据文件名或字符串文本进行正则匹配筛选。
- 点击“位置”可在Visual Studio中打开该文件并选中文本
- 此操作用于确认资源化前替换的文本位置是否正确。
- 如果你在软件外部修改了文件(如:格式化、撤销),请记得保存并点击软件中该文件字符串项的“重载该文件”。
- 若位置出现偏请尝试重载文件(重载文件前请记得保存文件),若无效则请检查代码实现是否有问题,务必修正偏移。
- 点击“转资源化”按钮,并在弹出窗口中输入资源化资源的键名。
- 若资源中已包含相同的资源文本,则会询问是否使用已有的键,但是你也可以选择创建新的键。
- 确认,软件将替换硬编码字符串并应用资源化代码。
这个工具很容易扩展,只要你可以解析你需要资源化的其它文本中的字符串就行。
你只需要继承并实现FileLocalizerBase和HardCodeStringInfo这2个类,其他的代码框架可以自己搞定
阅读文件
CSharpFileLocalizer.cs的注释可了解如何实现
- 请星标该项目。
- 请在你的项目中任意位置(可以是许可文件,可以是鸣谢界面,也可以是软件的任意可访问位置)添加可导航至本项目(https://github.com/Flithor/HardcodedStringResourceizationTool) 的超链接或可复制的字符串。
欢迎PR补充功能