问题描述
如何添加自定义撰写键序列?
例如,我想要Compose
,|
,>
来键入▸
符号。
我尝试将以下内容添加到~/.XCompose
:
# Import default rules from the system Compose file
include "%L"
# Custom definitions
<Multi_key> <bar> <greater> : "▸" U25B8 # Black right-pointing small triangle
但除了xterm之外,新序列不可用于任何地方。
Installing ibus-table-compose然后在IBus中启用Compose输入法并没有解决问题; IBus模仿了许多组合键序列,但不是我创建的键序列。
最佳解决思路
创建一个文件~/.XCompose
(在”home”文件夹中名为.XCompose
的文件),其中包含以下内容:
include "%L" # import the default Compose file for your locale
<Multi_key> <bar> <greater> : "▸"
有关此文件格式的详细信息,请参阅man 5 Compose
。
次佳解决思路
-
在主目录(
~/.XCompose
)中创建名为.XCompose
的文件,其中包含:# import the default Compose file for your locale include "%L" <Multi_key> <bar> <greater> : "▸"
有关此文件格式的详细信息,请参阅
man 5 Compose
。 -
将以下内容添加到
~/.profile
:export GTK_IM_MODULE="xim"
在Ubuntu 18.04(也许是其他人)上,您可能需要使用以下代码:
export GTK_IM_MODULE="gtk-im-context-simple"
-
注销然后重新开启。或重新启动X.或重新启动。
第三种解决思路
在Ubuntu 14.04上,我做了以下事情:
1)使用软件管理器安装uim
,其他软件包如uim-xim
,uim-gtk2
,uim-gtk3
和uim-qt
都是自动安装的。请参阅https://launchpad.net/ubuntu/+source/uim。
2)通过向~/.profile
添加下一行来定义环境变量,这样自定义组合键序列仅适用于当前用户:
# Restart the X-server after making alterations using:
# $ sudo restart lightdm
# It seems only GTK_IM_MODULE or QT_IM_MODULE needs to be defined.
export GTK_IM_MODULE="uim"
export QT_IM_MODULE="uim"
来自OP的~/.XCompose
文件应该在重新启动之后工作1)Ubuntu或2)只需通过在终端中运行以下命令的X-server:
$ sudo restart lightdm
注意:在更改~/.profile
文件后,似乎只需要重新启动,~/.XCompose
的更改将在下次启动应用程序(终端,Gedit等)时生效。
要检查环境变量是否设置正确,请在终端中输入以下命令:
$ printenv | grep IM_MODULE
非常感谢:
关于自定义撰写键序列:
关于自定义键盘映射:
用于模仿Window US International
键盘的示例.Xcompose
文件: