Vim as Thunderbird’s External Editor in Linux

By Zhiqiang Ma On Nov 27, 2012

Vim is an excellent editor which I use every day. Thunderbird is a nice email application. However, Thunderbird’s integrated editor is not efficient enough to a Vim user. Why not use Vim as Thunderbird’s editor? In this tutorial, we will introduce how to integrate Vim with Thunderbird together in Linux.

Install the “External Editor” Thunderbird extension

Download the “External Editor” plugin.

And install it to Thunderbird.

Configure the external editor

Option 1: use gvim

This is an easy method which use gvim.

In External Editor’s Preference, set the Text Editor to:

gvim -f

Option 2: use vim in gnome-terminal

If you prefer to use vim in a terminal as me, you may consider this option. Setting vim in the editor will simply fail. We may use ‘xterm -e vim’ as the editor, but xterm looks ugly in a modern computer compared to shells like gnome-terminal. However, we need a little trick to use vim inside gnome-terminal.

First, create a script “callvim”:

#!/bin/bash

gnome-terminal --geometry=80x40 --disable-factory -e "vim $*" Save it to a directory in your $PATH, such as ~/bin/, and remember to give it executable by ‘chmod +x callvim’.

Then, set the Text Editor in External Editor’s Preference to

callvim

How to use it

When creating or editing email, invoke vim to edit it by the keyboard shortcut Ctrl+E.

Edit the email in Vim and save and exit. The email in Thunderbird’s editor is changed.

Customize Vim for editing email

We can customize Vim to be a better email editor by set email-specific configuration in ~/.vimrc. Below is my configuration in .vimrc which set the text width to 68 charactors, set automatic spell check, default file encoding to be iso8859-1 and utf-8. Abbreviation is also available, which may be frequently used in writing email.

My email configuration in ~/.vimrc

au FileType mail call FT_mail()

function FT_mail() set nocindent set noautoindent set textwidth=68 " reformat for 72 char lines " normal gggqGgg " settings setlocal spell spelllang=en " setlocal fileencoding=iso8859-1,utf-8 set fileencodings=iso8859-1,utf-8 " abbreviations iabbr gd Good Day! endfunction

By: Zhiqiang Ma Last updated: Nov 27, 2012 Views: 982
Tags: , , , , ,

About Zhiqiang Ma

Zhiqiang Ma is a PhD candidate at Dep. of CSE, HKUST. He is interested in system software for cloud computing, virtualization of large-scale distributed system, etc. Find Zhiqiang on Facebook, Twitter, LinkedIn and Google+.

One Comment to Vim as Thunderbird’s External Editor in Linux | Add Comment
Add your comments, share your thoughts

Be nice. Keep it clean. Stay on topic. No spam.