Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

小狼毫前端的兼容性問題將不再修復 #25

Closed
lotem opened this issue Aug 4, 2015 · 47 comments
Closed

小狼毫前端的兼容性問題將不再修復 #25

lotem opened this issue Aug 4, 2015 · 47 comments

Comments

@lotem
Copy link
Member

lotem commented Aug 4, 2015

通告

https://github.com/rime/weasel
該前端程序一直存在與 Windows 8 以上的 Metro 模式、IE 保護模式、全屏遊戲以及某些應用軟件不兼容的問題,各個修復則工作量巨大,所以決定遷移到比較成熟的第三方 Windows 輸入法前端框架,以避免浪費開發資源。
完成遷移後,目前的前端代碼將不再維護。
新的輸入法將完整包含 https://github.com/rime/librime 的功能。產品名稱和發佈形式待定。不保證複刻舊版小狼毫的介面和特有功能。

因此,Issues 中記錄的此類問題會合併到這裏。

@wyxbc
Copy link

wyxbc commented Aug 4, 2015

lotem在行动,赞!

@LEOYoon-Tsaw
Copy link
Member

期待新前端的表現!

@Ansen
Copy link

Ansen commented Aug 5, 2015

期待ing

@daya-prac
Copy link

公子加油!期待公子的新作

@zaqzrh
Copy link

zaqzrh commented Aug 9, 2015

等待Windows 10 & Windows10 Mobile新版

@kunki
Copy link

kunki commented Aug 10, 2015

期待 Google Input Tools(前端)與 librime 的合體。

@fouch
Copy link

fouch commented Aug 10, 2015

加油!

@dirdir
Copy link

dirdir commented Aug 11, 2015

虽对小狼毫早有耳闻,但真正用起来还是在使用 Windows 8.1 之后,之前原本很好用的极点五笔、搜狗五笔、QQ五笔都出现了各种兼容性问题,无奈之中,却让我有机会认识了这样一个界面简单、配置复杂,却努力把输入体验细节做到极致的输入平台--小狼毫,虽不完美,但却让人爱不释手,真的要谢谢佛大大!

但通过长时间的使用,发现尽管小狼毫提供了TSF和传统IME两个版本,但也偶尔会出现一些兼容性的问题,所以就一直盼望着盼望着小狼毫在这方面的改进,直到看到佛大大发布此消息,有些失望,但同时不知道这是不是意味着一个新的起点,也许在不久的将来就可以看到小狼毫的新生!佛大大的功力是毋庸置疑的,但我们也都清楚,一个人的精力是有限的,尤其是利用自己的业余时间来创作出如此伟大的作品,已经难能不易。我是真心的喜欢她,只能尝试着去包容她的一切……

经过一段时间对各种五笔输入法的测试,现在在系统上只保留了两个输入法,基本上以小狼毫为主,百度五笔为辅,各自有问题时互补着使用。看着现在各种拼音输入法的百花齐放,争香斗艳,频频更新,想想相比之下五笔用户真是很可怜,难道随着Windows系统的升级和五笔新用户的减少,五笔终将消失吗?做梦都想着能有一款输入法能集“极点五笔、QQ五笔、百度五笔、小狼毫”之长,但也许这只能是梦了……

Windows 10 更新已经推送了,我却一直不敢点击升级,无他,只为五笔……

@ziloeng
Copy link

ziloeng commented Aug 19, 2015

支持一下!!

@luciferz2012
Copy link

目前在考虑哪些第三方输入法框架呢?

昨天才开始用小狼毫的五笔,连打句子感觉太舒服了,却不能在Win10的Metro界面下使用,真可惜。
现在是小狼毫桌面版+微软自带五笔及拼音,期待新输入法!

@yimng
Copy link

yimng commented Sep 7, 2015

不重新造轮子,聪明的选择

@lotem
Copy link
Member Author

lotem commented Sep 10, 2015

最近忙於俗務,還沒準備好發佈。
已經準備好的集成方案是:把 Rime 封裝成一個 engine 以插件形式集成到 Google Input Tools。

@daya-prac
Copy link

公子可否透露一下大概的发布时间?

@rimefan
Copy link

rimefan commented Sep 30, 2015

就等着双十发布

@daya-prac
Copy link

终于等到今天

@lotem
Copy link
Member Author

lotem commented Oct 10, 2015

@HouMuYi
Copy link

HouMuYi commented Oct 11, 2015

小弟用正體中文版Windows7x64安裝「rime-gits-20151010-alpha」後:
2015-10-11 simg-004

輸入法出現在簡體處:
2015-10-11 simg-005

不知如何呼喚出注音(似乎未預選,找不到設定處):
2015-10-11 simg-007

UI沒有正常的文字(似乎是語系的變數名):
2015-10-11 simg-008
2015-10-11 simg-009

@daya-prac
Copy link

感謝公子忙到深夜爲大家帶來新版的Rime

@be5invis
Copy link

4K 分辨率下面跟随仍然有问题,比不上企鹅

@kunki
Copy link

kunki commented Oct 13, 2015

@HouMuYi
將輸入法安裝到臺灣,可參攷這篇貼子:http://tieba.baidu.com/p/4098749219
要呼喚出注音,可在安裝前編輯default.yaml,在schema_list後面加上一欄注音(id號爲bopomofo_tw),然後再安裝。

@HouMuYi
Copy link

HouMuYi commented Oct 14, 2015

@kunki
感謝,我試試。

@ipcjs
Copy link

ipcjs commented Oct 18, 2015

rime-gits-20151010-alpha不能使用以前的方式导入自定义词库吗?(导入词库教程

@littleq0903
Copy link

不用在安装前编辑 default.yaml,跟一般的 rime 一样,这个版本支持 custom.yaml 的,只是位置变了:C:\Users\<username>\AppData\Roaming\Google\Google Input Tools\Rime

如果需要重新部署,创建一个 DeployRIME.bat,放入以下内容:

net stop googleinputservice
taskkill /f /im googleinputhandler.exe
net start googleinputservice

改完设定档后,点两下就可以重新 deploy 了,大家试试。

IT WORKS ON MY MACHINE!

@xiaochun-z
Copy link

测试了,没有双拼方案,大家怎么加入双拼呢?

@biaoyinzi
Copy link

我是新用戶,非常喜歡RIME輸入法。個人覺得現有版本在Windows10上工作得挺好的,新框架要求並不緊迫?不過如果能開放開發分支,願意加入開發隊伍,幫助大大實現一些簡單的功能。

@osfans
Copy link
Contributor

osfans commented Sep 17, 2016

@biaoyinzi https://github.com/lotem/rime-gits 或者 https://github.com/osfans/PIME 或者小狼毫 欢迎加入

@lotem
Copy link
Member Author

lotem commented Sep 18, 2016

@biaoyinzi 歡迎。
以上由 osfans 提到的兩個分支,前端用了不同的開源技術。您可以先拉代碼把玩一下,看看哪裏需要改進,並且有興趣做,咱們再討論具體方案。

@qqldd
Copy link

qqldd commented Oct 25, 2016

谢谢 @osfans 的贡献,发现 EasyIME已经可以支持Rime了。

@nameoverflow
Copy link
Member

nameoverflow commented Jan 14, 2018

研究了一下现有的小狼毫代码,似乎不兼容问题主要出在使用 SendWindowMessageshared_memory 来进行跨进程交互,而 winrt 的应用(如 windows 10 的开始菜单)不允许这种 IPC。换个跨进程交互方式可以改善。

Google Input Tool 和 PIME 都是用的 NamedPipe 来实现 IPC,近期我会试试。

别的前端实现对 RIME 的支持总不是那么丝滑,要么就是在输入法服务上有各种小 BUG 没有当初的小狼毫那么稳定,感情上还是更倾向于小狼毫啊 _(:3」∠)_

@lotem
Copy link
Member Author

lotem commented Jan 15, 2018

大讚。
另外 Google Input Tools 不好嘛?我覺得把 WeaselPanel 移植過去替代 widgets 介面也是個思路。

@nameoverflow
Copy link
Member

@lotem Google Input Tools 太复杂了,也没个文档,看了一会也没搞明白那套插件要怎么弄……

@lotem
Copy link
Member Author

lotem commented Jan 19, 2018

@nameoverflow 支持你。
那就分頭行動吧。反正我最近也沒有時間改裝 Google Input Tools。
只不過 weasel 還有和不少應用程序的兼容性問題。

@nameoverflow
Copy link
Member

https://github.com/nameoverflow/weasel/tree/winrt

基本可用了,顺便修复了 inline preedict 的问题和高分屏适配,只是需要手动启动 WeaselServer,准备改成 win32 service。不知道能否兼容 windows 8.1 以下。

这几行字就是用小狼毫在 edge 下输入的😋

@littleq0903
Copy link

littleq0903 commented Jan 21, 2018 via email

@nameoverflow
Copy link
Member

nameoverflow commented Jan 21, 2018

算了,win32 service 不能直接支持创建窗口。暂时先用自启动和RegisterApplicationRestart也能满足保持 server 运行的需求了。

https://pan.baidu.com/s/1mkd1dSO u959

build 了个覆盖更新的散装版,在 win 10 上使用了一天没碰到过什么问题。

@lotem 这样是否考虑合并到主线呢?可能主要就是对老系统有兼容问题了。

@Prcuvu
Copy link

Prcuvu commented Jan 23, 2018

@nameoverflow 你可以先将代码提交到 Pull Request。为此我一定尽最大努力抽出时间审阅。一旦你的代码合并到主仓库,我会考虑尽快推出新的发行版。

@daya-prac
Copy link

@lotem Google input tools 最后一次代码提交是在2016年1月份,两年没有更新过,应该也有很多兼容性问题吧

@david50407
Copy link

太牛了 終於有機會在 UWP 下用 RIME

@llmm0o
Copy link

llmm0o commented Jan 27, 2018

垃圾贴吧无法回复!

还没装上,浏览了批处理,有几处可以完善:
1、set 后面整个内容需要用双引号括起来,比如应该写成:set "WEASEL_INSTALL_OPTION=/s";
2、多层路径跳转,用一对pushd/popd比较理想:

set CD_BACK=%CD%
cd "%~dp0"
.........
cd "%CD_BACK%"

可以改成如下,跟你的原意一样:

pushd "%~dp0"
..........
popd

3、判断系统版本号,最简单通用的是 ver 命令了吧,你的意图只需要如下两行,不用借助js:

ver | find "5.1." > NUL && goto xp_install    
ver | find "5.2." > NUL && goto xp_install

4、获取管理员权限运行,只需要一行命令:
%1 mshta vbscript:createobject("shell.application").shellexecute("""%~0""","::",,"runas",1)(window.close)&& exit
5、判断是否64位,更简单准确的方法是这样:

if "%Processor_Architecture%%Processor_Architew6432%" equ "x86" (
echo x86
) else (
echo x64
)

6、如果需要安装为系统服务:
sc create WeaselServer start= AUTO obj= "BUILTIN\Administrators" Binpath= "%cd%\WeaselServer.exe" DisplayName= "Weasel Server"

依我的习惯,整个批处理改成这样,仅供参考:

@echo off
%1 mshta vbscript:createobject("shell.application").shellexecute("""%~0""","::",,"runas",1)(window.close)&& exit

rem argument 1: [ /s | /t ] register ime as zh_CN | zh_TW keyboard layout
set "WEASEL_INSTALL_OPTION=/s"
if /i "%1" == "/t" set "WEASEL_INSTALL_OPTION=/t"

pushd "%~dp0"

echo stopping service from an older version.
call stop_service.bat

echo configuring preset input schemas...
WeaselDeployer.exe /install

echo registering Weasel IME to your system.

ver | find "5.1." > NUL &&  goto xp_install
ver | find "5.2." > NUL &&  goto xp_install

if "%Processor_Architecture%%Processor_Architew6432%" equ "x86" (
:win7_install
WeaselSetup.exe %WEASEL_INSTALL_OPTION%
rem regsvr32.exe /s "%CD%\weasel.dll"
goto end
) else (
:win7_x64_install
WeaselSetupx64.exe %WEASEL_INSTALL_OPTION%
rem regsvr32.exe /s "%CD%\weasel.dll"
rem regsvr32.exe /s "%CD%\weaselx64.dll"
goto end
)
:xp_install
WeaselSetup.exe %WEASEL_INSTALL_OPTION%
goto end

:end
reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Run" /v Weasel /t REG_SZ /d "%CD%\WeaselServer.exe"
WeaselServer.exe

@llmm0o
Copy link

llmm0o commented Jan 27, 2018

用批处理安装到win10,完全没法打汉字,很失望。

@llmm0o
Copy link

llmm0o commented Jan 27, 2018

我发现小小输入法兼容性很好,完美兼容Win10,可定制很强,只是我不懂怎么把它定制成双拼+声调。
你们谁会?

@Prcuvu
Copy link

Prcuvu commented Feb 4, 2018

@lotem 可以关闭这个问题了。

@lotem
Copy link
Member Author

lotem commented Feb 5, 2018

感謝各位!克服了最大的兼容性問題。開發得以繼續。
@nameoverflow @Prcuvu

@lotem lotem closed this as completed Feb 5, 2018
@nameoverflow
Copy link
Member

nameoverflow commented Feb 5, 2018

还有 #197#69#204 都可以 close 了。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests