blob: 2a6bf4c046dea80e24ebc9f8b0412623e2ce7af9 [file] [log] [blame]
Bram Moolenaar071d4272004-06-13 20:20:40 +00001" Vim filetype plugin file
2" Language: Mail
3" Maintainer: Bram Moolenaar <Bram@vim.org>
Bram Moolenaar2df58b42012-11-28 18:21:11 +01004" Last Change: 2012 Nov 20
Bram Moolenaar071d4272004-06-13 20:20:40 +00005
6" Only do this when not done yet for this buffer
7if exists("b:did_ftplugin")
8 finish
9endif
10let b:did_ftplugin = 1
11
Bram Moolenaar2df58b42012-11-28 18:21:11 +010012let b:undo_ftplugin = "setl modeline< tw< fo< comments<"
Bram Moolenaar071d4272004-06-13 20:20:40 +000013
Bram Moolenaar9964e462007-05-05 17:54:07 +000014" Don't use modelines in e-mail messages, avoid trojan horses and nasty
15" "jokes" (e.g., setting 'textwidth' to 5).
Bram Moolenaar071d4272004-06-13 20:20:40 +000016setlocal nomodeline
17
18" many people recommend keeping e-mail messages 72 chars wide
19if &tw == 0
20 setlocal tw=72
21endif
22
23" Set 'formatoptions' to break text lines and keep the comment leader ">".
24setlocal fo+=tcql
25
Bram Moolenaar2df58b42012-11-28 18:21:11 +010026" Add n:> to 'comments, in case it was removed elsewhere
27setlocal comments+=n:>
28
Bram Moolenaar5c736222010-01-06 20:54:52 +010029" Add mappings, unless the user doesn't want this.
Bram Moolenaar071d4272004-06-13 20:20:40 +000030if !exists("no_plugin_maps") && !exists("no_mail_maps")
31 " Quote text by inserting "> "
32 if !hasmapto('<Plug>MailQuote')
33 vmap <buffer> <LocalLeader>q <Plug>MailQuote
34 nmap <buffer> <LocalLeader>q <Plug>MailQuote
35 endif
36 vnoremap <buffer> <Plug>MailQuote :s/^/> /<CR>:noh<CR>``
37 nnoremap <buffer> <Plug>MailQuote :.,$s/^/> /<CR>:noh<CR>``
38endif