Fix #340 cache error
This commit is contained in:
		
							parent
							
								
									e5a11a5a5c
								
							
						
					
					
						commit
						ce3c3d209c
					
				@ -181,6 +181,13 @@ function! neosnippet#helpers#substitute_selected_text(type, text) abort "{{{
 | 
				
			|||||||
  endtry
 | 
					  endtry
 | 
				
			||||||
endfunction"}}}
 | 
					endfunction"}}}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					function! neosnippet#helpers#vim2json(expr) abort "{{{
 | 
				
			||||||
 | 
					  return has('patch-7.4.1498') ? js_encode(a:expr) : string(a:expr)
 | 
				
			||||||
 | 
					endfunction "}}}
 | 
				
			||||||
 | 
					function! neosnippet#helpers#json2vim(expr) abort "{{{
 | 
				
			||||||
 | 
					  sandbox return has('patch-7.4.1498') ? js_decode(a:expr) : eval(a:expr)
 | 
				
			||||||
 | 
					endfunction "}}}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
function! s:is_beginning_of_line(cur_text) abort "{{{
 | 
					function! s:is_beginning_of_line(cur_text) abort "{{{
 | 
				
			||||||
  let keyword_pattern = '\S\+'
 | 
					  let keyword_pattern = '\S\+'
 | 
				
			||||||
  let cur_keyword_str = matchstr(a:cur_text, keyword_pattern.'$')
 | 
					  let cur_keyword_str = matchstr(a:cur_text, keyword_pattern.'$')
 | 
				
			||||||
 | 
				
			|||||||
@ -36,15 +36,21 @@ function! neosnippet#parser#_parse_snippets(filename) abort "{{{
 | 
				
			|||||||
  endif
 | 
					  endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  let cache_dir = neosnippet#variables#data_dir()
 | 
					  let cache_dir = neosnippet#variables#data_dir()
 | 
				
			||||||
  if s:Cache.check_old_cache(cache_dir, a:filename)
 | 
					  let snippets = {}
 | 
				
			||||||
 | 
					  if !s:Cache.check_old_cache(cache_dir, a:filename)
 | 
				
			||||||
 | 
					    try
 | 
				
			||||||
 | 
					      let snippets = neosnippet#helpers#json2vim(
 | 
				
			||||||
 | 
					            \ s:Cache.readfile(cache_dir, a:filename)[0])
 | 
				
			||||||
 | 
					    catch
 | 
				
			||||||
 | 
					    endtry
 | 
				
			||||||
 | 
					  endif
 | 
				
			||||||
 | 
					  if empty(snippets) || s:Cache.check_old_cache(cache_dir, a:filename)
 | 
				
			||||||
    let [snippets, sourced] = s:parse(a:filename)
 | 
					    let [snippets, sourced] = s:parse(a:filename)
 | 
				
			||||||
    if len(snippets) > 5 && !neosnippet#util#is_sudo() && !sourced
 | 
					    if len(snippets) > 5 && !neosnippet#util#is_sudo() && !sourced
 | 
				
			||||||
      call s:Cache.writefile(
 | 
					      call s:Cache.writefile(
 | 
				
			||||||
            \ cache_dir, a:filename, [string(snippets)])
 | 
					            \ cache_dir, a:filename,
 | 
				
			||||||
 | 
					            \ [neosnippet#helpers#vim2json(snippets)])
 | 
				
			||||||
    endif
 | 
					    endif
 | 
				
			||||||
  else
 | 
					 | 
				
			||||||
    sandbox let snippets = eval(
 | 
					 | 
				
			||||||
          \ s:Cache.readfile(cache_dir, a:filename)[0])
 | 
					 | 
				
			||||||
  endif
 | 
					  endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  return snippets
 | 
					  return snippets
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
		Reference in New Issue
	
	Block a user