4

So I have the following lines in my vimrc to scroll through autocompletion using jk.

" Making autocompletion work with jk
inoremap <expr> j ((pumvisible())?("\<C-n>"):("j"))
inoremap <expr> k ((pumvisible())?("\<C-p>"):("k"))

I was wondering if there would be a way to scroll through :tabe<Tab> suggestions using hand l? That's what would seem the most natural to me, however I haven't been able to find anything on how to do that.

4

2 に答える 2

1

コマンドライン補完を使用する場合、使用するかどうか、wildmenuおよび に設定した値に関係なくwildmode、カーソルはコマンドラインにとどまり、ヒットした印刷可能な文字はもちろんhl.

それを念頭に置いて、コマンドラインに挿入する機能を放棄するのが賢明だと本当に思いますか?hl

気に入らない場合は<Tab>、オプションを試すことができますが、 /と矢印wildcharを削除または置換することはできません。<C-n><C-p>

また、コマンド ライン補完は、 に限定されない一般的な機能です:tabe:tabeここに赤いニシンがあります。

于 2013-04-29T18:32:04.080 に答える
0

再マップするhl奇妙に見えます。それらは本当に便利です。少なくとも、書き込み、コマンドの入力などに必要です...

簡単なオートコンプリートのヒントが必要な場合は、次の行を vimrc に追加する必要があります。

set wildmenu
set wildmode =list:longest,list:full 

SuperTab 機能を追加すると、TabTab を使用してオートコンプリートしたり、メニューに移動したりできます。コードは次のとおりです。

imap <Tab> <C-R>=SuperTab()<CR> 


function! SuperTab()
if (strpart(getline('.'),col('.')-2,1)=~'^\W\?$')
  return "\<Tab>"
else
  return "\<C-n>"
endif
endfunction

それが役に立てば幸い !

于 2013-04-29T19:12:53.207 に答える