Heureusement Emacs est là. J'ai développé un petit script perl pour récupérer les données sur le site de wordreference, puis un petit bout de code Emacs pour l'afficher dans un nouveau buffer. Le script perl peut être utilisé dans un shell également.

Voici le code en Emacs-lisp, bien entendu sous GNU General Public License:

(defun translate (word)
  (interactive "sWord to translate: ")
  (let ((window (selected-window)))
    (if (get-buffer "*translation*")
	(save-window-excursion
	  (switch-to-buffer "*translation*")
	  (erase-buffer))
	(progn
	  (switch-to-buffer-other-window "*translation*")
	  (enlarge-window -5)))
    (call-process "translate" nil "*translation*" nil word)
    (save-window-excursion
      (switch-to-buffer "*translation*")
      (if (= (buffer-size) 0)
	  (print "No match for query"))
      (beginning-of-buffer))
    (select-window window)))