Page 69 - Linux Inside τ. 11

Linux Inside
69
αναφέρουμε ότι μετά τη δημιουργία του πρόσθετου μπορού-
με να το ανεβάσουμε και στη σελίδα του Mozilla με τα πρό-
σθετα και να γίνεται η λήψη του από τη «Λήψη προσθέτων»
του Firefox.
Αυτό θα έχει ως αποτέλεσμα το πρόσθετο που θα δημιουρ-
γήσουμε να περνάει όλα τα τεστ ασφαλείας και έτσι δεν θα
αντιμετωπίσουμε κανένα απολύτως πρόβλημα.
Στο πρόσθετο μπορούμε να χρησιμοποιήσουμε και δικά
μας εικονίδια. Τα εικονίδια που θα χρησιμοποιήσουμε θα πρέ-
πει να τα τοποθετήσουμε στο φάκελο icons και θα πρέπει να
είναι πολύ μικρά, με διαστάσεις 16x16, ώστε να μη φαίνονται
θολά και να έχουμε καλό αποτέλεσμα. Το είδος των εικονι-
δίων θα πρέπει να είναι PNG και για να έχουμε ακόμα καλύτε-
ρο αποτέλεσμα, καλό είναι να μην έχουν κάποιο χρώμα φό-
ντου, αλλά το φόντο να είναι διάφανο.
Τα προβλήματα
Δυστυχώς, το Easy Menu έχει αρκετό καιρό να ανανεωθεί
(
περίπου τρεισήμισι χρόνια!) και αν κατεβάσουμε το
EasyMenu_1.0.6 και δοκιμάσουμε να δημιουργήσουμε το
πρόσθετό μας, θα αντιμετωπίσουμε δύο προβλήματα. Για να
διορθώσουμε, λοιπόν, αυτά τα προβλήματα και να δημιουρ-
γηθεί το πρόσθετό μας χωρίς κανένα πρόβλημα και να λει-
τουργεί σε νεότερες εκδόσεις του Firefox, θα χρειαστεί να κά-
νουμε το παρακάτω (είναι οι αλλαγές που αναφέραμε στην
αρχή ότι θα χρειαστεί να κάνουμε).
Το πρώτο πρόβλημα είναι ότι θα δημιουργήσει το πρόσθε-
τό μας για αρκετά παλιές εκδόσεις του Firefox, συγκεκριμένα
για την έκδοση Firefox 3.5. Για να το διορθώσουμε αυτό,
υπάρχουν δύο τρόποι:
Ο πρώτος είναι μέσω της εντολής find σε συνδυασμό με τη
sed. Ο παρακάτω συνδυασμός λέει ουσιαστικά στη find να
βρει όλα τα αρχεία .py στον τρέχοντα κατάλογο και σε όλα
αυτά να εκτελέσει την εντολή sed, η οποία ψάχνει το περιεχό-
μενό του για το string 3.5 και το αντικαθιστά με το 20.
Ανοίγουμε λοιπόν ένα τερματικό, πηγαίνουμε στο φάκελο
του Easy Menu (δηλαδή cd ~/easymenu) και εκτελούμε την
εντολή:
find . -name "*.py" -exec sed -i 's/3.5./20./g' {} \;
Προσοχή στην εντολή γιατί, αν την εκτελέσουμε σε λάθος
τοποθεσία, μπορεί να δημιουργήσουμε προβλήματα σε άλλα
αρχεία.
Ο δεύτερος τρόπος, αν δεν θέλουμε να χρησιμοποιήσουμε
την παραπάνω εντολή, είναι να επεξεργαστούμε το αρχείο
install.rdf από το XPI που θα δημιουργηθεί στο τέλος της δια-
δικασίας και να αλλάξουμε τη μέγιστη έκδοση από εκεί.
Η δεύτερη αλλαγή που πρέπει να κάνουμε αφορά στο αρ-
χείο contents.py, που βρίσκεται στο φάκελο ~/easymenu/lib
και συγκεκριμένα στις γραμμές (268, 271, 273, 275, 303) να
αντικαταστήσουμε τη λέξη «class» με τη λέξη «menuclass»
(
οκτώ αλλαγές συνολικά). Περισσότερα για το πρόβλημα αυ-
τό μπορείτε να δείτε στο [3].
Ελπίζουμε η νέα έκδοση του Easy Menu να μην αργήσει
πολύ και να ανανεωθεί σύντομα για να μην χρειάζεται να κά-
νουμε αυτή τη διαδικασία.
Οπότε, αν έχουμε έτοιμο το αρχείο μας και τα εικονίδια
που θέλουμε να είναι στο μενού και έχουμε κάνει τις παραπά-
νω δύο διορθώσεις, το μόνο που έμεινε είναι να δημιουργή-
σουμε το πρόσθετο. Αυτό θα γίνει πολύ εύκολα. Ανοίγοντας
ένα τερματικό στο φάκελο που έχουμε το αρχείο XML και τα
αρχεία του Easy Menu, και εκτελώντας την εντολή
python easymenu.py -s όνομα_αρχείου.xml
Κατά την εκτέλεση της εντολής θα μας κάνει μία ερώτηση
για το τι θέλουμε να κάνουμε. Συγκεκριμένα, θα χρειαστεί να
επιλέξουμε για ποια έκδοση θέλουμε να δημιουργηθεί το
πρόσθετο. Εδώ θα πρέπει να επιλέξουμε το γράμμα «p» για
να δημιουργηθεί το πρόσθετο για νέες εκδόσεις του Firefox.
Παρατηρούμε ότι δημιουργούνται δύο αρχεία και ένας φάκε-
λος
(
εικόνα 3)
.
Ανάμεσα σε αυτά θα είναι το αρχείο XPI, δηλαδή το αρχείο
του προσθέτου μας για να το εγκαταστήσουμε στον Firefox.
Επίσης, θα δείτε ένα αρχείο TAR.GZ και έναν φάκελο που θα
περιέχουν τον κώδικα από το πρόσθετό μας. Αυτά μπορούμε
να τα διαγράψουμε, αν θέλουμε.
Τέλος, το μόνο που έμεινε να κάνουμε είναι να εγκαταστή-
σουμε το πρόσθετο που δημιουργήσαμε και να το δοκιμάσου-
με. Ίσως πρόκειται και για τον πιο εύκολο τρόπο δημιουργίας
πρόσθετου μενού στον Firefox, καθώς και μία ευχάριστη
εμπειρία για όποιον το δοκιμάσει.
Εμείς δημιουργήσαμε ένα τέτοιο πρόσθετο (Linux Inside
menu) μενού για τον Firefox, το οποίο θα βρείτε στο συνοδευ-
τικό DVD του τεύχους, στο φάκελο /MAGAZINE/Firefox. Το
μενού του πρόσθετου αναφέρεται φυσικά στην ιστοσελίδα
του περιοδικού (www.linuxinside.gr), ώστε να είναι ακόμα πιο
εύκολη και γρήγορη η περιήγησή σας σε αυτήν.
Linux Labs – Firefox
Το πρόσθετο του «Linux Inside»
Προσοχή: Το πρόσθετο που θα βρείτε στο DVD τρέχει στις παρα-
κάτω εκδόσεις του Firefox:
Firefox:
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.5
ως 20.*
Android:
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11.0
ως 20.*
SeaMonkey:
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.0
ως 2.15a1
Mobile:
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.0
ως 20.*
Σύνδεσμοι
[1]
Easy Menu:
[2]
Παραδείγματα XML:
[3]
Ασυμβατότητες:
Εκτελώντας το Easy Menu.
3