华宇拼音输入法论坛

标题: 关于自定义短语的一个小问题 [打印本页]

作者: PreZident    时间: 2010-1-1 12:09
标题: 关于自定义短语的一个小问题
以前看到过有人发过类似问题,但是找不到原帖了,这里说一下我碰到的问题。

我设置了短语
if=
if ()
{
}else{
}

但是在 Editplus 等编辑器中不换行,变成 if () { }else { },但在 word 和 notepad 里换行。
我以为是 Editplus 问题,于是用 Habc 字符画试,结果却是换行的,字符画正常显示。
我不知道如何解释这个现象。麻烦那位高手研究一下。
作者: kingdick    时间: 2010-1-1 12:12
if()
{
}else{
}
作者: kingdick    时间: 2010-1-1 12:13
试过了,的确如此……
作者: kingdick    时间: 2010-1-1 14:05
花了两个小时查找这个问题,基本上可以确定是EditPlus软件对于换行符处理的机制所造成的问题,你可以百度一下“EditPlus 换行”,将会找到大量相关的问题。

解释起来太复杂了,简单说一下。首先应该说的是,文本的换行是通过“回车”、“换行”两个命令实现的,用LF、CR表示;但EditPlus软件默认的换行符只是CR,少了一个LF,造成了EditPlus当中看起来是换行的文本,实际上保存后用记事本打开会发现实际上没有换行!!

该软件当中有这个选项:


这个选项的意思,就是将文本中的CR换行符在保存的时候更换为CR LF,把虚拟换行变成真实的换行来保存。

所以,你可以试一下,先选上这个选项,然后将If输入的看起来不分行的文本保存一下,关闭EditPlus;然后再用EditPlus打开刚才的文件,就会发现那行文本已经变成分行显示了~~

很诡异的问题啊!!通过紫光拼音本身的设置,现在是解决不了这个问题的。大家可以用别的几个输入法试试看能不能行。
作者: krsun    时间: 2010-1-1 15:00
这个感觉是紫光的字符画和普通自定义短语处理机制不同
刚刚试了一下,字符画是可以输入的,这个利用了系统的裁剪板。
怀疑因为字符画的字符数量比较多,所以就利用了系统裁剪板复制。一般的用户自定义短语字符数量都很少,所以不用系统的裁剪板处理。
可能系统默认超过一定字节数的内容就会使用系统的裁剪板处理。
刚才试着减少字符画的字符数量,看看是否会出现缺少换行符的问题。证实了以上猜测。^_^
作者: ljdqe    时间: 2010-1-1 22:23
原帖由 krsun 于 2010-1-1 15:00 发表
这个感觉是紫光的字符画和普通自定义短语处理机制不同
刚刚试了一下,字符画是可以输入的,这个利用了系统的裁剪板。
怀疑因为字符画的字符数量比较多,所以就利用了系统裁剪板复制。一般的用户自定义短语字符数量 ...


这么说,希望字符画不占用系统剪贴板是不容易实现了?
作者: PreZident    时间: 2010-1-2 11:17
原帖由 kingdick 于 2010-1-1 14:05 发表
花了两个小时查找这个问题,基本上可以确定是EditPlus软件对于换行符处理的机制所造成的问题,你可以百度一下“EditPlus 换行”,将会找到大量相关的问题。

解释起来太复杂了,简单说一下。首先应该说的是,文本的 ...



确实诡异。。。。辛苦版主了。




欢迎光临 华宇拼音输入法论坛 (http://bbs.pinyin.thunisoft.com/) Powered by Discuz! X3.2