在Ubuntu中产生特定的ASCII字符


19

left Alt每当我使用未知的键盘配置并想输入特殊字符时,我都会按住并输入ASCII字符。

例如,Alt+ 0+ 9+ 2使得反斜杠(\)。

在Windows上。在Ubuntu中有办法吗?

注意:我也希望能够在控制台模式下使用它。这意味着我不希望使用带有GUI的软件的解决方案。


有一个关于它是否甚至有可能做到这一点上AskUbuntu Windows的方式,在一个一般性的问题askubuntu.com/questions/588090
JdeBP

另请参阅Unix和Linux上的unix.stackexchange.com/questions/254477
JdeBP

Answers:


26

如果您使用的是Gnome(Ubuntu有此功能),则可以同时按住CtrlShift键,然后键入字符u十六进制值来实现。

为了生产反斜杠\,你将举行Ctrl+ Shift并按U5C

在Windows上,您键入十进制值,而在Linux上,您键入十六进制值(如果输入较大的数字,则通常较短)。该ü代表的Unicode。

可以在此处找到一个非常完整的十六进制值表。警告,页面加载可能需要很长时间!


4
在“十六进制值”实际上是Unicode的码点,不像“ALT代码”,这是ASCII
grawity

哇。正是我需要的!像魅力一样随处可见。谢谢。
菲利普·卡里尔

1
现在,我只需要学习hexa中的所有代码即可。...::
Philippe Carriere 2010年

有人知道,如何在Sublime Text中获得这项工作吗?
醉拳大师

6

另一个选择(但它不会通过ASCII / Unicode代码插入字符)是激活ComposeKey(就Alt我而言),这样您就可以键入以下内容:

  • Alt+ =+ e→€
  • Alt+ '+ e→é
  • Alt+ ^+ e→ê

等等。如果要输入常用的拉丁字母(如西班牙语,法语等),这可能比必须学习Unicode代码点要快。这都是关于选择!


您是否不需要非美国键盘布局?
Cristian Ciupitu 2014年

2
@CristianCiupitu:不,您需要启用Compose键。
伊格纳西奥·巴斯克斯

@ IgnacioVazquez-Abrams,您是对的。看来我的XFCE 4.10桌面环境根本没有设置Compose键,但是在将其设置为正确的Alt键之后,答案就起作用了(因此我是+1)。
Cristian Ciupitu 2014年

5

Linux的控制台驱动程序不具备以这种方式输入字符的功能……但是由于shell可以自行处理,因此实际上并不需要它。

$ echo $'\x5c'
\

1
那是一个非常好的方法...。我什至在echo的手册页中也找不到它,但是它有效!有没有办法提供十进制代码而不是十六进制代码?(我从心底学会了十进制代码)
Philippe Carriere 2010年

当我在vi或nano中时,有没有办法使用此功能?
Philippe Carriere

2
不可以,只能以十六进制(\xNN)或八进制(\NNN)输入。printf如果要查看值的十六进制代码,可以使用。在vim中,您可以键入Ctrl-V U,然后键入4位Unicode代码点。另外,请在QUOTING部分。
伊格纳西奥·巴斯克斯

2
@Silence:(1)因为它是shell的功能(通常是bash),而不是的功能echo
grawity 2010年

@PhilippeCarriere在vi中,您可以通过:!像前面那样执行shell命令:!ls。您也可以使用将输出插入到当前缓冲区中:r !。我经常缺少波浪号字符,所以我使用:r !echo $'\x7e'。在这里更多一点。
有效时间

1

来自Markus Kuhn的Unix / LinuxUTF-8和Unicode常见问题解答

使用xmodmap扩展键盘映射。如果您的键盘具有AltGr恰好用于此目的的键,这将特别方便(某些美国键盘AltGr不仅具有正确的Alt键,而另一些不幸的是完全缺少该键,在这种情况下,必须为其他一些键分配Mode_switch函数) 。~/.Xmodmap用以下条目写文件

keycode 113 = Mode_switch Mode_switch
keysym d = d NoSymbol degree        NoSymbol
keysym m = m NoSymbol emdash        mu
keysym n = n NoSymbol endash        NoSymbol
keysym 2 = 2 quotedbl twosuperior   NoSymbol
keysym 3 = 3 sterling threesuperior NoSymbol
keysym 4 = 4 dollar   EuroSign      NoSymbol
keysym space = space  NoSymbol      nobreakspace NoSymbol
keysym minus = minus  underscore    U2212        NoSymbol
keycode 34 = bracketleft  braceleft  leftsinglequotemark  leftdoublequotemark
keycode 35 = bracketright braceright rightsinglequotemark rightdoublequotemark
keysym KP_Subtract = KP_Subtract NoSymbol U2212    NoSymbol
keysym KP_Multiply = KP_Multiply NoSymbol multiply NoSymbol
keysym KP_Divide   = KP_Divide   NoSymbol division NoSymboll

并将其xmodmap ~/.Xmodmap从X11启动脚本加载到X服务器中。然后,您会发现您可以AltGr轻松地从键盘上获得以下新字符:

  • AltGr+ d→°
  • AltGr+ [→'

0

并非OP到底在问什么,但对于阅读此书的人来说也许就足够了。

根据您选择的键盘布局,您可能已经可以键入一些 unicode和ASCII字符了;就像在macOS中一样。单击任务栏图标(如果有)旁边的语言选择器,然后单击,然后Show Keyboard Layout查看各个键的替代字符。

例如,您可以输入…(省略号)和right ALT + .,以及÷(除数)的right ALT + SHIFT + .

而且,这些击键甚至可以在Sublime中使用,事实证明,Sublime更加顽固CTRL + SHIFT + U

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.