2011-09-27

Eliminare gli spazi a fine riga con vim

Editando un file di testo con vim l'editor può capitare di inserire degli spazi in fondo alla riga, dato il tipo di visualizzazione, questi spazi possono sfuggire ed allora se non si ha l'accortezza di evitarlo durante la digitazione si può ricorrere ad uno dei comandi disponbili per toglierli tutti in un solo colpo.
:%s/\s\+$//
La magia è presto spiegata
: serve per entrare in modalità comando ed
% indica di agire sulle righe dell'intero file
/ delimita l'inizio del testo da cercare
\s indica gli spazi o i caratteri di tabulazione
\+ definisce la quantità di caratteri definito da \s ovvero 1 o più
$ indica che il testo cercato deve trovarsi a fine riga
/ delimita la fine del testo da cercare e l'inizio del testo da sostituire a quello cercato
/ delimita la fine del testo da sostituire a quello cercato

Tradotto in termini più comprensibili: sostituisci qualsiasi serie di tabulazioni o spazi in fondo alla riga con niente, ovvero: eliminala.

Finestre musicali

Anche le finestre possono servire per fare musica, nel modo meno gradito, ma ne fanno.

2011-09-26

Quota 6000

Mi è capitato di collegarmi al blog ed ho visto il numero tondo... non potevo ignorarlo...

2011-09-14

Comandi vim per gestione testo racchiuso

Con Vim si possono effettuare agevolmente modifiche di testo racchiuso da particolari delimitatori com parentesi oppure apici. Per eseguire la modifica di una stringa delimitata da virgolette ( doppi apici ) ci si può posizionare in uno qualsiasi dei caratteri della stringa e, in modalità comando, digitare ci" ed inserire il nuovo testo da inserire nella stringa. Allo stesso modo se si vogliono modificare i parametri passati ad una funzione, posizionarsi all'interno delle parentesi tonde, digitare ci( e digitare i nuovi parametri per la funzione.
Lo stesso funziona per l'apice singolo, le parentesi graffe e quadre ed i caratteri < e > molto usati nei linguaggi di markup. Il testo da modificare può essere anche posizionato su più righe.
Oltre alla modifica questo sistema di selezione del testo può essere utilizzato per la cancellazione utilizzando la d invece della c oppure per la copia con y per poi incollarlo con p dalla posizione del cursore.

Vedere anche gli altri post che riguardano vim.

2011-09-08

Il movimento del puntatore del mouse ;-)

Il puntatore del mouse viene spostato da un meccanismo complesso, lasciando il tempo necessario al caricamento, alla comparsa del cerchio grigio ci si deve passare sopra con il proprio puntatore.

Bash e correzione di un lungo nome di file

Se con la shell bash capita di aver creato un file con il nome sbagliato si ricorre al comando mv
mv nome-lunghissimo-e-difficile-da-scrivere-corrotto nome-lunghissimo-e-difficile-da-scrivere-corretto
Non a caso ho scelto questi due nomi in cui la differenza consiste di una sola lettera in quanto gli errori di digitazione d solito sono brevi, la potenza della bash permette di utilizzare un metodo alternativo:
mv nome-lunghissimo-e-difficile-da-scrivere-corr{o,e}tto
In questo modo al comando mv vengono passati due nomi, il primo con la lettera o al posto del pezzo con le graffe, il secondo con la e. Non sempre puo' risultare comodo ma in alcun casi l'ho trovato impagabile... essendo poi open source... effettivamente lo e'.

Tablet Acer Iconia Tab W500 - Arch Linux e click destro

Nei precedenti articoli ho affrontato la personalizzazione di ArchLinux che ho praticato per rendere un po' piu' fruibile il touchscreen.
Una funzione assente e particolarmente utile e' il click destro, che e' possibile solo se si ha a disposizione la tastiera-dock; un tablet che si rispetti deve avere tale funzionalita' e per il momento ho risolto con mousetweaks.
Per l'installazione:
pacman -Sy
pacman -S mousetweaks
Mousetweaks permette di aggiungere alcune funzioni o trucchetti all'utilizzo del mouse e quello che devo utilizzare e' attivabile con l'opzione --ssc che simula il click del tasto destro se il sinistro e' mantenuto premuto per un determinato tempo specificato con l'opzione  --ssc-time=1.2 per un tempo di un secondo e 2 decimi che ritengo accettabile. Il valore del tempo deve essere compreso tra mezzo secondo e 3 secondi, come indicato nella pagina di manuale. L'opzione --daemonize permette di eseguire il programma come demone, come un servizio ( per chi e' poco unix-speaking ).

Nel mio LXDE faccio partire da ~/.config/lxsession/LXDE/autostart uno scipt che ho creato in /usr/local/bin/my_mousetweaks.sh e contiene:


mousetweaks --daemonize --ssc --ssc-time=1.2
L'unica controindicazione che trovo in questa soluzione e' il click sinistro che viene intercettato dalle applicazioni nel momento in cui si inizia a toccare lo schermo ma il problema e' sensibile solo nell'utilizzo con il browser se si vuole fare click con il destro in un link

2011-09-02

Clipboard e bash con xclip

Mi capita spesso di dover copiare da e verso la clipboard dalla shell ma non sempre risulta comodo ed utile farlo con Ctrl-INS oppure con il tasto centrale del mouse. A volte la necessità è quella di inserire in un file una parte del contenuto di un messaggio di posta elettronica. Per questo c'è xclip, il suo compito è quello di leggere ( richiamandolo senza opzioni ) oppure scrivere ( richiamandolo con l'opzione -o ) del contenuto della clipboard fornita da X.
Supponiamo di dover selezionare con grep le righe di un messaggio di posta elettronica che contengono un particolare indirizzo IP possiamo utilizzare, dopo aver copiato in clipboard le righe interessate:
xclip -o | grep 10.0.0.1
Se dovessimo invece spedire in chat l'output di un comando come la lista dettagliata dei file in una directory:
ls -l | xclip
e poi si può incollare nella finestra della chat il contenuto