使用 ibus 切换键盘布局

使用 ibus 切换键盘布局

xim由于各种图形问题,我不得不离开。

我正在尝试设置,ibus但无法让它在键盘上循环。

其他信息:

  • Debian 测试
  • 很棒的WM

这是我在使用之前的设置ibus。我将键盘上的一个特殊键映射到ISO_Next_Group.通过下面的设置,我可以使用我的特殊键循环浏览三个键盘布局,并使用 进行撰写PrtSc

~/.sessionrc

setxkbmap -layout 'us,gr,il' -variant ',polytonic,biblical' -option ctrl:nocaps,compose:prsc
xmodmap ~/.Xmodmap
export GTK_IM_MODULE=xim

〜/.Xmodmap

keycode 147 = ISO_Next_Group NoSymbol

xev当我按下按键时给出这个(这两个事件都发生在 keydown 上,而 keyup 上没有任何事件):

KeyPress event, serial 36, synthetic NO, window 0x3200001,
    root 0x79b, subw 0x0, time 9147156, (-108,258), root:(763,709),
    state 0x0, keycode 147 (keysym 0xfe08, ISO_Next_Group), same_screen YES,
    XLookupString gives 0 bytes: 
    XmbLookupString gives 0 bytes: 
    XFilterEvent returns: False

KeyRelease event, serial 36, synthetic NO, window 0x3200001,
    root 0x79b, subw 0x0, time 9147156, (-108,258), root:(763,709),
    state 0x0, keycode 147 (keysym 0xfe08, ISO_Next_Group), same_screen YES,
    XLookupString gives 0 bytes: 
    XFilterEvent returns: False

对于ibus, my~/.Xmodmap是相同的,~/.xsessionrc现在包含:

setxkbmap -layout 'us,gr,il' -variant ',polytonic,biblical' -option ctrl:nocaps,compose:prsc
xmodmap ~/.Xmodmap
export GTK_IM_MODULE=ibus
export QT_IM_MODULE=ibus
export XMODIFIERS=@im=ibus
ibus-daemon -rx &

在 中ibus-setup,列出了所有三个键盘布局,更改布局的键是ISO_Next_group,但是当我按下此键时,不是循环浏览所有三个布局,而是在最近选择的(通过鼠标)其他布局ibus之间切换。us

加载后,我注意到当我按下按键时ibus-daemon,输出也会发生变化:xevISO_Next_Group

FocusOut event, serial 33, synthetic NO, window 0x4e00001,
    mode NotifyGrab, detail NotifyAncestor

FocusOut event, serial 33, synthetic NO, window 0x4e00001,
    mode NotifyUngrab, detail NotifyPointer

FocusIn event, serial 33, synthetic NO, window 0x4e00001,
    mode NotifyUngrab, detail NotifyAncestor

KeymapNotify event, serial 33, synthetic NO, window 0x0,
    keys:  2   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   
           0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0

如何循环ibus切换所有三种键盘布局?


更新

我切换了热键:

  • <CTRL> + ISO_Next_Group→ 开关布局
  • ISO_Next_Group→ 输入表情符号

这似乎大部分有效。

我必须添加GLFW_IM_MODULE=ibus支持kitty

相关内容