Un par de hacks para mail
Hace tiempo que vengo usando el venerable mail(1) de OpenBSD para leer el correo fuera de casa. Es muy rudimentario, pero básicamente no necesito más y puedo usarlo sin problemas vía SSH con cualquier conexión por cutre que sea.
Aunque esto no es del todo cierto :(. Habían un par de cosas que hacían que su uso fuera incómodo. Tanto que ya estaba pensando en instalar un programa más potente para leer el correo vía terminal de texto, pero unos son bastante inseguros, y otros muy complicados de usar (aunque todo es ponerse, sino no usaría mail).
Ojeando un poco el código, al final no ha hecho falta instalar nada ;).
En realidad eran dos minucias, que paso a enumerar:
- Yo no uso
us-ascii: el cliente no implementa los añadidosMIME, muy recientes si los comparamos con la edad demail;). Tiene sentido, porque en aquella época todoInternetestaba enUSA:D.Pero las cosas cambian, y yo escribo mis correos con acentos empleando
iso-8859-1. Cuando un cliente de correo recibe uno de mis mensajes no lo sabe, y por lo tanto no se visualizan bien los correos si no coincide que usamos el mismo juego de caracteres.Esto se soluciona implementando las cabeceras
MIMEmínimas para indicar el juego de caracteres:MIME-VersionyContent-Type.Sería añadir algo así:
MIME-Version: 1.0 Content-Type: text/plain; charset=CHARSET; format=fixed
Solo tenemos que indicar en
CHARSETun código válido para el juego de caracteres que usamos (comoiso-8859-1, outf-8si lo usara) y listo. Además el atributo opcionalformatnos permite indicar que usamos una fuente de ancho fijo y que no esperamos que el cliente que muestra el correo agrupe por párrafos, por ejemplo. - Las refencias a los mensajes en la respuesta son útiles: esto es gracias a la cabecera
In-Reply-To, donde los clientes de correo pueden indicar elMessage-Id(otra cabecera, esta no es opcional) del correo al que se responde, de forma que los programas puedan agrupar mensajes por conversaciones.Mailno se preocupa de esto, y al mandar mensajes a listas de correo, era un inconveniente porque rompía los hilos de discusión :(.
He tardado poco, unos 15 minutos en ver cómo iba el fuente (muy clarito, por cierto), y otros 15 en meter las lineas de código necesarias.
Para que se añada el tipo MIME hay que indicar en $HOME/.mailrc el valor de charset a usar, por ejemplo:
set charset=iso-8859-1
La inclusión de la cabecera In-Reply-To es automática al responder, así que en esa parte no hay que hacer nada.
Si a alguien le interesa, aquí hay un parche. Es muy simple, y creo que no tiene ningún fallo fundamental (pese a que ahora veo que hay una variable declarada que finalmente no he usado :P).
Actualización: he limpiado el parche quitando la variable que no se usaba ;).
Los comentarios están cerrados: los comentarios se cierran automáticamente una vez pasados 15 días. Si quieres comentar algo acerca de la anotación, puedes hacerlo por e-mail.

