Точка на цифровой клавиатуре

Материал из ALT Linux Wiki

Точка на цифровой клавиатуре (в Иксах)

Согласно российским стандартам, десятичным разделителем является символ "," (запятая). Поэтому, в русской раскладке на цифровой клавиатуре нажатие клавиши Del. (традиционно расположенная между 0 и Enter) приводит к печати запятой. Это просто нереально раздражает многих пользователей, привыкших набирать, например, IP-адреса. Так же раздражение испытывают некоторые бухгалтера.


Далее предлагается несколько вариантов "лечения" данной проблемы:

Правка файла раскладки

"Традиционный" способ, который можно быстро найти в Гугле. От рута открываем файл /usr/share/X11/xkb/symbols/ru, находим в нем строку include "kpdl(comma)" и заменяем comma на dot. После чего перезапускаем Иксы.

Недостатки метода: после обновления системы (если обновлялись компоненты Иксов) операцию приходится повторять.

Создание своего файла раскладки

Делаем копию выше указанного файла с новым именем, например ru_kpdldot. Редактируем этот файл так же, как и в предыдущем способе, но правим еще одну строку: include "ru(common)" заменяем на include ru_kpdldot(common) (т.е. вписываем туда вместо ru имя нового файла).

После этого идем в настройки клавиатуры (в Альтераторе, или в том файле, где у вас эти настройки прописаны), и заменяем там ru на ru_kpdldot). Теперь у вас есть новая раскладка с нужным поведением.

К недостаткам стоит отнести относительную сложность операции, и засорение системных каталогов самодельными файлами.

Установка пользовательских настроек Xkbmap

Совет, подсказанный Сергеем Власовым в рассылке community:

в файл ~/.Xkbmap нужно вписать строку

setxkbmap -symbols "+kpdl(dotoss)+kpdl(dotoss):2"

Метод всем хорош, кроме того, что работает только для одного пользователя. То есть настройку надо провести для каждого пользователя системы отдельно. Ну и потом очень легко забыть про изменения в этом файле, и потратить много времени, ломая себе голову, почему вроде бы все "как всегда", а поведение клавиатуры нестандартное.

Отдельное замечание про OpenOffice.оrg

OOo отличается слегка своеобразным поведением: по умолчанию он всегда ставит запятую в русской раскладке, игнорируя настройки Xkb. Чтобы отучить его от этой привычки, можно воспользоваться еще одним советом Сергея Власова:

Сервис ▷ Параметры ▷ Настройки языка ▷ Языки ▷ Разделитель целой и дробной части - снять галку Из настроек ОС, тогда будет вводиться точка или запятая в зависимости от настроек Xkb (точнее, OpenOffice не будет обрабатывать KP_Decimal специфическим образом).