bchanot
22452477d5
Merge bugfix/tmux-drag-syntax-error into develop
2026-10-06 18:05:11 +02:00
bchanot
72d38b68df
chore(memory): journal — tmux drag syntax error
2026-10-06 18:02:54 +02:00
bchanot
31f8400852
fix(tmux): drag in a mouse app (claude, vim) died with "syntax error"
...
The MouseDrag1Pane binding escaped the inner quotes as \" inside a
single-quoted string. Since tmux 3.0 the backslashes are literal there,
so the branch taken when the pane has mouse tracking on failed to parse:
no selection, "syntax error" in the status line. Plain-shell panes never
hit that branch, which is why only claude/vim panes were affected.
2026-10-06 18:02:47 +02:00
bchanot
773e1c5fa6
chore(memory): journal — tmux ctrl nav in copy-mode
2026-10-06 17:16:20 +02:00
bchanot
8b6ed6b983
Merge bugfix/tmux-copy-mode-ctrl-nav into develop
2026-10-06 17:16:06 +02:00
bchanot
dda78bb9bb
fix(tmux): ctrl+u/h/j/k switch panes in copy-mode too
...
Stock copy-mode-vi table binds C-h cursor-left, C-u halfpage-up and C-j
copy, so the pane moves turned into text navigation once scrolled. Arrows
keep that job; the four keys now select-pane in copy-mode like at root.
2026-10-06 16:58:19 +02:00
bchanot
cbdbe58491
chore(memory): journal — tmux wheel halved, dtach mac/termux
2026-10-06 16:51:39 +02:00
bchanot
ec9d0ed934
Merge bugfix/tmux-wheel-half into develop
2026-10-06 16:51:28 +02:00
bchanot
0a34c528ca
fix(tmux): wheel scrolls 2 lines per tick instead of 5
2026-10-06 16:49:32 +02:00
bchanot
7f63f4b0e2
chore(memory): journal — identity asked at install
2026-10-06 15:35:22 +02:00
bchanot
0687f6a4fe
Merge feature/identity-prompt into develop
2026-10-06 15:35:14 +02:00
bchanot
8f6969001f
feat(identity): ask name/email at install, no hardcoded USER/EMAIL in the repo
...
- rc templates carry @USER@/@EMAIL@ placeholders; install.sh renders them
- resolve_identity: an export already in ~/.bashrc or ~/.zshrc is reused silently,
else IDENTITY_USER/IDENTITY_EMAIL, else a prompt, else login name + empty email
- render_gitconfig generalised to render_identity_template (gitconfig unchanged)
- vimrc reads g:_author/g:_email from $USER/$EMAIL instead of hardcoded values
- README + CLAUDE.md
2026-10-06 15:34:11 +02:00
bchanot
f6a039fc80
chore(memory): journal — tmux click exit, alt copy/paste
2026-10-06 15:22:23 +02:00
bchanot
8b5e9367d4
Merge bugfix/tmux-click-exit into develop
2026-10-06 15:22:14 +02:00
bchanot
1f5e8990c8
feat(tmux): alt+c copies and leaves copy-mode, alt+v pastes (cmd-less keyboards)
2026-10-06 15:19:47 +02:00
bchanot
51aed0e24d
fix(tmux): return to the prompt on click release, not on press
...
MouseDown cancelled copy-mode before a drag could start, so selecting text
after scrolling up jumped back to the bottom. MouseUp1Pane (sent only when
no drag happened) now cancels; MouseDown clears the selection as before.
2026-10-06 15:17:21 +02:00
bchanot
8ab681627c
fix(tmux): a click in copy-mode returns to the prompt
...
MouseDown1Pane in copy-mode-vi now cancels the mode instead of only clearing
the selection. Drag-select (root MouseDrag1Pane re-enters copy-mode) and
click-to-switch-pane are unchanged.
2026-10-06 15:13:00 +02:00
bchanot
ef418fea04
chore(memory): journal — tmux selection, keep tmux
2026-10-06 15:05:00 +02:00
bchanot
b73ee086fd
Merge bugfix/tmux-selection into develop
2026-10-06 15:04:48 +02:00
bchanot
b900c6d3a3
fix(tmux): visible selection colour, mouse drag copies on release
...
- mode-style bg=yellow,fg=black (black on a dark terminal was invisible)
- MouseDragEnd1Pane copies (pbcopy on macOS, tmux buffer elsewhere) without leaving copy-mode
2026-10-06 15:02:42 +02:00
bchanot
ec9187c70f
chore(memory): BDR-017 tmux ctrl+uhjk, BDR-018 Linux clipboard OSC 52
2026-10-06 14:28:35 +02:00
bchanot
7abef66f50
chore(memory): journal — tmux keys + Linux deploy
2026-10-06 14:26:39 +02:00
bchanot
e3be25f94c
Merge bugfix/tmux-macos-keys into develop
2026-10-06 14:26:29 +02:00
bchanot
d2821fa462
feat(tmux): deploy the config on Linux too; prefix i / - splits
...
- install.sh: deploy_tmux_config runs on both OSes after the bashrc (gated on tmux)
- tmux.conf: clipboard via if-shell (pbcopy on macOS, tmux buffer + OSC 52 elsewhere)
- bashrc-linux exports XDG_CACHE_HOME like the macOS rc files
- prefix i = side-by-side split, prefix - = stacked split (h/j/k/l kept)
- verified in an Ubuntu 24.04 container (tmux 3.4): deploy, bindings, split, plugins, libtmux
2026-10-06 13:09:34 +02:00
bchanot
ca8b1c19c9
feat(tmux): pane moves on ctrl+u/h/j/k (arrow layout, AZERTY/QWERTY invariant)
...
Replaces ctrl+h/j/k/l and the option+arrow bindings. Resize mirrors it with prefix.
C-l is free again, so it clears the shell screen.
2026-10-06 13:05:25 +02:00
bchanot
b2244fc7ba
feat(tmux): option+arrow moves between panes without prefix
2026-10-06 13:02:37 +02:00
bchanot
d639f22e08
fix(tmux): macOS clipboard, C-a passthrough, vim detection
...
- y/p use pbcopy/pbpaste (xsel is X11, absent on macOS); xsel kept as the Linux variant in a comment
- bind C-a send-prefix: C-a C-a sends a literal C-a to the shell
- is_vim reads #{pane_current_command}; the @tmux_vim_<pane> variable was never set, so C-h/j/k/l never reached vim
2026-10-06 12:41:18 +02:00
bchanot
7adcef4f94
Merge feature/tmux-config into develop
2026-10-06 12:27:34 +02:00
bchanot
825abe842a
feat(macos): deploy tmux.conf + tpm plugins; cloudpex becomes an install-time offer
...
- tmux.conf (vi keys, C-a prefix, resurrect/continuum, window-name) → ~/.config/tmux/tmux.conf
on macOS; tpm cloned, plugins fetched headlessly, libtmux installed non-fatally
- bashrc-osx / zshrc-osx export XDG_CACHE_HOME (session save dir of the config)
- Linux: install_cloudpex → offer_cloudpex ([y/N] with the /tmp and SSH offers)
- README + CLAUDE.md updated
2026-10-06 12:27:22 +02:00
bchanot
1fbbffcedc
chore(memory): journal — v1.0.0 release
2026-10-06 11:53:26 +02:00
bchanot
dda3fabcf7
Merge release/1.0.0 into develop
2026-10-06 11:41:37 +02:00
bchanot
caf388ce0b
chore(release): 1.0.0 — version.txt + CHANGELOG
2026-10-06 11:39:40 +02:00
bchanot
dd36bc6f18
chore(githooks): refresh post-commit/post-merge from the lib (hook label)
2026-10-06 11:38:56 +02:00
Bastien CHANOT
7acdcd4128
Merge feature/gitconfig-user-scope into develop
2026-10-06 11:25:48 +02:00
Bastien CHANOT
d293943106
feat(install): add git-delta to the apt and brew packages
...
gitconfig sets core.pager = delta; without the binary git cannot page.
2026-10-06 10:55:24 +02:00
Bastien CHANOT
51521e7ca4
feat(git): deploy user-scope ~/.gitconfig from the repo template
...
Git never expands $VARS in its config, so gitconfig carries @USER@ and
@EMAIL@ placeholders that install.sh fills from the deployed bashrc's
USER/EMAIL exports. A differing ~/.gitconfig is kept as
~/.gitconfig.backup-<date>; an identical one is left alone. A repo's
.git/config still overrides it. excludesfile uses ~ (git expands it,
not $HOME).
The rc files now override $USER, so the installer takes the login name
from id -un for dscl and the code-server unit.
2026-10-06 10:55:24 +02:00
Bastien CHANOT
3b53213af4
feat(shell): export identity as USER/EMAIL instead of VIUSER/VIMAIL
...
Same names in bashrc-linux, bashrc-osx and zshrc-osx, so the vim header
and the rendered ~/.gitconfig share one identity.
2026-10-06 10:55:14 +02:00
Bastien CHANOT
f053164cf7
chore(memory): BDR-015/016 macOS + zshrc backup, LRN-014 BSD traps, BLK-007 master URL, journal
2026-10-05 17:32:33 +02:00
Bastien CHANOT
7d5dabda36
Merge feature/macos-support into develop
2026-10-05 17:28:53 +02:00
Bastien CHANOT
7edde9d0f3
chore(todo): macOS support + zsh choice plans
2026-10-05 17:28:47 +02:00
Bastien CHANOT
cebc1f055a
docs: macOS install, shell choice and zsh files
2026-10-05 17:28:47 +02:00
Bastien CHANOT
093d21f8a1
feat(install): macOS via Homebrew, colima, brew services, bash/zsh login shell choice, gaps report; cp -Rpv for BSD cp
2026-10-05 17:28:47 +02:00
Bastien CHANOT
6b60b64c8f
feat(zsh): macOS zshrc (oh-my-zsh) + bchanot theme porting the bash prompt
2026-10-05 17:28:47 +02:00
Bastien CHANOT
f09151d1f3
feat(bashrc-osx): mirror bashrc-linux with macOS deltas (brew env, ls -G, EPOCHREALTIME timer, cc without systemd-run)
2026-10-05 17:28:46 +02:00
Bastien CHANOT
72648597ee
fix(dt): macOS portability (lsof cwd, BSD date start time, bash 3.2 tilde, sed -E help)
2026-10-05 17:28:39 +02:00
bastien
1a4f8d4715
Merge feature/apt-packages into develop
2026-09-28 21:57:04 +02:00
bastien
ba1817a4e9
chore(memory): BDR-014 apt mirror choices, LRN-013 gitleaks version probe
2026-09-28 21:57:03 +02:00
bastien
3c5b1ece6e
chore(memory): journal — apt packages feature, gitleaks hook fix
2026-09-28 21:41:27 +02:00
bastien
9e49b9d92c
chore(githooks): refresh pre-commit (gitleaks protect fallback) + track reference-transaction
2026-09-28 21:41:06 +02:00
bastien
0bc9e3f467
feat(install): mirror this machine's apt packages
...
gitleaks, web stack (mariadb-server, imagemagick, unversioned php-* modules),
ubuntu-desktop-minimal before the RDP setup, and a lspci-gated
install_nvidia_driver() that runs ubuntu-drivers install. README + TODO updated.
2026-09-28 21:41:05 +02:00