Provide error message when Netrw can't be loaded

This commit is contained in:
Tim Pope
2021-02-16 21:02:08 -05:00
parent c63bc47c44
commit 0a35937003

View File

@@ -5618,7 +5618,7 @@ augroup fugitive_blame
autocmd BufWinLeave * execute getwinvar(+bufwinnr(+expand('<abuf>')), 'fugitive_leave') autocmd BufWinLeave * execute getwinvar(+bufwinnr(+expand('<abuf>')), 'fugitive_leave')
augroup END augroup END
" Section: :Gbrowse " Section: :GBrowse
let s:redirects = {} let s:redirects = {}
@@ -5631,7 +5631,7 @@ function! fugitive#BrowseCommand(line1, count, range, bang, mods, arg, args) abo
if a:count >= 0 if a:count >= 0
return 'echoerr ' . string('fugitive: ''-'' no longer required to get persistent URL if range given') return 'echoerr ' . string('fugitive: ''-'' no longer required to get persistent URL if range given')
else else
return 'echoerr ' . string('fugitive: use :0Gbrowse instead of :Gbrowse -') return 'echoerr ' . string('fugitive: use :0GBrowse instead of :GBrowse -')
endif endif
elseif len(a:args) elseif len(a:args)
let remote = matchstr(join(a:args, ' '),'@\zs\%('.validremote.'\)$') let remote = matchstr(join(a:args, ' '),'@\zs\%('.validremote.'\)$')
@@ -5822,7 +5822,7 @@ function! fugitive#BrowseCommand(line1, count, range, bang, mods, arg, args) abo
endif endif
if empty(url) if empty(url)
call s:throw("No Gbrowse handler installed for '".raw."'") call s:throw("No GBrowse handler installed for '".raw."'")
endif endif
let url = s:gsub(url, '[ <>]', '\="%".printf("%02X",char2nr(submatch(0)))') let url = s:gsub(url, '[ <>]', '\="%".printf("%02X",char2nr(submatch(0)))')
@@ -5833,14 +5833,18 @@ function! fugitive#BrowseCommand(line1, count, range, bang, mods, arg, args) abo
return 'echomsg '.string(url) return 'echomsg '.string(url)
elseif exists(':Browse') == 2 elseif exists(':Browse') == 2
return 'echomsg '.string(url).'|Browse '.url return 'echomsg '.string(url).'|Browse '.url
elseif exists(':OpenBrowser') == 2
return 'echomsg '.string(url).'|OpenBrowser '.url
else else
if !exists('g:loaded_netrw') if !exists('g:loaded_netrw')
runtime! autoload/netrw.vim runtime! autoload/netrw.vim
endif endif
if exists('*netrw#BrowseX') if exists('*netrw#BrowseX')
return 'echomsg '.string(url).'|call netrw#BrowseX('.string(url).', 0)' return 'echomsg '.string(url).'|call netrw#BrowseX('.string(url).', 0)'
else elseif exists('*netrw#NetrwBrowseX')
return 'echomsg '.string(url).'|call netrw#NetrwBrowseX('.string(url).', 0)' return 'echomsg '.string(url).'|call netrw#NetrwBrowseX('.string(url).', 0)'
else
return 'echoerr ' . string('Netrw not found. Define your own :Browse to use :GBrowse')
endif endif
endif endif
catch /^fugitive:/ catch /^fugitive:/