diff --git a/config/nvim/autoload/plug.vim b/config/nvim/autoload/plug.vim index d6f7afc..aee4722 100644 --- a/config/nvim/autoload/plug.vim +++ b/config/nvim/autoload/plug.vim @@ -508,14 +508,17 @@ function! s:lod_map(map, names, prefix) endif let extra .= nr2char(c) endwhile - if v:count - call feedkeys(v:count, 'n') - endif - call feedkeys('"'.v:register, 'n') + + let prefix = v:count ? v:count : '' + let prefix .= '"'.v:register.a:prefix if mode(1) == 'no' - call feedkeys(v:operator) + if v:operator == 'c' + let prefix = "\" . prefix + endif + let prefix .= v:operator endif - call feedkeys(a:prefix . substitute(a:map, '^', "\", '') . extra) + call feedkeys(prefix, 'n') + call feedkeys(substitute(a:map, '^', "\", '') . extra) endfunction function! plug#(repo, ...) @@ -1086,7 +1089,7 @@ function! s:job_handler(job_id, data, event) abort if a:event == 'stdout' let complete = empty(a:data[-1]) - let lines = map(filter(a:data, 'len(v:val) > 0'), 'split(v:val, "[\r\n]")[-1]') + let lines = map(filter(a:data, 'v:val =~ "[^\r\n]"'), 'split(v:val, "[\r\n]")[-1]') call extend(self.lines, lines) let self.result = join(self.lines, "\n") if !complete