|
Πώς να κάνετε τον FVWM2 πιο Στυλάτο
The
Reverant
Ιανουάριος 2000
Ο FVWM2 είναι ένας Window Manager (WM) που λόγω ηλικίας
είναι πλέον αρκετά "ώριμος" και σταθερός. Δυστυχώς όμως,
είναι περισσότερο "ώριμος" από όσο θα έπρεπε όσον αφορά την
εμφάνισή του, και είναι αναμφισβήτητο γεγονός το ότι η
λειτουργικότητά του χρήζει παραιτέρω βελτίωσης.
Αυτός είναι και ο σκοπός αυτού του άρθρου. Πρωτίστως να
βελτιώσει το εντελώς ανιαρό και συντηρητικό standard look
του FVWM2, και να βελτιώσει στα σημεία τη λειτουργικότητά
του. Αρχίζουμε λοιπόν... :-)
ΣΗΜΕΙΩΣΗ: Αυτό το άρθρο προϋποθέτει κάποια εξοικείωση με
τον FVWM2. Αν αυτή δεν υπάρχει, προτείνεται η χρήση του
μέχρι κάποιου σημείου εξοικείωσης, καθώς και η ανάγνωση
της man σελίδας (man fvwm2 μόνο για όποιον έχει
πραγματικά ΓΑΙΔΟΥΡΙΝΗ υπομονή. Ο υπογράφων μερικές
φορές δεν φάνηκε αρκετά "ζώον" και η υπομονή του
δοκιμάστηκε πέραν ανθρωπίνων ορίων :-) )
Πρώτο βήμα είναι να βρούμε το config αρχείο του FVWM2.
Αυτό είναι το .fvwm2rc το οποίο αναζητείται στο home
directory του χρήστη. Εαν δεν βρεθεί εκεί, τότε
χρησιμοποιείται το system-wide που συνήθως βόσκει στο
λιβάδι /usr/X11R6/lib/X11/fvwm2/.fvwm2rc. Δεν προτείνεται
να πειράξετε το system-wide αρχείο, αντιθέτως, πειράξτε
το αντίστοιχο ενός απλού χρήστη. Και φυσικά, πριν κάνετε
οποιαδήποτε παρέμβαση, κάντε ένα τριπλό backup του
αρχείου αυτού, για κάθε ενδεχόμενο.
Κατόπιν, ανοίγουμε το αρχείο .fvwm2rc με έναν editor και
αρχίζουμε:
-
Window buttons - Μπορούμε να ορίσουμε την εμφάνιση των
window control buttons. Τα standard κρίνονται
ικανοποιητικά, οπότε αφήνονται ως εχουν.
-
General Configuration - Διάφορες γενικοί παράμετροι του
FVWM2. Αυτό που θα πειραχθεί από εδώ είναι το
DeskTopSize. Αυτή η παράμετρος ορίζει πόσα virtual
desktops θα εμφανίζονται στον pager. Η default τιμη 3x2
μέχρι τώρα δεν μου έχει χρησιμεύσει προσωπικά.
Τουναντίον μάλιστα :-). Για αυτό και βάζουμε τιμή 2x2:
DeskTopSize 2x2
-
Colors and fonts - Μπορούμε να ορίσουμε τα χρώματα των
selected windows και των διαφόρων menu. Με τη δήλωση:
HilightColors TextColor BackColor
το selected window θα έχει ως font color το "TextColor" και ως background color
το "backColor". Αυτά τα χρώματα μπορεί να είναι οποιαδήποτε χρώματα που αναφέρονται στο
αρχείο: /usr/X11R6/lib/X11/rgb.txt
Για τα sticky παράθυρα:
StickyColors TextColor BackColor
Για τα ανενεργά παράθυρα, καθώς και για συγκεκριμένα παράθυρα, θα
χρησιμοποιήσουμε τη Style δήλωση, της οποίας η χρήση αναλύεται αργότερα. Κατόπιν, για
το χρώμα & το font των menus:
Menustyle TextColor BackColor OtherColor -misc-fixed-medium-r-normal-*-15-*-75-75-c-90-iso8859-1 fvwm
Το "OtherColor" δεν έχει διαπιστωθεί που χρησιμεύει (κανείς;). Κατόπιν, η
standard δήλωση του font που θέλουμε.
-
Functions για Initialization, Restart & Exit.
Functions είναι δηλώσεις που εκτελούνται κατόπιν
κάποιας πράξης του χρήστη, π.χ. πατάει ένα button στο
FvwmButtons, ή κάνει κλικ στο desktop, κ.τ.λ. Αυτές
εκτελούνται κατόπιν αναλόγου σήματος του WM. Για
initialization (οι παρακάτω δηλώσεις θα εκτελούνται
όταν ο FVWM2 γίνεται initialized):
Δήλωση της function "InitFunction":
AddToFunc InitFunction
Και μετά έχουμε:
-
Το module "FvwmBanner" δεν χρησιμεύει πουθενά,
οπότε κερδίζει ένα comment-out σύμβολο (#) με την
αξία του! :-)
#+ "I" Module Fvwmbanner
-
Τα xmessages προτιμώ προσωπικά να εμφανίζονται σε
ενα xterm με background χρώμα το μαύρο και text
χρώμα το πράσινο (Old-schoοl terminal), με τίτλο
"Xmessages", και ένα συγκεκριμένο geometry (δηλαδή
μέγεθος και σημείο τοποθέτησης του παραθύρου πάνω
στο desktop) που βολεύει. Αυτό γίνεται με την εξής
δήλωση:
+ "I" Exec xterm -geometry 83x10+0+1120 -bg black -fg green -T "XMessages" -e tail -f /root/.X.err
Η original δήλωση αφαιρείται όπως έχει.
-
Το default xterm που εμφανίζεται με το
initialization του fvwm2 έχει χάλια χρώματα, οπότε:
+ "I" Exec xterm -geometry +0+88 -bg black -fg green
-
Ένα όμορφο background πάντα βοηθάει την κατάσταση
:-)
+ "I" Exec xpmroot /root/pics/skull.xpm
ΣΗΜΕΙΩΣΗ: Για όποιον ενδιαφέρεται, οι εικόνες και τα εικονίδια που χρησιμοποιώ,
θα είναι διαθέσιμα από 5-6 Ιανουαρίου στο:
http://reverant.fortunecity.com/linux-icons.tar.gz.
Τα κάνετε extract με:
$: tar zxfv linux-icons.tar.gz
και ύστερα τα αντιγράφετε στο: /usr/X11R6/include/X11/pixmaps
-
Με ενδιαφέρει επίσης να μπορώ να βλέπω τα διάφορα
log messages χωρίς να αλλάζω consoles συνεχώς,
οπότε:
+ "I" Exec xterm -ls -geometry 100x10+513+1120 -T "Messages" -bg black -fg green -e tail -f /var/log/messages
-
Μια ΜΕΓΑΛΗ έλλειψη του FVWM2 όπως έρχεται το
config του, είναι ένα είδος taskbar, η οποία να
δείχνει ποια παράθυρα υπάρχουν, και να βοηθάει στην
μεταξύ τους εναλλαγή. Αυτό το πρόβλημα λύνεται με
τη χρήση του module "FvwmTaskBar":
+ "I" Module FvwmTaskBar
Για Restart (Οι παρακάτω δηλώσεις θα εκτελούνται
όταν κάνουμε restart τον FVWM2). Τα βήματα 2, 4 και 5
επαναλαμβάνονται σε αυτήν τη δήλωση:
AddToFunc RestartFunction
+ "I" Exec xterm -geometry 83x10+0+1120 -bg black -fg green -T "XMessages" -e tail -f /root/.X.err
+ "I" Exec xpmroot /root/pics/skull.xpm
+ "I" Exec xterm -ls -geometry 100x10+513+1120 -T "Messages" -bg black -fg green -e tail -f /var/log/messages
Εννοείται ότι οι original δηλώσεις για xmessages, xpmroot αφήνουν το μάταιο τούτο
config file :-)
Η Exit function αφήνεται όπως έχει.
-
Functions - Το ψωμί της υπόθεσης, ή αλλιώς, "όλα τα
λεφτά!". Εδώ δηλώνουμε τις functions, κοινώς δηλαδή τι
γίνεται όταν λαμβάνει χώρα κάποιο γεγονός
(μπερδευτήκατε;), π.χ. κάνουμε κλικ σε ενα button του
FvwmButtons. Μια function, προκειμένου να δηλώσουμε την
εμφάνιση ενός menu με επιλογές, έχει την εξής μορφή:
AddToMenu OnomaTisFunctionPopUp "Onoma Tis Function" Title
...Εδώ μέσα δηλώσεις για το τι περιλαμβάνει η function...
# end popup OnomaTisFunction
Εξηγήσεις:
Με την λέξη "AddToMenu" δηλώνουμε μια function η οποία
θα κάνει PopUp μια λίστα με εντολές. Μετά δηλώνεται το
όνομα της function. Στην περίπτωσή μας, αυτό είναι
"OnomaTisFunctionPopUp". Δηλαδή, όποτε θέλουμε να
αναφερθούμε στη function αυτή, θα χρησιμοποιούμε το
όνομα αυτό. Προσοχή, το όνομα της function δεν μπορεί
να έχει κενά ανάμεσα στα γράμματα, ούτε κάποιους
ειδικούς χαρακτήρες.
ΣΗΜΕΙΩΣΗ: Στην πραγματικότητα, με τη δήλωση
"AddToMenu" δεν δηλώνουμε μια function, αλλά ένα menu,
που είναι κατά κάποιο τρόπο μια function, απλά το μόνο
που μπορεί να κάνει είναι να εμφανίζει μια λίστα. Για
λόγους απλούστευσης όμως, θα θεωρούμε και τα menus ως
functions. Κατόπιν, δηλώνεται το όνομα που θέλουμε να
εμφανίζεται στην ανώτερη θέση της λίστας, δηλαδή ένα
όνομα που περιγράφει τι εντολές περιέχονται στη λίστα,
και μετά την ειδική λέξη "Title". Ένα παράδειγμα είναι
π.χ. "Shells", ή "My Programs". Εδώ επιτρέπονται και
κενά, και ειδικοί χαρακτήρες (Για περισσότερες
πληροφορίες, κοιτάξτε το manual page του fvwm2). Εάν
κάποιος δεν θέλει να εμφανίζεται καθόλου τίτλος, απλά
δεν γράφει έναν και ΔΕΝ βάζει την λέξη Title μετά το
όνομα της Function.
... Μετά οι δηλώσεις για τα περιεχόμενα της λίστας
(εξηγούνται παρακάτω, υπομονή παρακαλώ :ο) )...
Τέλος, εάν θέλει κανείς μπορεί για λόγους
ευκολίας ανάγνωσης και μόνο να βάλει ένα comment-out
και μετά να δηλώσει "end popup onomatisfunction". Αυτό
είτε το βάλει κανείς είτε δεν το βάλει, ένα και το
αυτό. Απλά, για να είναι ξεκάθαρο που τελειώνει η
δήλωση της function καλό θα ήταν να το δηλώνετε.
Και τώρα οι δηλώσεις για το τι θα περιλαμβάνει η PopUp
λίστα που θα εμφανίζεται. Γενικά, μια δήλωση έχει ως
εξής:
+ "Onoma entolis%onomaicon.xpm" Kanekati
Όπου:
-
Onoma entolis είναι το όνομα της εντολής που θα
εμφανίζεται σε μία PopUp λίστα, π.χ. StarOffice, ή
BitchX. Προσοχή στο ότι αυτό το όνομα δεν είναι η
"πραγματική" εντολή που θα εκτελεστεί από τον WM.
Είναι απλά ένα όνομα, ένα "alias". Κατόπιν,
τοποθετούμε το σύμβολο "%" για να διαχωρίσουμε το
alias από το filename του icon που θέλουμε να
χρησιμοποιήσουμε για το alias αυτό, και ταυτόχρονα
να δηλώσουμε ότι το icon θέλουμε να εμφανιστεί
δίπλα στο alias (χρησιμοποιώντας το σύμβολο "$"
αντί του "%" δηλώνουμε ότι θέλουμε το icon να
εμφανιστεί πάνω από το alias). Προσοχή στο ότι η
συνένωση αυτών των δύο δηλώσεων πρέπει να είναι
μέσα σε εισαγωγικά (double quotes: ").
-
Ακολουθεί η εντολή που θέλουμε να πραγματοποιηθεί.
Αυτή μπορεί να είναι είτε μια κανονική εντολή που
θα εκτελοέσαμε εμείς στο shell, είτε μια εντολή
προς τον WM να εμφανίσει μια άλλη PopUp λίστα. Για
να εκτελέσει ο WM ένα πρόγραμμα, δηλώνουμε:
+ "Onoma entolis%onomaicon.xpm" Exec enaprogramma
π.χ., για να εκτελέσουμε ένα bash shell, δηλώνουμε:
+ "Bash shell%bash.xpm" Exec bash
Άλλο παράδειγμα, για το XISP:
+ "XISP%xisp.xpm" Exec xisp
Αν θέλουμε, μπορεί αντί να εκτελεστεί μια εντολή,
να εμφανιστεί μια άλλη PopUp λίστα. Για να το κάνουμε
αυτό, δηλώνουμε:
+ "List of programs%programs.xpm" PopUp ProgramsPopUp
όπου ProgramsPopUp μια function με το όνομα αυτό.
Γνωρίζοντας τα παραπάνω ας αρχίσουμε λοιπόν να
γράφουμε/τροποποιούμε τις functions που θα χρειαστούμε,
αφού σκεφτούμε πρώτα τι χρειαζόμαστε από ένα WM.
Χρειαζόμαστε λοιπόν:
-
Μια function για να χειριζόμαστε διάφορες
παραμέτρους του WM (modules, exit/restart, start
another WM), βοήθεια για τον WM και τα modules του,
καθώς και για reboot/halt του συστήματος.
-
Μια function για ανεύρεση αρχείων.
-
Μια function για βοήθεια
-
Μια function για να ξεκινάμε ένα shell (Το γιατί
πρέπει να είναι ξεχωριστή αυτή η function από τις
άλλες είναι θέμα εργονομίας: Ένα shell συνήθως
εκτελείται αρκετές φορές παραπάνω από οποιοδήποτε
άλλο πρόγραμμα.)
-
Μια function για γενικό configuration του
συστήματος
-
Μια function για να τρέχουμε κάποια συχνά
χρησιμοποιούμενα προγράμματα μας.
-
Μια function για άμεση πρόσβαση σε δισκους, CD-ROM,
Floppy, κ.τ.λ.
Για την πρώτη function, θα χρησιμοποιήσουμε μια
υπάρχουσα. Αυτή είναι η thiswmpopup:
###############################################################################
#
# thiswmpopup
#
###############################################################################
AddToMenu thiswmpopup "Fvwm2" Title
+ "Other window managers%small.icon_warning_3d.xpm%" Popup otherwmpopup
+ "Fvwm2 Modules%small.install_3d.xpm%" Popup modulepopup
+ "Configuration%small.checklist2_3d.xpm%" Popup susewmpopup
+ "Fvwm2 Man Pages%small.xman3d.xpm%" Popup wmmanpopup
+ "" Nop
+ "Restart Fvwm2%small.restart_suse_3d.xpm%" Restart fvwm2
+ "Exit Fvwm2 and X%small.exit.xpm%" Function QuitSave
# end popup thiswmpopup
στην οποία θα προσθέσουμε τις εξής 2 γραμμές:
+ "Reboot System" Exec Reboot
+ "Halt System" Exec Halt
για να κάνουμε reboot & halt αντίστοιχα όλο το
σύστημα.
Δεύτερη function είναι η function που μας βοηθά στο
να βρούμε κάποιο αρχείο γρήγορα, χωρις να θυμόμαστε
πολύπλοκες συντάξεις εντολών, π.χ. της find:
############################################################
#
# findpopup
#
############################################################
AddToMenu findpopup "Find" Title
+ "Find a file*find.xpm*" Exec xterm -bg black -fg green -e findfile
# end popup findpopup
To findfile είναι ένα shell script που έχει γραφεί με
σκοπό τον προαναφερθέντα, και είναι το εξής:
echo "Filename?"
read filename
echo "Search where?"
read pathname
find $pathname -name $filename
echo "Done, press enter to exit"
read anykey
exit
Η τρίτη function είναι η function που θα μας
εμφανίζει τα σχετικά με help, documentation, κ.τ.λ.
Συγκεκριμένα, θα τρέχει το xman για να διαβάσουμε
κάποια man page, μας ανοίγει τον xfilemanager στο
/usr/doc/howto/en/ ή στο /usr/doc/howto/el/ :
############################################################
#
# helpmepopup
#
############################################################
AddToMenu helpmepopup "Help" Title
+ "Manual Pages%small.xman3d.xpm%" Exec xman
+ "Greek HOWTO's%help1.xpm%" Exec xfilemanager -rootDir /usr/doc/howto/el -singleWindow
+ "English HOWTO's%help1.xpm%" Exec xfilemanager -rootDir /usr/doc/howto/en -singleWindow
# end popup findpopup
Με την τέταρτη function θα εμφανίζεται ένα xterm,
στοιχείο πολύ βασικό στο Πραγματικό Λειτουργικό :-)
############################################################
#
# runmepopup
#
############################################################
AddToMenu runpopup "Shells" Title
+ "Old-school Xterm%small.greenterm.xpm%" Exec xterm -bg black -fg green
# end popup findpopup
Με την πέμπτη function θα εμφανίζεται μια λίστα με
διάφορες επιλογές για configuration, π.χ. για kernel
configuration, εκτέλεση του yast (Για S.u.S.E.
μόνο!), καθώς και για configuration των Χ:
############################################################
#
# mesettingspopup
#
############################################################
AddToMenu mesettingspopup "Settings" Title
+ "Yast%small.yast_suse_3d.xpm%" Exec xterm -bg balck -fg green -e yast
+ "Kernel Configuration" Exec xterm -bg black -fg green -e mkmc
+ "X configuration" Exec xterm -bg black -fg green -e Xconfig
# end popup mesettingspopup
Με την έκτη function θα εμφανίζεται μία λίστα με
διάφορα προγράμματα που θα χρησιμοποιούνται συχνά -
για αυτό και η ανάγκη για μια δικιά τους function.
Κόφτε και ράφτε κατά τα μέτρα σας :-) :
############################################################
#
# meprogramspopup
#
############################################################
AddToMenu meprogramspopup "Programs" Title
+ "Netscape%netscape1.xpm%" Exec netscape
+ "X11Amp%x11amp.xpm%" Exec x11amp
+ "The Gimp%gimp.xpm%" Exec gimp
+ "GRio%grio.xpm%" Exec grio
+ "KEdit%kedit.xpm%" Exec kedit
+ "Bitchx%bitchx.xpm%" Exec bitchx
+ "Kmix%kmix.xpm%" Exec kmix
+ "XIsp%xisp.xpm%" Exec xisp -nohints
+ "Acrobat Reader%acrobat.xpm" Exec xpdf
# end popup findpopup
Τέλος, η function για πρόσβαση στα διάφορα drives:
############################################################
#
# medrivespopup
#
############################################################
AddToMenu medrivespopup "Drive I/O" Title
+ "Root filesystem%hdd.xpm" Exec xfilemanager -rootDir / -singleWindow
+ "CD-ROM%cdrom.xpm" Exec xfilemanager -rootDir /cdrom -singleWindow
+ "Floppy%floppy.xpm" Exec xfilemanager -rootDir /floppy -singleWindow
# end popup medrivespopup
Σημείωση: Αν χρησιμοποίησετε τις functions αυτές, θα
παρατηρήσετε ότι πρέπει να κρατάτε πατημένο το
πλήκτρο του πόντικα σας ή του πληκτρολογίου σας για
να παραμείνει η λίστα στην οθόνη. Για να το αποφύγετε
αυτό, κάντε το εξής: Γράφτε μια function σαν την
παρακάτω, για κάθε function που θέλετε να συμβαίνει
αυτό, και στη συνέχεια αντί να καλείτε την πρωτότυπη,
καλέστε την καινούργια. Π.χ., για την medrivespopup,
γράφουμε την εξής function:
AddToFunc medrivespopupfunc
+ "I" Popup medrivespopup
# end function medrivespopupfunc
-
Η δήλωση "Style" - Με αυτήν μπορούμε να δηλώσουμε
συγκεκριμένες ιδιότητες που θα έχει κάποιο ή όλα τα
παράθυρα. Αυτή η δήλωση δεν γίνεται μόνο μια φορά αλλά
πολλές - τόσες ώστε να αποδώσουμε όλες τις επιθυμητές
ιδιότητες στα παράθυρά μας. Μια δήλωση style έχει ως
εξής:
style "titleparathirou" idiotita1, idiotita2, idiotia3, κ.τ.λ.
όπου titleparathirou ο τίτλος του παραθύρου στο οποίο θέλουμε να δώσουμε τις
ιδιότητες idiotita1, idiotita2, idiotita3, κ.τ.λ. Αν αυτές τις ιδιότητες θέλουμε να τις
αποδώσουμε σε όλα τα παράθυρα, τότε δηλώνουμε:
style "*" idiotita1, idiotita2, idiotia3, κ.τ.λ.
Άν ακόμα έχουμε ένα παράθυρο του οποίου ο τίτλος δεν είναι απολύτως σταθερός,
όπως π.χ. το xosview, του οποίου ο τίτλος εξαρτάται από το όνομα του μηχανήματος
(Hostname), τότε μπορούμε να δηλώσουμε:
style "katistathero*" idiotita1, idiotita2, idiotia3, κ.τ.λ.
όπου katistathero είναι το μέρος του τίτλου τού παραθύρου που μένει σταθερό. Ας
αρχίσουμε λοιπόν τις style δηλώσεις που μας ενδιαφέρουν:
-
Το module FvwmTaskbar είναι μια Taskbar η οποία
έχει κουμπιά με τα προγράμματα που τρέχουν. Επειδή
είναι αρκετά χαζό να συμπεριλαμβάνεται ο εαυτός
της, θα της δώσουμε την ιδιότητα WindowListSkip, η
οποία εξαιρεί την εμφάνιση του προγράμματος στο
οποίο αποδίδουμε την ιδιότητα, στην Taskbar. Ακόμα,
δεν θέλουμε η Taskbar να έχει τίτλο και
"decorations", για αυτό της δίνουμε την ιδιότητα
NoTitle. Ακόμα, θέλουμε να είναι συνεχώς ορατό,
οπότε του δίνουμε την ιδιότητα StaysOnTop. Έτσι
έχουμε:
Style "FvwmWinList" NoTitle, WindowListSkip, StaysOnTop
-
Το εικονίδιο του xterm είναι επειικώς
απαράδεκτο, οπότε:
Style *xterm* Icon greenterm.xpm
Με τη δήλωση αυτή, δηλώνουμε ότι θέλουμε όταν το xterm γίνεται iconified, το
εικονίδιό του να είναι το greenterm.xpm
-
Εμένα μου αρέσουν αυτά τα χρώματα στα inactive
παράθυρά μου:
Style "*" BackColor Purple4
Style "*" ForeColor Red
BackColor to background χρώμα του παραθύρου, ForeColor το χρώμα των γραμμάτων του
τίτλου του παραθύρου. Αν δεν σας αρέσουν, ξέρετε τι να κάνετε :-P
-
FvwmButtons - Το FvwmButtons είναι ένα Module του FVWM,
το οποίο είναι ουσιαστικά μια μπάρα με κουμπιά, και
εμείς διαλέγουμε πόσα κουμπιά θα έχει, τι θα κάνει το
καθένα, κ.τ.λ. Αρχίζουμε με τα χρώματα, τών οποιων η
δήλωση είναι αρκετά απλή:
*FvwmButtonsFore Green
*FvwmButtonsBack Purple4
και ύστερα η θέση του στο desktop, η οποία είναι ελαφρώς μετατοπισμένη προς τα
κάτω, γιατί επάνω από το FvwmButtons θα τοποθετηθεί η TaskBar:
*FvwmButtonsGeometry +0+31
Άν θέλετε, μπορείτε όπως εγώ να βγάλετε τις δηλώσεις των xclock, xeyes, και
asclock, γιατί καταλαμβάνουν πολύτιμο χώρο. Εξ άλλου, η Taskbar διαθέτει ρολόι στο δεξί
άκρο της. Έχουμε λοιπόν:
#*FvwmButtons - - Swallow "FvwmXeyes" Exec xeyes -name "FvwmXeyes" -geometry +0+0 -bg grey67 &
#*FvwmButtons - - Swallow "FvwmXclock" Exec xclock -name "FvwmXclock" -geometry +0+0 -padding 1 -bg grey67 &
#*FvwmButtons - - Swallow "asclock" Exec asclock -position +0+0 -shape -led green &
Για το αν το coolmail αξίζει το χώρο που πιάνει, εγώ προσωπικά νομίζω πως όχι,
οπότε... Αν βέβαια εσείς θέλετε να το έχετε, ε, τι να κάνουμε... :-) Και τώρα οι
ζουμερές δηλώσεις ;-)
*FvwmButtons "" shutdown.xpm Function barthiswmpopupfunc
Με την παραπάνω δηλώνουμε ότι θέλουμε να προσθέσουμε
ένα button στο FvwmButtons, το οποίο δεν έχει καθόλου
κείμενο πάνω του (Τα εισαγωγικά είναι κενά. Ο λόγος
είναι ότι στη συγκεκριμένη περίπτωση, το εικονίδιο
έχει πάνω του το περιγραφικό κείμενο, π.χ. "I/O
Access", ή "Help".), ενώ όταν κάνουμε αριστερό κλικ
πάνω εκτελείται η function barthiswmpopupfunc, η
οποία με τη σειρά της εμφανίζει και κρατάει σταθερό
στην οθόνη το thiswmpopup menu.
Ομοίως λοιπόν για τις άλλες δηλώσεις:
*FvwmButtons "" cfind.xpm Function findpopupfunc
*FvwmButtons "" help.xpm Function helpmepopupfunc
*FvwmButtons "" run.xpm Function runpopupfunc
*FvwmButtons "" settings.xpm Function mesettingspopupfunc
*FvwmButtons "" programs.xpm Function meprogramspopupfunc
Τα άλλα buttons (SuSE, Graphics, Tools, Shells) μας
αποχαιρέτησαν (#).
-
FvwmTaskBar - Όπως αναφέρθηκε και προηγουμένως, η
TaskBar είναι μια μπάρα, πάνω στην οποία υπάρχουν
buttons τα οποία χρησιμοποιεί κανείς για να κάνει
iconify/maximise ένα πρόγραμμα. Εκτός αυτών, η Taskbar
έχει και ένα button στο οποίο μπορούμε να αναθέσουμε
κάποια function ή menu, παρόμοιο με το "Start" button
ακατανόμαστου αλειτούργητου συστήματος που άρχισε να
κυκλοφορεί το 1995 ;-) Οι δηλώσεις που έχω εγώ για την
TaskBar είναι:
###############################################################################
# #
# Task Bar #
# #
###############################################################################
*FvwmTaskBarGeometry +0+0
*FvwmTaskBarFore Green
*FvwmTaskBarBack Purple4
*FvwmTaskBarUseSkipList
*FvwmTaskBarShowTips
*FvwmTaskBarStartName Main()
Επεξηγήσεις: Οι τρεις πρώτες δηλώσεις είναι αρκετά
απλές. Η τέταρτη (*FvwmTaskBarUseSkipList) δίνει
εντολή στην TaskBar να "δίνει σημασία" στην ιδιότητα
WinListSkip ενός παραθύρου. Αν αυτή η δήλωση
παραλειφθεί, παράθυρα στα οποία έχει δωθεί η ιδιότητα
WinListSkip θα φαίνονται κανονικά και με το Νόμο στην
TaskBar.
Φυσικά δεν είναι αναγκαστικό να κάνετε ότι έκανα και
εγώ. Πειραματιστείτε, ψάξτε, και όλο και κάτι πιο καλό θα
βρείτε.
|
|
|
|