19

Я привык держать левую клавишу Alt и вводить символ ASCII всякий раз, когда я использую неизвестную конфигурацию клавиатуры и хочу ввести специальный символ.

Например, Alt + 0 + 9 + 2 создает обратную косую черту (\).

Это на Windows. Есть ли способ сделать это в Ubuntu?

Примечание: я также хочу иметь возможность использовать это в режиме консоли. Это означает, что я не хочу решения с участием программного обеспечения с графическим интерфейсом.

5 ответов5

25

Если вы используете Gnome (как это делает Ubuntu), вы можете сделать это, удерживая клавиши Ctrl и Shift и напечатав u а затем шестнадцатеричное значение символа.

Чтобы создать обратную косую черту \ , вы должны удерживать Ctrl + Shift и нажимать U , 5 и C.

В Windows вы вводите десятичное значение, в то время как в Linux вы вводите шестнадцатеричное значение (которое обычно короче, если вы вводите большее число). U обозначает Unicode.

Довольно полную таблицу шестнадцатеричных значений можно найти здесь. Внимание, загрузка страницы может занять много времени!

6

Другой вариант (но он не вставляет символ с помощью кода ASCII/Unicode) - это активировать ComposeKey (как, например, правый Alt в моем случае), чтобы вы могли затем напечатать такие вещи, как:

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

и т. д. Если вы хотите ввести часто используемые латинские буквы (например, на испанском, французском и т. д.), это может быть быстрее, чем изучение кодовых точек Unicode. Все дело в выборе!

5

Драйвер консоли Linux не имеет возможности для ввода символов таким образом ... но это на самом деле не нужно, так как оболочки могут справиться с этим самостоятельно.

$ echo $'\x5c'
\
1

Из UTF-8 и FAQ по Unicode для Unix/Linux Маркуса Куна:

Расширьте свое отображение клавиатуры, используя xmodmap. Это особенно удобно, если на вашей клавиатуре есть клавиша AltGr , предназначенная именно для этой цели (на некоторых клавиатурах США вместо AltGr вместо правой клавиши AltGr просто есть клавиша Alt , в других, к сожалению, эта клавиша совершенно отсутствует, и в этом случае другой клавише должна быть назначена клавиша AltGr. Функция 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

Не совсем то, что спрашивает ОП, но, может быть, этого достаточно для того, кто читает это.

В зависимости от выбранной раскладки клавиатуры вы уже можете набирать некоторые символы Юникода и ASCII; как в macOS Нажмите на селектор языка рядом со значком в трее (если он у вас есть), затем Show Keyboard Layout и посмотрите на альтернативные символы отдельных клавиш.

Например, вы можете ввести ... (многоточие) с правым ALT +. и ÷ (деление) с правым ALT + SHIFT +.,

Более того, эти нажатия клавиш работают даже в Sublime, который оказался более упорным по отношению к CTRL + SHIFT + U.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .