• home
  • about
  • 全ての投稿
  • ソフトウェア・ハードウェアの設定のまとめ
  • 分析関連のまとめ
  • ヘルスケア関連のまとめ
  • 生涯学習関連のまとめ

zellij

date: 2023-03-11 excerpt: zellijの使い方

tag: zellijtmuxターミナルマルチプレクサー


zellijの使い方

基本操作(クイック)

  • セッション作成: zellij -s <mentenance>
  • セッション削除: zellij delete-session <mentenance>
  • セッション一覧: zellij list-session(alias: zellij ls)
  • セッション接続: zellij attach <mentenance>(alias: zellij a <mentenance>)
  • デタッチ: Ctrl + b → d(Tmux風)/ Ctrl + o → d(通常のセッションモード)

概要

  • screen, tmuxに続くターミナルマルチプレクサー
  • モードが多く、lock, pane, tab, resize, move, search, session, quitがある
    • モードに入るキーはデフォルトでヒントとして下部に記される
  • 2023年、zellij + tmuxのような使い方ができる
    • tmux in tmuxを回避できる
  • 2024年、modifier keyが少なく、使えるのはCtrlとAltとShift

インストール

macOS (Homebrew)

$ brew install zellij
$ mkdir ~/.config/zellij
$ zellij setup --dump-config > ~/.config/zellij/config.kdl

Rust (cargo)

$ cargo install --locked zellij
$ mkdir ~/.config/zellij
$ zellij setup --dump-config > ~/.config/zellij/config.kdl

configuration

  • PATH: ~/.config/zellij/config.kdl
  • 様々なショートカットキーがコンフリクトすることがあり、デフォルトのキーバインディングを一部無効化して運用することになる
// レイアウトと基本動作
default_layout "compact" // デフォルトレイアウトをコンパクトに
pane_frames false        // 枠線を非表示(コピペしやすい)
mouse_mode false         // マウス操作を無効化(キーボード中心運用)
copy_on_select false     // 選択で自動コピーしない

keybinds {
  // どのモードでも有効(locked以外)
  shared_except "locked" {
      bind "Ctrl g" { SwitchToMode "Locked"; } // 画面ロック
      bind "Ctrl q" { Quit; }                  // zellij を終了
      // Alt 系の既定バインドを解除して別アプリと衝突回避
      unbind "Alt Left" "Alt Right" "Alt n" "Alt Up" "Alt Down" "Alt +" "Alt -"
      bind "Shift Left"  { GoToPreviousTab; } // 前のタブへ移動(Alt [ 相当)
      bind "Shift Right" { GoToNextTab; }     // 次のタブへ移動(Alt ] 相当)
  }

  // Tmux モードに入るトグル
  shared_except "tmux" "locked" {
      bind "Ctrl x" { SwitchToMode "Tmux"; } // Tmux モードに入る
  }

  // Tmux モード専用の追加バインド
  tmux {
      bind "z" { Detach; } // z でデタッチ(セッションから抜ける)
      // 参考: 通常は Ctrl + b → d / Ctrl + o → d でもデタッチ可能
  }
}
  • "Alt Left", "Alt Right"を開放する
  • "Alt ]" = "‘", "Alt [" = "“"を設定する
    • Windowsの場合はそのまま設定できる

参考

  • Configuration/zellij.dev


zellijtmuxターミナルマルチプレクサー Share Tweet