1 puntos por GN⁺ 2024-08-24 | 1 comentarios | Compartir por WhatsApp
  • Aerc es un cliente de correo TUI mucho más joven que Pine y Mutt, pero ya tiene la madurez y las funciones suficientes como para volver a considerarlo para uso diario
  • Gracias a la ayuda basada en páginas man como :help y aerc-tutorial (7), se pueden aprender rápido la configuración y los atajos sin documentación externa
  • Las cuentas se administran con un asistente y un archivo de configuración INI en ~/.config/aerc/accounts.conf, lo que permite ordenar de forma consistente estructuras de carpetas distintas según el servidor
  • Para los complicados correos HTML en una TUI, ajusta la forma de mostrarlos con w3m, dante, :open y filtros personalizados basados en MIME y encabezados
  • Combinando redacción con Vim, libreta de direcciones externa, PGP, firmas, plantillas y avisos de adjuntos, permite crear un flujo de trabajo de correo centrado en la terminal muy flexible

La posición de Aerc y la primera impresión

  • Aerc es un cliente de correo TUI y su primer lanzamiento fue hace unos 4 años
  • Pine se lanzó en 1992 y Mutt en 1995, así que Aerc es muy joven en comparación con los clientes de correo para terminal de toda la vida
  • Al principio estaba relativamente conforme con Thunderbird y Aerc parecía una herramienta algo básica, así que no lo usé; pero al revisarlo de nuevo recientemente, pareció lo bastante maduro y completo como para servir como cliente diario
  • Como ya había intentado usar neomutt varias veces y siempre terminaba frustrado y abandonándolo rápido, casi no tenía expectativas con Aerc; sin embargo, la experiencia real superó lo esperado y ha sido de los clientes de correo más agradables que he usado hasta ahora
  • Aún es pronto para decir que sea mejor que otros clientes de correo, pero tras varios días de uso la impresión ha sido muy positiva

Documentación y ayuda integrada

  • Aerc tiene ayuda integrada accesible con el comando :help
  • El tutorial presenta de forma concisa las funciones principales y los atajos necesarios para una configuración rápida
  • Las demás páginas de ayuda también cubren cada parte de la aplicación de forma breve y clara, así que es fácil aprender las funciones sin recurrir a material externo
  • La documentación de ayuda está en formato de página man y se envía a less
    • Ejemplo: aerc-tutorial (7)
    • Es una forma de incluir dentro de la aplicación TUI un sistema de ayuda portable

Configuración de cuentas y gestión de carpetas

  • Las cuentas pueden añadirse con un asistente simple e intuitivo
  • El asistente crea una nueva entrada de cuenta en ~/.config/aerc/accounts.conf
  • Este archivo usa sintaxis INI, así que es fácil de leer y editar
  • La configuración de cuenta puede incluir direcciones IMAP/SMTP, carpeta predeterminada, remitente, ubicación de la copia en enviados, caché de encabezados, orden de carpetas, archivo, intervalo de comprobación de correo y archivos de mapeo de carpetas
  • folders-sort

    • folders-sort es una opción para sobrescribir el orden automático de ciertas carpetas
    • Las carpetas indicadas aparecen al inicio de la lista en el orden dado, y el resto se ordena alfabéticamente
    • No es algo que se vea en clientes gráficos como Thunderbird u Outlook, pero parece una función que vendría bien en cualquier cliente de correo
  • folder-map

    • folder-map asigna la estructura de carpetas del servidor de cada proveedor de correo a nombres de carpetas para mostrar
    • Gmail pone todo bajo la carpeta [Gmail], algunos proveedores colocan Sent y Drafts debajo de INBOX, y otros no
    • La estructura de carpetas que ofrece el servidor es difícil de cambiar a menos que uno administre directamente el servidor de correo
    • Aerc convierte las carpetas del servidor en nombres de visualización mediante un archivo de reglas de mapeo
      • Puede reasignar una sola carpeta
      • Puede reasignar una carpeta y todas sus subcarpetas
      • Puede eliminar prefijos de todas las subcarpetas
      • Puede reasignar subcarpetas evitando conflictos de nombres
    • Con esta función se puede trabajar con una estructura de carpetas consistente en todas las cuentas, sin importar la organización del servidor
    • Esa consistencia es especialmente importante al gestionar correo desde la CLI en lugar de una GUI

Lectura de correo y manejo de HTML

  • La experiencia de lectura de correo fue en general bastante normal, y la principal incomodidad está más relacionada con los correos HTML que con Aerc en sí
  • En la mayoría de los correos multipart, la versión de texto plano es más difícil de leer que la versión HTML
  • Normalmente se entiende el contenido, pero a veces puede verse desordenado o mezclado
  • Aerc ofrece algunas opciones para reducir este problema
    • Puede verse mediante una combinación de w3m y dante como parser y navegador HTML
    • En algunos correos, la salida generada es mejor que la versión de texto plano
    • Como último recurso, se puede usar :open para abrirlo en el navegador web predeterminado
  • La forma de mostrar los mensajes se configura con filtros personalizados
    • Los filtros son pipelines de *nix por los que pasa el mensaje antes de mostrarse
    • Los filtros predeterminados soportan color para texto plano, elementos de calendario y correos HTML
    • Los filtros pueden configurarse por tipo MIME y también emparejarse con encabezados específicos
    • La configuración de ejemplo incluye entradas como text/plain=colorize, text/calendar=calendar, text/html=html | colorize

Redacción de correo y libreta de direcciones

  • La experiencia de redactar correos es muy buena, y una gran ventaja es poder escribir el correo en Vim
  • Integración con la libreta de direcciones

    • La libreta de direcciones no se gestiona directamente dentro de Aerc, sino que se delega a programas externos
    • El usuario define la consulta de búsqueda que se enviará al programa de direcciones, y el resultado se usa para el autocompletado en los campos de encabezado correspondientes
    • El programa predeterminado es abook
    • Según las pruebas, abook no soportaba nombres con caracteres no ASCII, y esa limitación es crítica si se intercambian correos con frecuencia con usuarios alemanes
    • Tampoco había una forma sencilla de analizar direcciones de todos los correos e importarlas a abook
    • También se probó aercbook, pero tenía el mismo problema con caracteres no ASCII
    • En cambio, aercbook sí soporta analizar direcciones de correo de todos los campos de encabezado
    • emailbook-janet es una reescritura de aercbook
      • Tiene peor rendimiento, pero resuelve el problema de ASCII
      • Con un atajo de teclado se puede seleccionar un correo, analizarlo y añadir automáticamente todas las direcciones a la libreta
    • emailbook-janet y aercbook no son una libreta de direcciones completa, sino herramientas que guardan solo nombre y correo para habilitar el autocompletado
    • Si se necesita una libreta más potente, también pueden considerarse opciones como khard, soluciones similares o incluso un servidor LDAP

PGP, firmas, plantillas y avisos

  • Lo más incómodo del soporte de PGP/GPG en Thunderbird era que usaba un keychain separado
  • Aerc también tiene su propio keychain, pero es opcional
  • El comportamiento predeterminado es usar directamente el keychain de GPG
  • Se puede indicar un ID de clave específico para firmar mensajes o dejar que Aerc encuentre la clave a partir de la dirección de correo
  • También hay una opción para firmar automáticamente todos los correos y una opción de opportunistic encryption
  • Si la configuración de GPG está bien hecha, el soporte PGP funciona sin problemas
  • Funciones generales de configuración

    • Aerc soporta firmas por cuenta incluyendo un archivo de texto con signature-file=
    • También puede ejecutar un comando externo para generar la firma
    • Soporta plantillas de correo, aunque no se han revisado en detalle
    • Intenta eliminar de forma inteligente la repetición de Re: en los asuntos en varios idiomas, para lo cual usa expresiones regulares
    • Las expresiones regulares pueden sobrescribirse o ampliarse
    • También soporta verificación de asunto vacío y avisos de archivo adjunto
      • La verificación de asunto vacío comprueba si el asunto está vacío
      • El aviso de adjunto se basa en expresiones regulares, así que puede ampliarse fácilmente
      • La expresión regular predeterminada es ^[^>]*attach(ed|ment)
      • Excluye las líneas que empiezan con > para filtrar citas donde otra persona menciona un adjunto
      • Para correos en alemán, la expresión regular puede ampliarse para incluir an(ge)?h[aä]ngt?
    • Tras varios días de uso, Aerc da una fuerte impresión de estar bien pulido, y parece un cliente de correo que vale la pena seguir usando por un tiempo

1 comentarios

 
GN⁺ 2024-08-24
Opiniones de Hacker News
  • Uso Aerc desde hace mucho como mi cliente de correo diario y, aunque lo uso con IMAP (Gmail, etc.), también funciona perfectamente con directorios locales de correo.
    Ya estoy demasiado grande para aprender nuevos atajos de teclado, así que cambié el mapeo de teclas de Aerc a atajos estilo Vim, y ahora puedo procesar muchísimos correos muy rápido.
    Configuré Gmail e Imapfilter para que funcionaran bien, y también creé filtros que siempre eché de menos en otros clientes de correo: por ejemplo, filtrar por el remitente actual ff = :filter -f "{{index (.From | emails) 0}}", ver correos con el mismo asunto fs = :filter -H subject:"{{.SubjectBase}}", o buscar dentro del asunto fS = :filter -H subject:.
    Si les interesa, paso el enlace al repositorio de GitHub.

    • Me interesa la integración con Gmail. Intenté hacerlo con mutt, pero lo dejé porque no quería pasarme toda la tarde con eso.
      Además, escuché que Gmail está eliminando IMAP gradualmente.
    • Este post me dio ganas de volver a probar aerc; en especial, el primer filtro es una función que siempre quise en un cliente de correo.
    • https://github.com/rafo/aerc-vim
      También agregué vista previa de imágenes adjuntas.
    • Me interesan especialmente los atajos de teclado de vim. Con eso creo que sería mucho más fácil empezar.
  • Investigué mutt a fondo, pero al final llegué a la conclusión de que un cliente de correo gráfico se ajusta mejor a mis necesidades.
    Mutt/aerc no soportan Windows, que por preferencia o por trabajo uso mucho, y también se quedan cortos para ver y enviar correos HTML. Mis colegas se preguntan por qué mis correos se ven raros y por qué desaparece el formato de las respuestas.
    En Betterbird es rápido arrastrar correos a carpetas y, a diferencia de mutt, que toma bastante tiempo dejar con una configuración adecuada, funciona de inmediato. mbsync u offlineimap tienen soporte débil para OAuth, mientras que Betterbird lo trae de base.
    Cuando hace falta, también puedo responder o redactar en texto plano con Shift+clic. Prácticamente vivo en la terminal, pero con esto llegué hasta aquí; la inversión de usar newsboat como lector RSS hasta ahora ha salido bien.
    1: https://www.betterbird.eu/
    2: https://news.ycombinator.com/item?id=39812124
    3: https://isync.sourceforge.io/mbsync.html
    4: https://www.offlineimap.org/

    • Aerc probablemente se pueda compilar también en Windows; solo harían falta Go y make. Betterbird también solo soportaba MacOS hasta hace unas semanas, y cuando se propuso por primera vez hacer una compilación para Mac, la rechazaron por temas de dinero.
      Aerc también permite ver correos HTML, como se menciona en el artículo. Mover correos también puede ser mucho más rápido con el teclado que arrastrando con el mouse, y si usas las mismas carpetas repetidamente, todavía más: cosas como pa = :archive flat, pb = :move Brain, pf = :move.
      La configuración es mucho menos compleja que la de mutt, y OAuth funciona bien. Betterbird también está bien, pero no me gusta no poder usar mis atajos de teclado.
    • El segundo y tercer problema se pueden mitigar, respectivamente, con una entrada de mailcap para w3m o con una configuración en muttrc como set send_multipart_alternative_filter=markdown2html.py.
      https://gitlab.com/muttmua/mutt/-/blob/master/contrib/markdown2html
    • Hoy en día Windows incluye Hyper-V hasta cierto punto, permite correr VMs de Linux y también trae OpenSSH de base. Hace falta ajustar algunas cosas para armar un entorno adecuado, pero no demasiado.
      Yo uso solo Linux, pero prefiero GUI, y conecto Evolution a un MS Exchange on-premise. También opero el correo de dominios personales para amigos y familia con Dovecot, Exim y demás.
      No conocía Betterbird, pero lo dejé en marcadores para evaluarlo. Algún día tendremos que deshacernos del servidor Exchange, y espero con ganas la discusión sobre si pasarnos a M365. Desde el punto de vista de un responsable que lleva más de 25 años operando sistemas de correo, al final Exchange también se puede reemplazar por una combinación de IMAPD, MTA y una app de calendario.
    • Quizá dodo sea lo indicado. Básicamente es un cliente de correo gráfico, pero tiene muchos bindings de Vim, así que mezcla lo mejor de la terminal y lo gráfico; se siente como un qutebrowser para email.
      Eso sí, parece que el mantenimiento se detuvo y aparentemente solo soporta el backend notmuch.
      1: https://github.com/akissinger/dodo
      2: https://qutebrowser.org/
    • La postura política del autor me genera dudas, pero uso mutt-wizard, y con esa configuración basta presionar v en vez de o para ver el correo en el navegador web abierto.
      Para leer correos HTML me ha funcionado bastante bien. Eso sí, lo uso solo para correo personal, no laboral, así que puede variar según la persona.
  • Me cansé de tener abiertas 5 pestañas de Gmail y 2 pestañas de correo que no eran de Gmail, así que esta semana configuré aerc y sincronizo el correo con el backend Notmuch, lieer para Gmail y mbsync para lo que no es Gmail
    Me tomó unas 12 horas configurarlo y acostumbrarme al flujo, pero es mucho más agradable que mi forma anterior de trabajar. A diferencia de una pestaña de Gmail en Firefox, que consumía más de 100 MB, la nueva configuración es mucho más ligera, y la búsqueda local también es rápida y de buena calidad

    • Si usas Notmuch, recomiendo bower. Es una UI de terminal que interactúa con notmuch, y se puede configurar para que funcione también a través de SSH, de modo que aunque la DB de notmuch esté en otra computadora, los adjuntos se pueden abrir en la máquina local
      1: https://github.com/wangp/bower
    • Recomiendo enfáticamente probar notmuch. Me cambié alrededor de 2011 y nunca volví atrás
      No hace falta usar Emacs como cliente; hay muchos frontends, incluido aerc
      https://notmuchmail.org/frontends/
      Entre ellos, alot probablemente sea el más conocido
      https://github.com/pazz/alot
  • Los clientes de correo con UI de terminal siempre me parecieron atractivos, pero creo que entiendo por qué una parte de mí los rechaza
    La terminal es mi espacio de meditación. Es el patio de juegos al que voy para concentrarme profundamente y hacer el trabajo real que disfruto
    Leer o escribir correos es una tarea menor, como Slack, y no quiero meter eso dentro de mi terminal

    • Yo lo veo un poco distinto. Cuanto más se siente algo como una tarea menor, más me atraen las herramientas que mejoran esa experiencia
      Creo que separar ese tipo de trabajo más bien refuerza las asociaciones negativas con él. Tarde o temprano hay que hacerlo todo, así que es mejor hacerlo un poco menos desagradable y, al menos en mi caso, no perjudica las ventajas de trabajar en la terminal
    • Yo también dependo mucho de la terminal para la mayoría de las cosas, pero el correo con UI de terminal y la navegación web nunca me terminaron de encajar. Esta frase explica perfecto por qué
  • El problema que tenemos hoy con el correo viene de la falta de desarrollo de herramientas de correo modernas y personales
    Con personales me refiero a una configuración que no viva en el servidor de correo de otro, que permita descargar o sincronizar fácilmente IMAP remoto o usarlo directamente, tener un IMAP en un homeserver personal, y contar con clientes centrados en búsqueda como notmuch-emacs/mu4e y buenas herramientas de filtrado como MailDrop
    Las piezas ya existen. Se puede reclasificar correo sincronizado con IMAPFilter y OfflineIMAP, o descargarlo con fetchmail y MailDrop, y usar notmuch en Emacs o Aerc. Pero son solo programas separados, con configuraciones, estilos, calidad de documentación y niveles de amabilidad distintos, así que no hay nada para quien no sea muy geek o experto
    Por eso mucha gente termina equiparando el correo con el webmail, y aceptando el webmail como un servicio de terceros, igual que Slack o WhatsApp Web. Esa es una visión peligrosa para la libertad de comunicación y para el poder que ofrece el correo electrónico
    Capturar la factura recurrente del ISP con una regla de MailDrop, ejecutar un script, agregar la fecha de vencimiento y el monto al calendario, y luego verificar si hay una transacción relacionada en el software local de contabilidad para alertar si algo parece raro no es difícil con herramientas basadas en texto como org-agenda, BeanCount, MailDrop y el correo. Con software moderno es muy difícil, y es una gran pérdida para potenciales power users para quienes aprender e implementar automatizaciones sencillas resulta demasiado largo, o que ni siquiera saben que esa posibilidad existe
    Es triste que TI haya nacido para simplificar la vida y ampliar la cognición humana, y que casi todos lo hayan olvidado
    [1] Por los nombres de archivo del correo, al sincronizar entre varias máquinas suelen aparecer molestias con el estado de no leído o las etiquetas, mensajes duplicados, etc.

    • La palabra PERSONAL en mayúsculas es realmente importante. Hoy mucha gente está atrapada en sitios web como Gmail y ni siquiera sabe qué es posible
      Originalmente, el correo debía permitir personalizar al 100% los flujos de trabajo, el filtrado, la ordenación, las carpetas, etc.
      Como las herramientas antiguas todavía funcionan, esa posibilidad sigue ahí. Solo hace falta que se sepa más lo excelente que puede ser el correo cuando se usa como fue pensado. Si creyera que Gmail es el correo, yo también odiaría el correo, pero Gmail no es el correo en sí
      procmail y mutt siguen funcionando bien
  • Me encantan los proyectos modernos basados en texto. Gracias por mantener la terminal viva y con sentido

  • Vi una demo de alguien leyendo correo en Emacs con mu4e: la parte HTML la canalizaba directamente a Firefox para verla, y algunas partes las convertía a PDF
    https://www.youtube.com/watch?v=1uulLBKBMX8

  • aerc es bastante particular en que está diseñado como cliente, no como algo que almacena el correo en la computadora. Por eso tiene impactos y restricciones de rendimiento
    También se puede usar correo local, pero a mí me pareció una función de segunda; aunque lo vi hace mucho, así que puede que ahora sea distinto
    Con ese diseño, IMAP debería funcionar mejor, pero se desconectaba con frecuencia y había que reiniciar para volver a conectarlo. También me resultaba incómodo el solapamiento de atajos entre neovim y aerc
    En general, no me dejó satisfecho. Podría revisar de nuevo si me faltó algo en la configuración, pero por ahora le tengo más fe a neomutt

    • Definitivamente es mejor usarlo junto con un directorio de correo local. Creo que la mayoría de los usuarios de UIs de terminal para correo lo usan con utilidades como mbsync, notmuch para mejorar toda la experiencia
    • Yo también sufrí desconexiones de IMAP. Sonará un poco tosco, pero ejecuto aerc dentro de un bucle while, y cuando se pone raro salgo con q y lo vuelvo a levantar en unos segundos
      Aun así sigue siendo mi cliente de correo favorito, pero claramente puede mejorar
    • Me da curiosidad a qué se refiere el solapamiento de atajos entre neovim y aerc. Vim usa casi todas las teclas del teclado, así que me parece que es un problema que puede surgir con prácticamente cualquier programa
    • mutt, el mejor agente de usuario de correo, se reconecta automáticamente si falla la conexión al servidor IMAP. Aunque no parece funcionar siempre
      https://lwn.net/Articles/837960/
    • ¿No pasa lo mismo con mutt?
  • himalaya parece prometedor
    https://github.com/soywod/himalaya
    https://pimalaya.org/himalaya/cli/latest/index.html

  • No se ve explicado en ningún lado qué es “TUI”. Parece que se puede entender como interfaz de usuario de texto