Bashでパス補完が常に機能しないのはなぜですか?

Bashでパス補完が常に機能しないのはなぜですか?

TAB他のbash環境(他のインストール)の場合。これはどこで処理されますか?

具体的な例:

私はcmake次のように実行します-D- パラメータ:

cmake -DCMAKE_TOOLCHAIN_FILE=~/x-too<TAB>

何もしません。そして(=間のスペースに注意してください。~

cmake -DCMAKE_TOOLCHAIN_FILE= ~/x-too<TAB> 

完了

cmake -DCMAKE_TOOLCHAIN_FILE= ~/x-tools

他のシステムでは、=と~の間にスペースを入れずに動作します。

関連する設定ファイルと値はどこにありますか?

ベストアンサー1

Linuxのオートコンプリートはcomplete

 ]➬complete -p  cmake
 complete -F _cmake cmake

だから_cmakeが責任を負います。

]➬type _cmake > cmake.sh

今すぐ表示/デバッグするだけです。たとえば、_cmake_mineを変更して次のように呼び出してテストできます。

. cmake.sh
complete -F _cmake_mine cmake

助けを求めるすべての組み込みバッシュコマンド:

 help complete
 help [[
 help for

おすすめ記事