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.