Quoting Thomas Schmitt (scdbac...@gmx.net):
> David Wright wrote:
> > An important file is /etc/console-setup/cached_UTF-8_del.kmap.gz
> > What I haven't worked out is: what puts this cache file together?
> > It's obviously been constructed because near the end it says:
> > # The content of this file will be appended to the keyboard layout.
> > followed by commented examples of changes one might make.
> > Where was the so-called "this file" found when this cache was
> > constructed?
> 
> On Debian 8.1:
>   # fgrep -r 'will be appended to the keyboard layout' /etc
> yields
>   /etc/console-setup/remap.inc:# The content of this file will be appended to 
> the keyboard layout.
> remap.inc looks like the tail of my cached_UTF-8_del.kmap.gz.

I don't know how I missed that (maybe flaky pasting or typing)

>   # fgrep -r 'remap.inc' /usr 
> 
>   /usr/bin/ckbcomp:my $file1 = "/etc/console-setup/remap.inc";
>   /usr/bin/ckbcomp:my $file2 = "$installdir/etc/console-setup/remap.inc";

I see that setupcon calls ckbcomp. So I'm assuming that the Debian Way™
is to run dpkg-reconfigure console-setup, and I see that that does do
the appending to cached_UTF-8_del.kmap.gz.

> David Wright wrote in "How come i wrote a NO-BREAK SPACE in xterm+bash ?":
> > I don't want
> > X's involvement, except in as much as it shares configuration files
> > like /etc/default/keyboard.
> 
> I understand from man 5 keyboard that this file is part of X.
> But /usr/bin/ckbcomp is a perl script which in its header
> talks of "loadkeys", which is a kernel thing.

I've added the following lines to /etc/console-setup/remap.inc:

--------
# Last edited 2015-08-20
# After editing this file, run the following on a VC (making no changes):
# dpkg-reconfigure console-setup
# dpkg-reconfigure keyboard-configuration

# Ctrl-arrows do the same as PageUp/Down (for moving by word)
ctrll keycode 105 = Prior
ctrlr keycode 105 = 'z'
ctrll keycode 106 = Next
ctrlr keycode 106 = 'Hello'
#
--------

... and then run dpkg-reconfigure as in the comments. This has an
immediate effect which is rather bizarre: Alt-Left and Alt-Right
(which I use in iceweasel as GoBack and GoForward) now rotate the
display through the VCs, including X. As you know, normally you
can rotate into X but not out of it, which requires CtrlAltF{2-6}.
Note that this bizarre behaviour only happens if X was running (on
VC1) while I was dpkg-reconfiguring on VC2.

> When experimenting with XKB, did you take into respect the statement
> about
>   udevadm trigger --subsystem-match=input --action=change
> in man 5 keyboard ?

No. I reboot, and that also has the benefit of eliminating the
bizarre effect above. Bear in mind that I'm not trying to make
two configurations to switch between. I going for a single stable
configuration that comes up at boot.

Anyway, something gets seriously screwed up by adding those
lines. They have no effect on either Control-. However, WindowsL-Left and
-Right no longer behave as normal (ie rotating VCs), so I have to use
Alt-. Without those lines I can use either modifier to rotate through
the VCs. But worse, the keyboard has gone american: < > left of z
(instead of \ |), \ | left of Return (instead of # ~) and so on.
Normality is restored by removing the appended lines and dpkg-reconfiguring.

The output from   dumpkeys -f   is very different in the two
cases. Here are the first two lines (spaces have been compacted):

With the extra lines:
keymaps 0-2,4-5,8,12
keycode 1 = Escape Escape VoidSymbol VoidSymbol VoidSymbol Meta_Escape 
VoidSymbol

As normal, without the extra lines:
keymaps 0-127
keycode 1 = Escape Escape Escape Escape Escape Escape Escape Escape Meta_Escape 
Meta_Escape Meta_Escape
Meta_Escape Meta_Escape Meta_Escape Meta_Escape Meta_Escape Escape Escape 
Escape Escape Escape Escape Escape
Escape Meta_Escape Meta_Escape Meta_Escape Meta_Escape Meta_Escape Meta_Escape 
Meta_Escape Meta_Escape
Escape Escape Escape Escape Escape Escape Escape Escape Meta_Escape Meta_Escape 
Meta_Escape Meta_Escape
Meta_Escape Meta_Escape Meta_Escape Meta_Escape Escape Escape Escape Escape 
Escape Escape Escape Escape
Meta_Escape Meta_Escape Meta_Escape Meta_Escape Meta_Escape Meta_Escape 
Meta_Escape Meta_Escape Escape
Escape Escape Escape Escape Escape Escape Escape Meta_Escape Meta_Escape 
Meta_Escape Meta_Escape
Meta_Escape Meta_Escape Meta_Escape Meta_Escape Escape Escape Escape Escape 
Escape Escape Escape
Escape Meta_Escape Meta_Escape Meta_Escape Meta_Escape Meta_Escape Meta_Escape 
Meta_Escape Meta_Escape
Escape Escape Escape Escape Escape Escape Escape Escape Meta_Escape Meta_Escape 
Meta_Escape Meta_Escape
Meta_Escape Meta_Escape Meta_Escape Meta_Escape Escape Escape Escape Escape 
Escape Escape Escape Escape
Meta_Escape Meta_Escape Meta_Escape Meta_Escape Meta_Escape Meta_Escape 
Meta_Escape Meta_Escape
[I've wrapped that line just to be polite]

Further down the file, you can see the changes that have put the
keyboard into US-English instead of GB. I can't work out how adding
four lines can make all those undesired changes (and no desired ones).

Cheers,
David.

Reply via email to