12

Среда:
Я использую Ubuntu 11.10 с wmii 3.9 в качестве графического интерфейса и uxterm в качестве терминала с bash в качестве оболочки. Аппаратное обеспечение - Lenovo ThinkPad W500 с раскладкой клавиатуры Swissgerman (поэтому мне нужно умляуться). Я использую ibus для японского ввода.

Symthoms:
Когда я набираю ключи / символы типа ~ , ^ в терминале, ничего не происходит. Если я ö « ö » (arg: 6) , появляется « ä ничего не происходит, а « ü иногда появляется команда из истории.
Это одинаковое поведение во всех терминалах, которые я тестировал до сих пор (gnome-терминал, xfce4-терминал, xterm). Он работает, как нужно в других приложениях X, таких как Chromium-браузер, Skype или текстовые редакторы.

Дополнительная информация:

> locale
LANG=de_CH.UTF-8
LANGUAGE=en_US:en
LC_CTYPE=en_US.UTF-8
LC_NUMERIC="de_CH.UTF-8"
LC_TIME="de_CH.UTF-8"
LC_COLLATE=en_US.UTF-8
LC_MONETARY="de_CH.UTF-8"
LC_MESSAGES=en_US.UTF-8
LC_PAPER="de_CH.UTF-8"
LC_NAME="de_CH.UTF-8"
LC_ADDRESS="de_CH.UTF-8"
LC_TELEPHONE="de_CH.UTF-8"
LC_MEASUREMENT="de_CH.UTF-8"
LC_IDENTIFICATION="de_CH.UTF-8"
LC_ALL=

> setxkbmap -print
xkb_keymap {
        xkb_keycodes  { include "evdev+aliases(qwerty)" };
        xkb_types     { include "complete"      };
        xkb_compat    { include "complete"      };
        xkb_symbols   { include "pc+ch+inet(evdev)+terminate(ctrl_alt_bksp)"    };
        xkb_geometry  { include "pc(pc105)"     };
};

3 ответа3

17

У меня была похожая проблема при подключении через ssh к Mac OS X с помощью эмулятора терминала. Хотя я установил для LANG значение de_DE.UTF-8 я не смог набрать символы с умляутами.

Исправление, которое я нашел, состояло в том, чтобы создать / отредактировать ~/.inputrc (или отредактировать следующие строки в /etc/inputrc):

set input-meta on
set output-meta on
set convert-meta off

Теперь я могу печатать умлауты. Я считаю, что это относится к xterms в целом.

4

Установите правильные локали с помощью

sudo dpkg-reconfigure locales

Там вы бы выбрали de_DE.UTF-8 качестве вашей настройки. Это решает все проблемы;)

Информация: изменение значения для set convert-meta off в /etc/inputrc не полностью работает:
Это тоже исправило этот вид, но есть еще кое-что странное: если я ö я получаю ö, но перед ö появляется скрытый символ: я могу удалить два символа Backspace, хотя я набрал только один ö

-1

В дополнение к упомянутым ответам может оказаться, что ваши локали не скомпилированы. Исходные файлы локали находятся в /usr /share, а скомпилированные файлы локали в /usr /lib. Они в /usr /lib могут быть повреждены или не скомпилированы, чтобы исправить то, что вы можете использовать утилиту localedef для компиляции файлов. Или в системах на основе Debian dpkg -configure.

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