[eside-ghost] temillas varios...

kapi59ttp kapi59ttp en euskalnet.net
Mie Oct 12 21:56:31 CEST 2005


Se Jonan!!!
Ahi las dao, ya tira el completion del apt :D

Zenkius!!!

Jon Ander Hernández wrote:

>Aupa ppl!!!
>
>Lo de completar lo cierto es que es bastante intrigante, un día me
>percate de que era un sistema extensible y bastante inteligente, que por
>ejemplo si haces $ tar -xjvf y le das al tab, te muestra los ficheros
>*.tar.bz2 de ese directorio y no el resto, con lo cual... evidentemente
>no pude resistirme a echarle un ojo para ver que pasaba xDDDD.
>
>La cosa es que es una funcionalidad nativa de bash y al parecer (tampoco
>lo he investigado a profundidades excesivas) lo que permite es asignar
>patrones que filtren por ejemplo los ficheros que debe un fichero ser
>capaz de leer. Ejemplo :
>
>$ grep -e 'zip' < /etc/bash_completion | grep -e 'unzip'
>
>complete -f -X '!*.?(t)bz?(2)' bunzip2 bzcat bzcmp bzdiff bzegrep
>bzfgrep bzgrep
>complete -f -X '!*.@(zip|ZIP|jar|JAR|exe|EXE|pk3|war|wsz|ear|zargo|xpi|
>sxw|ott)' unzip zipinfo
>complete -f -X '!*.@(Z|gz|tgz|Gz|dz)' gunzip zcmp zdiff zcat zegrep
>zfgrep zgrep zless zmore
>
>No se como funciona la sintaxis pero tiene tiene toda la pinta de que
>por ahí van los tiros. Si queréis cacharrear con ello el comando
>"complete" que es un comando builtin de bash esta documentado en el man
>de bash, y el fichero donde estan todos los trucos es el
>fichero /etc/bash_completion que esta bastante documentado también.
>
>Pero claro esto no explica lo de apt-get install porque si lo hace es
>que bash es demasiado inteligente o han hecho un hack para leer la DDBB
>de dpkg que no mola un pelo... pero la cosa no va por ahí, y es que el
>comando complete permite también asociar un patrón a un comando ayudante
>que le chive el autocompletado y aunque no lo he mirado supongo que por
>ahí van los tiros.
>
>Un ejemplo de esta funcionalidad lo encontramos en gstreamer que es un
>framework multimedia que aparte de servir para crear aplicaciones como
>Rythmbox, Banshee o amaroK, también permite contruir pipelines de
>objetos para crear en plena consola y en un plas desde la consola te
>creas desde un programa que te captura la pantalla y te la manda por UDP
>haciendo streaming, o un pillar un streaming como una radio y guardarla
>a un OGG, o incluso rippearte un DVD. El problema es que construir esta
>pipelines es un poco chungo así que se han creado un ayudante que te
>ayuda mediante autocompletado a crear estas pipelines.
>
>>From $ man /usr/share/man/man1/gst-complete-0.8.1.gz :
>
>NAME
>       gst-complete - do bash completion for gst-launch command-lines
>
>SYNOPSIS
>       complete -C gst-complete gst-launch
>
>
>Bueno una vez explicado todo esto que es muy interesante para saber que
>hay debajo de bash como hacer que autocomplete recorcholis xDDDD
>
>Pues es super fácil, si estas en debian o alguna de sus derivadas no
>tienes más que descomentar unas cuantas lineas de ~/.bashrc
>
># enable programmable completion features (you don't need to enable
># this, if it's already enabled in /etc/bash.bashrc and /etc/profile
># sources /etc/bash.bashrc).
>#if [ -f /etc/bash_completion ]; then
>#    . /etc/bash_completion
>#fi
>
>Y como nos dice el comentario si descomentas las mismas lineas que
>también existen en /etc/bash.bashrc, pues el autocompletado funcionará
>no solo para ese user sino para todos.
>
>Un saludete!!
>
>JonAn.
>
>  
>
>------------------------------------------------------------------------
>
>_______________________________________________
>eside-ghost mailing list
>eside-ghost en deusto.es
>https://listas.deusto.es/mailman/listinfo/eside-ghost
>



Más información sobre la lista de distribución eside-ghost