💾 Archived View for magaz.hellug.gr › 14 › 01_enlightenment › index.gmi captured on 2024-08-31 at 12:12:45. Gemini links have been rewritten to link to archived content

View Raw

More Information

⬅️ Previous capture (2024-02-05)

-=-=-=-=-=-=-

Ένας ιδιαίτερος Window Manager

Παπαδογιαννάκης Βαγγέλης
Μαρ 1999

Για πάμε... Ας περιηγηθούμε μαζί σε έναν πολύ διαφορετικό αλλά και πολύ όμορφο διαχειριστή παραθύρων. Φανατικοί της κονσόλας, ώρα να την αφήσετε (αστειεύομαι, φυσικά, αφού και ο ίδιος δύσκολα την αφήνω...)

1. Εισαγωγή.

2. Απαραίτητες διευκρινήσεις και τα γνωστά...

3. Εγκατάσταση

4. Ωραία, και τώρα που τον έβαλα, τι κάνω;

5. Συμπεράσματα πρώτης επαφής

6. Themes

7. Επίλογος 1ου άρθρου.

8. READ ME FIRST (έτσι, για αλλαγή βρίσκεται στο τέλος)

[1. Εισαγωγή.]

Επιτέλους, μετά από πολύ - πολύ καιρό, η εποχή της ωριμότητας έφτασε... Η έκδοση 0.15 (και κάτι ψιλά) του πιο φαντεζί και παραμετροποιήσιμου window manager είναι εδώ...

Για όλους τους τυπάκλες με τους ισχυρούς επεξεργαστές και τα >=64ΜΒ τους που δεν είχαν τί να τα κάνουν εκτός από το να τα χαραμίζουν σε ακατονόμαστα λειτουργικά, να η ευκαιρία!

Αλλά και για όλους εσάς που θέλετε να δείτε την τελευταία λέξη της τεχνολογίας στα γραφικά περιβάλλοντα του Linux, ο "Οπτικά υπέροχος" enlightenment είναι ένα must have.

[2. Απαραίτητες διευκρινήσεις και τα γνωστά...]

Ξεκινώντας, και για να μην την πάθω όπως και στο άρθρο για το Gnome, να εξηγηθώ από τώρα ότι τόσο ο enlightment όσο και μερικές από τις βιβλιοθήκες που απαιτεί, είναι "βαριές" (μερικές φορές ασήκωτες) και πολύ bugούχες.

Επίσης, το σύνολο του wm αυτού είναι λίγο αργό, κυρίως λόγω του ότι είναι τόσο, μα τόσο παραμετροποιήσιμος, που πρέπει να λάβει πολλά πράγματα υπόψιν του...

Γενικώς, αυτό που τον καθυστερεί πολύ είναι η διαχείριση των γραφικών από την (πολύ καλή) imlib. Πάντως, αν έχετε (πχ) acceleratedX, θα σας πάει σφαίρα!! Και σίγουρα θα το χαρείτε...

Μην αργείτε λοιπόν!

[3. Εγκατάσταση]

Πάμε μαζί;;;

[3.1 Πού θα τον βρώ;]

Τον enlightenment μπορείτε να τον βρείτε στο σπίτι του http://www.enlightenment.org[1] όπου θα βρείτε και πολλές πληροφορίες για αυτόν, στο linuxberg[2] στο μέρος που ασχολούνται με τα themes του http://e.themes.org[3] όπου θα βρείτε και πολλά themes αλλά και την τρέχουσα development version (cvs), αλλά και σε πολλά άλλα σημεία που ίσως για εσάς να είναι πιο γρήγορα στο κατέβασμα.

1: http://www.enlightenment.org

2: http://linuxberg.forthnet.gr

3: http://e.themes.org

Για περισσότερες πληροφορίες ρίξτε μια ματιά στα mirrors που βρίσκονται στην http://www.enlightenment.org

[3.2 Τι άλλο πρέπει να εγκαταστήσω;]

`Ενα απλό Query στο RPM του enlightenment 0.15.2 μου απήντησε ότι χρειάζεται τα εξής πακέτα.

Κατά πάσα πιθανότητα, μερικά τα έχετε. `Οσα δεν έχετε, ψάξτε τα. Τώρα, αν εσείς βρείτε πιο καινούρια πακέτα, δεν πειράζει να τα κατεβάσετε.

Επειδή, ναι μεν σας αγαπώ αλλά να μπω στον (τρομερό) κόπο της αναζήτησης πακέτων στο δίκτυο δεν το κάνω για κανέναν, θα σας δώσω μια διεύθυνση να τα βρείτε όλα. Είναι η πολύ δημοφιλής http://filewatcher.org[4] του γνωστού σε όλους μας linux ftp watcher όπου και μπορείτε να αναζητήσετε και να βρείτε ό,τι τραβά η ψυχή σας.

4: http://filewatcher.org

TIP: Καλύτερα, αν δεν βρείτε κάτι, ρίξτε και μια ματιά μέσω ftpsearch[5] γιατί εκεί ψάχνει σε όλους τους ftp servers, και όχι μόνο σε όσους ασχολούνται με linux όπως κάνει ο filewatcher.

5: http://ftpsearch.lycos.com

[3.3 Και πως τα περνάω όλα αυτά μέσα στο κουτί μου;]

Αν ξέρετε πως να τα εγκαταστήσετε, προχωρήστε χωρίς να διαβάσετε παρακάτω, μη μου θιχτείτε κιόλα :)))

Αν δεν ξέρετε πως να τα περάσετε όλα αυτά, κάντε το εξής:

`Ετσι, για να σας θυμίζω ότι χρειάζεται και το διάβασμα λιγουλάκι!!!

[4. Ωραία, και τώρα που τον έβαλα, τι κάνω;]

Έλα μου ντε...

[4.1 Προετοιμασία δική μας.]

Αρχίζουμε με μια ωραία τούμπα από τα αριστερά, στη συνέχεια βαδίζουμε στις μύτες των ποδιών μας, καταλήγοντας σε μια πιρουέτα. Επειδή όμως ξέρω ότι δεν ξέρετε να κάνετε τούμπες, (ενώ ξέρετε πιρουέτες) μπορούμε να κάνουμε το εξής:

Βάζουμε στο .xinitrc στο home directory του χρήστη που θέλουμε το enlightenment (το οποίο φροντίζουμε να είναι στο path μας) και γράφουμε startx.

Φυσικά και υπάρχουν και άλλοι τρόποι να ξεκινήσει κανείς τον e, αλλά δεν είναι του παρόντος η ανάλυσή τους. Γι αυτό, όσοι ξέρουν και θέλουν να το κάνουν αλλιώς, ας το κάνουν όπως γουστάρουν.

`Οσοι δεν ξέρουν, ας βολευτούν με τον τρόπο που περιγράφω. Αν και πάλι δεν τα καταφέρουν, τότε καλύτερα να μάθουν να κάνουν τούμπες, πιρουέτες, και να περπατάνε στις μύτες των ποδιών τους.

[4.2 Συνεχίζοντας...]

Ξεκινώντας, ο e σας δείχνει μια εντυπωσιακή αρχική οθόνη με μια progress bar καθώς φορτώνει. Με το που τελειώσει το φόρτωμα, η οθόνη "ανοίγει" παρουσιάζοντάς σας το νέο περιβάλλον εργασίας σας. Περιττό να σας πω ότι ακόμα δεν έχω ξεπεράσει το σοκ που έπαθα όταν "άνοιξε" η οθόνη μου. Έμεινα με τα μάτια γουρλωμένα και το στόμα ανοιχτό!

Μάάάιστα! Καλό φαίνεται. Πάνω στην οθόνη βρίσκεται μια μπάρα (dragbar η λεγόμενη) που έχει αριστερά και δεξιά της κάτι βελάκια. Αν αφήσετε το ποντίκι για κάνα-δύο δεπτερόλεπτα πάνω από αυτά, θα εμφανιστούν tooltips! Αλλά τι tooltips! (Αυτά ήταν το 2ο σοκ, μετά την εισαγωγική οθόνη).

Στη δεξιά μεριά, επίσης, θα δείτε και κάτι άλλα βελάκια, που δυστυχώς δεν δουλεύουν (ακόμα, γιατί παρακάτω θα σας εξηγήσω πως να τα κάνετε να δουλέψουν). Αυτά είναι για την πλοήγηση ανάμεσα στα desktops, τα οποία έχουν διαφορετική "φιλοσοφία" από ότι στους περισσότερους window managers. Θα σας εξηγήσω, αφού πρώτα κάνουμε μια μικρή "επέμβαση" ώστε να μπορούμε να τα δούμε.

Στη δεξιά μεριά υπάρχουν και κάτι εικονίδια. Τι κάνουν αυτά; Ανάλογα με τα κουμπιά του ποντικιού με τα οποία θα πατηθούν, κάνουν μια ενέργεια ή τρέχουν ένα πρόγραμμα. Τα tooltips θα σας βοηθήσουν ξανά...

Τα εικονίδια που υπάρχουν κάτω δεξιά, εκτελούν κάποιες εργασίες, όπως καθάρισμα (redraw) της οθόνης, τρέχει το help του enlightenment, κλείνει τον e ή κάνει restart.

Αυτή είναι η πρώτη οθόνη του enlightenment.

Χρησιμοποιώντας το μεσαίο πλήκτρο του ποντικού σας, εμφανίζεται το menu του e που περιέχει μερικές λειτουργίες, μερικά προγράμματα, και (αυτό που περιμένετε πως και πως οι περισσότεροι) τα themes που έρχονται μαζί με την έκδοση του e που κατεβάσατε.

Ελεύθερα παίξτε, πατήστε τα κουμπάκια του πόντικά σας στο desktop, στην dragbar, σύρτε την dragbar στις πλευρές της οθόνης, στην κάτω μεριά, δοκιμάστε και κανένα άλλο theme (αν έρχεται κανένα μαζί με την έκδοση που κατεβάσατε) τρέξτε κάνα τερματικό, και παίξτε με τα borders του (κάνοντας δεξί κλικ πάνω στην μπάρα του παραθύρου, επιλέγετε διάφορες ιδιότητες για το παράθυρο). Προς το παρόν αποφύγετε το borderless και fixed size, όχι ότι θα γίνει τίποτα φοβερό, αλλά δεν θα υπάρχουν controls του παραθύρου (για resize και τέτοια).

Πριν συνεχίσουμε όμως...

[4.3 Επέμβαση στα .cfg αρχεία του enlightenment.]

Λοιπόν, ελπίζω να είσαστε έτοιμοι για μια μικρή επέμβαση. Μέσα στο directory που εγκαταστήσατε τον e, υπάρχει ένα άλλο directory που λέγεται config. Μέσα σε αυτό, θα βρείτε το αρχειάκι control.cfg

Πάρτε το με τον αγαπημένο σας editor, και κάπου εκεί έχει μια γραμμή που λέει:

__NUMBER_OF_DESKTOPS 1(<-μπορεί να είναι κάτι άλλο, ανάλογα με την έκδοση που έχετε)

Σβήστε λοιπόν τον αριθμό που ακολουθεί αυτή την περιγραφή και βάλτε στη θέση του τον αριθμό των desktops που εσείς θέλετε να έχετε.

Επίσης, κάπου λέει (γράφει δηλαδή, αλλά τέλος πάντων...):

__DESKTOP_AREA_SIZE 2 2

Αυτό, καλύτερα κάντε το 1 1... (είναι τα virtual desktops). Όχι ότι δεν μπορείτε να το κρατήσετε ως έχει, αλλά θα σας πετάει από το ένα virtual desktop στο άλλο, και δεν νομίζω να το εκτιμήσετε...

ΠΡΟΣΟΧΗ! Πριν ξεκινήσετε ξανά τον e, πηγαίνετε στο home/.enlightenment directory του κάθε χρήστη, και σβήστε όλα τα αρχεία που αρχίζουν από . (όλα τα κρυφά δηλαδή). Αυτό γίνεται ώστε ο e να αναγκαστεί να ξαναδιαβάσει το control.cfg.

Τώρα ο e σας πρέπει να ξεκινήσει κανονικά, και μάλιστα να έχει και τα πολλά desktops. Για να σιγουρευτείτε, δοκιμάστε να κάνετε δεξί κλικ στην dragbar. Θα σας βγάλει ένα menu με όλα τα desktops, και με όλα τα προγράμματα που υπάρχουν στο καθένα από αυτά.

[4.4 (Ξανα)συνεχίζοντας]

Όπως είσαστε τώρα, δοκιμάστε να παίξετε με τα κουμπάκια που πάνε πάνω-κάτω, και να σύρετε την dragbar.

Για να μεταφέρετε ένα παράθυρο από το ένα desktop στο άλλο, απλά σύρτε το... (Φοβερή λογική ε;)

Μήπως σας ενοχλούν αυτά τα εικονιδιάκια? CTRL+B και έφυγαν τα εικονιδιάκια, ή CTRL+A και εξαφανίστηκε και η dragbar! (τα επαναφέρετε με τα ίδια πλήκτρα).

Αυτή τη στιγμή, πιστεύω ότι θα ήταν καλό να διαβάζατε το HELP που έχει ο e. Θα σας βοηθήσει σε ορισμένα shortcuts του πληκτρολογίου, που πραγματικά χρειάζονται. Επίσης, θα μάθετε πως να κινείστε καλύτερα μέσα στο νέο σας περιβάλλον, και επίσης (δεύτερο επίσης) δεν θα είμαι αναγκασμένος να τα λέω (γράφω) όλα εγώ!

[5. Συμπεράσματα πρώτης επαφής]

Όπως μάλλον θα καταλάβατε, ο enlightenment είναι ένας πολύ απαιτητικός window manager. Απαιτητικός τόσο σε επεξεργαστική ισχύ, όσο και σε πόρους του συστήματος.

Αυτό μοιραία τον κάνει να έρχεται σε άμεση αντιπαράθεση με κάτι ακατονόμαστα λειτουργικά, μόνο που ακόμα και αυτός απέναντί τους έχει ένα αριθμό πλεονεκτημάτων.

Μερικά από αυτά είναι:

6: http://www.gtk.org

Με μια πρώτη σκέψη, αυτά μου έρχονται στο νου. Φαντάζομαι ότι αν το σκεφτόμουν λίγο ακόμα, θα εύρισκα πολλά περισσότερα, αλλά με πιέζει ο χρόνος... Πρέπει να κλείσω το άρθρο...

Πιστεύω ότι μετά από την πρώτη αυτή επαφή, είσαστε και εσείς το ίδιο εθισμένοι σε αυτό το υπέροχο δημιούργημα του rasterman raster@enlightenment.org[7], στον οποίο έχω ήδη στείλει τα συγχαρητήριά μου, πράγμα που πιστεύω ότι πρέπει να το κάνουμε όλοι.

7: mailto:raster@enlightenment.org

[6. Themes]

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

Όχι κύριοι, δεν υπερβάλλω καθόλου. Και για του λόγου το αληθές, ορίστε μερικά από τα πράγματα που μπορείτε να αλλάξετε:

Αργά το πράγμα ε; Αυτά λίγο-πολύ τα κάνουν όλοι οι wm, δίκιο έχετε. Αυτά που δεν κάνουν όμως είναι τα περισσότερα από τα παρακάτω. Για διαβάστε και μην βιαστείτε να βγάλετε συμπεράσματα πριν σας εξηγήσω και τι είναι όλα αυτά.

`Ολα τα παραπάνω έχουν από ένα .cfg αρχείο που περιγράφει τη συμπεριφορά τους.

Πριν να συνεχίσω, να σας εξηγηθώ ότι σε αυτό το τεύχος του Magaz, διαβάσατε το πρώτο κομμάτι που αφορά στα themes. Στο επόμενο τεύχος του περιοδικού μας, θα διαβάσετε το πως να "φτιάξετε" τα δικά σας. Αυτό γίνεται γιατί για άλλο ξεκίνησα (μια απλή παρουσίαση του enlightenment) και αλλού κατέληξα (ολική παρουσίαση και ανάλυση των αρχείων ρυθμίσεων) με αυτό το άρθρο. Αποτέλεσμα; Με πιέζει ο χρόνος και δεν προλαβαίνω να το γράψω όλο, συνεπώς πάμε για δύο συνέχειες.

Για αυτό το λόγο, η αναφορά στα cfg αρχεία ήταν απλή, μικρής γενικά έκτασης. Επιφυλάσσομαι όμως στο επόμενο τεύχος να σας γράψω πολλές-πολλές λεπτομέρειες για να κάνετε τον enlightenment όπως ακριβώς θέλετε!

[6.1 actionclasses]

Αυτό το αρχείο ελέγχει (και καθορίζει κατ' επέκταση) ο,τιδήποτε συμβαίνει με τον enlightenment. Από το να εκτελούνται νέες εφαρμογές, μέχρι το καθάρισμα του Desktop, το να γίνεται shade ένα παράθυρο, κλπ. Αν θέλουμε κάτι να κάνει ο,τιδήποτε πρέπει να το συνδέσουμε με μια actionclass (πχ, το συνδέουμε με ένα κουμπί, το οποίο περιγράφουμε στο buttons.cfg.

[6.2 borders]

Σε αυτό το αρχείο περιέχονται όλα όσα απαιτούνται για την επιτυχία (ή αποτυχία) ενός theme. Περιέχονται όλες οι ρυθμίσεις που έχουν να κάνουν με τα περιθώρια των παραθύρων σας, το πώς θα σκιάζονται, τί γράμματα θα χρησιμοποιούν, τί pixmaps θα χρησιμοποιούνται στις μπάρες τους, ακόμα και το τί κουμπιά (και σε ποιο σημείο) θα χρησιμοποιούνται και τι θα κάνουν.

[6.3 buttons]

Εδώ περιγράφονται όλα τα κουμπιά που μπορούν να υπάρξουν στο theme σας, και εννοώ τα minimize, maximize, shade, close, και ότι άλλο θα μπορούσε να κάνει μια δουλειά. Τι δουλειά; Ορίστε μερικά παραδείγματα: Μεγιστοποίηση κατά πλάτος, κατά ύψος, make windows sticky (αυτά που φαίνονται σε όλα τα desktops ναι, τα σπαστικά...), και γενικά ό,τιδήποτε θα μπορούσαμε να συνδέσουμε με ένα action (βλέπε και actionclasses.cfg)

[6.4 cursors]

Το λέει και ο τίτλος του, εδώ περιγράφονται οι cursors, πως θα λέγονται, καθώς και τι εικονίδιο θα χρησιμοποιούν.

[6.5 desktops]

Εδώ περιέχονται οι υλοποιήσεις για διάφορα backgrounds τα οποία μπορούμε να χρησιμοποιήσουμε στα desktops μας, και η αντιστοίχησή τους σε διάφορα backgrounds.

[6.6 imageclasses]

Σε αυτό το αρχείο περιέχονται όλες οι αντιστοιχίες των ονομάτων που καταλαβαίνει ο enlightenment με τα αρχεία γραφικών που έχουμε επιλέξει.

[6.7 menustyles]

Τα στυλ που θα έχουν τα διάφορα menu του enlightenment. Θα το αναλύσουμε περισσότερο στο επόμενο τεύχος.

[6.8 slideouts]

Για αυτό θα συζητήσουμε στο επόμενο τεύχος, μια και σαν οντότητα είναι σχετικά πολύπλοκη, και θα ήταν κρίμα να σας μπερδέψω από τώρα.

[6.9 sound]

Οι ήχοι του συστήματος, τι θα παίζει και σε ποιες στιγμές (πχ, στην έναρξη, όταν γίνεται κάποιο λάθος, κλπ).

[6.10 textclasses]

Να και το αρχείο που καθορίζει πως θα ονομάζονται οι κλάσεις γραμματοαπεικονίσεων (ε, είμαι και γλωσσοπλάστης) και τι χαρακτηριστικά θα έχει η κάθε μία, ώστε να είναι έτοιμος ο enlightenment να τις χρησιμοποιήσει σε borders, menus, και άλλα.

[6.11 tooltips]

Αυτό το αρχείο είναι υπεύθυνο για την υλοποίηση αυτών των πανέμορφων tooltips (που έρχονται μαζί με τον enlightenment, όχι των δικών σας...). Περιγράφει ποια αρχεία γραφικών θα χρησιμοποιούνται για τα συννεφάκια, ποιο εικονίδιο και τί στυλ γραμμάτων θα χρησιμοποιείται.

[6.12 windowmatches]

Θα το συζητήσουμε διεξοδικά στο επόμενο τεύχος. Πάντως χοντρικά κάνει μερικές αντιστοιχίες, δηλαδή σαν να του λέμε:

"Σε παρακαλώ κύριε enlightenment, όλα τα παραθυράκια που έχουν τίτλο The GIMP να έχουν εξ' ορισμού border που να λέγεται SIDE" USE_BORDER_FOR_CLIENT_WITH_TITLE("The GIMP", "SIDE")

[7. Επίλογος 1ου άρθρου.]

Αυτά τα ολίγα προς το παρόν για τον αγαπημένο μου window manager. Στο επόμενο τεύχος (πρώτα ο Θεός) σας υπόσχομαι να σας μπάσω βαθιά (πολύ βαθιά) στο themeing.

Μέχρι τότε, σας εύχομαι καλά μπάνια (Τι;; ακόμα δεν αρχίσατε; Κρίμα!).

Επί του πιεστηρίου: ΑΣ ΕΛΠΙΣΟΥΜΕ ΝΑ ΜΗΝ ΕΜΠΛΑΚΟΥΜΕ ΣΕ ΚΑΝΑ ΠΟΛΕΜΟ ΤΩΡΑ, ΓΙΑΤΙ ΔΕ ΓΟΥΣΤΑΡΩ ΚΑΘΟΛΟΥ. ΑΣΕ ΠΟΥ ΜΟΛΙΣ ΑΠΟΛΥΘΗΚΑ...

[8. READ ME FIRST (έτσι, για αλλαγή βρίσκεται στο τέλος)]

Παράκληση:

Θα το εκτιμούσα αν οποιεσδήποτε πληροφορίες που αναφέρονται σε αυτό το άρθρο δεν αναδημοσιεύονταν, ή σε αυτή την περίπτωση να γίνεται μια αναφορά στο hellug[8] και στο magaz[9].

8: http://www.hellug.gr

9: http://magaz.hellug.gr

Για ό,τι σχόλια έχετε, για τυχόν παρατηρήσεις και ερωτήσεις σχετικά με τον e, στείλτε μου mail στο papas@hellug.gr[10]. Να ξέρετε ότι ίσως να δημοσιευτεί στο magaz[11].

10: mailto:papas@hellug.gr

11: http://magaz.hellug.gr

Αρχική Σελίδα