Control W en MySQL

Soy usuario compulsivo del Ctrl W. Para quien no lo sepa, Control W es un atajo de teclado en línea de comandos que nos sirve para borrar la palabra inmediatamente anterior.

Por ejemplo si tengo el terminal mostrando esta linea:

javi@casa:~$ ssh javi@esto.es.un.host.especialmente.largo

Podría eliminar con un simple Ctrl W el usuario@host.

Tradicionalmente este atajo de teclado también me ha funcionado siempre con MySQL pero de un tiempo a esta parte pulsar Ctrl + W borra la linea completa.

El motivo de que MySQL borre la linea entera en vez de palabra a palabra es un parámetro de compilación del cliente MySQL y si está configurado para usar libedit o readline.

Para solucionar este problema y volver a tener borrado palabra a palabra con Control W en MySQL crearemos un archivo «.editrc» en el raiz de nuestro home (del usuario que usemos para abrir el cliente mysql)

Dentro ponremos la siguiente linea:

bind "^W" ed-delete-prev-word

Una vez volvamos a abrir el cliente mysql volveremos a tener la funcionalidad de borrar palabra a palabra usando Control W

Ojo, usar Control W en donde no corresponde puede cerrar ventanas de navegador u otros programas 🙂