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.1k
ターミナルワークスペースの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
Glanceで個人向けポータルサイト
matoken
0
38
Google検索をJavaScriptなしで
matoken
0
23
fuse-archiveでいろんなアーカイブをマウント
matoken
0
78
最近試したLinuxのOCRツール(NDL古典籍OCR-Lite/YomiToku)
matoken
0
89
LibreOfficeで日本語Linterが使いたい
matoken
0
25
KSMBDでSMB共有
matoken
0
100
asciinema playerで大きな端末録画を共有する
matoken
0
35
ターミナルを共有するいろいろ
matoken
0
29
textlintで日本語をまともに(Neovim/VS Code)
matoken
0
40
Other Decks in Technology
See All in Technology
“常に進化する”開発現場へ! SHIFTが語るアジャイルQAの未来/20250306 Yuma Murase
shift_evolve
0
110
サバイバルモード下でのエンジニアリングマネジメント
konifar
22
7.4k
Apache Iceberg Case Study in LY Corporation
lycorptech_jp
PRO
0
380
【5分でわかる】セーフィー エンジニア向け会社紹介
safie_recruit
0
19k
大規模アジャイルフレームワークから学ぶエンジニアマネジメントの本質
staka121
PRO
3
1.7k
[OpsJAWS Meetup33 AIOps] Amazon Bedrockガードレールで守る安全なAI運用
akiratameto
1
140
OCI Success Journey OCIの何が評価されてる?疑問に答える事例セミナー(2025年2月実施)
oracle4engineer
PRO
2
220
エンジニアのキャリアパスと、 その中で自分が大切にしていること
noteinc
3
350
いまからでも遅くない!コンテナでWebアプリを動かしてみよう!コンテナハンズオン編
nomu
0
180
Oracle Database Technology Night #87-1 : Exadata Database Service on Exascale Infrastructure(ExaDB-XS)サービス詳細
oracle4engineer
PRO
1
220
AIエージェント元年@日本生成AIユーザ会
shukob
1
260
Snowflakeの開発・運用コストをApache Icebergで効率化しよう!~機能と活用例のご紹介~
sagara
1
540
Featured
See All Featured
Mobile First: as difficult as doing things right
swwweet
223
9.5k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
134
33k
Raft: Consensus for Rubyists
vanstee
137
6.8k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Large-scale JavaScript Application Architecture
addyosmani
511
110k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
4
440
Navigating Team Friction
lara
183
15k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.5k
Making the Leap to Tech Lead
cromwellryan
133
9.1k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
115
51k
Transcript
ターミナルワーク ターミナルワーク スペースのZellij スペースのZellij Kenichiro Matohara(matoken) <maroken@kagolug.org> 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 vtm@netxs.online 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