AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / unix / 问题

问题[compose-key](unix)

Martin Hope
l0b0
Asked: 2023-10-06 10:52:28 +0800 CST

如何终止撰写按键序列?

  • 5

我尝试将此撰写键序列添加到我的~/.XCompose:

<Multi_key> <L> <L> : "Λ" U039B # GREEK CAPITAL LETTER LAMDA

然后我尝试在几个地方使用它,但序列永远不会终止。也就是说,提示表明我尚未输入完整的撰写键序列,即使它已经显示:

提示和未完成的撰写键序列

以上来自 GNOME 控制台,在键入撰写键时,它会在当前字符下显示一个下划线。

看来潜在的问题是上面的组合键序列是另一个组合键的前缀[X11 library root]/share/X11/locale/en_US.UTF-8/Compose:

<Multi_key> <L> <L> <A> <P>     : "🖖"  U1F596 # RAISED HAND WITH PART BETWEEN MIDDLE AND RING FINGERS

如果它是另一个撰写键的前缀,如何告诉应用程序结束该撰写键?这是否可能,或者所有组合键都必须避免成为所有其他键的前缀?再次按撰写键(Caps Lock在我的情况下)没有帮助,并且按下Esc只是取消撰写键。

compose-key
  • 2 个回答
  • 54 Views
Martin Hope
Neppomuk
Asked: 2022-01-22 15:39:35 +0800 CST

xkb:为什么在系统更新(OpenSuSE 15.2 → 15.3)后撰写键设置为 NoSymbol?

  • 0

将我的 OpenSuSE Leap 从 15.2 升级到 15.3 后,我发现 Compose 键(键码:135)不再起作用。实际上,xev不再将其识别为Multi_key,而是NoSymbol:

KeyPress event, serial 40, synthetic NO, window 0x7800001,
    root 0x561, subw 0x0, time 8470151, (923,367), root:(923,396),
    state 0x10, keycode 135 (keysym 0x0, NoSymbol), same_screen YES,
    XLookupString gives 0 bytes: 
    XmbLookupString gives 0 bytes: 
    XFilterEvent returns: False

注意:该键实际上标有Compose,因为它是 Sun Type 7 键盘的一部分。在$XKB/keycodes/evdev文件中,我有这两行代码(其中第二行已被我禁用,因为它适用于带有菜单键的常规 PC 键盘):

<COMP> = 135;
// alias <MENU> = <COMP>;

该$XKB/symbols/compose文件已使用以下块升级:

partial modifier_keys
xkb_symbols "comp" {
    key <COMP>  { type[Group1]="TWO_LEVEL", [ Multi_key, Multi_key ] };
};

当前setxkbmap配置如下所示:

╭─jacek@epica ~  
╰─➤  setxkbmap -print -verbose 10                                         127 ↵
Setting verbose level to 10
locale is C
Trying to load rules file ./rules/evdev...
Trying to load rules file /usr/share/X11/xkb/rules/evdev...
Success.
Applied rules from evdev:
rules:      evdev
model:      pc105
layout:     de
variant:    pl
options:    compose:comp,terminate:ctrl_alt_bksp,altwin:meta_win,lv3:ralt_switch
Trying to build keymap using the following components:
keycodes:   evdev+aliases(qwertz)
types:      complete
compat:     complete
symbols:    pc+de(pl)+inet(evdev)+terminate(ctrl_alt_bksp)+altwin(meta_win)+level3(ralt_switch)+terminate(ctrl_alt_bksp)
geometry:   pc(pc105)
xkb_keymap {
        xkb_keycodes  { include "evdev+aliases(qwertz)" };
        xkb_types     { include "complete"      };
        xkb_compat    { include "complete"      };
        xkb_symbols   { include "pc+de(pl)+inet(evdev)+terminate(ctrl_alt_bksp)+altwin(meta_win)+level3(ralt_switch)+terminate(ctrl_alt_bksp)"  };
        xkb_geometry  { include "pc(pc105)"     };
};

我可以compose:comp很清楚地看到这个选项。所以:这里有什么问题?

xkb compose-key
  • 1 个回答
  • 61 Views
Martin Hope
pgkt
Asked: 2018-10-11 02:50:09 +0800 CST

如何在 Fedora 28 上禁用撰写键?

  • 1

我在 Fedora 28 gnome 桌面界面上。前段时间我错误地将右侧的 Ctrl 键设置为 compose 键。

因此,每次重新启动后,右 Ctrl 键 ( rctrl) 都处于非活动状态 - 例如,在 CLI 中工作时 rctrl+A 不会将光标带到提示行的开头,或者 rctrl+W 不会关闭不必要的MozFirefox 中的选项卡。setxkbmap -query生产

rules:      evdev
model:      pc105
layout:     it,it
variant:    ,
options:    compose:rctrl

每次我必须手动setxkbmap -option取消设置或禁用它,但重新启动后它再次恢复为compose:rctrl.

是否有我可以编辑的文件以使更改永久化?


文件 /etc/X11/xorg.conf.d/00-keyboard.conf 的内容

# Written by systemd-localed(8), read by systemd-localed and Xorg. It's
# probably wise not to edit this file manually. Use localectl(1) to
# instruct systemd-localed to update it.
Section "InputClass"
        Identifier "system-keyboard"
        MatchIsKeyboard "on"
        Option "XkbLayout" "it"
        Option "XkbModel" "pc105"
EndSection

文件 /etc/vconsole.conf 的内容

KEYMAP=it
FONT=eurlatgr
fedora compose-key
  • 2 个回答
  • 869 Views
Martin Hope
Socowi
Asked: 2018-01-07 06:15:24 +0800 CST

验证 ~/.XCompose

  • 6

我正在努力在~/.XCompose. 随着我添加越来越多的序列,有时我会打错字或对不同的符号使用相同的序列。

例子:

错字/不存在的代码

<Multi_key> <non-existent-keysym> : other-non-existent-keysym

完全碰撞

<Multi_key> <a> <b> : x      # overrule by 2nd rule
<Multi_key> <a> <b> : y

前缀冲突

<Multi_key> <a> <b> <c> : y 
<Multi_key> <a> <b> : x      # overruled by 1st rule

问题

是否有验证我的~/.XCompose文件的命令。最低要求是二进制答案:要么 »您的 XCompose 没有错误« 或 »您的 XCompose 包含错误«。如果出现错误,欢迎提供有用的错误消息,例如 »规则序列前缀冲突 «。

我试过的

我创建了~/.XCompose包含上面的所有错误并打开了一个文本编辑器。文本编辑器没有显示错误(在控制台上)。正确且不被否决的序列有效,所有其他序列都被忽略。

我读了man 5 XCompose。在文档本身中,我发现没有任何帮助。我查看了末尾的参考资料man 5 XCompose。看起来很有希望(从谷歌搜索的manpagemkcomposecache(1)判断),但在我的系统上似乎缺少(Linux Mint 18.3)。既没有也找不到任何东西。man -k mkcomposecacheapt search mkcomposecache

编辑:正如@quixotic 建议的那样,我mkcomposecache从源代码编译并运行它,但它的退出状态是1,无论我选择什么撰写文件(有或没有错误)。没有错误信息。不生成缓存。我如何调用程序的示例:

$ mkcomposecache en_US.UTF-8 /usr/share/X11/locale/en_US.UTF-8/Compose /tmp/
* XOpenDisplay: Success
$ echo $?
1

该文件/usr/share/X11/locale/en_US.UTF-8/Compose是 Ubuntu 的原始撰写文件,应该没有错误。我想它没有打包在 Ubuntu 和 Arch Linux 存储库中是有原因的。

我怀疑这mkcomposecache是我需要的,即使它会起作用。

input-method compose-key
  • 2 个回答
  • 794 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    模块 i915 可能缺少固件 /lib/firmware/i915/*

    • 3 个回答
  • Marko Smith

    无法获取 jessie backports 存储库

    • 4 个回答
  • Marko Smith

    如何将 GPG 私钥和公钥导出到文件

    • 4 个回答
  • Marko Smith

    我们如何运行存储在变量中的命令?

    • 5 个回答
  • Marko Smith

    如何配置 systemd-resolved 和 systemd-networkd 以使用本地 DNS 服务器来解析本地域和远程 DNS 服务器来解析远程域?

    • 3 个回答
  • Marko Smith

    dist-upgrade 后 Kali Linux 中的 apt-get update 错误 [重复]

    • 2 个回答
  • Marko Smith

    如何从 systemctl 服务日志中查看最新的 x 行

    • 5 个回答
  • Marko Smith

    Nano - 跳转到文件末尾

    • 8 个回答
  • Marko Smith

    grub 错误:你需要先加载内核

    • 4 个回答
  • Marko Smith

    如何下载软件包而不是使用 apt-get 命令安装它?

    • 7 个回答
  • Martin Hope
    user12345 无法获取 jessie backports 存储库 2019-03-27 04:39:28 +0800 CST
  • Martin Hope
    Carl 为什么大多数 systemd 示例都包含 WantedBy=multi-user.target? 2019-03-15 11:49:25 +0800 CST
  • Martin Hope
    rocky 如何将 GPG 私钥和公钥导出到文件 2018-11-16 05:36:15 +0800 CST
  • Martin Hope
    Evan Carroll systemctl 状态显示:“状态:降级” 2018-06-03 18:48:17 +0800 CST
  • Martin Hope
    Tim 我们如何运行存储在变量中的命令? 2018-05-21 04:46:29 +0800 CST
  • Martin Hope
    Ankur S 为什么 /dev/null 是一个文件?为什么它的功能不作为一个简单的程序来实现? 2018-04-17 07:28:04 +0800 CST
  • Martin Hope
    user3191334 如何从 systemctl 服务日志中查看最新的 x 行 2018-02-07 00:14:16 +0800 CST
  • Martin Hope
    Marko Pacak Nano - 跳转到文件末尾 2018-02-01 01:53:03 +0800 CST
  • Martin Hope
    Kidburla 为什么真假这么大? 2018-01-26 12:14:47 +0800 CST
  • Martin Hope
    Christos Baziotis 在一个巨大的(70GB)、一行、文本文件中替换字符串 2017-12-30 06:58:33 +0800 CST

热门标签

linux bash debian shell-script text-processing ubuntu centos shell awk ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve