指数替换(^ 2->²)


9

在我刚安装的Debian 7系统上的按键我每次类型^,然后2,我得到²(ASCII字符“方”)。用2替换为3到8也是一样。

^2像Mac OSX一样,我如何才能停用它来获取呢?


1
输入所有文本(终端,Web浏览器,文本编辑器等)时,会发生这种情况吗?
卡莫尼卡

我有同样的问题(因此赏金很高),并且在所有文本编辑中都会发生。如果我在系统偏好设置中选择带有“死键”的键盘布局,问题就消失了,但是我再也无法排版重音。
克劳斯2013年

Answers:


3

也许是组合键设置?您是否正在使用Gnome?

尝试检查此处列出的文件;/usr/share/X11/locale/compose.dir/usr/share/X11/locale/en_US.UTF-8/Compose(后者可能会根据第一个而改变;有关更多详细信息,请参见链接)


3

您可以尝试使用xmodmap它,一些有用的信息在ArchWiki xmodmap页面上。基本上,这是一个用于在X中管理键盘映射的实用程序。对于您的特定问题,您可以执行以下操作

xmodmap -pke >mycustommodmap

首先获取当前设置。在我的系统上,“错误”按键导致了名为的错误dead_circumflex,可以在该文件中找到该错误。将其更改为asciicircum,并使用加载新地图后

xmodmap mycustummodmap

现在,密钥立即产生一个^

为了确保登录时自动完成此操作,可以.Xmodmap在主目录中将文件名设置为。如果它没有自动加载,或者您不想用这种方式命名文件,则应该能够指示桌面在启动时运行指定的命令。

编辑

实际上,尽管首先获取当前地图是一个不错的起点,但您并不需要所有这些线.Xmodmap,而只需要更改即可。例如,在my中.Xmodmap,要更改^(circumflex)和~(tilde)的行为,其内容仅为

keycode  34 = asciicircum dead_diaeresis dead_circumflex dead_diaeresis bracketleft dead_abovering bracketleft
keycode  61 = equal plus equal plus asciitilde dead_abovedot dead_tilde

2

尝试欺骗计算机。我之前曾多次遇到过这个问题,可以通过键入'^'并按空格,然后在^之后添加另一个空格,然后添加2,然后擦除它们之间的空间并在'^ 2'之后单击来欺骗它,这对我来说很有效之前但有时是同意的。试一试。


当然,这个工作,但需要3个按键,而不是2
克劳斯

如果这不是可行的解决方案,您还可以查看源代码并在键入此代码时运行实时调试器,并查看键入此命令时实际运行的程序。如果您知道linux中足够的代码。
Crutchcorn

2
我认为这是一个可行的解决方法,当您需要在某人的计算机上使用它并且不想要摆弄其设置时。但这不是OP的好解决方案。
Hennes 2013年

好吧,这自然不是一个永久性的解决方案。但是,这是我必须给出的最可行的答案。:(
Crutchcorn

0

我想这是GTK输入问题,请尝试使用某些GTK应用程序使用其他输入法:

$ GTK_IM_MODILE=xim gedit

如果它仅GTK_IM_MODILE通过添加export GTK_IM_MODILE=xim到您的变量~/.profile或您喜欢的其他方法来帮助导出变量。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.