-
Notifications
You must be signed in to change notification settings - Fork 1
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
[討論] 還是 IPC 架構問題 #17
Comments
@KenLuoTW @osfans @jessy1092 BTW, 有個好消息,有位企業主來信表示願意贊助 code signing 的費用,正在洽談中,如果可以,下次就可以幫發行的執行檔簽章了,應該會減少一些被視為不明來源惡意程式的問題。 |
@jessy1092 目前 libuv_experiment branch 內的 python 版本已經移植到使用 stdio 做 IPC 的版本,初步實驗滿穩定的,但是中間的資料格式可能還會改。我近期會把這部份完成。 |
@PCMan 話說這次也會先 release alpha 版嗎? 想實際安裝來測試一下 XD 主要是 debug 的方式,node 部分主要 debug 都會 stdout 出來,不確定會不會有影響 |
@jessy1092 這裡有可以測試的版本: |
剛有發現 bug,我上傳了新的 installer (網址跟剛剛一樣) |
PIME在輸入時,若切換窗口,則輸入提示框並不會自動消失,這個問題雖然不是bug,但是有時候意外的窗口切換,會給使用者帶來困擾,也與微軟倉頡等輸入法的行為不同。請問能否改成輸入提示框會在切換窗口後自動消失的形式,和微軟等輸入法的行為一致呢? |
这个其实和httpserver的FastCGI模式很类似。 |
@KenLuoTW @osfans @jessy1092 這邊需要跟大家溝通討論一個問題。上一版換成 web-based 的架構之後,後端就像是一般 web service,開發除錯比較容易,但後來發現有以下問題:
所以現在有個新的提案:
不要用 http server,PIMELauncher 改直接用 pipe 和 python & node.js 的 stdin/stdout 相接。來自 client 的指令由 PIMELauncher 轉送進 backend 的 stdin,處理後的輸入法輸出 print 到 stdout,由 PIMELauncher 讀取後送回 client,每一行是一個 json message
這樣 python & node 就只需要 loop 從 stdin 讀入每一行的輸入,處理完畢後,把輸出 print 到 stdout,完全不需要任何 server,也不需要任何 thread or async i/o 架構。
有不少優點:
但缺點是:
關於除錯困難的部份,我打算自己寫一個除錯工具在 PIMELauncher 內,打開就可以看到中間的訊息內容,來補足 stdio 被拿去做 IPC 無法輸出 console 視窗來看 print 結果的缺點。
如果是這樣的方案,大家覺得可以接受嗎?Thanks!
@jessy1092 特別需要你的意見,因為 node.js 不確定這樣改會不會很麻煩或是發生問題
The text was updated successfully, but these errors were encountered: