ターミナルがダサいとモテない。macOSのbashでflylineを使う編。

自分はbashを使っています。
macOSでbashって言うと「zshじゃないの?」と聞かれそうですが、ずっとbashです🤣
今回はTerminalをもう一段うるさくしてくれるflylineを入れていきます。
前に書いたTabbyでQuake modeでも少し触れましたが、最近はStarshipとflylineを組み合わせています。
flyline
flylineはbashのline editingをモダンにしてくれるpluginです。
bashがコマンド入力に使っているreadlineを置き換えて、こんな機能を追加してくれます。
- Intellisenseっぽいコマンド補完
- 入力中のsyntax highlighting
- fuzzyなhistory検索
- 括弧やquoteのauto close
- mouseでのcursor移動や候補選択
- AI Agentを使ったコマンド生成
- 右promptやanimationを含むrich prompt
ble.shに近い存在ですが、flylineはRustで書かれていて、bashと同じprocessの中で動きます。
自分はbashを使い続けたいけど、入力体験はモダンにしたいので気になって使い始めました。
Install
macOS標準のbashは古く、custom builtinsを使うflylineをloadできません。
まずはHomebrewで新しいbashを入れます。
brew install bash自分の環境ではこんな感じです。
GNU bash, バージョン 5.3.15(1)-release (aarch64-apple-darwin25.4.0)Homebrewのbashをlogin shellにする
Homebrewで入れたbashをmacOSのlogin shellとして使う場合は、/etc/shellsへ追加してからchshします。
BREW_BASH="$(brew --prefix)/bin/bash"
grep -Fxq "${BREW_BASH}" /etc/shells || echo "${BREW_BASH}" | sudo tee -a /etc/shells
chsh -s "${BREW_BASH}"設定後は新しいTerminalを開いて確認します。
echo "${SHELL}"
bash --versionApple Siliconの自分の環境では/opt/homebrew/bin/bashになっています。
flylineを入れる
公式のquick installを使いました。
curl -sSfL https://github.com/HalFrgrd/flyline/releases/latest/download/install.sh | shこのinstallerはflylineをdownloadして、.bashrcからloadする設定も追加してくれます。
自分はdotfilesをchezmoiで管理しているので、installer任せにはせず.bashrc側の設定をtemplateにしています。
macOSでは${HOME}/.local/lib/libflyline.dylibが配置されました。
.bashrcで有効化
自分の設定から必要なところを抜き出すとこんな感じです。
if [[ $- == *i* ]]; then
if ! type -t flyline >/dev/null 2>&1; then
enable -f "${HOME}/.local/lib/libflyline.dylib" flyline || true
fi
if type -t flyline >/dev/null 2>&1; then
flyline run-tutorial false
flyline \
--send-shell-integration-codes full \
--enable-extended-key-codes true
flyline suggestions --auto-suggest true
flyline editor --auto-close-chars true
flyline set-style --default-theme dark
flyline set-cursor \
--interpolate-easing in-elastic \
--effect-easing in-elastic \
--backend flyline \
--style "reverse"
fi
fienable -fでdynamic loadしているので、flylineは外部commandではなくbashのbuiltinとして動きます。
type -t flyline
flyline versionbuiltin
flyline 1.6.2まずは公式READMEに書かれているtutorialも一度動かした方がわかりやすいです。
flyline run-tutorialWezTermでコマンド補完
新しいWezTermを開いてflylineの後にTabを押してみます。

flyline <Tab>でsubcommandやoptionが一覧表示される
bashのcompletionをそのまま活用しつつ、説明付きの候補がpopupします。
候補が多い時は、このまま入力するとfuzzyに絞り込めるのが便利です。
次はsuggestionsの中を見てみます。

flyline suggestions <Tab>でさらに次の候補を表示
普通のbash completionより情報量が多くて、helpを開かなくてもだいたい何を設定できるかわかります。
Ctrl+Rのhistory検索もfuzzy searchになり、入力中はsyntax highlightingされます。
括弧やquoteも閉じてくれるので、ShellというよりEditorに近い感じです。
AI Agentへ入力中のcommandを渡す機能もあり、自分はCodexと繋いでいます。
ここまで来るとTerminalは静かにcommandを打つだけの場所ではなくなってきました🤣
mouseのcaptureが合わない場合は無効にもできます。
flyline mouse --mode disabledしばらく使ってみた感想
しばらく使っていますが、正直なところちょっと邪魔です🤣
commandを少し入力しただけで候補がぱっと開くので、画面が忙しくなります。
Starshipのpromptもかなり情報量が多いのに、flylineまで動くとめちゃくちゃうるさいTerminalになります😅
ただ、知らなかったoptionに気がついたり、長いcommandを最後まで入力しなくてよかったり、使っているとちゃんと便利です。
cursorがぬるっと動いたり、補完候補が気持ちよく絞り込まれたり、触っていて楽しいのもあります。
邪魔だなと思う瞬間はあるけど、無いとちょっと寂しい。
ちょっと邪魔だけど、でも楽しんでいます。
しばらくはこのまま使っていこうと思います😆
Matrix animation
flylineには--matrix-animationという面白いoptionもあります。
flyline --matrix-animation映画『マトリックス』で有名な、緑色の文字が降ってくるdigital rain風のanimationをTerminalの背景に再現できます。

flyline --matrix-animationでTerminalの背景にdigital rainを表示
値を付けずに実行すると常時表示されます。止める場合はoffを指定します。
flyline --matrix-animation offTerminalがさらにうるさくなります🤣
medium.com/@yusukeh - ターミナルがダサいとモテない。macOSのbashでflylineを使う編。 の記事を転載しています。


