10

bash でのタブ補完をもう少しインテリジェントにしたいと考えています。

src ファイル .lisp を含むフォルダーと、そのファイル .fasl のコンパイル済みバージョンがあるとします。vi filename [tab tab] と入力したいのですが、.lisp オートコンプリートが唯一のオプションです。つまり、コンパイル済みのバイナリを vim に開かせたいとは思わないので、循環するオートコンプリート オプションのリストに入れないようにします。

オートコンプリートが無視する拡張子のフラット リストを保持する方法、または何らかの形で vim 用にカスタマイズして、bash コマンドが vi で始まるときにオートコンプリートが特定のファイル拡張子のみを無視する方法はありますか ...

どんなアイデアでも大歓迎です。

ありがとう!

4

2 に答える 2

12

からman bash:

無視する

ファイル名の補完を実行するときに無視するサフィックスのコロンで区切られたリスト。のエントリの 1 つにサフィックスが一致するファイル名FIGNOREは、一致するファイル名のリストから除外されます。サンプル値は次の".o:~"とおりです (チルダを含むこの変数に値を割り当てる場合は、引用符が必要です)。

したがって、あなたの例では、これを.bashrcファイル に設定できます

FIGNORE=".o:~:.fasl"

または、他のサイト全体の設定を保持したい場合:

FIGNORE=".o:~:.fasl:$FIGNORE"
于 2012-06-28T04:52:18.707 に答える
4

bashcompleteコマンドが必要なようです。

これはLinux Journalの「complete」コマンド ビデオへのリンクです。これがフォローアップページですBash Completeコマンドの使用に関する詳細

リンクはそれを非常によく説明しており、関連するSOの質問/回答があります:シンボリックリンク全体のBashオートコンプリート

于 2012-06-28T07:59:51.917 に答える