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.2k
ターミナルワークスペースの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
後で読む系サービスPocketの移行先にShioriを試す
matoken
0
28
GaleneのGo製ライブラリでtext chatを保存
matoken
0
11
MastodonとtootとTerminal graphics protocolのKittyとiTerm2
matoken
0
61
ChangeDetection.ioでウェブページを定期チェック
matoken
0
150
ターミナルエミュレータのKittyで文字サイズ変更
matoken
0
64
Glanceで個人向けポータルサイト
matoken
0
120
Google検索をJavaScriptなしで
matoken
0
97
fuse-archiveでいろんなアーカイブをマウント
matoken
0
180
最近試したLinuxのOCRツール(NDL古典籍OCR-Lite/YomiToku)
matoken
0
300
Other Decks in Technology
See All in Technology
新卒(ほぼ)専業Kagglerという選択肢
nocchi1
1
2k
認知戦の理解と、市民としての対抗策
hogehuga
0
310
Understanding Go GC #coefl_go_jp
bengo4com
0
1.1k
株式会社ARAV 採用案内
maqui
0
340
キャリアを支え組織力を高める「多層型ふりかえり」 / 20250821 Kazuki Mori
shift_evolve
PRO
2
290
[CV勉強会@関東 CVPR2025 読み会] MegaSaM: Accurate, Fast, and Robust Structure and Motion from Casual Dynamic Videos (Li+, CVPR2025)
abemii
0
180
Webアクセシビリティ入門
recruitengineers
PRO
1
200
知られざるprops命名の慣習 アクション編
uhyo
10
2.4k
攻撃と防御で実践するプロダクトセキュリティ演習~導入パート~
recruitengineers
PRO
1
130
EKS Pod Identity における推移的な session tags
z63d
1
200
Observability for LLM Application lifecycle
ivry_presentationmaterials
1
240
制約理論(ToC)入門
recruitengineers
PRO
2
240
Featured
See All Featured
Testing 201, or: Great Expectations
jmmastey
45
7.6k
Rebuilding a faster, lazier Slack
samanthasiow
83
9.1k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
50
5.5k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
26k
Why You Should Never Use an ORM
jnunemaker
PRO
59
9.5k
A better future with KSS
kneath
239
17k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
36
2.5k
Faster Mobile Websites
deanohume
309
31k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
139
34k
Unsuck your backbone
ammeep
671
58k
How to Ace a Technical Interview
jacobian
279
23k
Being A Developer After 40
akosma
90
590k
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