如何在终端中将ctrl
+ c
(中断)设置为super
+ ?c
- 任何其他用于发送中断的组合键都是不可接受的。
- 在终端上下文之外修改
ctrl
&的行为(例如使用 gnome-tweaks 来翻转它们)是不可接受的。必须保留为并且必须保留为。super
ctrl
ctrl
super
super
答案1
首先,您必须确保克服@johnandmegh 评论中提到的障碍。以某种方式配置您的窗口环境,或选择不同的快捷键。
如果您决定使用Ctrl
+C
进行复制并使用 ++Ctrl
进行中断,即交换这两个键的原始行为,您只需在 GNOME 终端的首选项中将+设置为复制的热键即可。Shift
C
Ctrl
C
如果你想要一些不同的东西,你可能需要修改终端的(事实上静脉血栓栓塞症's) 源代码。这假设您具有 C(实际上是 C++)编程语言的一些基本知识,以及软件或软件包安装的知识。
您可能需要编辑keymap.cc
,但更有可能的Terminal::widget_key_press()
是vte.cc
。在我看来,相关部分是评论所说的Replace characters which have "control" counterparts with those counterparts.
终端需要发出一个字节的控制字符,并且stty intr
必须配置为该值。如果您不想触碰stty
(并处理那里的其他可能冲突),请使用字节 0x03。
编译 VTE 并尝试使用./src/app/vte-2.91
。如果不起作用,请将 放在printf()
源代码中以了解发生了什么。如果有效,您可能应该遵循 Ubuntu 的构建过程来编译与 Ubuntu 附带的相同版本,也应用 Ubuntu 的补丁,相同的编译选项等等。无论如何,您应该以某种方式用此版本替换系统范围的 VTE 安装,然后退出全部 gnome-terminal
windows。如果您破坏了某些东西,请启动非基于 VTE 的终端并libvte-2.91-0
从那里重新安装发行版和相关软件包。