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

[功能建議] Shift的中英切換功能 #337

Closed
aiex718 opened this issue Aug 30, 2022 · 7 comments
Closed

[功能建議] Shift的中英切換功能 #337

aiex718 opened this issue Aug 30, 2022 · 7 comments

Comments

@aiex718
Copy link

aiex718 commented Aug 30, 2022

感謝您開發與維護如此好用的輸入法,字詞預測功能十分精準省心!
已閱讀過WIKI內的文章,也可理解不提供按一下Shift切換中英文功能的原因。
但以下有些個人觀點想提出來討論:)

痛點

  1. 人體工學觀點
    • 由於Control在鍵盤上的位置遠,且負責鍵位的是小指,極度不符合人體工學。
    • 在許多鍵盤上CapsLock與Control是可交換的。
    • 若使用Mac提供的由CapsLock切換中/英輸入的方式,在此類鍵盤上會顯著提升小指的負擔。
  2. 中英混打與大小寫輸入效率
    • 若可由Shift切換中/英輸入方式,即可透過Shift鍵完成中英切換與大小寫輸入的任務,提升效率。
    • 意即Shift鍵短按切換成英文輸入,再透過長按Shift與否來改變大小寫輸入
  3. 符號輸入
    • 中文輸入習慣使用全形符號,但在特定情況下還是常用到半型符號,如()[]等語法常用的描述符。
    • 若可由Shift切換中/英輸入方式,即可快速輸入半型符號。
  4. 數字輸入
    • 80%與60%等無NumPad的的鍵盤上,僅能透過英文模式輸入數字。
    • 對於使用頻率極高的中文/數字混打需要頻繁的切換輸入法。
  5. 習慣問題
    • 最後也是最無解的習慣問題,上述痛點都可以透過改變使用習慣來規避。
    • 但新注音/新酷音使用者等長久累積的輸入習慣更改不易。

基於上述觀點,希望能考慮加入透過Shift切換中/英輸入的方式。

功能說明
- 可以透過Shift切換中/英輸入方式

@lukhnos
Copy link
Contributor

lukhnos commented Aug 30, 2022

謝謝你的功能建議。

想先請問,你除了使用 macOS 的 Caps Lock 切換當前的中文及英數字輸入法,還會使用其他按鍵組合切換輸入法嗎?例如 Ctrl-Space 或是 Cmd-Space?

另外,你目前的鍵盤設定,是否如上所說,將 Caps Lock 跟 Ctrl 對調,以便減少 Ctrl-[A-Z] 組合鍵的手指負擔,但因此讓中英文切換的小指負擔增加?

@ryanwuson

This comment was marked as off-topic.

@zonble
Copy link
Contributor

zonble commented Aug 30, 2022

在 macOS 輸入法框架的設計中,並不會將單次點擊 Shift 按鍵的行為,送到像是小麥輸入法這樣的程式上。所以技術上可行的作法是,輸入法程式要跳過蘋果所規範的輸入法框架,直接暴力攔截「所有」的硬體事件,包括鍵盤滑鼠,然後找到單次點選 Shift 的事件。而且,就算用戶切到了其他輸入法,甚至用戶根本沒在打字,都在監聽「所有」的事件。

這就不是技術問題了,是道德的問題。輸入法的作者,或是任何軟體的作者,應該對可以接觸多少用戶資料,要有自律,如果可能會有濫用情形的行為,一開始就不應該做。以我的立場,我知道那邊有條道德的紅線,我就不會去碰。人沒有道德就只是禽獸而已。

@zonble
Copy link
Contributor

zonble commented Aug 30, 2022

我覺得比較合理的作法是,我們可以寫信給蘋果考慮是否要把單次點選 Shift 的事件開放到 IMK 當中,然後有了這個 API 再說。

@aiex718
Copy link
Author

aiex718 commented Aug 30, 2022

@lukhnos 當在純英文的討論區,或是coding的時候,我習慣會使用Ctrl+Space切換到純英文輸入法。
另外使用中的鍵盤是將Ctrl與CapsLock對調的沒錯,Macbook的內置鍵盤也是此配置。
但由於工作環境需要Mac/Win雙系統跑來跑去,還是不免會經常按錯鍵。
image

@ryanwuson 感謝您提示,稍後會試試看威注音輸入法:)

@zonble 可以理解您的顧慮。
因為個人是做嵌入式相關工作的,沒使用過Mac上的API不瞭解其限制。
蘋果官方大概....不會因為這類小眾需求改API...吧,蘋果Style嘛😂
我想所有的第三方輸入法都會有這類用戶資料的疑慮,這應該也是蘋果做Secure Input的原因。

至於其他輸入法是如何實現此功能的,目前沒有Trace過Code無法發表意見。
但個人認為,若該功能是靠此類Workaround實現,也是受到社群檢視過的。
這也是我較信賴開源輸入法的原因之一:)

@openvanilla openvanilla deleted a comment from mojiaxiaoju Sep 2, 2022
@aiex718
Copy link
Author

aiex718 commented Feb 22, 2023

抱歉,考古一下
若有同樣苦惱於此問題的用家們
這邊提供一個使用其他軟體的workaround

安裝Karabiner-Elements
然後到下方網站import Change shift key (rev 2) 這個mod
https://ke-complex-modifications.pqrs.org/
隨後在Karabiner-Elements啟用即可
可以將shift單獨短按的指令map到capslock,用來切換中英文

如果off topic的話再麻煩管理員移除此留言
Thanks.

@lukhnos
Copy link
Contributor

lukhnos commented Feb 22, 2023

抱歉,考古一下 若有同樣苦惱於此問題的用家們 這邊提供一個使用其他軟體的workaround

安裝Karabiner-Elements
然後到下方網站import Change shift key (rev 2) 這個mod
https://ke-complex-modifications.pqrs.org/
隨後在Karabiner-Elements啟用即可
可以將shift單獨短按的指令map到capslock,用來切換中英文

謝謝!

@lukhnos lukhnos closed this as completed Feb 22, 2023
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

4 participants