Terminal Night #2 メモ

Terminal Night #2

https://kichijojipm.connpass.com/event/382650/

モテるターミナル WezTermの機能に迫る

もずます san https://www.docswell.com/s/mozumasu/5PR9PQ-2026-03-27-190503/1

WezTermとは

  • Luaで設定できる
  • ホットリロード(設定の自動読み込み)で気軽にカスタマイズ可能
  • キーバインドにモードあり
  • ペイン分割 / workspaceがある

文字の幅とかまでカスタマイズできる

楽をするために頑張れる人向き。 Show your weztermsを見ると良い。スレッドでわかる

キーバインドのモード設定がおすすめ

  • コピーモード:Vimみたいにコピーできる。スクロールバッファ

DeepWikiでたまに知らないオプション見つけれる

ドキュメントを見てみよう

  • Weztermって書いてあるところから順番に読めばOK
  • 検索機能でリファレンスは大体見れる
  • ハマりポイントはGet Helpに書いてある
  • デバッグオーバーレイでログが見れる

キーバインド

  • commandキーはsuper
  • キーテーブル
    • モードを作成できる機能
  • 自作モードとかもいける

推し機能 Command Pallete

  • VSCodeとかにあるものと同じ
  • ペイン・コマンドのプリセット呼び出し

Pane Select

今いるタブ?ペインの情報を持ったままgh browse、lazygitを開く機能がある

Workspaces

  • 作業ごとに環境を分ける仕組み。名前をつけて管理できる
  • タブ・ペイン分割に対応

CLIもある

  • 合わせるとAIと遊べる
  • AIのセッション内容をペインの情報をコピペ
  • セッション内容を保持

ターミナル自慢

  • キラキラさせる技術がある
  • yubikey: USB接続するハードキー

複製不可能なSSH鍵運用のススメ

matsuu san

presentermっていうのでプレゼンができる

SSH鍵管理の課題

  • パスフレーズで暗号化できるけど、ファイルを取られると、総当たり攻撃で取れてしまう

  • 利便性の観点でパスフレーズ入れないこともある

  • 1passwordとかでssh agentと連携して動く便利な仕組みもある

    • vault自体が乗っ取られる可能性もある
    • backup経由で取れてしまう
  • 漏洩の検知が難しい(コピーすれば取れるから)

  • →端末は侵害される前提で考える時代

  • わい)ゼロトラストと関連がある?

複製不可能な運用とは

  • コピーできない
  • 参照できないが、利用できる
  • 侵害されても取られない運用が可能
  • 物理ディスクに紐づけられた鍵、お家の鍵を取られなければ大丈夫って感じの考え方

複製不可能な仕組みとは

  • Mac、Android、Windowsは最初から仕組みがある

Secretiveの紹介

  • Secure Enclave(OSから切り離した子プロセッサー、セキュリティ)内でSSH鍵とか保存できる
  • 指紋とかもそこに入ってる
  • git、ssh agent forwardingにも対応している
  • 扱うことができる鍵の種類:ecdsa, mldsa
  • メジャーなRSA, ED25519(edwardさんの暗号)には対応してない

mldsa-65,87

  • 対量子暗号アルゴリズム
  • ほとんどが対応してない(OpenSSHも)

Secretive

FIDOデバイス

  • _skセキュリティキー
  • ほとんどのOSが対応している(10年前のものくらいが未対応)
  • 鍵ハンドルファイルと物理鍵の2つで秘密鍵が決定される

VSCode中心だった自分がターミナル沼に入門した話

Genki Sano san

課題感・経緯

  • VSCodeのcode .で開いててもっと良い方法ありそう
  • ターミナルが最初に開いててほしい
  • Claude Codeが流行ってて、ターミナル派閥が増えた
  • もずますさんの記事でモテる=いい感じなりそう

意識したこと

  • よしなにやってくれるもの
  • 必要になったら継ぎ足す
  • AIに壁打ちして解決する

  • 時間は溶けるけど、楽しい
  • 環境同期用にdotfiles作る

使い始めてどうか

  • キー操作が難しい→よく使う操作に慣れる, 大体1-2週間

良かったこと

  • 操作と環境が軽い
    • ターミナルの拡張性の高さ
    • IDEを使う機会が減った
  • ディレクトリ移動がしやすい
  • キーボード操作で完結できる
  • Claude Codeの活用が進んだ
    • ターミナル完結させようとする
    • 使いやすくなるように育てる

伸び代

  • 音声入力
  • 他のターミナルも気になる
  • 他の人の環境も気になる

続けるための工夫

  • 作るよりも「育てる」を意識する

脱・コピペ!変数展開とコマンド展開でターミナル作業をスマートにする方法

masasuz san

ターミナルのコピペ、ミス多い

Tips

  • ブレース展開
  • 変数展開
  • コマンド展開
  • プロセス置換

シェルにも限界がある

GitHubのPRをレビューするTUIを作った

カワリミ人形 san

gh-prism 動画流れ出したし、パフォーマンスすごいw 便利そう

Zennの記事も出したみたい

Ghosttyの凄さを 技術的に深ぼってく

Kuu san

経緯

  • 技術的に面白いポイントが多くて発表したかった

速い・ネイティブに着目

command+shift+dで縦分割

cmux

  • 派生ソフトウェア
  • libghosttyを使ってwebviewのように使えるらしい

歴史

  • 2021から動き始めて、色々アプデしてきた
  • Hashicorpのミッチェルさんが作り始めたらしい

わい)期待値調整を事前にするスタイルは賢いかも

Nativeを見てみる

  • Swiftでちゃんとネイティブ
  • iOS版実装もあるらしい(一応くらい)

レンダリングを見てみよう

  • Shaderを使っている
  • Multi thread
    • Main thread、Render、I/Oの3スレッドがある
    • I/O(キーボードとか)
    • それぞれの役割があって分割してるから速いらしい
    • Renderスレッドは120fps
    • UIフレームワークで使われがちなアーキテクチャ=速くなる

テキスト表示高速化の工夫

  • Macの標準な文字列表示だとうまいこと行かない(キャッシュする時に困るらしい)
  • シェーピング結果をキャッシュしてる?らしい
  • テキストを細かく分割して処理

グリフ列変換

  • グリフ:フォントの位置を示す
  • 文字の先読みとかする必要があって大変そう
  • 国旗とかむずい、色々言語細かいところが大変

実はGPUだけでレンダリングしてない

  • グリフの画像化はCPU
  • 画像化したものをGPUでレンダリング
  • ゲームではよくある仕組み

→ゲーム並みに最適化している

推しツールは強制布教しよう

ogadra san

コマンド1個でロールバックできる

  • ビルドして壊れた時に便利

強制布教の方法がすごい

どういった仕組みか

  • フルスクラッチで自作
  • Go、Terraformで動くバックエンドがリポジトリにある
Hugo で構築されています。
テーマ StackJimmy によって設計されています。