domingo, marzo 04, 2007

Como utilizar Gmail en GNU/Emacs

Configuraciones

Puedes configurar tu cuenta de Gmail, para enviar correos automáticamente desde Emacs con el comando C-x m (compose-mail).

Gmail requiere autentificación del correo saliente mediante TLS, un paquete específico de Emacs gestiona esta autentificación. En sistemas Debian y Ubuntu puedes instalarlo con apt:

 sudo apt-get install starttls 

Luego debemos setear algunas variables de configuración para poder enviar correos, en nuestro .emacs agregamos:

 ;;*******************************
;; SMTP Configuracion
;;
(setq send-mail-function 'smtpmail-send-it)
(setq smtpmail-default-smtp-server "smtp.gmail.com")
;;(setq smtpmail-debug-info t) ;Buscar errores
(setq smtpmail-debug-info nil) ;Si todo va OK.
(setq smtpmail-auth-credentials ;
'(("smtp.gmail.com" 587 "example@gmail.com" "pass")))
(setq smtpmail-starttls-credentials
'(("smtp.gmail.com" 587 nil nil)))
(setq smtpmail-smtp-service 587)
;;;*******************************

Aquí haces M-x eval-buffer para no reiniciar Emacs.

Luego haces C-x m y puedes escribir un correo, cuando termines, lo envias con C-c C-c o bien C-c C-s (el primero mail-send-and-exit y el segundo mail-send.

Alias

Puedes definir alias para no tener que tipear las direcciones completas en los campos To, CC, BCC y otros, para esto editas el arcihvo ~/.mailrc, y escribes tus alias con el siguiente formato:

 alias corto direccion@example.com 

Dónde 'corto' es la palabra que GNU/Emacs se encaragará de expandir a direccion@example.com de manera automática.

Alternativamente puedes definir alias evaluando una expresión Lisp:

	 (define-mail-alias "corto" "direccion@example.com")

Como enviar correo html

En la pantalla de composición de correos veras un texto como el siguiente:

 To: loquequieras@example.com
Subject: Test PLANO
--text follows this line--

Por encima de la linea --text follows this line--, tienes el encabezado de tu mensaje, entonces podemos elegir el tipo de contenido y su codificación, para esto agregamos las siguientes líneas:

 To: loquequieras@example.com
Subject: Test HTML
Content-Type: text/html;
charset=iso-8859-1;
--text follows this line--
[Aquí tu html]

En mi caso la codificación es la Europeo Occidental, deberías averiguar cual te sirve a tí.

Con esto debería ser suficiente para enviar correo

2 comentarios:

janoli dijo...

Hola! que bueno encontrar documentación de emacs en spanish, es más facil de leer.
Probé los cambios que sugieres y al hacer "enviar" en emacs me dice:
smtpmail-send-it: Sending failed; SMTP protocol error

eL3CtRoN dijo...

perfecto! gracias por publicarlo.