CTeX-DEV / CTeX

26 stars 11 forks source link

调教 WinEdt,使之默认编码可以在 GBK/UTF-8 之间方便地切换 #5

Closed Liam0205 closed 8 years ago

Liam0205 commented 8 years ago

@leo-liu 在 CTeX 论坛提出,某些情况下还是有必要兼容 GBK 编码的。现在,我们将编码设置为默认 UTF-8,老用户可能会反感。

我的想法是: 在 WinEdt 里写一个脚本,可以方便地让默认编码切换。

要不然,就保留两个版本的 WinEdt。7.x 留给老用户;9.x 留给新用户。前者默认 GBK,后者默认 UTF-8。

Liam0205 commented 8 years ago

@Harry-Chen @zepinglee 你们看看怎么做?

Harry-Chen commented 8 years ago

我的想法是,在安装脚本里面留一个选项,让用户安装的时候选择要不要默认UTF-8

Liam0205 commented 8 years ago

留选项也是条路,但是不如做得彻底点。

如果用户同时有写新文档和维护旧文档的需求,那么留选项对用户来说就不够。

Harry-Chen commented 8 years ago

因为WinEdt的配置耦合很紧(这个具体过段时间我会解释下),写配置工具可能导致一些蛋疼的事情。 我考虑写一个小程序在配置文件中进行字符串替换,或者干脆弹出窗口告诉用户应该怎么做可能更方便些。

Harry-Chen commented 8 years ago

想到方法了,安装的时候可以留选项,用户要切换的话,运行修复程序就可以了。 不过这样子会导致用户自己的 WinEdt 配置全部丢失,目前看来问题不大。毕竟会修改别的配置的用户肯定也会切换默认编码的。

Harry-Chen commented 8 years ago

甚至我可以自己再编译一个 exe 出来专门给 WinEdt 切换编码用。

Liam0205 commented 8 years ago

WinEdt 的配置,是写在哪里?

如果是写入一个具体的文件的话,我们只需要给一个脚本(或者 exe),修改这个文件就行了。

Repair 的方式我不太喜欢。

2016-03-06 13:18 GMT+08:00 Harry Chen notifications@github.com:

甚至我可以自己再编译一个 exe 出来专门给 WinEdt 切换编码用。

— Reply to this email directly or view it on GitHub https://github.com/Harry-Chen/CTeX/issues/5#issuecomment-192808094.

Harry-Chen commented 8 years ago

@Liam0205 是一个配置,问题是在于直接改不生效,需要去删掉配置缓存之类的东西才行。我想办法做成独立的exe吧

Harry-Chen commented 8 years ago

我来试试看写个批处理吧…为这个事情开VS是杀鸡用牛刀了

Harry-Chen commented 8 years ago

还是用C++写了个小程序,目前我在 XP Win7 Win8.1 Win10 均测试通过 为保险起见,你也带着编译一下然后试试看吧(为了加快速度,你可以只把WinEdt从Full移动到install下面,其他组件就不必要安装了) 效果是安装的时候有一个选项,然后WinEdt根目录下面有一个工具程序。开始菜单里面也有指向它的链接。 BTW,源代码在 CTeX-Tools 这个 repo 里面

Harry-Chen commented 8 years ago

如果测试通过了,就可以close了

Liam0205 commented 8 years ago

看上去问题不大。我试试。

Liam0205 commented 8 years ago

切换工具问题不大,切 GBK 和 UTF-8 都没问题。

通过 Repair 修复来修改也无问题。

Liam0205 commented 8 years ago

对了,有两个要改的地方。

  1. UTF-8
  2. ANSI

ANSI 改成 GBK 吧,或者至少改成 ANSI/GBK (中文简体系统)

另外,输入之后敲回车,修改成功的话,给一个反馈吧。比如「成功,按任意键退出」。

Harry-Chen commented 8 years ago

选 ANSI 是因为这是 Windows 带出来的...本来也想用 GBK 的,我还是两个一起标注吧。 那个成功提示...似乎被我不小心删了,知道了。

On 周日, 3月 06, 2016 at 9:31 下午, Liam Huang < notifications@github.com [notifications@github.com] > wrote: 对了,有两个要改的地方。

  1. UTF-8
  2. ANSI

ANSI 改成 GBK 吧,或者至少改成 ANSI/GBK (中文简体系统) 。

另外,输入之后敲回车,修改成功的话,给一个反馈吧。比如「成功,按任意键退出」。

— Reply to this email directly or view it on GitHub [https://github.com/Harry-Chen/CTeX/issues/5#issuecomment-192889717] .[https://github.com/notifications/beacon/ACsGj6iF8HdeldSZFV9UzpFipDAh-F_Bks5pqtdCgaJpZM4HehiY.gif]

Harry-Chen commented 8 years ago

代码已经更新,等我一模完了更新二进制文件

Harry-Chen commented 8 years ago

All done, have fun.