aboutsummaryrefslogtreecommitdiffhomepage
path: root/vim
diff options
context:
space:
mode:
authorGravatar Bart Trojanowski <bart@jukie.net>2009-11-19 12:35:41 -0500
committerGravatar Bart Trojanowski <bart@jukie.net>2009-11-25 00:48:50 -0500
commit71bdd859dc6f80a918412396cb66c219e0e60669 (patch)
tree4bbf6bfa0d50a4ace374b934d7e04e4df55c98fb /vim
parentc6314fa2347fff97436acc0591cc4e6e557a19d6 (diff)
folding for citations
Diffstat (limited to 'vim')
-rw-r--r--vim/plugin/notmuch.vim11
1 files changed, 10 insertions, 1 deletions
diff --git a/vim/plugin/notmuch.vim b/vim/plugin/notmuch.vim
index a57b2ae8..5fe438e7 100644
--- a/vim/plugin/notmuch.vim
+++ b/vim/plugin/notmuch.vim
@@ -51,6 +51,8 @@ let s:notmuch_show_tags_regexp = '(\([^)]*\))$'
let s:notmuch_show_signature_regexp = '^\(-- \?\|_\+\)$'
let s:notmuch_show_signature_lines_max = 12
+let s:notmuch_show_citation_regexp = '^\s*>'
+
" --- implement search screen
function! s:NM_cmd_search(words)
@@ -111,7 +113,14 @@ function! s:NM_cmd_show_mkfolds()
if match(line, s:notmuch_show_signature_regexp) != -1
let modetype = 'sig'
let modeline = lnum
- echo "start=" . modeline
+ elseif match(line, s:notmuch_show_citation_regexp) != -1
+ let modetype = 'cit'
+ let modeline = lnum
+ endif
+ elseif modetype == 'cit'
+ if match(line, s:notmuch_show_citation_regexp) == -1
+ exec printf('%d,%dfold', modeline, lnum)
+ let modetype = ''
endif
elseif modetype == 'sig'
if (lnum - modeline) > s:notmuch_show_signature_lines_max