ALT Linux Team development discussions
 help / color / mirror / Atom feed
From: Alexey Gladkov <legion@altlinux.ru>
To: ALT Linux Team development discussions <devel@lists.altlinux.org>
Subject: Re: [devel] looking for xkbcommon experts
Date: Thu, 30 Dec 2021 12:43:17 +0100
Message-ID: <20211230114317.fymujcklhuwp2242@example.org> (raw)
In-Reply-To: <20211230102557.GA3146@imap.altlinux.org>

On Thu, Dec 30, 2021 at 01:25:57PM +0300, Vladislav Zavjalov wrote:
> On Thu, Dec 30, 2021 at 01:28:08AM +0100, Alexey Gladkov wrote:
> > Я пока даже не представляю как такое конвертировать в плоскую таблицу.
> > Скорее всего если такое будет вообще возможно, то придётся ставить
> > определённые ограничения, кроме очевидных keycode < 255, unicode < U+F000.
> > 
> > Но прежде всего сначала я хочу понять смогу ли я получить дамп keymap c
> > переключателями. Сама keymap вроде дампится и layouts есть, но вот
> > как получить переключатель между A и B я не нашёл пока. Я очень не хочу
> > парсить текстовые options.
> 
> А чем не устраивает строчка в дампе "keycode  29 = | {English (US)} (Plain)
> ISO_Next_Group" ?

Я сначала не понял. На самом деле это именно то, что мне нужно.

> ...
> 
> Но в целом мне такой проект не очень понятен. Во-первых, я вообще
> люблю, когда система распадается на небольшие слабо взаимодействующие кусочки,
> в каждом из которых "простой пользователь" может разобраться при желании.
> Что можно настроить консоль, не зная ничего про X.

А это не совсем относится к Х. Это раньше оно было прибито к xlib, а
теперь это просто библиотека с базой раскладок.

$ rpmquery -R libxkbcommon
libc.so.6(GLIBC_2.14)(64bit)  
libc.so.6(GLIBC_2.17)(64bit)  
libc.so.6(GLIBC_2.2.5)(64bit)  
libc.so.6(GLIBC_2.3.4)(64bit)  
libc.so.6(GLIBC_2.4)(64bit)  
libc.so.6(GLIBC_2.8)(64bit)  
libxml2.so.2()(64bit) >= set:ojEMWl9MZc1b88W3WxDrxiYtfBIp3cL1BVp5u00sqxoX28E7gjs0
rpmlib(SetVersions)  
libxml2.so.2(LIBXML2_2.4.30)(64bit)  
libxml2.so.2(LIBXML2_2.5.8)(64bit)  
rtld(GNU_HASH)  
rpmlib(PayloadIsLzma)  

Более того, моя идея состоит в том, чтобы добавить возможность работать с
xkb раскладками, а не заменить существующие keymaps.

> Во-вторых, раскладки - это такая повседневная и базовая вещь, в которой
> не хочется резких изменений. Я уже давным-давно нашел чью-то раскладку,
> которая мне нравилась (Crosser-Vovenko) и поправил ее, чтобы мне было удобно.
> Поправил себе консольный шрифт (altc), чтоб хотя бы все русские буквы отличались
> от английских и т.п. И зачем там какие-то изменения, тем более автоматические,
> там более сделанные поверх существующей инфраструктуры - непонятно.
> 
> Понятна идея, что мы хорошо настраиваем xkb, а потом сделаем, чтобы в
> консоли было точно так же. Но точно так же в общем случае не получится.
> Например, если у кого-то layout=en,ru,fa - то такой шрифт в консоль не
> загрузишь, и какой после этого смысл в правильном переключателе - непонятно.
> И после этого смысл немного теряется.
> 
> С точки зрения собирателя дистрибутивов, наверное, хорошо где-то в
> модуле альтератора иметь фиксированный список настроек xkb, и
> соответствующий ему список консольных раскладок.
> И, может быть, в этом месте как раз имеет смысл программа-конвертер, которая
> сделает (или подберет из списка) более-менее хорошую настройку консоли для
> разных вариантов настройки xkb.

Тут есть нюанс, который вы упускаете: раскладки для консоли не
комбинируются. Каждая из них содержит набор языков и переключателей,
которые посчитал удобными автор. Если вам нужно сочетание языков, которых
нет в базе, то нужно писать новую раскладку.

Гораздо проще указать что-то типа:

loadkeys --layout="en,ru" --options="grp:lctrl_toggle"

Если же хочется большего контроля, то всегда можно создать раскладку по
старому.

-- 
Rgrds, legion



  reply	other threads:[~2021-12-30 11:43 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-12-29 14:03 Alexey Gladkov
2021-12-29 16:18   ` Alexey Gladkov
2021-12-29 23:52     ` Vladislav Zavjalov
2021-12-30  0:07       ` Vladislav Zavjalov
2021-12-30  0:12         ` Alexey Gladkov
2021-12-30  0:28       ` Alexey Gladkov
2021-12-30 10:25         ` Vladislav Zavjalov
2021-12-30 11:43           ` Alexey Gladkov [this message]
2021-12-30 13:25             ` Vladislav Zavjalov
2022-02-12 23:06               ` Alexey Gladkov
2021-12-29 23:16 ` Leonid Krivoshein
2021-12-29 23:31   ` Alexey Gladkov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20211230114317.fymujcklhuwp2242@example.org \
    --to=legion@altlinux.ru \
    --cc=devel@lists.altlinux.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

ALT Linux Team development discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \
		devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru
	public-inbox-index devel

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.devel


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git