заметки на «полях» клавиатуры (про xkb)

Полезные советы и программы от пользователей нашего форума.

Модератор: Модераторы разделов

Mellon
Сообщения: 655
Статус: Powered by Gentoo
ОС: Gentoo

Re: заметки на «полях» клавиатуры

Сообщение Mellon »

:)

Что-то пропёрло меня с этой темы. Если очень обидитесь, то простите. :)

Проект "Spoon"

Роли.
Ложка - нецикличное переключение.
Вилка - цикличное переключение.
Ложковилки - "умные" переключатели.

Сцена.
Проектный бункер, оживленное обсуждение "нового" проекта.

Действие.

- Вот вам инструкция как сделать ложку.
- В инструкции ошибки и лицензии не хватает
- Гениально! Кушать ложкой здорово!
- Здорово, но как сделать еду?
- Посмотрите раздел такой-то, там упоминается как сделать еду для ложки.
- Если есть ложкой то всегда будет вот так?
- Причем здесь еда? Ложкой можно есть всё!
- А можно сделать ложку по другой инструкции?
- Можно, но есть ею трудновато будет.
- А можно использовать автоложковилку?
- Нет, ложковилка не эффективна, Она не для настоящих мужчин, она для домохозяек.
- Почему? Если она может запоминать тип еды в тарелках?
- Потому, что вилка - костыль. Вилка ущербна. Правильно пользоваться только ложкой. Откажитесь от вилки, и вам сразу станет удобней.
- Вот первое, а вот второе, это же удобно не заботиться о типе еды, не надо использовать ни ложку, ни вилку, ложковилка все запомнит вот так.
- Два блюда частный случай. Я конечно не психолог, но прочитайте книгу такого-то "Вид и форма блюда, новые направления её проектирования"
- Я бы рад использовать ложку, но столовка предлагает только гнутые вилки. И мне часто там приходится есть.
- Такого-то не читал, скукота. Но буду на себе пробовать использовать ложку. Да и покавилку не выпрямил. Придётся одной ложкой кушать.
- О каких костылях идёт речь? Новая ложковилка запоминает тип еды для каждой новой тарелки!
- Тут речь не о моделях ложковилки, а о принципах. Автору спасибо, понял, что не стоит отказываться от ложковилки.
- Каждый сам выбирает себе недуг. Но рекомендую попробовать таки ложку. Я не задумываюсь, о типе еды, я ем всё ложкой и меня прёт. От вилок, и особенно от ложковилок одни неприятности.
- Я не спорю, что ложка удобней вилки, Но отказаться от ложковилки не могу.
- А давайте я обьясню. Предположим, у вас в этой тарелке всегда жаренное мясо, Но вдруг, оказываться, чтом есть ещё и соус. И вот тут уже привычка играет против Вас; а это всегда сбивает с рабочего ритма. Привычка же к ложке без каких-либо искуственных запоминаний -- она _гарантированно_ работает _всегда_... Однажды привыкнув к ложке, всё остальное иначе как костыли уже не воспринимаешь, на уровне моторики. Что ещё раз доказывает её исключительную эффективность.
- Уговорили-уговорили. На досуге попробую. Благо ложковилка может работать и как только ложка.
- Да, очевидно это полезное сочинение. Но остаюсь до сих пор при своих убеждениях: ложковилка, три вида еды, при этом одна подается только иногда и в редких праздниках, два основных поедаются ложковилкой. Зачем же тогда умножение ссущностей? Субъективное удобство важнее концепций.
- Это дурная привычка, и не умножение а деление.
- Ложка не собирается, поправил эти ошибки...
- Чертежи исправлены. Вот так отливаешь, отливаешь, а чертежи не проверяешь...
- Бессмысленный спор. Ложка не исключает вилку, а дополняет, Ложковилка, тоже очень удобный девайс.
- А кто тут спорит? Речь только о ложке. Вилкой кушать гораздо медленней и трудней, надо быть внимательным. Ложкой же можно есть всё! Вот есть рецепты еды, которую вообще, даже без ложки можно.

To be continue...
Некоммерческий файлообмен не может сравниваться с кражей, так как кража лишает кого-то возможности использовать украденный объект. ©
--------------------
Переворачиватель пингвинов
Спасибо сказали:
Аватара пользователя
Juliette
Сообщения: 5058
Статус: ROSA Lab
ОС: Ubuntu LTS, Mandriva 2011

Re: заметки на «полях» клавиатуры

Сообщение Juliette »

:girl_haha:
Mellon, :hug:
Кстати, всю жизнь хочу посмотреть в глаза того урода, который навесил точку с запятой на одну клавишу. Бесконечные Ю вместо запятых -- кто на это не чертыхался?...
Спасибо сказали:
Аватара пользователя
sash-kan
Администратор
Сообщения: 13939
Статус: oel ngati kameie
ОС: GNU
Контактная информация:

Re: заметки на «полях» клавиатуры

Сообщение sash-kan »

Mellon, спасибо, посмешили!
сатирично. хоть и не в тему (:
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
Спасибо сказали:
Аватара пользователя
t.t
Бывший модератор
Сообщения: 7390
Статус: думающий о вечном
ОС: Debian, LMDE

Re: заметки на «полях» клавиатуры

Сообщение t.t »

sash-kan писал(а):
16.12.2007 13:59
если включение нужной раскладки повешено на удобное клавише-сочетание, временное переключение группы просто излишне. виньетка, так сказать.
А вот тут готов поспорить. Если мне при "скорострельном" вводе текста в русской или украинской раскладке понадобится (к примеру) знак >, то эффективнее нажать "rwin+shift+ю", чем "caps -> shift+. -> shift[ctrl]+caps".
¡иɯʎdʞ ин ʞɐʞ 'ɐнɔɐdʞǝdu qнεиж
Спасибо сказали:
Аватара пользователя
Attila
Сообщения: 125
Статус: Тролль-Лѣсовичокъ
ОС: Свободная aka ArchLinux

Re: заметки на «полях» клавиатуры

Сообщение Attila »

sash-kan писал(а):
22.09.2007 16:28
приветствуются любые пожелания/замечания/вопросы.

Полагаю, стоит добавить описание Compose key (Multi_key). Хотя в этом и нет ничего сложного, затруднительного или необычного, многие пользователи GNU/Linux и X Window System просто не знают о такой функциональности.
Спасибо сказали:
gabix
Сообщения: 352
ОС: openSUSE Leap 15.4

Re: заметки на «полях» клавиатуры

Сообщение gabix »

Присоединяюсь к Attila. Думаю, что неплохо бы в начале сделать некую краткую систематизированную вводную в плане разъяснения того, что в иксах есть ряд возможностей расширения функций клавиатуры:
а) дополнительные уровни Shift;
б) Compose;
в) временное включение доп. раскладок;
г) может, ещё что-то (я и сам многого не знаю и хотел бы узнать!).

А потом и раскладывать по полочкам.
Спасибо сказали:
Аватара пользователя
sash-kan
Администратор
Сообщения: 13939
Статус: oel ngati kameie
ОС: GNU
Контактная информация:

Re: заметки на «полях» клавиатуры

Сообщение sash-kan »

Attila писал(а):
22.01.2008 01:53
стоит добавить описание Compose key (Multi_key).
угу, стоит. вот только времени бы где-нибудь взять ):
gabix писал(а):
22.01.2008 15:10
вводную
не вписывается вводная в задуманный формат «просто коротких „разжеваных“ мини-инструкций». но — подумаю.

спасибо.
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
Спасибо сказали:
gabix
Сообщения: 352
ОС: openSUSE Leap 15.4

Re: заметки на «полях» клавиатуры

Сообщение gabix »

sash-kan писал(а):
22.01.2008 21:11
Attila писал(а):
22.01.2008 01:53
стоит добавить описание Compose key (Multi_key).



Может, сделать ссылку на какую-либо умную статью, типа: http://www.linuxhowtos.org/Tips%20and%20Tricks/compose.htm ?
Спасибо сказали:
Аватара пользователя
Attila
Сообщения: 125
Статус: Тролль-Лѣсовичокъ
ОС: Свободная aka ArchLinux

Re: заметки на «полях» клавиатуры

Сообщение Attila »

Написал очень небольшую и, по-видимому, нуждающуюся в значительной правке (особенно в том, что качается терминологии). Наверное, сойдёт в качестве «временной меры» по освещению Compose aka Multi_key.
Вложения
compose.pdf
(114.9 КБ) 583 скачивания
compose.tbz
(1.68 КБ) 232 скачивания
Спасибо сказали:
Аватара пользователя
michaelgeek
Сообщения: 83
ОС: ubuntu
Контактная информация:

Re: заметки на «полях» клавиатуры

Сообщение michaelgeek »

Так как всётаки сделать это нециклическое переключение?

У меня рус/англ/укр. Украинский использую редко, но использую.

Как сделать нециклическое переключение для трёх раскладок? Или лучше всё же воспользоваться compose?
Спасибо сказали:
Аватара пользователя
chitatel
Сообщения: 2063

Re: заметки на «полях» клавиатуры

Сообщение chitatel »

michaelgeek писал(а):
24.02.2008 19:48
Так как всётаки сделать это нециклическое переключение?

А разве в прикреплённых к первому сообщению файлах это не объясняется?
Спасибо сказали:
Аватара пользователя
drujebober
Сообщения: 179
ОС: Debian GNU/Linux lenny

Re: заметки на «полях» клавиатуры

Сообщение drujebober »

вот и я созрел на нецикличное переключение раскладки, а виной всему индикация чертового диодика(что то он перестал работать так как должен).
вот только одна проблемка не совсем по душе мне предложенные sash-kan варианты, а сам я, сколько не медитировал над его мануалом(даже Паскаля пытался читать), никак не смог осилить настроить так как мне было бы удобно.(блин и чувствую что все не так уж и сложно, но что то ни как…)
поэтому позволю себе непозволительную роскошь - попросить многоуважаемого sash-kan предложить мне готовое решение.
что я хочу и что уже есть:
а хочу я нечто следующее - первая(en) раскладка включается по CapsLock, вторая(ru) по CapsLock+LAlt
чего удалось добиться(хоть это не имеет непосредственного отношения к переключению раскладки но зато имеет отношение непосредственно к раскладке) - создал свою ru раскладку с третьим уровнем(на котором находятся украинские буквы и некоторые юникодовые символы типо ударения, кавычки, тире и т.д., причем создал это так что есть возможность выбрать данную раскладку в гномовских настройках.
вот вроде все. так что поможете - спасибо, нет - обижаться не стану ;)

зы: если кто знает как пофиксить индикацию диодов - буду признателен.
Спасибо сказали:
Аватара пользователя
drujebober
Сообщения: 179
ОС: Debian GNU/Linux lenny

Re: заметки на «полях» клавиатуры

Сообщение drujebober »

эм… всем спасибо, разобрался сам(ну если это можно назвать «разобрался», скажем так сделал тупо по аналогии)
вот, кому интересно:
Добавляем в symbols/group строки

Код: Выделить всё

// using the group(alt_caps_toggle_my) map, pressing:
//     Alt+Caps Lock toggles 2 group
//     Caps Lock toggles 1 group
partial modifier_keys
xkb_symbols "alt_caps_toggle_my" {
    key        <CAPS> {
       type="PC_ALT_LEVEL2",
       symbols[Group1]= [ ISO_First_Group, ISO_Last_Group ]
    };
};


в symbols.dir

Код: Выделить всё

--p----- -m------ group(alt_caps_toggle_my)


в rules/base

Код: Выделить всё

grp:alt_caps_toggle_my   =       +group(alt_caps_toggle_my)

в rules/base.lst

Код: Выделить всё

grp:alt_caps_toggle_my  CapsLock switch to first layout, Shift+Alt switch to last layout.


в rules/base.xml, в секцию <optionList>

Код: Выделить всё

<option>
        <configItem>
          <name>grp:alt_caps_toggle_my</name>
          <description>CapsLock switch to first layout, Shift+Alt switch to last layout.</description>
        </configItem>
</option>


и теперь новую раскладку можно выбрать в настройках гнома.
Спасибо сказали:
Аватара пользователя
Moradaraba
Сообщения: 23
ОС: Arch Linux®

Re: заметки на «полях» клавиатуры

Сообщение Moradaraba »

Здравствуйте.
Такое дело. Почему-то упорно отказывается работать временное переключение раскладки.
Вроде бы, всё сделал правильно, так, как и было написано:

Код: Выделить всё

partial modifier_keys xkb_symbols "ctl_temp" {
    replace key <RCTL> {
        actions[Group1]=[ ],
        actions[Group2]=[ SetGroup(group=-1) ]
    };
};


Поправил rules/xorg, xorg.conf. Но раскладка по правому контролу не переключается. Единственное, что происходит, так это гаснет индикатор раскладки (в режиме переключения её «с индикатором», «без индикатора» при нециклическом переключении не происходит ничего)...
В чём может быть причина такого поведения?

(Система Arch Linux, xorg-server 1.4.2)

С уважением, Аттила.
apt-get install anarchy
Спасибо сказали:
Аватара пользователя
Bluetooth
Сообщения: 4395
Статус: Блюзовый
ОС: Debian Squeeze amd64

Re: заметки на «полях» клавиатуры

Сообщение Bluetooth »

Большое спасибо за хорошее руководство, я, правда, так и не понял, как работает переключение CAPS-ом, но все равно сумел его включить.
А именно мне непонятно следующее:
в файле символов мы записаали поведение для CAPS:
partial modifier_keys xkb_symbols "caps_1" {
key <CAPS> {
[ ISO_First_Group, ISO_Last_Group ]
};
};
а в файле правил ссылку на это поведение:
mycaps1 = +mysym(caps_1)
но однако я не понимаю, как это все связано с shift...
почему кириллица работает по caps+shift?

также есть вопрос, исходя из рассуждений sash-kan, я сделал для себя вывод, что запоминание в отдельных окнах раскладки не есть гут, насколько я понимаю, это относится к тем программам, которые запоминают раскладку заранее.
А что касается переключения раскладок в пределах окна?
или лучше всего будет отключить и это, и поставить глобальное переключение, и перед каждым набором текста щелкать caps или shift-caps?
Спасибо сказали:
Аватара пользователя
Black
Сообщения: 1100
ОС: ArchLinux

Re: заметки на «полях» клавиатуры

Сообщение Black »

[ ISO_First_Group, ISO_Last_Group ]

Вот это - два символа, которые вводит клавиша. Первый - обычное нажатие, второй - с шифтом.
Компьютер служит для решения тех проблем, которых до изобретения компьютера не существовало
Спасибо сказали:
Аватара пользователя
Bluetooth
Сообщения: 4395
Статус: Блюзовый
ОС: Debian Squeeze amd64

Re: заметки на «полях» клавиатуры

Сообщение Bluetooth »

Black писал(а):
21.10.2008 19:29
[ ISO_First_Group, ISO_Last_Group ]

Вот это - два символа, которые вводит клавиша. Первый - обычное нажатие, второй - с шифтом.

начинает проясняться...а где написано, что это с шифтом, и как настроить, например, с контролом?
Спасибо сказали:
Аватара пользователя
Black
Сообщения: 1100
ОС: ArchLinux

Re: заметки на «полях» клавиатуры

Сообщение Black »

Написано в самом начале:
дело в том, что xkb позволяет определять несколько так называемых shift levels. с двумя из них мы сталкиваемся постоянно, нажимая: 1) клавишу↓↑ и 2) Shift↓ клавишу↓ ↑↑.

С контролом - см. примеры shift_ctrl_2 и alt_space, и файл /usr/share/X11/xkb/types/pc. В общих чертах где-то так:

Код: Выделить всё

partial modifier_keys xkb_symbols "ctrl_caps" {
    key <CAPS> {
        type = "PC_CONTROL_LEVEL2"
        [ ISO_First_Group, ISO_Last_Group ]
    };
};
Компьютер служит для решения тех проблем, которых до изобретения компьютера не существовало
Спасибо сказали:
Maksim Kolenko
Сообщения: 94
ОС: ubuntu

Re: заметки на «полях» клавиатуры

Сообщение Maksim Kolenko »

Пытаюсь сделать по замечательному руководству sash-kan некоторые изменения в конфигах Xorg и обнаруживаю, что у меня в системе нет файла xorg.conf (искал с помощью locate). По-видимому в установленных у меня иксах он не требуется. Система у меня Kubuntu 9.10 (alfa 5). В одном из руководств про иксы я прочёл, что в случае отсутствия xorg.conf нужно возиться с конфигами HAL. Пожалуйста, подскажите, что мне делать в этом случае? Может быть просто создать его вручную (xorgconf я у себя тоже не нашёл)?
Спасибо сказали:
Аватара пользователя
sash-kan
Администратор
Сообщения: 13939
Статус: oel ngati kameie
ОС: GNU
Контактная информация:

Re: заметки на «полях» клавиатуры

Сообщение sash-kan »

Maksim Kolenko
если вам действительно нужен xorg.conf, можете сгенерировать его:
$ sudo Xorg :1 -configure
будет сгенерирован файл ~/xorg.conf.new
можно перед перемещением его в /etc/X11/ (sudo cp ~/xorg.conf.new /etc/X11/xorg.conf) проверить его принципиальную работоспособность:
$ sudo Xorg :1 -config ~/xorg.conf.new
чтобы остановить — нажмите alt+ctrl+backspace или переключитесь к работающему x-серверу (atl+ctrl+f7) и прервите выполнение команды (ctrl+c).
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
Спасибо сказали:
Maksim Kolenko
Сообщения: 94
ОС: ubuntu

Re: заметки на «полях» клавиатуры

Сообщение Maksim Kolenko »

sash-kan писал(а):
08.09.2009 02:42
Maksim Kolenko
если вам действительно нужен xorg.conf, можете сгенерировать его:
$ sudo Xorg -configure :1


Спасибо, Саша! Всё получилось. Только xorg попросил меня исправить формат команды, и получилось так:
$ sudo Xorg :1 -configure

В дополнении темы хочу предположить, что настройки KDE4 (Параметры системы -> Язык и стандарты -> Расладка клавиатуры) в некоторых случаях позволяют получить желаемую схему работы раскладок. Правда, нужно учесть, что при этом есть ограничения, от которых свободен путь прямой настройки xkb (правкой конфигов), замечательно освещённый в «заметках на „полях” клавиатуры». К примеру, расскажу как было дело у меня.

Мне нужно было использовать три раскладки: английскую, русскую и испанскую. Проникнувшись идеями, изложенными в Заметках, я решил реализовать некоторые из них. Главное, что мне требовалось - это нециклическое переключение раскладок и включения временного переключения раскладки, пока нажата определённая клавиша (как в пятой Заметке). Посмотрев несолько часов на конфиги xkb я узнал для себя много интересного, но перед тем как править их, я решил обратиться к штатным средствам настройки KDE, ибо требовалось мне не много, и, в конце концов, я остался доволен результатом. Я настроил нециклическое переключение по CapsLock и Shift+CapsLock, как в Заметках, плюс временное переключение раскладки по левой Win-клавише. Для этого мне потребовалось установить опцию «Игнорировать параметры системы».

(Немного не относящееся к теме. Далее я подумал, что использовать отдельную раскладку для испанского нецелесообразно - лучше вводить требуемые испанские символы с помощью клавиши-модификатора. Сначала хотел поправить файл с раскладкой us, по принципу первой Заметки - использование 3-го уровня, но, начав править, обнаружил, что требуемые мне символы испанского языка уже есть в одном из вариантов раскладки us, а именно в «международном». В итоге я просто-напросто указал в настройках KDE использовать этот вариант раскладки us, у меня в системе он называется «intl». При этом варианте ввод дополнительных символов осуществляется нажатием правого Alt.)

Теперь скажу про ограничения. Во-первых, у меня перестали переключаться раскладки в терминале (вернее, что-то переключается, но русские символы не вводятся). Во-вторых, я не нашёл в настройках KDE как можно вернуть обычную функцию клавиши CapsLock (заглавные буквы). Может быть есть ещё что-то, о чём я пока не подозреваю:)

На последок: описанные настройки были сделаны в KDE4.3.1 на системе Kubuntu 9.10 alfa 5.
Спасибо сказали:
Maksim Kolenko
Сообщения: 94
ОС: ubuntu

Re: заметки на «полях» клавиатуры

Сообщение Maksim Kolenko »

Кстати, в международном варианте раскладки us есть всякие интересные символы типа дробей, «ёлочек», градуса и т.п.
Дословно этот вариант у меня в системе называется Международная со спец. клавишами (dead keys).
Спасибо сказали:
Аватара пользователя
sash-kan
Администратор
Сообщения: 13939
Статус: oel ngati kameie
ОС: GNU
Контактная информация:

Re: заметки на «полях» клавиатуры

Сообщение sash-kan »

Maksim Kolenko писал(а):
08.09.2009 15:03
Во-первых, у меня перестали переключаться раскладки в терминале (вернее, что-то переключается, но русские символы не вводятся).
какой терминал? konsole? вообще кириллица в нём отображается? если нет — выберите другой шрифт. если да — пишите баг-репорт в kde (я правильно понял, что это происходит, если «рулежом xkb» занимается kde?)

Maksim Kolenko писал(а):
08.09.2009 15:03
Во-вторых, я не нашёл в настройках KDE как можно вернуть обычную функцию клавиши CapsLock (заглавные буквы).
а нету. ни в kde-шном, ни в gnome-вском «рулителях» нет сочетания, которое бы выполняло функцию capslock. afaik.
да и вообще адекватность их («рулителей») работы у меня лично вызывает глубокие сомнения.
и никакого сочувствия не вызывает стремление разработчиков разных de «сделать всё как в windows».

Maksim Kolenko писал(а):
08.09.2009 15:08
Кстати, в международном варианте раскладки us есть всякие интересные символы типа дробей, «ёлочек», градуса и т.п.
кстати, есть такая интересная вещь, как xcompose.
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
Спасибо сказали:
Maksim Kolenko
Сообщения: 94
ОС: ubuntu

Re: заметки на «полях» клавиатуры

Сообщение Maksim Kolenko »

sash-kan писал(а):
08.09.2009 22:53
какой терминал? konsole? вообще кириллица в нём отображается? если нет — выберите другой шрифт. если да — пишите баг-репорт в kde (я правильно понял, что это происходит, если «рулежом xkb» занимается kde?)

Да нет же, речь про виртуальный терминал, консоль, что активируется по alt ctrl f1,f2,f3... А в konsole всё в порядке. Но спешу заметить, что после перезагрузки компьютера в виртуальном терминале снова стали писаться русские символы, правда переключение происходит не по тем клавишам, что настроены в KDE (ну это и понятно), а по тем, что были настроены при установке системы (кстати, после установки, в Kubuntu 9.10 по умолчанию не задействовано управление раскладками с помощью KDE). Но это мне пока не мешает, поскольку очень редко пишу на русском в терминале.

кстати, есть такая интересная вещь, как xcompose.

Да, такие вещи действительно можно интересно применять. Но работа того самого международного варианта us по функциональности пока что меня устраивает, просто я ещё сам не знаю, что бы я хотел от клавиатурных раскладок :) Пока поработаю с текущими готовыми настройками, а потом, может быть, у меня появятся потребности что-то поменять под себя. И тогда уж ваши Заметки мне будут просто необходимы!

Раз уж вы упомянули про xcompose, не могли бы в двух словах пояснить разницу между compose и третьим уровнем? На вид одинаково там и там - удержание определённой клавиши меняет поведение другой клавиши.
Спасибо сказали:
Аватара пользователя
sash-kan
Администратор
Сообщения: 13939
Статус: oel ngati kameie
ОС: GNU
Контактная информация:

Re: заметки на «полях» клавиатуры

Сообщение sash-kan »

Maksim Kolenko писал(а):
09.09.2009 13:02
Да нет же, речь про виртуальный терминал, консоль
afaik, сложившаяся практика — использовать в этом случае термин «консоль», «вирутальная консоль».
а для того, что запускается в x-сессии — «терминал», «графический терминал».

к консоли настройки x-сервера, естественно, не имеют никакого отношения.


Maksim Kolenko писал(а):
09.09.2009 13:02
Раз уж вы упомянули про xcompose, не могли бы в двух словах пояснить разницу между compose и третьим уровнем? На вид одинаково там и там - удержание определённой клавиши меняет поведение другой клавиши.
xcompose действует на совершенно ином уровне и на совершенно ином принципе. и даже «на вид» выглядит иначе — клавишу, объявленную композитной, вовсе не надо удерживать при вводе символов, из которых состоит compose-последовательность.
принцип действия одной фразой: замена определённой строки символов на другую определённую строку. именно символов, а не клавиш.
пример: «(-» транслируется в символ «{». в разных раскладках символ «(» печатается разными клавишами. и именно эти разные клавиши в разных раскладках мне и нужно нажимать чтобы сформировать _строку_ «(-».
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
Спасибо сказали:
Maksim Kolenko
Сообщения: 94
ОС: ubuntu

Re: заметки на «полях» клавиатуры

Сообщение Maksim Kolenko »

afaik, сложившаяся практика — использовать в этом случае термин «консоль», «вирутальная консоль».
а для того, что запускается в x-сессии — «терминал», «графический терминал».

Перед тем как написать, я тоже задумался, какой же из двух терминов нужно употребить. И даже прошерстил интернет на эту тему: там, конечно, разброд полный с этими терминами (в англоязычном интернете, похоже, тоже). Ну я и употребил тот, что мне больше понравился. В общем, спасибо, что указали на более верный вариант!

в разных раскладках символ «(» печатается разными клавишами. и именно эти разные клавиши в разных раскладках мне и нужно нажимать чтобы сформировать _строку_ «(-».

Спасибо что объясняете, но про compose мало что понял. Понял то, что это что-то вроде "автозамены" в некоторых текстовых редакторах, когда определённая последовательность символов преобразуется в другую заданную, например «( r )» в символ «®». Тогда, наверное, ударения ставятся с помощью compose? Когда нажимешь клавишу ударения, отпускаешь её, а следом наживаешь клавишу с символом, который будет под ударением. По крайней мере, тот самый международный вариант us, о котором я писал, работает с ударениями именно по такому принципу.

Только ваш пример с «(-» я всё равно не понимаю. Может быть, я просто не знаю чего-то, но зачем формировать строку «(-», чтобы получить «{». Разве нельзя при нажатии на определённую клавишу сразу получить «{»?
Спасибо сказали:
Аватара пользователя
sash-kan
Администратор
Сообщения: 13939
Статус: oel ngati kameie
ОС: GNU
Контактная информация:

Re: заметки на «полях» клавиатуры

Сообщение sash-kan »

Maksim Kolenko писал(а):
10.09.2009 15:58
это что-то вроде "автозамены"
да, именно «вроде». только не «авто». перед набором «строки» нужно нажать клавишу, определённую как compose-key. эту клавишу, при желании, можно удерживать во время набора строки. если клавиатура это позволяет. обычно позволяет, т.к. обычно в качестве compose-key берётся какая-нибудь «спец-клавиша» типа alt или ctrl.
Maksim Kolenko писал(а):
10.09.2009 15:58
Только ваш пример с «(-» я всё равно не понимаю. Может быть, я просто не знаю чего-то, но зачем формировать строку «(-», чтобы получить «{». Разве нельзя при нажатии на определённую клавишу сразу получить «{»?
это был просто пример. но вполне реальный — в том числе и такая комбинация есть в часто используемом «джентльменском наборе» /usr/share/X11/locale/en_US.UTF-8/Compose

по по́воду ударе́ния. в unicode есть си́мвол ударе́ния. именно символ. вполне себе независимый. который можно вставить после л́ю́б́о́й́ буквы. а вы, вероятно, пишете про «акцентированные» символы. типа перечисленных здесь.
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
Спасибо сказали:
Maksim Kolenko
Сообщения: 94
ОС: ubuntu

Re: заметки на «полях» клавиатуры

Сообщение Maksim Kolenko »

Спасибо за разяснение на счёт compose! Теперь стало понятно.

sash-kan писал(а):
10.09.2009 20:31
по по́воду ударе́ния. в unicode есть си́мвол ударе́ния. именно символ. вполне себе независимый. который можно вставить после л́ю́б́о́й́ буквы. а вы, вероятно, пишете про «акцентированные» символы. типа перечисленных здесь.

Верно, я имел в виду эти самые акцентированные символы. А с символом ударения я имел дело, только почему-то зачастую он ведёт себя не так, как хотелось бы.
Спасибо сказали:
Аватара пользователя
sash-kan
Администратор
Сообщения: 13939
Статус: oel ngati kameie
ОС: GNU
Контактная информация:

Re: заметки на «полях» клавиатуры

Сообщение sash-kan »

ответ на незаданный вопрос.
(http://www.linux.org.ru/view-message.jsp?msgid=4136631&lastmod=1255767526747) писал(а):Re: Выпущен XNeur и gXNeur версии 0.9.7!
sash-kan >подсказываю
Не выходит у меня что-то, помогай. Хочу переключение на английский по капсу, на русский — по шифт-капсу. Сделал следующее:
создал /usr/share/X11/xkb/symbols/mysym :
partial modifier_keys xkb_symbols "caps_1" { key <CAPS> { [ ISO_First_Group, ISO_Last_Group ] }; };
Добавил в /usr/share/X11/xkb/rules/xorg :
mycaps1 = +mysym(caps_1)
Изменил в /etc/hal/fdi/policy/10-keymap.fdi :
<merge key="input.xkb.options" type="string">mycaps1</merge>
И нифига, капс работает «как обычно». Может эта методика несовместима с определением устройств ввода через хал? Есть идеи?
anonymous (*) (16.10.2009 0:19:15)
никогда с hal-ом не сталкивался.
идеи есть.
во-первых, можно просмотреть текущую картину:
$ xkbcomp $DISPLAY - | less
во-вторых, можно воспользоваться xorg.conf-ом.
в-третьих, можно почитать про hal и определиться, как же там правильно нужно писать.
в-четвёртых, с помощью того же xkbcomp в связке с setxkbmap можно динамически формировать «картинку» для xkb.
делюсь, как, например, в данный момент у меня настроено.
работу делает вот этот файл:

Shell

$ cat somefile #!/bin/bash setxkbmap -symbols "pc+us:1+ru(diktor):2+us(dvorak):3+ru(typewriter):4+compose(ralt)+\ mysym(caps_4)" -types "complete+mytype(four_groups)" -compat "complete+mycompat" \ -print | xkbcomp -I${HOME}/etc/xkb - $DISPLAY &>/dev/null
xkbcomp инклудит в дополнение каталог ~/etc/xkb (имя, конечно, произвольное) (анонимус с лора, задавший вопрос, может обойтись без этого инклуда и слегка поправить параметры, передаваемые setxkbmap-у).
текущее содержимое этого каталога прилагается.
caps -> раскладка us, shift+caps -> ru(diktor), ctrl+shift+caps -> ru(typewriter), ctrl+caps -> us(dvorak).
вызов скрипта засунунт куда-то то ли в ~/.xsession, то ли в ~/.icewm/startup, то ли вооще в /etc/X11/Xsession.d/.
Вложения
xkb.tbz
(3.22 КБ) 177 скачиваний
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
Спасибо сказали:
straffer
Сообщения: 2
ОС: ArchLinux x86_64

Re: заметки на «полях» клавиатуры

Сообщение straffer »

sash-kan писал(а):
04.11.2009 18:46
в-четвёртых, с помощью того же xkbcomp в связке с setxkbmap можно динамически формировать «картинку» для xkb.
Как мне показалось, этот вариант мне наиболее подходит.

Что сделал:
1. Создал файл ~/.config/xkb/symbols/mysym:
partial modifier_keys xkb_symbols "caps_1" { key <CAPS> { [ ISO_First_Group, ISO_Last_Group ] }; };

2. Создал пакетник с командой:
setxkbmap -symbols "pc+us:1+ru(winkeys):2+compose(ralt)+mysym(caps_1)" -print | xkbcomp -I${HOME}/.config/xkb - $DISPLAY

Его засунул в свой автозапуск. Вроде как работает. Правда, выдаёт какие-то ошибки — http://paste.org.ru/?1xop8b , но из-за чего это и чем чревато, пока не понял, никаких видимых последствий, если знаешь — подскажи.


ЗЫ. Судя по всему, xneur строем движется к pacman -Rd :-D
Спасибо сказали:
Ответить