Si, aunque parezca un título de broma estoy totalmente convencido de que Emacs es el mejor cliente de Twitter (al menos, libre y disponible en GNU/Linux). En esta receta explicaré como instalar Twittering Mode, un plugin para Emacs que nos permite enviar y recibir mensajes de esta famosa red social

Preámbulo

Ya, lo se: Twitter no sirve para nada, o es genial, o lo que sea. Esta receta NO pretende ser un foro de discusión sobre la utilidad (o no) de Twitter. Quien quiera librar esa guerra, hay foros mejores. En esta receta voy a comentar este plugin porque me pareció realmente curioso que existiera un modo en Emacs hasta para esto :)

Instalación

Para instalar Twittering mode puedes tomar varias alternativas: la que yo he elegido consiste en utilizar un directorio dentro de mi $HOME de usuario para almacenar plugins que solo yo utilizo, y configurar adecuadamente para ello el fichero .emacs.

Lo primero, tienes que descargar Twittering mode. Una vez descargado y descomprimido, copia el fichero twittering-mode.el al directorio de tu $HOME dónde quieras almacenar tus plugins de Emacs (un buen sitio sería $HOME/.emacs-plugins).

Para que Emacs encuentre en ese directorio los plugins tendrás que decirle que lo haga en el fichero $HOME/.emacs añadiendo lo siguiente:

(add-to-list 'load-path "/path/to/foo/plugins")

En nuestro ejemplo:

(add-to-list 'load-path "/home/luser/.emacs-plugins")

No cierres todavía tu $HOME/.emacs. Lo vas a necesitar.

Activando twittering-mode

Para utilizarlo, ve a tu fichero de configuración $HOME/.emacs y activa twittering escribiendo

(require 'twittering-mode)

Utilizando twittering-mode

Para utilizar el modo tan solo debes hacer M-x twit. Aparecerá un buffer temporal dándonos las instrucciones para autenticar tu cuenta de Twitter. Lo realiza mediante el método OAuth, por el que tienes que visitar la web de Twitter, permitir que la aplicación se conecte a tu perfil y, por último, darle a tu aplicación un PIN que Twitter mostrará en pantalla. Tu Emacs te estará esperando para que le des ese PIN, y una vez dado, comienza la fiesta.

IMPORTANTE: pese a que el método OAuth es el único admitido actualmente por Twitter para aplicaciones externas, tiene un problema: tendrás que autorizar esta aplicación cada vez que abras el twittering-mode. Lo se, es un “coñazo”, pero por ahora es lo que hay.

Atajos de teclado

Los atajos de teclado más útiles son los que paso a enumerar:

  • u: abre un buffer para enviar un “tweet”
  • C-c D: eliminar un “tweet” publicado (solo para los tuyos)
  • Enter: igual que el anterior, pero para responder al usuario que haya publicado el mensaje que tengas activo (lo que en el argot se llama una “mention”
  • C-c C-m: reenviar a tus seguidores el mensaje que tengas activo (lo que se llama un “retweet”)
  • i: activar los avatares en la vista
  • j: activar el “tweet” anterior (cambiar la selección, vaya).
  • k: igual que antes, pero para el “tweet” siguiente
  • n: igual que el anterior, pero busca que sea del mismo usuario
  • g: actualizar manualmente
  • d: mandar un privado al usuario que haya publicado el “tweet” activo

Trucos varios

Algunas cosas que se pueden configurar en el $HOME/.emacs para hacer tu experiencia de usuario mejor :P

  • Activar por defecto el modo con avatares:
    (setq twittering-icon-mode t)
  • Poner el intervalo de actualización automática a 5 minutos (300 segundos):
    (setq twittering-timer-interval 300)
  • Y la estrella entre las pijadas: hacer que cuando se actualice el TL nos aparezca una notificación de Gnome:
(add-hook 'twittering-new-tweets-hook (lambda ()
   (let ((n twittering-new-tweets-count))
     (start-process "twittering-notify" nil "notify-send"
                    "-i" "/usr/share/pixmaps/gnome-emacs.png"
                    "¡Twit!"
                    (format "Tienes %d new tweet%s"
                            n (if (> n 1) "s" ""))))))

Referencias

Espero que a los que usáis Twitter os sirva la receta para algo y, a los que no, al menos os parezca una agradable curiosidad sobre nuestro editor de cabecera :)



blog comments powered by Disqus