HOME PAGE  |   CONTATTI |   COLLABORA |  ASP  |  PHP  |  HTML |  CSS |  PERL |  JAVA |  TCP/IP  |  RETI  |  LINUX |  MANUALI SPAZIO WEB
PROGRAMMAZIONE

Linguaggio C++

Linguaggio C

Assembler

Java

Perl

LINGUAGGI WEB

Html

Asp

Php

Css

Javascript

GUIDE DI BASE

Internet

Computer

Hardware

Linux




 

OTTIMIZZARE LE RISORSE: IL GESTORE DI FINESTRE TWM

A cura di: Francesco Celebrini - www.tutorialpc.it
Nota: E' permessa la pubblicazione di questa guida su altri siti lasciando intatto il contenuto, questa nota e il link al sito


Era una grigia giornata d'autunno di qualche anno fa, probabilmente, quando un "amico esperto di computer" ( chi non ha mai avuto un "amico esperto di computer"?) si presentò raggiante alla porta di casa mia con in mano una copia di Linux, all'epoca da me sconosciuto. L'antefatto risaliva ad alcuni giorni prima quando, incontrandolo per caso, mi lanciai in uno sproloquio sulla precoce obsolescenza dei pc e dei programmi e sulla mia ferrea quanto donchischiottesca ostinazione a non cadere nel ricatto della continua spesa per stare al passo con le ultime trovate di marketing dal mondo dell' information tecnology........ ..... in poche parole, avevo un computer non più nuovissimo che i più o meno recenti sistemi operativi e programmi windows avevano reso di una lentezza estenuante!! E fu a questo punto che l'"amico esperto di computer" entrò prepotentemente sulla scena affermando che "...ho io la soluzione, ti porto un sistema operativo che gira bene anche su vecchi pc...". Il risultato fu che con Linux il pc sembrava essere ancora più lento!!!!

Lasciando stare gli aneddoti divertenti, ce n'è voluto poi di tempo per capire che in fondo l'amico aveva ragione: con Linux si possono riutilizzare vecchi pc a patto però di essere in grado di configurarli e di ottimizzarli. In questo senso tanti e di varia natura sono gli accorgimenti da adottare ma in questo breve articolo mi soffermerò sull'analisi di TWM (Tab Window Manager), il gestore di finestre più leggero (e spartano) di Linux fornito insieme al server x, che risulta essere un ottimo strumento in computer non molto potenti.

Per quelli di voi che non hanno mai utilizzato TWM è necessario dire che per lanciarlo (almeno su red hat) occorre prima digitare da console il comando: switchdesk TWM e poi : startx

TWM ha un file di configurazione che si trova generalmente in /etc/X11/twm/system.twmrc che permette una buona configurazione del gestore di finestre. Il file, composto da variabili e funzioni, può essere diviso in 4 parti: - nella prima vengono dichiarate alcune variabili generali (font, icona, colori dei vari elementi) -nella seconda vengono definite le funzioni composte che riguardano il movimento -nella terza vengono abbinate le funzioni precedenti con i tasti del mouse -nella quarta vengono definiti i menù e gli eventuali sottomenù e la funzione attribuita a ciascuna voce

Per entrare nel dettaglio, di seguito vi mostro un esempio di file system.twmrc che non esaurisce certo tutte le opzioni di configurazione ma può essere una buona base di partenza (ricordatevi che la pagina man di TWM è piuttosto dettagliata).

###### system.twmrc ######

Definizione di alcune variabili

NoGrabServer # non coinvolge il server durante la visualizzazione di menu', ecc. # (notate che ho usato l'apostrofo, i caratteri accentati non sono # consentiti nemmeno nei commenti) RestartPreviousState # riporta lo schermo allo stato precedente lo spengimento # del gestore di finestre DecorateTransients # inserisce la barra del titolo per le finestre in movimento

# indica il font, l'icona, ecc.. TitleFont "-adobe-helvetica-bold-r-normal--*-120-*-*-*-*-*-*" ResizeFont "-adobe-helvetica-bold-r-normal--*-120-*-*-*-*-*-*" MenuFont "-adobe-helvetica-bold-r-normal--*-120-*-*-*-*-*-*" IconFont "-adobe-helvetica-bold-r-normal--*-100-*-*-*-*-*-*" IconManagerFont "-adobe-helvetica-bold-r-normal--*-100-*-*-*"

# di seguito i colori dei vari elementi Color { BorderColor "lavender" DefaultBackground "azure" DefaultForeground "darkgreen" TitleBackground "azure" TitleForeground "darkgreen" MenuBackground "azure" MenuForeground "darkgreen" MenuTitleBackground "darkgreen" MenuTitleForeground "azure" IconBackground "azure" IconForeground "darkgreen" IconBorderColor "darkgreen" IconManagerBackground "azure" IconManagerForeground "darkgreen" }

# visualizza l'immagine indicata sulla barra della finestra al passaggio del # puntatore Pixmaps { TitleHighlight "/root/immagine.bmp" }

###################################
Definizione di alcune funzioni composte utili per azioni basate sul movimento # (utilizzate nella sezione succesiva). ###################################

MoveDelta 3 # questa variabile specifica il numero di pixel che il puntatore # deve percorrere prima che la funzione f.move inizi a funzionare; # provate a dargli valore 0 e vedrete la sottile differenza! Function "sposta-sotto" { f.move f.deltastop f.lower } Function "sposta-sopra" { f.move f.deltastop f.raise } Function "sposta-icona" { f.move f.deltastop f.iconify } # Le funzioni sopra dichiarate sono composte da un gruppo di tre funzioni ciascu # na; vediamone alcune nel dettaglio: # f.move ----> permette di trascinare il contorno della finestra selezionata men # tre il pulsante del mouse indicato e' premuto # f.lower ----> abassa la finestra selezionata # f.deltastop ----> permette di terminare una funzione definita dall'utente se i # l puntatore e' stato mosso piu' del numero di pixel definito # in MoveDelta # f.raise ----> alza la finestra selezionata # f.iconify ----> riduce a icona o ripristina la finestra o l'icona selezionata

###################################
Definizione di alcuni abbinamenti di funzioni viste in precedenza con i tasti # del mouse. # La sintassi e': # Pulsante = TASTI : CONTESTO : FUNZIONE # I pulsanti sono ovviamente il sinistro, il destro e il centrale del mouse; i t # asti sono indicati da una lettera che si riferisce ad un tasto (s indica il ta # sto shift, c il tasto control, ecc.); il contesto indica l'elemento visualizza # to da considerare (root e' lo sfondo); la funzione e' la funzione assegnata. ###################################
Button1 = : root : f.menu "principale"

Button1 = c : window|icon : f.function "sposta-sotto" Button2 = c : window|icon : f.iconify Button3 = c : window|icon : f.function "sposta-sopra"

Button1 = : title : f.function "sposta-sopra" Button2 = : title : f.raiselower

Button1 = : icon : f.function "sposta-icona" Button2 = : icon : f.iconify

Button1 = : iconmgr : f.iconify Button2 = : iconmgr : f.iconify

###################################
Definizione dei menu'; ad ogni menu' e sottomenu' viene attribuito un nome e i # colori che acquisiscono i nomi degli elementi e lo sfondo al passaggio del pun # tatore; ad ogni elemento del menu' viene attribuita una funzione che svolge un # determinato compito (per alcune funzioni non sara' necessaria una descrizione) ###################################
menu "principale" ("mediumblue" : "orange") { "MENU PRINCIPALE" f.title # indica il titolo del menu' "" f.raise # esegue la funzione lasciando uno spazio vuoto nel menu "TERMINALE" f.exec "exec xterm &" # esegue il programma xterm "Programmi" f.menu "Programmi" # esegue la funzione che apre un sottomenu' "" f.nop # serve solo per lasciare uno spazio vuoto "Riduci a icona" f.iconify "Ridimensiona" f.resize "Sposta sotto" f.lower "Messa a fuoco" f.focus "Fuori fuoco" f.unfocus "Mostra riepilogo finestre" f.showiconmgr "Nascondi riepilogo finestre" f.hideiconmgr "Termina" f.destroy # termina l'applicazione "Cancella" f.delete # chiude la finestra "Riavvia" f.restart "Esci" f.quit }

menu "Programmi" ("mediumblue" : "pink") { "Mozilla" f.exec "exec mozilla &" "Open Office" f.exec "exec ooffice &" "Calcolatrice" f.exec "exec xcalc &" "Grafica" f.menu "Grafica" }

menu "Grafica" ("mediumblue" : "gold") { "Gimp" f.exec "exec gimp &" "Bitmap" f.exec "exec bitmap &" }

################
fine
################

Buona configurazione!


Torna al menù principale

Nuova pagina 1


 

CREARE UNA RETE

Rete Peer To Peer

Rete client/server

Connettere due Pc

Lista completa

GUIDE PRATICHE

Partizionare l'HD

Comprimere i file

Recupero file

Formattazione

Statistiche

News nel tuo sito

Notizie dal web

Lista completa

 

 

Abbiamo cambiato indirizzo, troverai il nuovo sito all'url

manuali.tutorialpc.it

 

HOME PAGE   -   CONTATTI   -   COLLABORA   -  PRIVACY  -   HOSTING   -   DOMINI

© Copyright 2002-2011. Tutto il materiale che potete visionare in questo sito è dei rispettivi proprietari.

  Tutorialpc non si assume responsabilità per eventuali errori degli autori. 

Risoluzione consigliata 800x600 pixel