阅读:2582回复:15
执行yong-quit.exe后能否生成未合并的user.txt
想通过批处理对输入法打包备份
但由于输入的过程中可能会有码表变动未合并 所以尝试在yong-quit之后执行 yong --tool=libmb.so mb.txt out.txt dump --option=head,main,user --format=yong 类似的命令 实验下来发现yong.exe生成user.txt并不是实时的 如果码表变动后立即yong-quit yong.exe可能会未来得及生成新的user.txt 所以会出现一定机率的失败 而主动点击主程序yong.exe系统栏图标右键菜单 点退出时可以生成user.txt 只是这样就没有了自动执行的便捷 可否为yong-quit添加一个命令参数 不是kill而是传送消息给yong.exe 使其正常退出为当前未合并的码表生成user.txt 甚至直接生成合并后的新码表 就像使用主程序系统栏菜单项中的“工具→合并用户码表”一样的效果 若能再进一步为yong-config配置工具添加一个配置选项 开启系统关机重启时自动生成合并后新码表的功能 那就太好了 谢谢先! |
|
沙发#
发布于:2024-04-02 10:45
还有一个小问题
yong.exe --tool=libmb.so mb\mb.txt .yong\mb\out.txt dump --option=head,main,user --format=yong 这里码表文件的路径参数好像只能接受针对于yong.exe的相对路径 假设在批处理bat中这样设置 set src=c:\app\yong set cfg=%src%\.yong 上面的合并码表命令改为 %src%\yong.exe --tool=libmb.so %src%\mb\mb.txt %cfg%\mb\out.txt dump --option=head,main,user --format=yong 就无法执行成功 如果批处理当前执行起始位置不是yong.exe所处的位置 还需要cd到yong.exe所外的位置 如果可以解析绝对路径就更好了 再次感谢先! |
|
板凳#
发布于:2024-04-02 10:54
再请教一个小问题
yong.exe --tool=libmb.so mb\mb.txt .yong\mb\out.txt dump --option=head,main,user --format=yong 原始码表mb.txt中如果含有构词码的话 这样的命令不能保留构词码 如果想在新生成的合并码表中保留构词码需要添加什么参数? 就像这种: zzzze 断断续续 zzzzj 结缔组织 妇女组织 纤维组织 zzzzu 丝丝缕缕 ^ad 邘 ^ad 盂 ^ad 于 ^ae 雃 ^ae 开 ^ae 頇 ^ae 刑 ^ae 形 想保留^开头的构词码怎么办 主动点击主程序yong.exe系统栏图标右键菜单合并用户码表是可以正常保留的 |
|
地板#
发布于:2024-04-02 11:08
longwu9t:再请教一个小问题自答一下 yong.exe --tool=libmb.so mb\mb.txt .yong\mb\out.txt dump --option=head,main,user,zaoci --format=yong 其实我在zaoci这个参数之前实验过gouci 但失败了 又看了一下帮助 发现使用的是造词码这个名称 所以又实验了zaoci这个参数 还是偶有失败偶有成功 这随机性的结果让我晕了 |
|
4楼#
发布于:2024-04-02 12:26
|
|
5楼#
发布于:2024-04-02 12:28
|
|
6楼#
发布于:2024-04-02 13:10
谢谢dgod回复
参数adjust是有效的 向成功又迈出一步^_^ 路径的问题我又测试了多次 确保是不存在中文与特殊字符的 目前看到 mb.txt这个参数是yong.exe的相对路径 out.txt这个参数如果未写明相对路径 则默认生成文件是放在.yong目录下 这只是我测试的结果 大概率是不准确性的 再次感谢! |
|
7楼#
发布于:2024-04-03 15:07
留个记号备用
rem createBK.bat rem 此脚本合并用户码表后打包备份yong输入法 rem 为合并码表应确保此脚本所在目录为%src% rem 即32位的yong.exe可执行程序所在目录 rem 可在zhengma.txt码表中添加命令直通车 rem bkup $[备份]$GO(createBK.bat) rem 如果想静默执行7-Zip打包 rem 可将7zG.exe改为7z.exe反之亦然 rem 输入法开启时中文输入状态下输入bkup选择备份即可 rem 输入法不开启时单独执行此批处理亦可 rem 用户可根据需要更改路径配置项及码表文件 rem 已知yong.exe合并用户码表时可能存在只识别相对路径的问题 rem 后续若有输入法版本更新再行调整 rem 配置路径 set pack="c:\Program Files\7-Zip" set src=c:\proApp\TotalCMD\addon\yong set cfg=%src%\.yong set tmp=z: set bkup=d:\soft\tool\ime rem 退出输入法 if exist %src%\yong-quit.exe (%src%\yong-quit.exe) else (taskkill /F /IM yong.exe) rem 遍历输入法目录删除升级后残留的旧文件 for /r %src%\ %%a in (*del) do del /f /q %%a rem 若tsf文件夹下dll被占用则需杀掉explorer后手动处理 rem 合并用户码表 if exist %cfg%\user.txt ( if not exist %cfg%\mb (md %cfg%\mb) yong.exe --tool=libmb.so mb\zhengma.txt .yong\mb\zhengma.txt dump --option=head,main,user,adjust --format=yong ) rem 更新合并后的用户码表 if exist %cfg%\mb\zhengma.txt move /y %cfg%\mb\zhengma.txt %src%\mb\ rem 删除配置更改后的旧配置文件 if exist %cfg%\yong.ini.old (move /y %cfg%\yong.ini %src%\) rem 清理并重建用户配置目录 rd /s /q %cfg% md %cfg% copy %src%\yong.ini %cfg%\ rem 打包输入法 %pack%\7z.exe a %tmp%\yong.7z %src% -aoa -m0=BCJ2 -m1=LZMA:d25 -m2=LZMA:d19 -m3=LZMA:d19 -mb0:1 -mb0s1:2 -mb0s2:3 rem 如果存在备份文件就进行备份更新 if exist %bkup%\yong.7z (move /y %tmp%\yong.7z %bkup%\) rem 重启输入法 %src%\yong.exe rem 退出批处理若未退出手动关闭CMD窗口即可 exit |
|
8楼#
发布于:2024-04-03 20:23
yong-quit.exe使用后不能保存的问题我也无法确定,请先升级程序到最新测试版。
yong-quit.exe源代码已丢失,不清楚它为什么特别。重写了一个,我测试过是好的。 |
|
|
9楼#
发布于:2024-04-03 20:41
|
|
上一页
下一页