bash-completion : Mac のターミナルで Tab 補完を有効にする

Windows における GitBash は標準でタブ補完が有効らしいが、Mac のターミナル.app は初期状態だと Tab 補完が効いていないみたいだった。

Tab 補完とは、例えば cd コマンドを打った後に、フォルダ名を途中まで打って Tab キーを押下することで、その途中まで打った文字列に該当するフォルダ名を自動的に補完してくれる機能だ。Google 日本語入力の変換候補のような感じ、といえば伝わるだろうか。

で、Mac のターミナル.app でこの Tab 補完を有効にするには、bash-completion というパッケージをインストールする。

bash-completion のインストール方法

インストールには Homebrew という Mac のパッケージ管理ソフトを使用する。Homebrew のインストール方法はコチラ。

ターミナル.app を開き、以下のバージョン確認コマンドが有効になっていれば、Homebrew のインストールが完了した状態。

$ brew -v

Homebrew 0.9.9 (git revision 12e7; last commit 2016-07-31)
Homebrew/homebrew-core (git revision 207e; last commit 2016-07-31)

Homebrew がインストールできたら、以下のコマンドで bash-completion をインストールする。

$ brew install bash-completion

これで bash-completion のインストールができた。ただし、タブ補完を有効にするには .bash_profile に以下のようなコードを追加する必要がある。これでターミナル起動時に bash-completion を読み込み、タブ補完が有効になる。

if [ -f $(brew --prefix)/etc/bash_completion ]; then
  . $(brew --prefix)/etc/bash_completion
fi

.bash_profile/Users/(ユーザ名)/ 配下に存在する隠しファイル。Finder 上で隠しファイルが見える設定ならそこからファイルを開いて書き込んでもいいし、ターミナル上で vi コマンドから編集しても良い。

vi ~/.bash_profile

ファイルを書き換えたらターミナルを一度閉じ、再度開いてやれば、タブ補完が有効になっている。