squirrel icon indicating copy to clipboard operation
squirrel copied to clipboard

Rime(Squirrel) 輸入法按下標點符號時不希望自動選取候選詞,如何設定?

Open Theo-oh opened this issue 1 year ago • 6 comments

在 macOS 上使用 Rime 輸入法(squirrel),遇到以下問題:

  1. 輸入拼音後,按下標點符號(如.)時會自動選取候選詞並提交,但我希望按下. 時直接輸出拼音加標點(例如輸入supercell.com 時輸出supercell.com或候選區出現supercell.com)。 嘗試過的解決方案:
  2. 修改 default.yaml: • 設定 auto_select: false 以防止自動提交候選詞,但無效。 • 在 key_binder 中加入按鍵綁定: bindings: { when: composing, accept:".", send:"{composition/text}." } 仍無法達到預期效果。
  3. 修改 punctuator 設定:punctuator: full_shape: '.' : { commit: '.' } 也未解決問題。

希望能得到解決方案或明確的配置指導。如果需要更多信息,請隨時告知,謝謝!

Theo-oh avatar Dec 24 '24 08:12 Theo-oh

用原裝的配置即可。

lotem avatar Dec 24 '24 10:12 lotem

我也有一模一样的问题,希望不要自动聚焦到第一个候选词,可以按一下空格再聚焦。因为在 iPadOS 和 iOS 等系统上默认就是不聚焦候选词,我转换到 macOS 上会有一瞬间的割裂感。希望开发者可以考虑一下这个需求,谢谢🙏!

Ryan-the-hito avatar Jul 20 '25 05:07 Ryan-the-hito

我也有一模一样的问题

完全不一樣。

樓主遇到的問題的是句號配置爲自動上屏,並且將句號之前未確認的文字一起上屏。估計是自定義配置的問題。

默認配置爲:有候選字的狀態下,句號鍵不會自動上屏句號,而是向後翻頁; 如果要輸入網址,此時可直接繼續輸入句點之後的部分,輸入法會自動識別網址並停止轉換爲中文。

三樓提到的交互方式約莫是 PC 上日文、注音以及早期的「智能 ABC」「微軟拼音」等輸入法常見的交互方式。而如今桌面和移動平臺的拼音輸入法都會即時提示候選詞,這樣交互更簡單,選字效率更高。

lotem avatar Jul 20 '25 14:07 lotem

我也有一模一样的问题

完全不一樣。

樓主遇到的問題的是句號配置爲自動上屏,並且將句號之前未確認的文字一起上屏。估計是自定義配置的問題。

默認配置爲:有候選字的狀態下,句號鍵不會自動上屏句號,而是向後翻頁; 如果要輸入網址,此時可直接繼續輸入句點之後的部分,輸入法會自動識別網址並停止轉換爲中文。

三樓提到的交互方式約莫是 PC 上日文、注音以及早期的「智能 ABC」「微軟拼音」等輸入法常見的交互方式。而如今桌面和移動平臺的拼音輸入法都會即時提示候選詞,這樣交互更簡單,選字效率更高。

没错,确实是因为日常使用日文输入法较多,另外实际上在iPadOS和iOS上面如果取消空格上屏的话,默认的输入法也是这样的。只不过我不知道这个上屏和楼主说的上屏是不同的部分在控制,这里倒是学习了。

我个人发现如果使用空格键向后移动候选词效率比按 1234 之类的要快很多,看上去是多了一个步骤,但实际上如果不自动聚焦首选项的话,一选是按一下空格,二选是按两下,三选是按三下,以此类推,实际上非常符合直觉,也不需要再考虑数字按键的位置。如果现在有自动聚焦,那么一选就是不按空格直接回车,二选是按一下然后回车,三选是按两下,反而复杂了起来。

如上面所说,我确实是从日文输入法和 iOS、iPadOS 的实体键盘原生输入法里面领略到这一点的,所以当我在频繁切换设备的时候,比如使用“通用控制”(Universal Control)功能的时候,macOS 上的输入法逻辑与 iPadOS 上不一样,导致我时不时多按一下空格或者回车,就有了在 macOS 上也统一输入法操作方式的想法,统一了之后实际上效率更高。

Ryan-the-hito avatar Jul 20 '25 18:07 Ryan-the-hito

@Ryan-the-hito 空格鍵換字可以支持,須修改配置。但是默認不顯示候選字沒有必要。本品的目標不是原樣復刻老舊輸入法的行爲。 已經偏題了,具體的不在這兒討論。

lotem avatar Jul 21 '25 02:07 lotem

繼續回答題主的問題。

  1. 識別網址靠 uppercase 模式: https://github.com/rime/rime-prelude/blob/3c602fdb0dcca7825103e281efc50ef7580f99ec/default.yaml#L56 原裝方案大多引用此處代碼。自定義方案可以照搬。 不過,這個規則需要 . 鍵不自動上屏,才能匹配成功。 如「朙月拼音」等方案,有候選字的情況下「.」鍵的默認動作是翻頁而非上屏符號,如果下一鍵是字母鍵,就可以匹配到網址模式。
  2. 不需要;auto_select 不管標點。
  3. 標點配置中 . 鍵設爲 { commit: '。' } 即立即上屏「。」;上述翻頁規則優先。如果不定義 . 爲翻頁鍵,則會先把未確認的中文頂上屏、再上屏「。」。若要 任何情況下 標點符號都顯示爲候選字、須手動確認上屏,可設爲列表 [ '。' ],這應該不是樓主想要的效果。

lotem avatar Jul 21 '25 03:07 lotem