Emacs & meta (eleos!)

Antonis Christofides anthony at itia.ntua.gr
Thu Apr 26 21:59:06 EEST 2007


(Θέλω να ξέρω πόσες εργατοώρες είχα χάσει τον καιρό που πρωτοέτρεχα
emacs μέσα σε screen, μέσα σε terminal, μέσα σε X, ώστε το meta να
περνάει απ' όλα αυτά και να καταφέρνει να φτάνει σωστά στον emacs [κι
έτρεχα και viper, ο οποίος έπρεπε να μπορεί να ξεχωρίζει το esc απ' το
meta].  Τώρα που τρέχω emacs μέσα σε X, να δούμε πόσες εργατοώρες θα
χρειαστούμε να τα ξαναφτιάξουμε.)

Θέλω το meta να είναι το αριστερό win.  Του λέω λοιπόν
altwin:meta_win, και όντως το xev δείχνει ότι το αριστερό win είναι το
Meta_L και ότι το αριστερό alt είναι το Alt_L.  Πλην όμως ο emacs
θεωρεί ότι το αριστερό win είναι super.  Π.χ. προσπαθώ να πατήσω M-x
και μου λέει "s-x is undefined".

Ανοίγω λοιπόν το /etc/X11/xkb/symbols/altwin, και πάω στο εξής section:

partial modifier_keys 
xkb_symbols "meta_win" {
    key <LALT> {	[ 	Alt_L,	Alt_L		]	};
    key <RALT> {	[ 	Alt_R,	Alt_R		]	};
    key <LWIN> {	[ 	Meta_L			]	};
    key <RWIN> {	[ 	Meta_R			]	};
    modifier_map Mod1	{ Alt_L, Alt_R };
    modifier_map Mod4	{ <META>, Meta_L, Meta_R };
};

και μετατρέπω σε σχόλιο τη γραμμή που λέει για το Mod4.  Αφού το κάνω
αυτό, ο emacs για κάποιο λόγο (που δεν γνωρίζω, γιατί ουδέποτε ήταν
κρυφό μου όνειρο το να κάνω διατριβή στο τι σημαίνει Mod1 και Mod4 και
πώς δουλεύουν τα bits των hyper, super και δεν συμμαζεύεται) αρχίζει
πράγματι να καταλαβαίνει το αριστερό win ως meta.  Έλα όμως που
γενικότερα το αριστερό win αρχίζουν γενικότερα τα X να το θεωρούν ως
Alt.  Οπότε προσπαθώ να πατήσω M-tab, αλλά τα X το θεωρούν Alt+Tab και
το πιάνει ο window manager και νομίζει ότι θέλω να αλλάξω παράθυρο.




More information about the Linux-greek-users mailing list