(Im xterm:vim macht Shift-Tab aber auch dasselbe wie Tab,
Eventuell braucht es irgendwelche deadkeys-oder-sonstiges als Vorgabe?
Oder braucht eine Einstellung in vim?)
xev:Tab:
Code: Alles auswählen
KeyPress event, serial 33, synthetic NO, window 0x1400001,
root 0xc3, subw 0x0, time 443927856, (830,-106), root:(834,699),
state 0x10, keycode 23 (keysym 0xff09, Tab), same_screen YES,
XLookupString gives 1 bytes: (09) " "
XmbLookupString gives 1 bytes: (09) " "
XFilterEvent returns: False
xev:Shift-Tab / ISO_Left_Tab:
Code: Alles auswählen
KeyPress event, serial 33, synthetic NO, window 0x1400001,
root 0xc3, subw 0x0, time 443921657, (830,-106), root:(834,699),
state 0x11, keycode 23 (keysym 0xfe20, ISO_Left_Tab), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False
Also 0xff09 <-> 0xfe20
Ein aktuelles 'dumpkeys':
(dumpkeys zeigt eine kmap, die ja aus einer Kombination von Dateien in /usr/share/keymaps/ konstruiert wird.)
Code: Alles auswählen
keycode 15 = Tab
alt keycode 15 = Meta_Tab
altgr alt keycode 15 = Meta_Tab
control alt keycode 15 = Meta_Tab
altgr control alt keycode 15 = Meta_Tab
(Das Alt-Tab (Meta_Tab) macht in meinem Konsolen-vim irgendwie garnix)
Das kann erweitert werden
Code: Alles auswählen
keycode 15 = Tab
shift keycode 15 = 0xfe20
alt keycode 15 = Meta_Tab
...
Mit dem keysym resp. dessen numerischen Wert ('man keymaps').
Nach 'dumpkeys -l', sind es bei X wie Konsole dieselben keysym-Werte (an Beispielen a=0x61, e=0x65)
Also hat keysym "ISO_Left_Tab" den numerischen Wert 0xfe20.
'dumpkeys -l' gibt mit aber für Tab 0x0009 und Meta_Tab 0x0809 (?), muß doch noch umgerechnet werden?
Für die keycodes gibt es (bei mir) +8 von Konsole zu X.
Weiter 'man loadkeys',
das führt dann zBsp. zu /etc/consoe-tools/remap / /etc/init.d/console-screen.sh:
Code: Alles auswählen
# Allow user to remap keys on the console
if [ -r /etc/console-tools/remap ]
then
dumpkeys < ${DEVICE_PREFIX}1 | sed -f /etc/console-tools/remap | loadkeys --quiet
fi
Jetzt noch etwas sed-"Magie" in remap
Code: Alles auswählen
# fuegt eine Zeile ein
/keycode 15 = Tab/ a \ shift keycode 15 = 0xfe20
Alternativ nach obiger Bemerkung könnten die Templates in /usr/share/keymaps/ modifiziert werden, naja.
Es gibt wohl (noch) keine Möglichkeit, lokale Templates im 'dpkg-reconfigure console-data' einzubinden.
-------------------------------------------------
Mal damit versucht?
http://feitel.indeedgeek.de/2009/9/vim- ... ngerueckt/
4.1 Ein-/Ausrücken
Ist man gerade im Einfügemodus kann man einfach mit strg+T eine Stufe einrücken bzw. mit strg+D eine Stufe wieder ausrücken.
Viel flexibler ist man allerdings im Befehlsmodus. Hier lassen sich < und > verwenden ...
Funktionieren bei mir im xterm:vim wie auf der Konsole.