web-dev-qa-db-ja.com

ターミナルで「vim」の後にファイルパスのオートコンプリートが機能しない

再現する手順

git clone https://github.com/MichinariNukazawa/vecterion_vge.git
cd vecterion_vge
  1. 入力vim include/ tab
  2. 入力vim include/et_co tab

期待していたこと

  1. include/のファイルリストを表示
  2. オートコンプリートファイルパスvim include/et_color_panel.h

私が代わりに見たもの

1.と2.の両方が機能しません。

その他

両方ls include/ tab およびls include/et_co tab 仕事する。

入力vim vecterion_vge/include/et_co tab 親ディレクトリ(ホームディレクトリ)で機能します。

どうすれば修正できますか?

1

たぶん、vimに関連する完了仕様をオフにしたかもしれません。

complete -p vim

出力を確認します。

complete -F _filedir_xspec vim

前の行のようなものである場合、コマンドを実行します:

complete -r vim

一般に、vimに直接関連していないので、これらの例をフォローして、あなたのケースに合わせて修正してください:

最初の例

complete -pを介してユーザーのアクティブな現在の完了ルーチンをすべてリストするか、システムに含まれるすべての完了をリストできます:ls /etc/bash_completion.d/

完了はファイル/etc/bash_completionによって駆動され、新しい完了コマンドはディレクトリ/etc/bash_completion.d内に配置できます。

スマート補完を有効にして、/etc/bash.bashrcファイルを編集する必要があります。 cdタブ補完のため、持っていると思います。とにかく、行の先頭の#を削除して、次の行のコメントを解除します。

#if [ -f /etc/bash_completion ]; then
# . /etc/bash_completion
#fi

ご覧のとおり、すべてがbash_completion.dファイル内の情報に依存しています。

Bashスマート補完をvimまたはaptにまで拡張できる場合は、/etc/bash_completionおよび/etc/bash_completion.dを編集する必要があります

その他の例

ファイルを編集したり、アーカイブを/etcに追加したりできない場合。ローカル補完を追加できます。たとえば、wp-cliの場合は、補完定義をダウンロードし、名前を変更してコマンドを非表示にできます。

wget https://github.com/wp-cli/wp-cli/raw/master/utils/wp-completion.bash
rename wp-completion.bash .wp-completion.bash

.bash_profileまたはvimaddを使用してnano .bash_profileを編集します:

source /home/tu_usuario_del_Host/.wp-completion.bash
0
manuti