" Vim filetype plugin file
+"
" Language: Mail
" Maintainer: Simon Ruderich <simon@ruderich.org>
-" Last Change: 2008-12-07
+" License: GPL v3+
+
+" Copyright (C) 2009-2012 Simon Ruderich
+"
+" This file is free software: you can redistribute it and/or modify
+" it under the terms of the GNU General Public License as published by
+" the Free Software Foundation, either version 3 of the License, or
+" (at your option) any later version.
+"
+" This file is distributed in the hope that it will be useful,
+" but WITHOUT ANY WARRANTY; without even the implied warranty of
+" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+" GNU General Public License for more details.
+"
+" You should have received a copy of the GNU General Public License
+" along with this file. If not, see <http://www.gnu.org/licenses/>.
" Use only 65 characters per line as given in rfc1855.
setlocal textwidth=65
-" Replace trailing spaces except after mail headers (To:, etc.) or a signature
-" delimiter (-- ).
-silent! %s/\(^\([a-zA-z-]\+:\|--\)\)\@<!\s\+$//
+" Remove trailing whitespace after quotes.
+silent! %s/\(^>.\{-}\)\@<=\s\+$//
" Remove spaces between quotes (> > to >>).
-silent! %s/^\(>\+\) >/\1>/g
-silent! %s/^\(>\+\) >/\1>/g
+silent! %s/^>\+\zs >/>/g
+silent! %s/^>\+\zs >/>/g
+silent! %s/^>\+\zs >/>/g
" Move directly after the headers.
normal gg
normal }
+
+" Fold quotes. Thanks to Teemu Likonen <tlikonen@iki.fi>
+" (http://permalink.gmane.org/gmane.editors.vim.devel/20890,
+" <20080809190407.GA7584@mithlond.arda.local>) and danielsh_ in #mutt on
+" Freenode (2010-07-10 13:01) for letting me know.
+setlocal foldmethod=expr foldminlines=2
+setlocal foldexpr=strlen(substitute(substitute(getline(v:lnum),'\\s','','g'),'[^>].*','',''))