タグ付けされた質問 「autocompletion」

入力されたキーワードまたは行の一部を完成させるためのいくつかのコマンドについての質問。

2
VimはBibTeXファイルの末尾のコンマを覚えるのにどのように役立ちますか?
私はかなりの数のBibTeXファイルを編集しており、最後のコンマを定期的に忘れています。 例えば: @Book{cooke2015british, author = {Cooke, Lez}, title = {British Television Drama}, publisher = {Palgrave on behalf of the British Film Institute}, year = {2015}, keywords = {about} address = {London}, isbn = {978-1844576234} } の後keywords = {about}にコンマを追加するのを忘れたことがわかります。これは、デバッグに時間を費やす必要があることを意味します。Vimに思い出させる方法はありますか?ちなみに、私はbib_autocomp.vimプラグインを持っています...

1
マクロで挿入モード補完を使用するにはどうすればよいですか?
ランダムな単語のリストをすばやく生成するマクロを定義しようとしています。 マクロでこれを次のようなリストに変換したい a b c d e これに arezzo bywords czars détente eyrie これまでのところ: カーソルを文字の上に置く a マクロの記録を開始 qq a 挿入モードに入る <C-x><C-k> - perform dictionary completion on the character before cursor - in this case the lettera` <C-p>表示される補完リストの最後の項目を選択しますarezzo。私のシステムではその単語です。(注意:完了時にこのように動作するために必要な設定にlongest含めました:)。'completeopt'<C-p>'set completeopt=longest,menuone,preview' <C-y> 完了を受け入れる ^[^[ 挿入モードを終了 j 次の行に移動して、次の行で同じ操作を実行する準備ができました q 録音を停止 マクロを作成して手順を手動で実行すると、すべてが正常に動作しますが、マクロを実行すると、コマンドラインで次のようなメッセージが点滅します。 辞書ファイルのスキャン そして、何も起こりません。マクロのコマンドのみjが実行されます。つまり、カーソルは行の下に移動しますが、完了コマンドは実行されません。 マクロで挿入モードの補完を使用することは可能ですか?可能な場合、どうすれば実行できますか?

2
部分パスのZshのようなタブ補完
Vimでのファイル名のBashのような部分的なタブ補完に関連 の本当に素晴らしい機能の1つは、zshたとえばls /u/s/m/m/who.1を押しTabて、押して、まで完成させる ことができることですls /usr/share/man/man1/who.1.gz。慣れると/u<tab>/s<tab>/m<tab>/m<tab>...、特に部分パス全体が1つの実際のパスにしか解決できないが、個々のコンポーネントごとに複数の補完が存在する場合は、に戻るのは本当に面倒です。これはVimで実現できます:eか:cd? zshには、他の便利なパス関連の機能があります。たとえば、を使用cd foo barして、にfoo置き換えられたbar(つまり、に/blah/foo/baz/yadaなる/blah/bar/baz/yada)同等のパスに移動します。これらも取り入れたソリューション(基本的には、シェルに関連するタスクを、それらを非常にうまく実行するシェルに引き継ぐ)があれば、すばらしいでしょう。

2
コマンドラインのオプション値の自動補完
私がこれを試みた回数を数えることはできません: :set foldmethod=syn^I オプション値では補完が機能しないようです! オプションが複雑な文字列であり、補完が意味をなさない場合があります。(例'comments') しかし、一般的なユースケースにワイルドチャー補完を提供するための取り組みはありましたか? そうでない場合、上記の例をどのように機能させることができますか?(私が文字列の1つに完了したいと仮定します['manual', 'indent', 'expr', 'marker', 'syntax']。)

1
Vimファイル名/パスの補完
ctrl + x、ctrl + f(compl-filename)を使用して現在のディレクトリからファイル名/パスを完成できることを知っています。これは、変更が現在のディレクトリをアクティブバッファーのディレクトリに更新するset autochdirとの組み合わせでうまく機能します。 しかし、airblade/vim-rooter現在のディレクトリを「プロジェクト」フォルダにするためにを使い始めました。現在、ファイル名の補完は常にプロジェクトフォルダから始まります。 質問:現在のディレクトリではなく、アクティブなバッファのディレクトリをファイル名の補完に使用する方法はありますか?それとも他の回避策ですか? Stackoverflowでも質問

1
YouCompleteMeが関数パラメーターを完成しないのはなぜですか?
YouCompleteMeをC ++のセマンティック補完で使用したいのですが、何時間も試しても期待どおりに機能しない理由がわかりません。 すべてが機能しているようですが、関数パラメーターを完成できません。 Archlinux(OpenboxのGnomeターミナル)でVimを実行しています: Linux Arch-PC 4.2.5-1-ARCH #1 SMP PREEMPT Tue Oct 27 08:13:28 CET 2015 x86_64 GNU/Linux 指示に従ってYCMをインストールしました(install.pyスクリプトとclangサポート付き)。AUR YCMパッケージでも試してみましたが、同じ問題が発生しました。 YcmDebugInfo: Printing YouCompleteMe debug information... -- Server has Clang support compiled in: True -- Clang version: clang version 3.7.0 (tags/RELEASE_370/final) -- Flags for /home/arthur/vimtest/main.cpp loaded from /home/arthur/vimtest/.ycm _extra_conf.py: -- ['-x', …


1
単語の途中でスマートな単語補完
次の2行を含むファイルを考えます。 someLongFunction someFunction 2番目の単語の途中で挿入モードにいるとき some|Function と押すとCtrl-n、 someLongFunctionFunction 代わりに次の「スマート」な完了を取得するようにVimを構成する方法はありますか? someLongFunction

1
Pythonの引数補完
Pythonの引数補完を取得する方法はありますか? 現在ctags、python-mode、YouCompleteMeの組み合わせを使用していますが、関数の引数をオートコンプリートする関数がありません(または少なくともそれらを表示します)。 それをサポートするプラグインはありますか? vim / gvim 7.4とUbuntu 14.04を使用しています

1
YouCompleteMeを使用しているときに、提案の数を制限するにはどうすればよいですか?
私はかなり大きなphpコードベース(約1.3 mil行のコード)に取り組んでいます。私はタグを生成しました、そして今私が何かをタイプしているとき $data-> YouCompleteMeは非常に遅延が激しく、タグから可能なすべての補完のリストを取得しようとすると、基本的にVimをフリーズします。これを修正する方法はありますか?たとえば、候補の数を制限することにより、たとえば、リスト全体をロードする代わりに、上位10の候補のみを表示します。

1
スペースを含むファイル名補完
名前にスペースが含まれているファイルがたくさんあり、これが問題を引き起こしています。findコマンドのコマンドライン補完を実行しようとして、これらのファイルの1つが表示された場合、Vimはそれを検出しますが、スペースがエスケープされていないため、ロードされません。 例:私はすでにvimにいるので、次のように入力します :find fo<Tab> を完了するためにfoo bar.txt、Vimはそれを見つけて、ファイル名が1つだけであることを想定しているため、エラーをスローします。それが今読んだことの意味 :find foo bar.txt ロードされません。 これを回避する方法はありますか?そしてVimに自動的にスペースをエスケープさせますか? 私はVim 7.3を実行するVimTouchを使用しています 編集:私は最近、Vimがパス名をエスケープすることに気付きましたが、不思議なことにファイル名はエスケープしません。

2
vimで単語をチャンクに分割しないようにするにはどうすればよいですか?
英語のユーザーはおそらくこの問題を抱えていませんが、正規表現に関してはvimはかなり馬鹿げています。私の場合、ENアルファベット以外のトルコ語のアルファベットのほとんどの文字は、単語文字としては適格ではないようです。 トルコ語の単語を含むドキュメントがあるとします。 gerçekleşiyor 検索式 /ger\wek …単語の始まりとは一致しません。何らかの理由で、çは単語文字ではありません。 プラグイン\wが正規表現のレパートリーの一部として使用する場合、これは厄介なことになります。適例はneocompcache(neocompleteNeovimと互換性があるために代わりに使用する)です。一部の言語構文で余分なマッチングルールセットを除外すると、オートコンプリートはワードサイズのチャンクでのみ発生します。私が大量のトルコ語の散文を書いているとき、実際には機能的なオートコンプリートを持っていると便利ですが、ほとんどの単語はトルコ語の文字が省略された状態で小さなチャンクに分割されるため、役に立たないほどです。 より広い範囲の文字を「単語」文字として受け入れるようにvim(できればneovimが望ましい)をどのように説得できますか?

2
マイナス文字を含むCSSクラス名をオートコンプリートする方法は?
私は次のCSSクラス構造を持っています .mAIcon .mAIcon-reject .mAIcon-edit .mAIcon-accept .event 等々。 HTMLファイル内で、これらのクラス名をオートコンプリートしたい。 しかし、タイプすると <span class="mAIcon mA|"> 残りをオートコンプリートしたいのですが、 <span class="mAIcon mAIcon|"> 私が本当に欲しいものを取得するには、追加を入力する必要が-ありeます。たとえば、オートコンプリートをもう一度使用します。しかし、私はで始まるすべてのものを取得しe、クラスも取得しますevent。これは本当に煩わしく、この場合オートコンプリートはかなり役に立たなくなります。 i_CTRL-NコマンドでVimの一般的なキーワード補完を使用し、追加の補完プラグインをインストールしていません。 -オートコンプリートのCSSクラス名の検出にを含めることは可能ですか?

1
makeのオートコンプリート
私は、カスタム設定した場合はmakeプログラムを、私が入力したときにアクティブになるだろうタブ補完オプションのリストを提供するためにどのような方法がある:make+ Space+はTab? カスタムコマンドを使用すると、fiを実行できます。 command! -nargs=* -complete=customlist,MakeComplete -bar MakeGitbook call MakeGitbook(<q-args>) 組み込みコマンド、特に:make?または、組み込みのものを呼び出すだけでなく、タブ補完を追加するカスタムコマンドラッパーを定義する必要がありますか?

3
コマンドのオートコンプリートから戻る
タイプ:e foo/**/foo*.jsしてタブを押すと、vimは* sをファイルパス内のすべての可能な候補で置き換えます。十分に具体的ではないことに気づき(オートコンプリートには結果が多すぎる)、オートコンプリートの提案から戻って:e foo/**/foo*.js 私のワイルドメニュー設定は: set wildmenu set wildmode=longest:full,full,full set nowildignorecase タブを押す前に持っていたものに戻るためのキーはありますか?

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.