[Atl42] a los programadores

Facundo Andrés Bianco facundo en quilmeslug.org
Mie Jun 2 08:10:20 CEST 2010


Ahora ando muy copado con el uzbl y su extensión tabbed que me crea tabs.
La cuestión era que al interprete de terminal URxvt (como gnome-terminal
pero consume menos y más lindo) le pase que cuando vea un
http://www.foo.comlo reconozca como web y levante un cliente (usaba el
firefox/icecat); el
tema es que cuando le decía a uzbl me habría varías ventanas.
Después de mirar los manuales, leer los foros y mirar los man page encontré
la solución en un wiki (eso se llama el archway, si no esta, descubrilo
jaja), así que hice un script boludo que le pase a un archivo .fifo mi web.
El código anda 10 puntos, mi problema es el siguiente:
(pego el código)


#!/bin/bash
# Is uzbl-tabbed running?
# FIFO="/tmp/"$(ls /tmp | grep uzbltabbed | head -1)
# or you can use all in sed:
# (and you must need add a var with the socket path)
FIFO=$(ls /tmp | sed -n '/uzbltabbed/!d;p;q')
FILE="/tmp/"$FIFO
# so..
if [ $FIFO != "" ]; then
    echo 'new '$1 > $FILE
else
    uzbl-tabbed $1
fi


Hay dos formas de hacerlo, con 3 comandos de unix y 1 variable; o 2 comandos
de unix y 2 variables.
El tema es el siguiente, si hago uso de la primer forma (ls && grep && head)
tengo que cambiar el if a

if [ -f $FIFO ]; then
    echo 'new '$1 > $FIFO

entonces, mi pregunta, ¿es mejor? ¿cuál? ¿usar más variables o usar más
comandos?
¿Cuál queda más prolijo?

PD: Me doy cuenta que el modo de los 3 comandos y 1 variable es más legible
para alguien no familiarizado con el entorno bash

PD: ¡No jodan! Estudiaron o laburan programando y lo aman, así que deben de
afrontar estas cosas, ¡joderse por estar en una lista neeeerd!

-- 
Facundo Andrés Bianco (Vando.)
GNUPG ID: 0x89C1B42F
XMPP: vando en jabberes.org
omb: identi.ca/vando
SoftwareLibre.org.ar
BuenosAiresLibre.org.ar
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: https://lists.ourproject.org/pipermail/atl42-public/attachments/20100602/2116af0f/attachment.htm 


Más información sobre la lista de distribución Atl42-public