[PATCH 4/9] vim: cleanup search syntax

Subject: [PATCH 4/9] vim: cleanup search syntax

Date: Sat, 5 Jun 2010 14:12:37 +0300

To: notmuch@notmuchmail.org

Cc: Bart Trojanowski

From: Felipe Contreras


It was *sloooooow*.

Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
---
 vim/syntax/notmuch-search.vim |   36 ++++++++++++------------------------
 1 files changed, 12 insertions(+), 24 deletions(-)

diff --git a/vim/syntax/notmuch-search.vim b/vim/syntax/notmuch-search.vim
index 71839fd..f458d77 100644
--- a/vim/syntax/notmuch-search.vim
+++ b/vim/syntax/notmuch-search.vim
@@ -1,24 +1,12 @@
-" notmuch search mode syntax file
-
-" TODO: I cannot figure out why nmSearchTags is not matching anything :(
-
-syntax region nmSearchDate      start='^' end='\%13v'      oneline
-syntax region nmSearchCountAndFrom start='\%14v\[' end='|' oneline contains=nmSearchCount,nmSearchFrom
-syntax region nmSearchCount     start='\[' end='\]'        oneline contained contains=nmSearchCountZero,nmSearchCountSome,nmSearchCountAll
-syntax region nmSearchFrom      start='\]\@<=' end='|'     oneline contained
-syntax match  nmSearchCountZero '0/\(\d\+\)'               contained
-syntax match  nmSearchCountSome '\([1-9]\d*\)/\(\d\+\)'    contained
-syntax match  nmSearchCountAll  '\(\d\+\)/\1'              contained
-syntax match  nmSearchSquareBracketText '\(\[\w\+\]\)'
-syntax match  nmSearchTags      /([^)]\+)$/
-
-highlight link nmSearchDate      Statement
-"highlight link nmSearchCount     Comment
-highlight link nmSearchCountZero Function
-highlight link nmSearchCountSome Special
-highlight link nmSearchCountAll  Type
-highlight link nmSearchFrom      Include
-highlight link nmSearchSquareBracketText Special
-highlight link nmSearchTags      String
-
-highlight CursorLine term=reverse cterm=reverse gui=reverse
+syntax region nmSearch		start=/^/ end=/$/		oneline contains=nmSearchDate
+syntax match nmSearchDate	/^.\{-13}/			contained nextgroup=nmSearchNum
+syntax match nmSearchNum	/.\{-4}/			contained nextgroup=nmSearchFrom
+syntax match nmSearchFrom	/.\{-21}/			contained nextgroup=nmSearchSubject
+syntax match nmSearchSubject	/.\{0,}\(([^()]\+)$\)\@=/	contained nextgroup=nmSearchTags
+syntax match nmSearchTags	/.\+$/				contained
+
+highlight link nmSearchDate	Statement
+highlight link nmSearchNum	Type
+highlight link nmSearchFrom	Include
+highlight link nmSearchSubject	Normal
+highlight link nmSearchTags	String
-- 
1.7.1


Thread: