ctrlp.vim icon indicating copy to clipboard operation
ctrlp.vim copied to clipboard

Custom extension not working

Open tino415 opened this issue 8 years ago • 0 comments

I'm triing to create mi own extension:

if ( exists('g:loaded_ctrlp_settings') && g:loaded_ctrlp_settings)
    fini
en

let g:loaded_ctrlp_settings = 1

let s:settings = {
  \ 'init'  : 'ctrlp#settings#init()',
  \ 'accept': 'ctrlp#settings#accept',
  \ 'lname' : 'settings',
  \ 'sname' : 'setting',
  \ 'type'  : 'line',
  \ 'sort'  : 0,
  \ 'nolim' : 1
  \ }

if exists('g:ctrlp_ext_vars') && !empty(g:ctrlp_ext_vars)
  let g:ctrlp_ext_vars = add(g:ctrlp_ext_vars, s:settings)
else
  let g:ctrlp_ext_vars = [s:settings]
endif

let s:id = len(g:ctrlp_ext_vars)

fu! ctrlp#settings#init()
    echom 'init'
    retu ['one', 'two', 'three', 'fout']
endf

fu! ctrlp#settings#accept(mode, str)
    echom 'accept'
    cal ctrlp#exit()
endf

fu! ctrlp#settings#id()
    return s:id
endf

vim echo g:ctrlp_ext_vars:

[
{'accept': 'ctrlp#settings#accept', 'lname': 'settings', 'init': 'ctrlp#settings#init()', 'sname': 'setting', 'type': 'path'}, 
{'accept': 'ctrlp#tag#accept', 'lname': 'tags', 'init': 'ctrlp#tag#init()', '
sname': 'tag', 'enter': 'ctrlp#tag#enter()', 'type': 'tabs'}]

I also have file where i vire it up:

" CtrlP Config
let g:ctrlp_extensions = ['tag']

let g:ctrlp_map = '<c-p>f'

com! -bar CtrlPSettings cal ctrlp#init(ctrlp#settings#id())

map <c-p>t :CtrlPTag<enter>
map <c-p>s :CtrlPSettings<enter>

after pressing ctrl-p-s it opens something like:

translations: [Bez mena] = [No name] Všetko=All

[Bez mena]                                                                                                                                                                                 0,0-1       Všetko
 == NO ENTRIES ==
 prt  path  <fil>={ buffers }=<mru> <->

sry for asking in issue tracker, I don't know where else to ask, thanks

tino415 avatar Apr 15 '16 06:04 tino415