docvim-0.3.1.2: tests/fixtures/integration/command-t/input/autoload/commandt.vim
" Copyright 2010-present Greg Hurrell. All rights reserved.
" Licensed under the terms of the BSD 2-clause license.
if exists('g:command_t_autoloaded') || &cp
finish
endif
let g:command_t_autoloaded = 1
"
" Functions
"
function! s:RubyWarning() abort
echohl WarningMsg
echo 'command-t.vim requires Vim to be compiled with Ruby support'
echo 'For more information type: :help command-t'
echohl none
endfunction
function! commandt#BufferFinder() abort
if has('ruby')
ruby $command_t.show_buffer_finder
else
call s:RubyWarning()
endif
endfunction
function! commandt#CommandFinder() abort
if has('ruby')
ruby $command_t.show_command_finder
else
call s:RubyWarning()
endif
endfunction
function! commandt#FileFinder(arg) abort
if has('ruby')
ruby $command_t.show_file_finder
else
call s:RubyWarning()
endif
endfunction
function! commandt#JumpFinder() abort
if has('ruby')
ruby $command_t.show_jump_finder
else
call s:RubyWarning()
endif
endfunction
function! commandt#MRUFinder() abort
if has('ruby')
ruby $command_t.show_mru_finder
else
call s:RubyWarning()
endif
endfunction
function! commandt#HelpFinder() abort
if has('ruby')
ruby $command_t.show_help_finder
else
call s:RubyWarning()
endif
endfunction
function! commandt#HistoryFinder() abort
if has('ruby')
ruby $command_t.show_history_finder
else
call s:RubyWarning()
endif
endfunction
function! commandt#LineFinder() abort
if has('ruby')
let g:CommandTCurrentBuffer=bufnr('%')
ruby $command_t.show_line_finder
else
call s:RubyWarning()
endif
endfunction
function! commandt#SearchFinder() abort
if has('ruby')
ruby $command_t.show_search_finder
else
call s:RubyWarning()
endif
endfunction
function! commandt#TagFinder() abort
if has('ruby')
ruby $command_t.show_tag_finder
else
call s:RubyWarning()
endif
endfunction
function! commandt#Flush() abort
if has('ruby')
ruby $command_t.flush
else
call s:RubyWarning()
endif
endfunction
function! commandt#Load() abort
if !has('ruby')
call s:RubyWarning()
endif
endfunction
" For possible use in status lines.
function! commandt#ActiveFinder() abort
if has('ruby')
ruby ::VIM::command "return '#{$command_t.active_finder}'"
else
return ''
endif
endfunction
" For possible use in status lines.
function! commandt#Path() abort
if has('ruby')
ruby ::VIM::command "return '#{($command_t.path || '').gsub(/'/, "''")}'"
else
return ''
endif
endfunction
" For possible use in status lines.
function! commandt#CheckBuffer(buffer_number) abort
if has('ruby')
execute 'ruby $command_t.return_is_own_buffer' a:buffer_number
else
return 0
endif
endfunction
if !has('ruby')
finish
endif
" note that we only start tracking buffers from first (autoloaded) use of Command-T
augroup CommandTMRUBuffer
autocmd!
autocmd BufEnter * ruby CommandT::MRU.touch
autocmd BufDelete * ruby CommandT::MRU.delete
augroup END
ruby << EOF
# require Ruby files
begin
require 'command-t'
# Make sure we're running with the same version of Ruby that Command-T was
# compiled with.
patchlevel = defined?(RUBY_PATCHLEVEL) ? RUBY_PATCHLEVEL : nil
if CommandT::Metadata::UNKNOWN == true || (
CommandT::Metadata::EXPECTED_RUBY_VERSION == RUBY_VERSION &&
CommandT::Metadata::EXPECTED_RUBY_PATCHLEVEL == patchlevel
)
require 'command-t/ext' # eager load, to catch compilation problems early
$command_t = CommandT::Controller.new
else
$command_t = CommandT::Stub.new
end
rescue LoadError
load_path_modified = false
::VIM::evaluate('&runtimepath').to_s.split(',').each do |path|
ext = "#{path}/ruby/command-t/ext"
if !$LOAD_PATH.include?(ext) && File.exist?(ext)
$LOAD_PATH << ext
load_path_modified = true
end
lib = "#{path}/ruby/command-t/lib"
if !$LOAD_PATH.include?(lib) && File.exist?(lib)
$LOAD_PATH << lib
load_path_modified = true
end
end
retry if load_path_modified
$command_t = CommandT::Stub.new
end
EOF