mitago.net

Página web de Celso González

set paste

Desde hace mucho utilizo Vim como editor de texto, me falta mucho para ser un gran gurú pero me defiendo con el. Sin embargo desde hace un tiempo hay una cosa en Vim que me resultaba molesta, lo había comentado con algunos amigos y en una primera busqueda rápida no había encontrado la solución así que lo he ido dejando pasar hasta hoy.

Texto a copiar El problema del copy paste y la indentación que se va a tomar por donde amargan los pepinos. Es un problema bastante frecuente, seleccionamos un texto con indentaciones de cualquier sitio y al copiarlo en vim obtenemos una cosa con indentaciones y bastantes cosas horribles. En este ejemplo tenemos seleccionado el texto que queremos copiar.

Texto pegado Y en esta otra imagen podemos ver como lo pega, moviendo todos los bloques de código. Asi que hoy me he decidido y he encontrado la solución. Usando la directiva paste podemos alterar este maldito comportamiento, pero no podemos dejarlo fijo ya que perderíamos todas las caracteristicas de autoindentando así que una vez que hemos terminado de copiar volvemos a nuestro sistema tradicional con la directiva nopaste.

:set paste
:set nopaste

Por fin, pero para acabar de solucionar el problema recurriremos a un mapeo de teclas que nos introduzca los comandos de forma automática. Si pulsamos F10 podemos pegar sin problemas y pulsando F11 volvemos al modo de edición normal, lo único que tenemos que hacer es añadir este código a nuestro fichero vimrc (/etc/vim/vimrc en debian si queremos hacerlo global)

map <F10> :set paste<CR>
map <F11> :set nopaste<CR>
imap <F10> <C-O>:set paste<CR>
imap <F11> <nop>
set pastetoggle=<F11>

mar 27 febrero 2007 11:430 comentarios

Debug en PHP

Uno de los problemas a la hora de programar en PHP es intentar depurar algo. Al final todos los programadores que conozco optan por insertar en el código infinidad de echos y var_dumps, con los problemas que eso ocasiona ya que muchas veces tienes que abrir el código de la página para poder ver lo que se ha impreso.

Pues bien el otro día me encontre esta solución que me ha gustado Javascript Powered PHP Debuggin. Muy fácil de utilizar y con un resultado más que decente. Todos los mensajes de debug aparecen en una ventana nueva que creamos con resaltado de colores. Lo único que necesitamos es un include y utilizar las funciones debug_msg() para imprimir un texto o debug_var() para mostrar el contenido de una variable.

Sencillo y elegante, y que admite muchas mejoras como una gestión de permisos para que solo un determinado usuario pueda ver los mensajes o añadir nuevas funciones como un debug_trace para mostrar las funciones por las que se ha llegado a este código

vie 23 febrero 2007 00:530 comentarios

Get Firebug

Get Firebug! Hasta hace poco pensaba que la herramienta imprescindible para todo el que se dedicaba a la edición de páginas web era la extensión Web Developer para Firefox. Estaba muy equivocado.

Y si aún no lo conoces tienes que probar Get Firebug, otra extensión para Firefox/Iceweasel mucho más completa que te permite editar el html, las hojas de estilo, el javascript, ver las respuestas de los httprequest y mucho más.

Get Firebug. Nota, aunque está disponible desde la página de extensiones de firefox, la página principal siempre va un poco más adelantada y también ofrece versiones beta con nuevas funcionalidades

mié 21 febrero 2007 21:480 comentarios

Extraer el audio de un video

Pequeña chuleta recordatorio para no tener que estar buscándolo cada vez que quiero hacerlo

mplayer -vc null -vo null -ao pcm -benchmark fichero.avi

Esto genera un fichero llamado audiodump.wav, una vez tenemos este fichero podemos procesarlo con sox para convertirlo al formato que queramos

sox audiodump.wav nuevo_fichero.ogg

lun 19 febrero 2007 18:380 comentarios