サイバーニューラ

j-menu

「j」と打って Enter、選んで Enter。プロジェクトごとのコマンドを呼び出す TUI のメニューランチャー。

プロジェクトごとによく使うコマンドを、数回のキー操作で呼び出せる一覧にします。選んだコマンドは TTY を完全に引き継いで実行されるため、 ssh や vim、top のような対話的なコマンドも、自分で打ったときと同じように動きます。 0.3.0 で jj-menu から j-menu に改名しました (jj は Jujutsu のコマンドのため)。

最新版をダウンロード

Homebrew (macOS / Linux) でもインストールできます:

brew install cyberneura/tap/j-menu

対応 OS: macOS / Linux

github.com/cyberneura/j-menu

主な機能

  • 設定は YAML / TOML / JSON で書けます。サブメニュー、実行時に入力する引数、インクリメンタル検索 (/) に対応します
  • package.json・Makefile・Cargo・Gradle のプロジェクトからは、設定を書かなくても項目を自動で拾います
  • シェル関数 (eval "$(j-menu --shell-init zsh)") を入れると、cd や export のような項目も自分のシェルに効きます。実行したコマンドはシェルの履歴にも残ります
  • zsh / bash / fish に対応します

動作環境・注意点

  • macOS と Linux (どちらも x86_64 / ARM64) 用のバイナリを配布しています。Windows には対応しません。
  • Homebrew の formula は macOS / Linux のどちらでも使えます。
  • jj-menu からの移行では、設定ファイル名も .jj-menu.yaml → .j-menu.yaml、~/.config/jj-menu/ → ~/.config/j-menu/ に変わります。旧い名前は読みません。
  • fish 用のシェル関数は fish 3.4 以降が必要です。
  • MIT License のオープンソースです。