私はkubuntuを実行していて、何年もの間autokeyを正常に使用していますが、しばらく前にシステムアップデートで問題が発生しました。私はもともとそれを待って、修正がプッシュされるかどうかを確認しようとしました。
6か月経った今でも、キーコマンドキューを使用してテキストを自動挿入することはできません。ただし、システムトレイの自動キー記号をクリックして、挿入しようとしているフレーズを選択すると、正常に機能します。
シェルからautokey-qtを実行すると、次のようになります。
enter<class 'Xlib.protocol.request.QueryExtension'>
<class 'Xlib.protocol.request.QueryExtension'>
Exception in thread KeypressHandler-thread:
Traceback (most recent call last):
File "/usr/lib/python2.7/threading.py", line 810, in __bootstrap_inner
self.run()
File "/usr/lib/python2.7/dist-packages/autokey/iomediator.py", line 204, in run
target.handle_keypress(rawKey, modifiers, key, windowName, windowClass)
File "/usr/lib/python2.7/dist-packages/autokey/service.py", line 179, in handle_keypress
currentInput, windowInfo, True)
File "/usr/lib/python2.7/dist-packages/autokey/service.py", line 304, in __checkTextMatches
if item.check_input(buffer, windowInfo):
File "/usr/lib/python2.7/dist-packages/autokey/model.py", line 735, in check_input
abbr = self._should_trigger_abbreviation(buffer)
File "/usr/lib/python2.7/dist-packages/autokey/model.py", line 134, in _should_trigger_abbreviation
if self.__checkInput(buffer, abbr):
File "/usr/lib/python2.7/dist-packages/autokey/model.py", line 147, in __checkInput
stringBefore, typedAbbr, stringAfter = self._partition_input(buffer, abbr)
File "/usr/lib/python2.7/dist-packages/autokey/model.py", line 194, in _partition_input
stringBefore, typedAbbr, stringAfter = currentString.rpartition(abbr)
ValueError: empty separator
自動キーでテキストベースのキューを再度認識するにはどうすればよいですか?
この「空のセパレータ」エラーを修正するには、~/.config/autokey/data
サブフォルダに隠しファイルを掘り下げる必要がありました。
ヒント1:ファイル名は.
ヒント2:最も可能性の高い原因である最新のフレーズから始めます。
テキストファイル内には、次のようなセクションがあります。
"abbreviations": [
",a",
",alpha"
],
上記の,a
と,alpha
は、対応するフレーズの挿入をトリガーするキーシーケンスに対応しています。
ただし、問題のある「フレーズ」ルールでは、次のように「省略形」セクションに余分な空白のエントリがあります。
"abbreviations": [
",a",
",alpha",
""
],
引用符で囲まれた空白の""
とそれに続くカンマ,
を削除します
ファイルを保存してAutokeyを再起動すると、機能するはずです。