驚くべきことに、vimがうまくいくと、Eclipseなどの標準IDEよりもさらに高速にコードを作成できます。しかし、私が本当に欠いているのは、特に長い変数名と関数のコード補完です。vimでPerlのコード補完を有効にする方法はありますか?
vimでPerlのコード補完を有効にする方法はありますか?
驚くべきことに、vimがうまくいくと、Eclipseなどの標準IDEよりもさらに高速にコードを作成できます。しかし、私が本当に欠いているのは、特に長い変数名と関数のコード補完です。vimでPerlのコード補完を有効にする方法はありますか?
vimでPerlのコード補完を有効にする方法はありますか?
Ctrlキー - P(前回のマッチを取得)とCtrlキー - N(次のマッチを取得する)擬似コード補完の一種です。あなたがその単語を編集する(開いているすべてのバッファ、あなたはタグファイル内のタグのものを使用している場合)されている(N- - Ctrlキーのために転送し、PをCtrlキーのための後方を)彼らは基本的にファイルを検索しますあなたが入力しているものから始め、ドロップダウンリストを追加してください。たとえインテリジェンスでなくても、変数や関数名には驚くほどうまく機能します。一般的には、私が探している変数または関数が通常コード内にあるので、Ctrl - Pを使用します。また、Vimの同じコピーを開いたままにすると、以前開いたファイルを検索します。
まあ、Vimの一般的な補完メカニズムは、挿入モードでCtrl-Nを使うだけで、驚くほど良いです。また、C-x C-lを使用すると、行の補完が非常に便利です。
また、vim script for perlもチェックしてください。
Vim 7はオムニコンプリートをサポートしています。
例えば、私は私のvimrc
autocmd FileType php set omnifunc=phpcomplete#CompletePHP
でこれを持っていると私は挿入モードではCtrl-X CTRL-Oを押したときに、私はオートコンプリートの可能性のドロップダウンリストを取得します。
ここにはomnicfunc for perlがあります。どのようにうまくいくのかわからない。
はCtrl +N
これは、パッケージの完了を行う方法と一緒に、Perlのハッキングの本で説明されています。強くお勧めします。
あなたはSuperTabプラグインをご覧ください: http://www.vim.org/scripts/script.php?script_id=1643 それはあなたのタブを使用して(OmniCompletionまたは通常の完了のいずれか)補完を行い、シフトタブを代わりに^ Nと^ Pでみましょう。
他の回答の.vimrcクリップは少し間違っています。たくさんのより多くのカスタマイズをin this thread at Perlmonks --whichリンクにさらに多くのスレッドを他のvimのトリックのあなたはこれを見つけることができます
inoremap <tab> <c-r>=InsertTabWrapper()<cr>
function! InsertTabWrapper()
let col = col('.') - 1
if !col || getline('.')[col - 1] !~ '\k'
return "\<tab>"
else
return "\<c-p>"
endif
endfunction
、およびトン:オートコンプリートキーにあなたの[Tab]キーを有効にするには、このコードを使用します。
標準CTRL-N
とCTRL-P
は〜/ .vim/ftplugin/perlに以下を追加するとさらにうまく動作します。vimのファイル:
セットiskeyword + =:
それから、オートコンプリートモジュール名など
これは私にとって素晴らしい仕事をしていたでしょうが、私は最近きました新しい開発環境に切り替えました。今では開いているバッファだけを検索するのではなく、私のソースツリー全体を検索するようですが、これはかなり時間がかかります。この新しい環境でTAGSが使用されているかどうかはどうすればわかりますか?私は ':tag'を試して、' E73:tag stack empty'を得ました。タグが有効になっている可能性がありますか?また、新しい環境には若干新しいバージョンのvimがあります。私はそれが開いているバッファのみを検索するようにしたいと思います。 – redbmk