Точка на цифровой клавиатуре: различия между версиями

Материал из ALT Linux Wiki
Строка 6: Строка 6:
Далее предлагается несколько вариантов "лечения" данной проблемы:
Далее предлагается несколько вариантов "лечения" данной проблемы:


=== 1. Правка файла раскладки ===
=== Правка файла раскладки ===
"Традиционный" способ, который можно быстро найти в Гугле. [[Releases/40/su|От рута]] открываем файл {{path|/usr/share/X11/xkb/symbols/ru}}, находим в нем строку '''include "kpdl(comma)"''' и заменяем '''comma''' на '''dot'''. После чего перезапускаем Иксы.
"Традиционный" способ, который можно быстро найти в Гугле. [[Releases/40/su|От рута]] открываем файл {{path|/usr/share/X11/xkb/symbols/ru}}, находим в нем строку '''include "kpdl(comma)"''' и заменяем '''comma''' на '''dot'''. После чего перезапускаем Иксы.


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


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


Делаем копию выше указанного файла с новым именем, например {{path|ru_kpdldot}}. Редактируем этот файл так же, как и в предыдущем способе, но правим еще одну строку: '''include "ru(common)"''' заменяем на '''include ru_kpdldot(common)''' (т.е. вписываем туда вместо '''ru''' имя нового файла).
Делаем копию выше указанного файла с новым именем, например {{path|ru_kpdldot}}. Редактируем этот файл так же, как и в предыдущем способе, но правим еще одну строку: '''include "ru(common)"''' заменяем на '''include ru_kpdldot(common)''' (т.е. вписываем туда вместо '''ru''' имя нового файла).
Строка 19: Строка 19:
К недостаткам стоит отнести относительную сложность операции, и засорение системных каталогов самодельными файлами.
К недостаткам стоит отнести относительную сложность операции, и засорение системных каталогов самодельными файлами.


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


[http://lists.altlinux.org/pipermail/community/2010-February/661634.html Совет], подсказанный Сергеем Власовым в [http://lists.altlinux.ru рассылке] community:  
[http://lists.altlinux.org/pipermail/community/2010-February/661634.html Совет], подсказанный Сергеем Власовым в [http://lists.altlinux.ru рассылке] community:  
Строка 26: Строка 26:


''setxkbmap -symbols "+kpdl(dotoss)+kpdl(dotoss):2"''
''setxkbmap -symbols "+kpdl(dotoss)+kpdl(dotoss):2"''
Метод всем хорош (надеюсь, он работает), кроме того, что потом очень легко забыть про изменения в этом файле, и потратить много времени, ломая себе голову, почему вроде бы все "как всегда", а поведение клавиатуры нестандартное.
=== Отдельное замечание про OpenOffice.оrg ===
OOo отличается слегка своеобразным поведением: по умолчанию он всегда ставит запятую в русской раскладке, игнорируя настройки Xkb. Чтобы отучить его от этой привычки, можно воспользоваться еще одним [http://lists.altlinux.org/pipermail/community/2010-February/661646.html советом] Сергея Власова:
{{nav|Сервис|Параметры|Настройки языка|Языки|Разделитель целой и дробной
части}} - снять галку {{menuitem|Из настроек ОС}}, тогда будет вводиться точка или
запятая в зависимости от настроек Xkb (точнее, OpenOffice не будет
обрабатывать '''KP_Decimal''' специфическим образом).





Версия от 21:04, 15 февраля 2010

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

Согласно российским стандартам, десятичным разделителем является символ "," (запятая). Поэтому, в русской раскладке на цифровой клавиатуре нажатие клавиши 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 специфическим образом).