Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
ターミナルワークスペースのZellij
Search
Kenichiro MATOHARA
August 21, 2022
Technology
0
1.4k
ターミナルワークスペースのZellij
https://gitlab.com/matoken/kagolug-2022.08/-/blob/main/slide/slide.adoc
Kenichiro MATOHARA
August 21, 2022
Tweet
Share
More Decks by Kenichiro MATOHARA
See All by Kenichiro MATOHARA
ActivityPub Server の snac その3
matoken
0
35
ActivityPub Server の snac その2
matoken
0
32
端末録画再生共有アプリ asciinema 3.0 リリース
matoken
0
40
アナウンス向けにミニマリスト向け ActivityPub Server の snac を利用
matoken
0
48
最近のNitterやX(old Twitter)関連 2025.09
matoken
0
56
ポータブルで色々なプロトコルに対応したファイルサーバーのcopypartyを試す
matoken
0
82
後で読む系サービスPocketの移行先にShioriを試す
matoken
0
100
GaleneのGo製ライブラリでtext chatを保存
matoken
0
55
MastodonとtootとTerminal graphics protocolのKittyとiTerm2
matoken
0
150
Other Decks in Technology
See All in Technology
Claude Code 2026年 最新アップデート
oikon48
10
8.5k
複数クラスタ運用と検索の高度化:ビズリーチにおけるElastic活用事例 / ElasticON Tokyo2026
visional_engineering_and_design
0
130
Abuse report だけじゃない。AWS から緊急連絡が来る状況とは?昨今の攻撃や被害の事例の紹介と備えておきたい考え方について
kazzpapa3
1
540
マルチロールEMが実践する「組織のレジリエンス」を高めるための組織構造と人材配置戦略
coconala_engineer
3
720
身体を持ったパーソナルAIエージェントの 可能性を探る開発
yokomachi
1
100
JAWS DAYS 2026 楽しく学ぼう!ストレージ 入門
yoshiki0705
2
160
AWS DevOps Agent vs SRE俺 / AWS DevOps Agent vs me, the SRE
sms_tech
3
550
OSC仙台プレ勉強会 AlmaLinuxとは
koedoyoshida
0
110
AIエージェント、 社内展開の前に知っておきたいこと
oracle4engineer
PRO
2
110
The_Evolution_of_Bits_AI_SRE.pdf
nulabinc
PRO
0
160
GitLab Duo Agent Platform + Local LLMサービングで幸せになりたい
jyoshise
0
290
JAWS FESTA 2025でリリースしたほぼリアルタイム文字起こし/翻訳機能の構成について
naoki8408
1
370
Featured
See All Featured
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.4k
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
150
We Have a Design System, Now What?
morganepeng
55
8k
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
100
Designing for Performance
lara
611
70k
The browser strikes back
jonoalderson
0
780
sira's awesome portfolio website redesign presentation
elsirapls
0
190
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
130
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.6k
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
1
2.4k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
2.4k
Transcript
ターミナルワーク ターミナルワーク スペースのZellij スペースのZellij Kenichiro Matohara(matoken) <
[email protected]
> 1 / 31
南隅から参加(鹿児島の右下) 好きなLinuxディストリビューションはDebian お仕事募集 mailto:work@matohara.org Kenichiro Matohara(matoken) Kenichiro Matohara(matoken) https://matoken.org https://matoken.org
2 / 31
ターミナルマルチプレクサとタ ターミナルマルチプレクサとタ ーミナルデスクトップ ーミナルデスクトップ 「鹿児島Linux勉強会 2022.02」ターミナルマルチプレクサとターミ ナルデスクトップ」として「Monotty Desktopio | vtm」を紹介.
vtmはウィンドウシステムに慣れていればとっつきやすそう趣味性が 高い? Zellijを知る とっつきやすそうで実用度も高そうなので試してみた 3 / 31
ターミナルマルチプレクサ ターミナルマルチプレクサ / (やその派生)が有名 複数端末をキーボード・ショートカットで切り替えたり キーボードでコピー&ペーストしたり 設定すればマウス操作も可能 縦横分割で効率的に使ったり デタッチ,アタッチで席を移動しても同じ環境を使い続けられたり 他の人にネットワーク経由でターミナルを見せたり共同で操作したり
とても便利で手放せない GNU screen tmux 4 / 31
スライド作成中の画面 スライド作成中の画面 5 / 31
反面環境構築や操作を覚えるの 反面環境構築や操作を覚えるの が大変 が大変 設定をを作るのが大変. 秘伝のタレ的な .screnrc 環境構築については でほぼ問題ない感じに 操作を覚えるのは頑張るしか?
とりあえずターミナル作成,切り替え,スクロール,検索あたりを覚 えればどうにか? byobu 6 / 31
大量のキーバインド 大量のキーバインド 7 / 31
Redditの を見ていて見つけたもの ターミナルの中の仮想デスクトップ環境でウィンドウを複数作成してマ ウスで操作 マウス操作なので直感的,反面マウス必須 グループ化やビューでウィドウ配置など 軽量で安定度も◦ POSIX系だけでなくWindows環境でも動くよう(未確認) Monotty Desktopio
| vtm Monotty Desktopio | vtm Command Line 8 / 31
Demo環境有り Demo環境有り いろいろなアプリケー ションが開かれていて にぎやか ssh
[email protected]
9 / 31
Zellij Zellij About Zellij Zellij is a terminal workspace. It
has the base functionality of a terminal multiplexer (similar to tmux or screen) but includes many built-in features that would allow users to extend it and create their own personalized environment. Zellij 10 / 31
導入 導入 シングルバイナリで導入できるのでお手軽 Linux x86_64, aarch64 / macOS x86_64, aarch64
ディストリビューションパッケージも cargo install では手元の環境では約30分 cargo install --locked zellij armhfでは動かない…… https://github.com/zellij- org/zellij/blob/main/docs/THIRD_PARTY_INSTALL.md 11 / 31
実行 実行 $ zellij 12 / 31
最上部にタブバー(プラグイン) 中央にターミナルペイン 下部にステータスバー(プラグイン) ステータスバーにキーバインドのヒントが表示される 13 / 31
操作例 操作例 Ctrl + t n タブが開かれる 14 / 31
Ctrl + p n 15 / 31
16 / 31
Ctrl + p d 17 / 31
18 / 31
Ctrl + p w 19 / 31
20 / 31
マウス操作例 マウス操作例 スクロールアップでヒストリー ドラッグでクリップボードにコピー TmuxやGNU screemも同じようなことは可能だが,要設定 21 / 31
Zellijセッションとデタッチ,ア Zellijセッションとデタッチ,ア タッチ タッチ 1 新しいセッションが開かれる(Ctrl + o d でデタッチ)
2 セッション一覧確認 3 2nd-session という名前を付けたセッションを新しく開く 4 2nd-session という名前のセッションをアタッチする $ zellij $ zellij list-sessions cold-seat $ zellij -s 2nd-session $ zellij list-sessions 2nd-session cold-seat $ zellij attach 2nd-session 1 2 3 4 22 / 31
Sixelで画像表示 Sixelで画像表示 Sixel対応端末で実行すること 23 / 31
その他 その他 設定ファイル 画面レイアウトテンプレート テーマ プラグイン機能 24 / 31
各種比較 各種比較 25 / 31
とっつきやすさ とっつきやすさ vtm > Zelliju > Tmux > GNU screen
vtmはウィンドウシステムに慣れていれば直感的に,Zellijはヒン トが表示される,Tmux, GNU screenはキーバインドを覚えな いと使えない 26 / 31
動作OS環境比較 動作OS環境比較 GNU screen, Tmux 多くの環境で動作する vtm Linux amd64, FreeBSD
amd64, NetBSD amd64, OpenBSD amd64, macos, Windowsのバイナリが提供, Linux arm64, armhfでもbuildすると動作した Zellij Linux x86_64/aarch64, macOS x86_64/aarch64バイナ リが提供,armhfではビルドできない Zellijは多少環境を選ぶ.issueにarmhfなどでも動作するバー ジョンを求めるものがあったりする 27 / 31
動作端末比較 動作端末比較 GNU screen, Tmux 多くの環境で動作する vtm 多くの環境で動作するが端末によって問題が発生するので動作確 認済端末を確認したほうが良い Zellij
端末によって問題がある場合がある,Sixelを使いたい場合は Sixel対応端末が必要 https://github.com/netxs- group/vtm/discussions/72 28 / 31
導入のしやすさ 導入のしやすさ GNU screen, Tmux パッケージマネージャなどで導入可能 vtm シングルバイナリ Zellij パッケージマネージャもしくはシングルバイナリ
vtmやZellijはシングルバイナリなのでパッケージマネージャの 使えない一般ユーザでも導入しやすい 29 / 31
まとめ まとめ ターミナルマルチプレクサ便利だけど覚えるのが大変 Zellijはステータスバーに操作のヒントが表示されるのでキーバインド を覚えなくてもある程度使えるので学習コストが低そう Tmuxモード(Ctrl + b) を使えばTmuxからの移行者もスムーズ? 少しもたつくことも(issueにもいくつか上がっているのでうちだけの
問題では無さそう) 少し環境を選ぶ(armhfでも動かしたい)が最近の大抵のLinux(と macOS)なら動作する 端末を選ぶほうが面倒かも? シングルバイナリで導入しやすいのでぜひ試してみてください 30 / 31
奥付 奥付 発表 発表者 利用ソフトウェア ライセンス CC BY-NC-SA 4.0 鹿児島Linux勉強会
2022.08(オンライン開催) Kenichiro Matohara(matoken) Asciidoctor Reveal.js 31 / 31