From 69b68dee2ed631b4e429cb4de8e443c88ff08bc9 Mon Sep 17 00:00:00 2001 From: Herrington Darkholme Date: Sun, 23 Oct 2016 17:51:50 +0800 Subject: [PATCH 1/2] optimize performance --- after/syntax/nerdtree.vim | 55 +++++++++++++++++++-------------------- 1 file changed, 27 insertions(+), 28 deletions(-) diff --git a/after/syntax/nerdtree.vim b/after/syntax/nerdtree.vim index 07cfd58..0a9c0d3 100644 --- a/after/syntax/nerdtree.vim +++ b/after/syntax/nerdtree.vim @@ -223,7 +223,7 @@ let s:pink = "CB6F6F" let s:salmon = "EE6E73" let s:green = "8FAA54" let s:lightGreen = "31B53E" -let s:white = "FFFFFF" +let s:white = "A5A2A2" let s:file_extension_colors = { \ 'styl' : s:green, @@ -401,24 +401,23 @@ endfor for [key, val] in items(g:NERDTreeExtensionHighlightColor) - let label_identifier = 'nerdtreeFileExtensionLabel_'.key let icon_identifier = 'nerdtreeFileExtensionIcon_'.key let regexp = '\v'.s:characters.'+\.'.substitute(key, '\W', '\\\0', 'g') - exec 'silent syn match '.label_identifier.' "'.regexp.'$" containedin=NERDTreeFile' - exec 'silent syn match '.label_identifier.' "'.regexp.'\*$" containedin=NERDTreeExecFile' - exec 'hi def link '.label_identifier.' NERDTreeFile' - if exists('g:WebDevIconsUnicodeDecorateFileNodesExtensionSymbols["'.key.'"]') let icon = g:WebDevIconsUnicodeDecorateFileNodesExtensionSymbols[key] - exec 'silent syn match '.icon_identifier.' "\zs['.icon.']\ze.\+\.'.key.'$" containedin=NERDTreeFile' - exec 'silent syn match '.icon_identifier.' "\zs['.icon.']\ze.\+\.'.key.'\*$" containedin=NERDTreeExecFile' - exec 'hi def link '.icon_identifier.' '.label_identifier + exec 'silent syn keyword '.icon_identifier.' '.icon.' containedin=NERDTreeFile' + exec 'silent syn keyword '.icon_identifier.' '.icon.' containedin=NERDTreeExecFile' + exec 'hi def link '.icon_identifier.' NERDTreeFile' endif if !exists('g:NERDTreeDisableFileExtensionHighlight') && val != '' call s:X(icon_identifier, val, '', '') if exists('g:NERDTreeFileExtensionHighlightFullName') + let label_identifier = 'nerdtreeFileExtensionLabel_'.key + exec 'silent syn match '.label_identifier.' "'.regexp.'$" containedin=NERDTreeFile' + exec 'silent syn match '.label_identifier.' "'.regexp.'\*$" containedin=NERDTreeExecFile' + exec 'hi def link '.label_identifier.' NERDTreeFile' call s:X(label_identifier, val, '', '') endif endif @@ -437,32 +436,32 @@ for [key, val] in items(s:file_node_exact_matches) endfor for [key, val] in items(g:NERDTreeExactMatchHighlightColor) - let label_identifier = 'nerdtreeExactMatchLabel_'.key let icon_identifier = 'nerdtreeExactMatchIcon_'.key - let folder_identifier = 'nerdtreeExactMatchFolder_'.key let folder_icon_identifier = 'nerdtreeExactMatchFolderIcon_'.key - exec 'silent syn match '.label_identifier.' "\c'.key.'$" containedin=NERDTreeFile' - exec 'silent syn match '.label_identifier.' "\c'.key.'\*$" containedin=NERDTreeExecFile' - exec 'hi def link '.label_identifier.' NERDTreeFile' - exec 'silent syn match '.folder_identifier.' "\v\c<'.key.'\ze\/" containedin=NERDTreeDir' - exec 'hi def link '.folder_identifier.' NERDTreeDir' if exists('g:WebDevIconsUnicodeDecorateFileNodesExactSymbols["'.key.'"]') let icon = g:WebDevIconsUnicodeDecorateFileNodesExactSymbols[key] - exec 'silent syn match '.icon_identifier.' "\c['.icon.']\ze.*'.key.'$" containedin=NERDTreeFile' - exec 'silent syn match '.icon_identifier.' "\c['.icon.']\ze.*'.key.'\*$" containedin=NERDTreeExecFile' - exec 'hi def link '.icon_identifier.' '.label_identifier + exec 'silent syn keyword '.icon_identifier.' '.icon.' containedin=NERDTreeFile' + exec 'silent syn keyword '.icon_identifier.' '.icon.' containedin=NERDTreeExecFile' + exec 'hi def link '.icon_identifier.' NERDTreeFile' exec 'silent syn match '.folder_icon_identifier.' "\c['.icon.']\ze.*'.key.'\/" containedin=NERDTreeDir' - exec 'hi def link '.folder_icon_identifier.' '.folder_identifier + exec 'hi def link '.folder_icon_identifier.' NERDTreeDir' endif if !exists('g:NERDTreeDisableExactMatchHighlight') && val != '' call s:X(icon_identifier, val, '', '') if exists('g:NERDTreeExactMatchHighlightFullName') + let label_identifier = 'nerdtreeExactMatchLabel_'.key + exec 'silent syn match '.label_identifier.' "\c'.key.'$" containedin=NERDTreeFile' + exec 'silent syn match '.label_identifier.' "\c'.key.'\*$" containedin=NERDTreeExecFile' + exec 'hi def link '.label_identifier.' NERDTreeFile' call s:X(label_identifier, val, '', '') endif if exists('g:NERDTreeHighlightFolders') call s:X(folder_icon_identifier, val, '', '') if exists('g:NERDTreeHighlightFoldersFullName') + let folder_identifier = 'nerdtreeExactMatchFolder_'.key + exec 'silent syn match '.folder_identifier.' "\v\c<'.key.'\ze\/" containedin=NERDTreeDir' + exec 'hi def link '.folder_identifier.' NERDTreeDir' call s:X(folder_identifier, val, '', '') endif endif @@ -483,25 +482,25 @@ endfor for [key, val] in items(g:NERDTreePatternMatchHighlightColor) let suffix = substitute(key, '\W', '', 'g') - let label_identifier = 'nerdtreePatternMatchLabel_'.suffix let icon_identifier = 'nerdtreePatternMatchIcon_'.suffix let sub_regexp = substitute(key, '\v\\@ Date: Sun, 23 Oct 2016 17:53:20 +0800 Subject: [PATCH 2/2] rever white color --- after/syntax/nerdtree.vim | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/after/syntax/nerdtree.vim b/after/syntax/nerdtree.vim index 0a9c0d3..ea030c0 100644 --- a/after/syntax/nerdtree.vim +++ b/after/syntax/nerdtree.vim @@ -223,7 +223,7 @@ let s:pink = "CB6F6F" let s:salmon = "EE6E73" let s:green = "8FAA54" let s:lightGreen = "31B53E" -let s:white = "A5A2A2" +let s:white = "FFFFFF" let s:file_extension_colors = { \ 'styl' : s:green,