Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
16 commits
Select commit Hold shift + click to select a range
26637c2
feat(PLAN69): tmux のセッションを名指しで移る・調べる・落とすコマンドと prefix S のメニュー
takemi-ohama Sep 24, 2026
06b9cbf
Test: characterize go from the target tmux session
takemi-ohama Sep 24, 2026
2541466
Test: characterization — containers/base/tmux-session#do_kill
takemi-ohama Sep 24, 2026
b8457c3
Test: characterization — containers/base/tmux-session#do_peek
takemi-ohama Sep 24, 2026
734a0fb
Test: characterize tmux go activity boundary
takemi-ohama Sep 24, 2026
a732bc2
Test: characterization — containers/base/tmux-session#do_kill
takemi-ohama Sep 24, 2026
8700155
Test: characterization — containers/base/tmux-session#do_go
takemi-ohama Sep 24, 2026
25e9b94
Test: characterize go continuation after detach failure
takemi-ohama Sep 24, 2026
f53f8a6
Test: characterization — tests/containers/test_tmux_session.py#test_u…
takemi-ohama Sep 24, 2026
54cfad7
Refactor: consolidate_duplication — tests/containers/test_tmux_sessio…
takemi-ohama Sep 24, 2026
7a86617
Revert "Refactor: consolidate_duplication — tests/containers/test_tmu…
takemi-ohama Sep 24, 2026
657c968
Refactor: consolidate tmux test setup and extract peek sections
takemi-ohama Sep 24, 2026
4565116
Revert "Refactor: consolidate tmux test setup and extract peek sections"
takemi-ohama Sep 24, 2026
b3b9b88
test(tmux-session): 一覧を開く操作の取りこぼしを送り直し、tmux 無しでも後片付けする
takemi-ohama Sep 24, 2026
37c1c05
docs(PLAN69): tmux のセッションを名指しで扱うコマンドの確定仕様を docs/specifications へ移す (#…
takemi-ohama Sep 24, 2026
92659c0
Merge remote-tracking branch 'origin/main' into feature/plan69-tmux-n…
takemi-ohama Sep 24, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,10 @@ jobs:
severity: error
- name: Run ShellCheck on install.sh
run: shellcheck --severity=error install.sh
# base イメージへ入れる tmux のコマンド (PLAN69)。指摘 0 件の状態なので severity は
# 絞らない (既定の style まで)。bin/ の step が error に絞っているのは既存の指摘のため (#247)。
- name: Run ShellCheck on containers/base/tmux-*
run: shellcheck containers/base/tmux-first containers/base/tmux-clean containers/base/tmux-session

pytest:
name: Pytest (Python ${{ matrix.python-version }})
Expand Down
10 changes: 10 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,16 @@
Ubuntu のアーカイブの版(2026-09 時点で 0.11.0)が入ります。入れ損ないはビルドの版の確認で
止まります。`lfm` / `snapshot` は base を継がないため入りません。
**反映には `devbase build base --no-cache` と、使っている派生イメージの建て直しが要ります。**
- **tmux のセッションを名指しで移る・調べる・落とすコマンドを base イメージに入れました
(PLAN69 / #234)。** `tmux-go <名前>` はそのセッションへ移って他の端末を外し、
`tmux-peek <名前>` は attach せずに端末・プロセス・画面の直近を出し、`tmux-kill <名前>...` は
attach 中・実行中を問わず落とします(本体は `tmux-session`、名前は完全一致)。tmux の中では
`prefix S` でセッションの一覧から選び、同じ 3 つをメニューから呼べます。`tmux-first` /
`tmux-clean` は変わりません。ホストの tmux で使う手順は
`docs/user/environment-variables.md` の「セッションを名指しで扱う」にあります。
**反映には `devbase build base --no-cache` と、使っている派生イメージの建て直し、
コンテナの作り直し(`devbase down` → `devbase up`)が要ります。`devbase up` だけでは
反映されません。**

### Changed
- **スナップショットの世代を、アカウントグループ(対象ボリュームの組)ごとの系列で持つように
Expand Down
9 changes: 8 additions & 1 deletion containers/base/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -250,14 +250,21 @@ COPY --chmod=0644 tmux.conf /etc/tmux.conf

# tmux セッションの整理コマンド。tmux-first は居座りクライアントを切断して
# 一番若い番号のセッションへ切り替え、tmux-clean は置き去りのセッションを削除する。
# tmux-session は 1 つのセッションを名指しで移る・調べる・落とす (#234)。prefix S の
# メニュー (tmux.conf) からも呼ばれる。
# 背景と使い方は各スクリプト冒頭のコメントと docs/user/environment-variables.md を参照。
COPY --chmod=0755 tmux-first /usr/local/bin/tmux-first
COPY --chmod=0755 tmux-clean /usr/local/bin/tmux-clean
COPY --chmod=0755 tmux-session /usr/local/bin/tmux-session

# 短縮名は alias ではなく symlink で用意する。alias は bash の対話シェルにしか効かず、
# zsh などの他シェルや非対話実行 (docker exec など) では使えないため。
# tmux-go / tmux-peek / tmux-kill は呼ばれた名前で tmux-session のサブコマンドになる。
RUN sudo ln -sf tmux-first /usr/local/bin/tmux1 \
&& sudo ln -sf tmux-clean /usr/local/bin/tmuxc
&& sudo ln -sf tmux-clean /usr/local/bin/tmuxc \
&& sudo ln -sf tmux-session /usr/local/bin/tmux-go \
&& sudo ln -sf tmux-session /usr/local/bin/tmux-peek \
&& sudo ln -sf tmux-session /usr/local/bin/tmux-kill

# フォントの既定。素の fontconfig は sans-serif を中国語フェイス (WenQuanYi Zen Hei) へ
# 向けるため、日本語を描くと中国語の字形で写る (#161)。/etc/fonts/local.conf は
Expand Down
Loading
Loading