Ελληνικό πληκτρολόγιο στους μινιμαλιστικούς Window Managers (Lxde, Xfce 4, E17, Fluxbox, Openbox)

dsyrmalis | Σάβ, 07/23/2011 - 10:39 | 13' | 13

Ένα απο τα πλεονεκτήματα του Linux είναι και οι χαμηλές απαιτήσεις του σε υλικό. Έτσι, πολλοί χρήστες επιλέγοντας μια ελαφριά διανομή μπορούν να αξιοποιήσουν παλιούς υπολογιστές που υπο άλλες συνθήκες θα τους ήταν άχρηστοι. Οι διανομές αυτές έρχονται πάντα με τους ανάλογους μινιμαλιστικούς διαχειριστές παραθύρων όπως οι LXDE, Fluxbox, E17, Openbox και XFCE4 . Κάπου εκεί όμως σταματά και ο πρώτος ενθουσιασμός, αφού οι ευκολίες που υπάρχουν στα βαριά περιβάλλοντα εργασίας όπως το KDE και το Gnome, απουσιάζουν.Ένα απο τα βασικότερα προβλήματα είναι η απουσία κάποιας εφαρμογής ή κάποιας μεθόδου για την εναλλαγή της γλώσσας του πληκρολογίου. Ας δούμε λοιπόν τι μπορούμε να κάνουμε σε κάθε περιβάλλον εργασίας ξεχωριστά. Να σημειώσουμε πως αναζητούμε την απλούστερη μέθοδο χωρίς να εξαρτώμαστε απο πακέτα όπως ο HAL που σιγά σιγά βαίνουν προς κατάργηση ή απο τροποποιήσεις σε πολύπλοκα αρχεία όπως το xorg.conf.

Οι... βιαστικοί μπορούν να κάνουν αντιγραφή και επικόλληση στο τερματικό τους το εξής: setxkbmap -option grp:switch,grp:alt_shift_toggle,grp_led:scroll us,el
Η εντολή αυτή λειτουργεί με όλους τους window manager. Το αποτέλεσμα θα είναι να έχουμε εναλλαγή μεταξή ελληνικού και αγγλικού πληκτρολογίου, με το συνδυασμό alt και shift. Πρόκειται όμως για μια προσωρινή λύση αφού μετά την πρώτη επανεκκίνηση η ρύθμιση θα χαθεί.

Ας δούμε λοιπόν τις μόνιμες λύσεις ξεκινώντας με το XFCE4, το οποίο κρατά μια καλή ισσοροπία μεταξύ χαρακτηριστικών και επιδόσεων. Αρκούν μόλις 6 βήματα:
1. Ανοίγουμε την κονσόλα μας και πληκτρολογούμε: cd ~ Πάμε δηλαδή στον κατάλογο home.
2. mkdir bin  Φτιάχνουμε ένα φάκελο με το όνομα bin. Πιο απλά μπορούμε να κάνουμε δεξί κλίκ μέσα στο directory home και να τον δημιουργήσουμε.
3. cd bin  Πηγαίνουμε μέσα στο φάκελο bin
Εκεί δημιουργούμε ένα αρχείου κειμένου με τα εξής περιεχόμενα:
  #! /bin/bash
  setxkbmap "us,gr" -option "grp:alt_shift_toggle" 
4. Σώζουμε το αρχείο με τη ονομασία setgrkeyb.
5. chmod +x setgrkeyb Με την εντολή αυτή το κάνουμε εκτελέσιμο. Το ίδιο μπορούμε να κάνουμε με δεξί κλικ πάνω στο αρχείο, επιλέγοντας Properties και στη συνέχεια Permissions.
6. Μετά πρέπει να πάμε στο Session and Start Up --> Application Autostart και να επιλέξουμε το εκτελέσιμο πια αρχείο setgrkeyb, που δημιουργήσαμε πριν. Κάνοντας επαννεκίνηση θα μπορούμε να αλλάζουμε πληκτρολόγιο πατώντας alt και shift. Φυσικά μπορούμε να επιλέξουμε οποιοδήποτε άλλο συνδυασμό πλήκτρων και να έχουμε το επιθυμητό αποτέλεσμα.

Να σημειώσουμε πως η έκδοση 4.8 φέρνει to XFCE ακόμα πιο κοντά σε δυνατότητες με τα βαριά περιβάλλοντα εργασίας KDE και Gnome. Μερικές απο τις διανομές που παρέχουν iso αποκλειστικά με το XFCE 4, είναι οι εξής: Debian, Salix, Xubuntu, Wolwix, Vector και Zenwalk και φυσικά το “δικό μας” Puppel. Επίσης, θα το βρούμε σε κοινοτικά spins του Fedora και του Sabayon. 

Στη συνέχεια περνάμε στο ταχύτατο LXDE. Εδώ θα χρειαστεί να έχουμε δικαιώματα root και για το παράδειγμα μας θα χρησιμοποιήσουμε τον γνωστό text editor nano. Ανοίγουμε την κονσόλα μας και γράφουμε:
sudo nano /etc/xdg/lxsessions/LXDE/autostart . Η ονομασία του αρχείου μπορεί να διαφέρει απο διανομή σε διανομή, οπότε για να διευκολυνθούμε μπορούμε να χρησιμοποιήσουμε τη  λειτουργία autocompletion του bash, πατώντας το πλήκτρο tab. (Στο Linux Mint για παράδειγμα, η διαδρομή είναι η /etc/xdg/lxsessions/ΜΙΝΤ/autostart).  Aντιγράφουμε τώρα μέσα στο αρχείο κειμένου τα εξής:
@setxkbmap -option grp:switch,grp:alt_shift_toggle,grp_led:scroll us,gr
Πατάμε control και X και απαντώντας καταφατικά με το Y (yes), σώζουμε τις αλλαγές. Προχωρούμε με δεξί κλικ στην taskbar, επιλέγουμε add-remove panel items και στη συνέχεια το keyboard layout switcher. Κάνουμε δεξί κλικ στο εικονίδιο του keyboard layout switcher και  πάμε στα keyboard layout switcher settings. Eπιλέγουμε set show layout as text. Επανεκκίνηση και... αυτό ήταν!
Το LXDE γίνεται όλο και πιο δημοφιλές και πλέον υπάρχουν διανομές που το χρησιμοποιούν ως το βασικό τους διαχειριστή παραθύρων. Λόγω των χαμηλών του απαιτήσεων σε υλικό αποτελεί και μια πολύ καλή λύση για Live cd. Θα το βρούμε στις διανομές Mint, Lubuntu, Salix, Debian, DEFT, PCLinuxOS και Sabayon. Δυνατότητα εγκατάστασης του απο την αρχή υπάρχει και στο νέο OpenSuse 11.4. Για πολλούς δεν αποτελεί έκπληξη η μεταφορά του στο Android!

Ας περάσουμε τώρα στον αγαπημένο μας Fluxbox.
Εδώ θα πρέπει να αναζητήσουμε το κρυφό αρχείο .fluxbox που βρίσκεται στον προσωπικό μας κατάλογο home. Για να βλέπουμε τα κρυφά αρχεία του συστήματος μας δεν έχουμε παρα να ενεργοποίησουμε αυτή την επιλογή, απο τον file manager μας της επιλογής μας. Στον διαχειριστή αρχείων Pcmanfm για παράδειγμα, πάμε στο μενού Προβολή και επιλέγουμε την Εμφάνιση κρυφών αρχείων.
Τώρα είμαστε έτοιμοι να επέμβουμε στο αρχείο ~/.fluxbox/startup  και προσθέτουμε:
exec setxkbmap -option grp:alt_shift_toggle -layout "us,el"  & 
Καλό είναι η παραπάνω γραμμή να βρίσκεται πάνω απο το σημείο που γράφει exec fluxbox.
Το σύμβολο & σημαίνει πως η εντολή μας θα εκτελείται συνεχώς και όχι μια φορά.
Τελευταίο και απαραίτητο βήμα είναι η επανεκκίνηση του συστήματος μας.

Ο Fluxbox γίνεται όλο και πιο δημοφιλής ανάμεσα στους χρήστες. Αν και αρχικά μπορεί να φαίνεται λίγο δύστροπος, στην πραγματικότητα η διαδικασία παραμετροποίησης των μενού του είναι πολύ απλή και κατανοητή. Τον Fluxbox θα τον συναντήσουμε στις εξής διανομές: Antix, NfluxOS, Salix, PCLinuxOS και Sabayon. Λόγω του μικρού του μεγέθους είναι αρκετά διαδεδομένος και στους χρήστες του Gentoo. 

O επόμενος διαχειριστής παραθύρων που θα εξετάσουμε είναι ο Openbox. Βασίστηκε στον Blackbox, με τον οποίο παραμένει σε πολλά σημεία συμβατός. Σε αυτό το περιβάλλον θα χρειαστεί να εγκαταστήσουμε τα xbindkeys . Για παράδειγμα, στο Ubuntu δίνουμε την εντολή  sudo apt-get install xbindkeys. Αμέσως  μετά δημιουργούμε το αρχείο ~/.xbindkeysrc με την εντολή:
xbindkeys --defaults > /root/.xbindkeysrc
Στη συνέχεια μπαίνουμε στο αρχείο ~/.xbindkeysrc και προσθέτουμε στο τέλος του αυτές τις γραμμές:

"setxkbmap us"
alt + shift + 1

"setxkbmap el"
alt + shift + 2
Σώζουμε το αρχείο, κάνουμε επανεκκίνηση και...τέλος!

Εναλλακτικά, αν προτιμούμε μια πιο απλή λύση, μπορούμε να πάμε στο Settings--> Openbox Config--> Edit autostart.sh. Εκεί και στο τέλος του αρχείου προσθέτουμε:

##Εναλλαγή πληκτρολογίου
setxkbmap -option "grp:switch,grp:alt_shift_toggle,grp_led:scroll" -layout "us,el" &
(sleep 1s && fbxkb) &
Το sleep 1s σημαίνει πως η εντολή θα εκτελεστεί με ένα δευτερόλεπτο καθυστέρηση. Τελειώνουμε κάνοντας και πάλι save τις αλλαγές, ενώ φυσικά δεν ξεχνάμε το απαραίτητο reboot!

Σε περίπτωση που απουσιάζει απο το μενού της διανομή μας το “Edit autostart.sh”, τότε θα πρέπει να καταφύγουμε στην κονσόλα και τον αγαπημένο μας nano. Ψάχνουμε για το αρχείο /home/user/.config/openbox/autostart.sh. Στη διανομή Crunchbang για παράδειγμα, το αρχείο βρίσκεται μέσα στον προσωπικό μας κατάλογο.Σώζουμε τις αλλαγές στο αρχείο και μετά την επανεκκίνηση θα έχουμε ένα πρόβλημα λιγότερο για τον υπολογιστή μας.
Ο Openbox είναι αναπόσπαστο μέρος διανομών όπως το Archbang, το Crunchbang, το PCLinuxOS, το Crux και το Unity. 

Τελευταίος, αλλά εξίσου σημαντικός είναι ο Enlightment ή Ε17. Πέρα απο τα καθήκοντα του ως διαχειριστής παραθύρων, αποτελεί και μια ολόκληρη σουίτα με βιβλιοθήκες για τη δημιουργία user interfaces. Και πραγματικά οι διανομές που βασίζονται σε αυτόν μας δίνουν πολύ εντυπωσιακά desktop. Ας δούμε λοιπόν και εδώ πως θα εναλλάσουμε τη γλώσσα του πληκτρολογίου μεταξύ ελληνικών και αγγλικών.
Δημιουργούμε με δικαιώματα υπερχρήστη το αρχείο grkkb-e17.desktop στη διαδρομή  /usr/share/applications/ ως εξής: sudo nano /usr/share/applications/grkkb-e17.desktop 
Εντός του αρχείου γράφουμε:
[Desktop Entry]
Name=grkkb-e17
GenericName=grkkb-e17
Comment=Greek Keyboard Layout Switch
Encoding=UTF-8
Exec=setxkbmap -option grp:switch,grp:alt_shift_toggle,grp_led:scroll us,el
Icon=
Terminal=false
Type=Application
Categories=
StartupNotify=false

Και σώζουμε τις αλλαγές. Τώρα θα πρέπει το αρχείο που μόλις δημιουργήσαμε να το κάνουμε να ξεκινά μαζί με τον Enlightment. Πάμε στο μενού Settings-->Settings Panel-->Apps--> Startup Applications--> Applications και κάνουμε add το grkkb-e17.
Μετά την επανεκκίνηση, ο συνδυασμός alt και shift θα μας επιτρέπει να γράφουμε και ελληνικά.

Ο Ε17 είναι το βασικό περιβάλλον εργασίας για διανομές όπως οι Bodhi, Macpap, Elive, και Yellow Dog Linux, ενώ θα το βρούμε και σαν spin του Sabayon. Τίποτα βέβαια δεν μας εμποδίζει απο το να τον εγκαταστήσουμε και σε άλλες διανομές, όπως το Arch ή το Debian. Το ίδιο ισχύει φυσικά και για τους υπόλοιπους διαχειριστές παραθύρων.

Εδώ φτάσαμε στο τέλος του άρθρου. Ο βασικότερος ίσως λόγος που μας εμπόδιζε να  χρησιμοποιούμε όλους αυτούς τους διαχειριστές παραθύρων αποτελεί πια παρελθόν. Και φυσικά λέμε οριστικά αντίο στα... greeklish!

 

Δώσε αστέρια!

MO: 2 (ψήφοι: 1)

Σχόλια

Εναλλακτικά, σε Debian (και λογικά και στα περισσότερα από τα παράγωγα του), υπάρχει εδώ και κάποιο καιρό το αρχείο */etc/default/keyboard*. Εκεί μπορούμε, μεταξύ άλλων, να ορίσουμε τα σχετικά με το πληκτρολόγιο για τo γραφικό περιβάλλον. Πχ το δικό μου αρχείο λέει:

XKBMODEL="pc105"
XKBLAYOUT="us,el"
XKBOPTIONS="grp:alt_shift_toggle,grp_led:scroll"

Και αυτό είναι όλο. Πιθανόν να υπάρχει και σε άλλες διανομές...

Τις ρυθμίσεις αυτές τις διαβάζει ο X server όταν ανοίγει και τις εφαρμόζει, +άσχετα από το ποιόν window manager χρησιμοποιώ+.

Το παραπάνω είναι επίσης ισοδύναμο με το να τα είχα γράψει στο */etc/X11/xorg.conf*, με τον παλαιότερο τρόπο:

Section "InputDevice"
    Identifier     "Keyboard0"
    Driver         "kbd"
    Option "XkbModel"   "pc105"
    Option "XkbLayout"  "us,el"
    Option "XkbOptions" "grp:alt_shift_toggle,grp_led:scroll"
EndSection

Μήπως είναι μέσω HAL; Βασικά απέφυγα να γράψω λύση με HAL γιατί καταργείται και πάνω κάτω το ίδιο συμβαίνει και με το xorg.conf. Για τον Icewm ήθελα επίσης να γράψω, αλλά η λύση που βρήκα μια λειτουργούσε και μια χανόταν. Επίσης το συνδυασμό alt και shift τον πρότεινα επειδή έτσι είναι συνηθισμένοι οι χρήστες απο τα Windows. Κατα την ταπεινή μου άποψη ο συνδυασμός Control και Shift είναι πιο ξεκούραστος.

Όχι, δεν έχει καμία σχέση με HAL. Είναι απλά μια ευκολία που προσφέρει το Debian, η οποία ενοποιεί κάτω από ένα αρχείο τις ρυθμίσεις του πληκτρολογίου, τόσο σε κονσόλα όσο και σε γραφικό περιβάλλον.

Μια λεπτομέρεια που ξέχασα είναι ότι αν αλλάξεις τα περιεχόμενα του αρχείου προφανώς δεν εφαρμόζονται άμεσα οι αλλαγές. Όπως λέει και στο σχετικό man page:

In Debian systems, changes in /etc/default/keyboard do not become immediately visible to X. You should either reboot the system, or use:

udevadm trigger --subsystem-match=input --action=change

Ενναλακτικη λύση για το xfce 4 ειναι αφου πρώτα προσθέσουμε στη διαταξη πληκτρολογιου τα ελληνικα να εγκαταστησουμε το xfce4 xkb plugin και να το προσθέσουμε στο ταμπλο του μενου. Ετσι θα εχουμε και το εικονιδιο της Ελληνικης και Αμερικάνικης σημαίας καθε φορα που ενναλασουμε την γλώσσα του πληκτρολογιου.

Ευχαριστώ για τα extra tips. Απο ότι βλέπω απο το Peppermint και στο Lxde βελτιώνεται η κατάσταση και ίσως να μη χρειάζονται μελλοντικά τέτοιες παρεμβάσεις.

Για το XFCE 4 όσοι χρησιμοποιύν τo Fedora xfce spin επειδή υπάρχει το xkb plugin προεγκατεστημένο δεν αφήνει ποτέ να λειτουργήσει σωστά το setgrkeyb(που φτιάξαμε παραπάνω) λόγο bug που αναφέρεται εδώ

http://goodies.xfce.org/projects/panel-plugins/xfce4-xkb-plugin

Αν δοκιμάσω να τα εφαρμόσω σε live cd ή dvd θα δουλέψει ή χρειάζεται οπωσδήποτε να γίνει εγκατάσταση πρώτα..;

Απλά ήθελα να σημειώσω οτι μετά την εισαγωγή των εντολών δεν χρειάζεται reboot αλλά αποσύνδεση και επανασύνδεση στο window manager ή επανεκκίνηση του X server.

Στο linux mint 11 πάντως η εγκατάσταση xfce και οι οδηγίες για την εναλλαγή του πληκτρολογίου από ελληνικά στα αγγλικά και ανάποδα δούλεψε μια χαρά, σας ευχαριστώ!

Θα είχε νόημα να κάνω το ίδιο σε παλιό laptop της γυναίκας μου, ή να δοκιμάσω κάτι ακόμα πιο ελαφρύ..;

Στο pclinuxos  δουλεψε κατ' ευθειαν η εναλλαγη πληκτρολογιου, αφου ζηταει τον τυπο του πληκτρολογιου και το συνδυασμο των πληκτρων για την εναλλαγη, και κατα τη εγκατασταση αλλα και κατα την δοκιμη του live cd....
Και ειναι οντως ταχυτατοι!
Εγω δοκιμασα την xfce εκδοση...

Aν δεν κάνω κάποιο χοντρό λάθος σε λειτουργικά με xfce4 μπορεί κάποιος απλά να προσθέσει το
setxkbmap -option "grp:switch,grp:alt_shift_toggle,grp_led:scroll" -layout "us,gr"
στο αρχείο ~/.xinitrc και θα ενεργοποιείται καθε φορά που αρχιζει ο X

Και στον Enlightenment 17 έχει απλοποιηθεί εντελώς η γλωσσική υποστήριξη. Ανοίγεις το Settings --> Settings Panel --> Language --> Language Settings και προσθέτεις το Ελληνικό σημαιάκι, μαζί με την εναλλαγή πλήκτρων που επιθυμείς.