aboutsummaryrefslogtreecommitdiff
path: root/vim/.vim/plugged/vim-gitgutter/autoload/gitgutter/async.vim
diff options
context:
space:
mode:
authorKumar Damani <damani.kumar@gmail.com>2019-05-16 22:16:09 +0000
committerKumar Damani <damani.kumar@gmail.com>2019-05-16 22:16:09 +0000
commit12564a8f73ebe721d415a04d36f7aac7091bea9d (patch)
treebbc8a6bf6aabe832b3ee435eaa605dcac655fc5f /vim/.vim/plugged/vim-gitgutter/autoload/gitgutter/async.vim
parent1241da7ab7a4e91248391ee9b045267bcbbeee4f (diff)
updating vimrc
Diffstat (limited to 'vim/.vim/plugged/vim-gitgutter/autoload/gitgutter/async.vim')
-rw-r--r--vim/.vim/plugged/vim-gitgutter/autoload/gitgutter/async.vim95
1 files changed, 0 insertions, 95 deletions
diff --git a/vim/.vim/plugged/vim-gitgutter/autoload/gitgutter/async.vim b/vim/.vim/plugged/vim-gitgutter/autoload/gitgutter/async.vim
deleted file mode 100644
index 40f2ad2..0000000
--- a/vim/.vim/plugged/vim-gitgutter/autoload/gitgutter/async.vim
+++ /dev/null
@@ -1,95 +0,0 @@
-let s:available = has('nvim') || (
- \ has('job') && (
- \ (has('patch-7-4-1826') && !has('gui_running')) ||
- \ (has('patch-7-4-1850') && has('gui_running')) ||
- \ (has('patch-7-4-1832') && has('gui_macvim'))
- \ )
- \ )
-
-function! gitgutter#async#available()
- return s:available
-endfunction
-
-
-function! gitgutter#async#execute(cmd, bufnr, handler) abort
- call gitgutter#debug#log('[async] '.a:cmd)
-
- let options = {
- \ 'stdoutbuffer': [],
- \ 'buffer': a:bufnr,
- \ 'handler': a:handler
- \ }
- let command = s:build_command(a:cmd)
-
- if has('nvim')
- call jobstart(command, extend(options, {
- \ 'on_stdout': function('s:on_stdout_nvim'),
- \ 'on_stderr': function('s:on_stderr_nvim'),
- \ 'on_exit': function('s:on_exit_nvim')
- \ }))
- else
- call job_start(command, {
- \ 'out_cb': function('s:on_stdout_vim', options),
- \ 'err_cb': function('s:on_stderr_vim', options),
- \ 'close_cb': function('s:on_exit_vim', options)
- \ })
- endif
-endfunction
-
-
-function! s:build_command(cmd)
- if has('unix')
- return ['sh', '-c', a:cmd]
- endif
-
- if has('win32')
- return has('nvim') ? ['cmd.exe', '/c', a:cmd] : 'cmd.exe /c '.a:cmd
- endif
-
- throw 'unknown os'
-endfunction
-
-
-function! s:on_stdout_nvim(_job_id, data, _event) dict abort
- if empty(self.stdoutbuffer)
- let self.stdoutbuffer = a:data
- else
- let self.stdoutbuffer = self.stdoutbuffer[:-2] +
- \ [self.stdoutbuffer[-1] . a:data[0]] +
- \ a:data[1:]
- endif
-endfunction
-
-function! s:on_stderr_nvim(_job_id, _data, _event) dict abort
- call self.handler.err(self.buffer)
-endfunction
-
-function! s:on_exit_nvim(_job_id, exit_code, _event) dict abort
- if !a:exit_code
- call self.handler.out(self.buffer, join(self.stdoutbuffer, "\n"))
- endif
-endfunction
-
-
-function! s:on_stdout_vim(_channel, data) dict abort
- call add(self.stdoutbuffer, a:data)
-endfunction
-
-function! s:on_stderr_vim(channel, _data) dict abort
- call self.handler.err(self.buffer)
-endfunction
-
-function! s:on_exit_vim(channel) dict abort
- let job = ch_getjob(a:channel)
- while 1
- if job_status(job) == 'dead'
- let exit_code = job_info(job).exitval
- break
- endif
- sleep 5m
- endwhile
-
- if !exit_code
- call self.handler.out(self.buffer, join(self.stdoutbuffer, "\n"))
- endif
-endfunction