SCROTWM(1)

NOME
scrotwm - gestore di finestre per X11

SINTASSI
scrotwm

DESCRIZIONE
scrotwm è un gestore di finestre minimale che cerca di stare in disparte, in modo che il prezioso spazio sullo schermo possa essere usato per cose più importanti. Hai dei default sensati e non costringe l'utente ad imparare un linguaggio di programmazione per configurarlo. È stato scritto dagli hacker per gli hacker e cerca di essere piccolo, compatto e veloce.

Quando scrotwm viene avviato, legge le impostazioni presenti nel file di configurazione scrotwm.conf. Vedere la sezione FILE DI CONFIGURAZIONE più sotto.

In questa pagina di manuale viene usata la seguente notazione:

M   Meta
S   Shift
<Nome>
    Tasto nome
M1  Tasto 1 (sinistro) del mouse
M3  Tasto 3 (destro) del mouse

scrotwm è molto semplice da usare. La maggior parte delle operazioni vengono svolte usando combinazioni di tasti sulla tastiera o sul mouse. Vedere la sezione SCORCIATOIE più sotto per i default e le possibilità di personalizzazione.

FILE DI CONFIGURAZIONE
scrotwm prova per prima cosa ad aprire il file di configurazione personale dell'utente, ~/.scrotwm.conf. Se il file in questione non è disponibile, prova ad usare il file di configurazione globale /etc/scrotwm.conf.

Il formato di questo file è chiave = valore. Per esempio:

    color_focus = red

Per abilitare o disabilitare un'opzione, usare i valori 1 o 0 rispettivamente.

Il file supporta le seguenti chiavi:

color_focus
    Colore del bordo della finestra che ha il focus.
color_unfocus
    Colore del bordo delle finestre che non hanno il focus.
bar_enabled
    Abilita o disabilita la barra di stato.
bar_border[x]
    Colore del bordo della barra di stato nello schermo x.
bar_color[x]
    Colore della barra di stato nello schermo x.
bar_font_color[x]
    Colore del testo della barra di stato nello schermo x.
bar_font
    Font della barra di stato.
bar_action
    Script esterno che aggiunge informazioni come la carica della batteria alla barra di stato.
bar_delay
    Frequenza di aggiornamento, in secondi, dello script esterno che aggiunge informazioni alla barra di stato.
stack_enabled
    Abilita o disabilita la visualizzazione dell'algoritmo di stacking corrente nella barra di stato.
clock_enabled
    Abilita o disabilita l'orologio nella barra di stato. Se disabilitato, usando il valore 0, è possibile usare un orologio personalizzato nello script specificato in bar_action.
dialog_ratio
    Alcune applicazioni hanno finestre di dialogo troppo piccole per risultare utili. Questa è la percentuale dello schermo che verrà usata per le finestre di dialogo: ad esempio, 0.6 indica il 60% della dimensione fisica dello schermo.
region
    Alloca una regione personalizzata, rimuovendo qualsiasi regione automaticamente rilevata stia occupando lo stesso spazio sullo schermo. Definita nel formato screen[<idx>]:LARGHEZZAxALTEZZA+X+Y, ad esempio screen[1]:800x1200+0+0.
term_width
    Imposta la dimensione minima preferita per il terminale. Se questo valore è maggiore di 0, scrotwm cercherà di riaggiustare la dimensione del testo nel terminale in modo che la larghezza del terminale rimanga sopra il valore quando la finestra viene ridimensionata. Al momento solo xterm(1) è supportato. Il binario di xterm(1) deve essere setuid o setgid perché questo funzioni: nella maggior parte dei sistemi, questo è il default. L'utente potrebbe voler impostare program[term] (vedere la sezione PROGRAMMI più sotto) per usare una seconda copia del binario di xterm(1) che non abbia il bit setgid impostato.
title_class_enabled
    Abilita o disabilita la visualizzazione della classe della finestra nella barra di stato. Impostare a 1 per abilitare.
title_name_enabled
    Abilita o disabilita la visualizzazione del titolo della finestra nella barra di stato. Impostare a 1 per abilitare.
modkey
    Cambia il tasto modificatore. Solitamente Mod1 è il tasto ALT e Mod4 è il tasto Windows su un PC.
program[p]
    Definisce una nuova azione per lanciare il programma p. Vedere la sezione PROGRAMMI più sotto.
bind[x]
    Assegna una combinazione di tasti all'azione x. Vedere la sezione SCORCIATOIE più sotto.
quirk[c:n]
    Aggiunge un "quirk" per le finestre di classe c e nome n. Vedere la sezione QUIRKS più sotto.

I colori devono essere specificati nel formato usato da XQueryColor(3) e i font in quello usato da XQueryFont(3).

PROGRAMMI
scrotwm consente la definizione di azioni personalizzate per lanciare programmi di propria scelta, che possono essere assegnate a combinazioni di tasti nello stesso modo in cui è possibile farlo con le azioni predefinite. Vedere la sezione SCORCIATOIE più sotto.

I programmi di default sono descritte qui sotto:

term
    xterm
screenshot_all
    screenshot.sh full
screenshot_wind
    screenshot.sh window
lock
    xlock
initscr
    initscreen.sh
menu
    dmenu_run -fn $bar_font -nb $bar_color -nf $bar_font_color -sb $bar_border -sf $bar_color

I programmi personalizzati vengono specificati con la seguente sintassi:

    program[<nome>] = <percorso> [<arg> [... <arg>]]

<nome> è un qualsiasi identificatore che non va in conflitto con un'azione predefinita o una chiave, <percorso> è il programma desiderato, e <arg> sono zero o più argomenti da passare al programma.

Le seguenti variabili rappresentano valori impostabili in scrotwm (vedere la sezione FILE DI CONFIGURAZIONE sopra), e possono essere usati nel campo <arg> dove saranno sostituite con il valore al momento del lancio del programma:

$bar_border
$bar_color
$bar_font
$bar_font_color
$color_focus
$color_unfocus

Esempio:

    program[ff] = /usr/local/bin/firefox http://scrotwm.org/
    bind[ff] = Mod+f # adesso Mod+F lancia firefox

Per eliminare la combinazione precedente:

    bind[] = Mod+f
    program[ff] =

SCORCIATOIE
scrotwm fornisce molte funzioni (o azioni) accessibili tramite combinazioni di tasti sul mouse o sulla tastiera.

Le scorciatoie assegnate al mouse sono:

M1  Dà focus alla finestra
M-M1
    Muove la finestra
M-M3
    Ridimensiona la finestra
M-S-M3
    Ridimensiona la finestra mantenendola centrata

Le scorciatoie da tastiera di default sono:

M-S-<Return>
    term
M-p menu
M-S-q
    quit
M-q restart scrotwm
M-<Space>
    cycle_layout
M-S-<Space>
    reset_layout
M-h master_shrink
M-l master_grow
M-, master_add
M-. master_del
M-S-,
    stack_inc
M-S-.
    stack_del
M-<Return>
    swap_main
    M-j, M-<TAB> focus_next
    M-k, M-S-<TAB> focus_prev
M-m focus_main
M-S-j
    swap_next
M-S-k
    swap_prev
M-b bar_toggle
M-x wind_del
M-S-x
    wind_kill
M-<n>
    ws_n
M-S-<n>
    mvws_n
M-<Right>
    ws_next
M-<Left>
    ws_prev
M-S-<Right>
    screen_next
M-S-<Left>
    screen_prev
M-s screenshot_all
M-S-s
    screenshot_wind
M-S-v
    version
M-t float_toggle
M-S <Delete>
    lock
M-S-i
    initscr

I nomi delle azioni e le relative descrizioni sono le seguenti:

term
    Lancia un nuovo terminale (vedi PROGRAMMI più in alto)
menu
    Menu (vedi PROGRAMMI più in alto)
quit
    Chiude scrotwm
restart
    Riavvia scrotwm
cycle_layout
    Cambia layout
reset_layout
    Re-inizializza il layout
master_shrink
    Restringe l'area principale
master_grow
    Allarga l'area principale
master_add
    Aggiunge finestre all'area principale
master_del
    Rimuove finestre dall'area principale
stack_inc
    Aggiunge righe/colonne all'area di stacking
stack_del
    Rimuove righe/colonne dall'area di stacking
swap_main
    Muove la finestra corrente nell'area principale
focus_next
    Dà il focus alla finestra successiva
focus_prev
    Dà il focus alla finestra precedente
focus_main
    Dà il focus alla finestra principale
swap_next
    Scambia con la finestra successiva dell'area di lavoro
swap_prev
    Scambia con la finestra precedente dell'area di lavoro
bar_toggle
    Mostra/nascondi la barra di stato da tutte le aree di lavoro
wind_del
    Chiudi la finestra corrente
wind_kill
    Distruggi la finestra corrente
ws_n
    Passa all'area di lavoro n, dove n è compreso tra 1 e 10
mvws_n
    Sposta la finestra corrente nell'area di lavoro n, dove n è compreso tra 1 e 10
ws_next
    Passa all'area di lavoro non vuota successiva
ws_prev
    Passa all'area di lavoro non vuota precedente
screen_next
    Sposta il puntatore nella regione successiva
screen_prev
    Sposta il puntatore nella regione precedente
screenshot_all
    Cattura uno screenshot dell'intero schermo, se abilitato (vedere la sezione PROGRAMMI sopra)
screenshot_wind
    Cattura uno screenshot di una singola finestra, se abilitato (vedere la sezione PROGRAMMI sopra)
version
    Abilita/disabilita il numero di versione nella barra di stato
float_toggle
    Passa la finestra che ha il focus da floating a tiled
lock
    Blocca lo schermo (vedere la sezione PROGRAMMI sopra)
initscr
    Re-inizializza gli schermi fisici (vedere la sezione PROGRAMMI sopra)

Le scorciatoie personalizzate sono specificate nel file di configurazione come segue:

    bind[<azione>] = <tasti>

<azione> è una delle azioni elencate sopra (oppure nulla) e <tasti> è dato da zero o più modificatori (MOD, Mod1, Shift, ecc.) e uno o più tasti normali (b, space, ecc.), separati da "+". Per esempio:

    bind[reset] = Mod4+q # assegna reset ai tasti Windows + q
    bind[] = Mod1+q # rimuovi l'assegnazione di Alt + q

Più combinazioni di tasti possono essere assegnate alla stessa azione.

QUIRK
scrotwm fornisce la possibilità di specificare dei "quirk" per la gestione di finestre che devono subire un trattamento speciale da un gestore di finestre tiling, come ad esempio alcune finestre di dialogo e applicazioni a schermo intero.

I quirk abilitati di default sono elencati qui sotto:

Firefox-bin:firefox-bin
    TRANSSZ
Firefox:Dialog
    FLOAT
Gimp:gimp
    FLOAT + ANYWHERE
MPlayer:xv
    FLOAT + FULLSCREEN
OpenOffice.org 2.4:VCLSalFrame
    FLOAT
OpenOffice.org 3.1:VCLSalFrame
    FLOAT
pcb:pcb
    FLOAT
xine:Xine Window
    FLOAT + ANYWHERE
xine:xine Panel
    FLOAT + ANYWHERE
xine:xine Video Fullscreen Window
    FULLSCREEN + FLOAT
Xitk:Xitk Combo
    FLOAT + ANYWHERE
Xitk:Xine Window
    FLOAT + ANYWHERE
XTerm:xterm
    XTERM_FONTADJ

I quirk sono descritti qui sotto:

FLOAT
    Questa finestra deve essere lasciata libera di muoversi.
TRANSSZ
    Aggiusta la dimensione delle finestre troppo piccole usando dialog_ratio (vedere FILE DI CONFIGURAZIONE).
ANYWHERE
    Consente alla finestra di decidere da sola dove posizionarsi.
XTERM_FONTADJ
    Aggiusta il font di xterm quando viene ridimensionata la finestra.
FULLSCREEN
    Rimuove i bordi, consentendo alla finestra di usare l'intera dimensione dello schermo.

I quirk personalizzati vanno specificati nel file di configurazione come segue:

    quirk[<classe>:<nome>] = <quirk> [+ <quirk> ...]

<classe> e <nome> specificano a quali finestre i quirk vanno applicati, e <quirk> è uno dei quirk presente nella lista sopra. Ad esempio:

    quirk[MPlayer:xv] = FLOAT + FULLSCREEN # lascia che mplayer suoni
    quirk[pcb:pcb] = NONE  # rimuovi un quirk precedentemente specificato

È possibile ottenere <classe> e <nome> usando xprop(1) e facendo click sulla finestra desiderata. Nel seguente esempio è stato fatto click sulla finestra principale di Firefox:

    $ xprop | grep WM_CLASS
    WM_CLASS(STRING) = "Navigator", "Firefox"

Bisogna tener conto del fatto che usare grep per trovare WM_CLASS inverte la classe e il nome. Nell'esempio precedente, la dichiarazione del quirk sarebbe

    quirk[Firefox:Navigator] = FLOAT

FILE
~/.scrotwm.conf
    impostazioni di scrotwm dell'utente.
/etc/scrotwm.conf
    impostazioni globali di scrotwm.

ORIGINE
scrotwm prende ispirazione da xmonad & dwm.

AUTORI
-nosplit

scrotwm è stato scritto da Marco Peereboom <marco@peereboom.us>, Ryan Thomas McBride <mcbride@countersiege.com> e Darrin Chandler <dwchandler@stilyagin.com>.

BUGS
Al momento il menu, invocato usando M-p, dipende da dmenu.