Commit graph

87 commits

Author SHA1 Message Date
5123fb4349 fix: config review fixes
- .gitconfig: correct misspelled user email, fix del-remote alias
  (expanded to 'git git remote prune'), filter 'today' to own commits
- .zshrc: guard lt() shift with no args, drop duplicate ~/.local/bin
  PATH entry, dedupe history (HIST_IGNORE_ALL_DUPS, HIST_IGNORE_SPACE)
- wezterm: fix hyperlink regex char class (0.9 -> 0-9)
- extras: bump nvm to v0.40.5 with verified installer checksum

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-06 21:16:01 +02:00
Brian Pooe
97ad246684 fix: use canonical Mason plugin dependency 2026-06-11 23:17:53 +02:00
Brian Pooe
db49fc1a56 feat: harden dotfiles installer and add automated validation 2026-06-11 20:38:19 +02:00
Brian Pooe
394a9af367 fix: align setup with Pop!_OS toolchain 2026-06-11 18:37:16 +02:00
Claude
291a5faffb
feat: control WezTerm appearance from .zshrc via generated env.lua
All user-tunable knobs now live in one block at the top of .zshrc:
KANAGAWA_THEME, WEZTERM_FONT_SIZE, WEZTERM_WINDOW_OPACITY,
WEZTERM_TEXT_OPACITY.

GUI-launched WezTerm never inherits shell exports (which is why
WEZTERM_THEME silently did nothing on desktop launches). Reuse the
existing tmux current-theme.conf pattern: .zshrc writes the values to
~/.config/wezterm/env.lua (only when they change), and wezterm.lua
dofile()s it and registers it in the config reload watch list — so
editing .zshrc and opening a new shell restyles the running window.

Precedence in wezterm.lua: env.lua > process env > defaults.
env.lua is gitignored (machine-local, generated).
2026-06-11 15:41:59 +00:00
Claude
32b1cb085a
Reapply "fix(tmux): restore clear-screen as prefix + Ctrl+l"
This reverts commit 97ba2271e2.
2026-06-11 15:36:27 +00:00
Claude
97ba2271e2
Revert "fix(tmux): restore clear-screen as prefix + Ctrl+l"
This reverts commit 48fba064b7.
2026-06-11 15:33:36 +00:00
Claude
48fba064b7
fix(tmux): restore clear-screen as prefix + Ctrl+l
vim-tmux-navigator captures plain Ctrl+l for right-pane navigation, which
shadows the shell's clear-screen, and prefix + l is already bound to
resize-pane. Add the navigator's documented passthrough so
Ctrl+Space, Ctrl+l clears the terminal.
2026-06-11 15:31:30 +00:00
Claude
ec6be909c5
feat: replace Omarchy layer with plain Arch + Hyprland installer
Drops the omarchy/ directory and adds install/ - a direct Arch + Hyprland
installer oriented around these dotfiles, no framework on top:

- install/install.sh: entry point with --packages-only / --dotfiles-only
- install/lib/{common,packages,dotfiles,hyprland,services}.sh: modules
- install/files/hypr/: starter Hyprland config (monitors, env, input,
  keybinds, autostart, top-level) - symlinked to ~/.config/hypr/
- Pacman packages: full Hyprland desktop + dotfile dependencies
- AUR: bootstraps yay, installs brave-beta-bin
- Symlinks all dotfiles, installs tpm + nvm, switches login shell to zsh
- Enables sddm, NetworkManager, bluetooth, pipewire user stack

No btrfs / Limine / Secure Boot constraints (unlike Omarchy). 3440x1440@120
monitor + JetBrainsMono Nerd Font preserved. Hyprland border colors use the
Kanagawa Wave palette to match the rest of the stack.

wezterm.lua restored to standalone Kanagawa wave/dragon switching via
$WEZTERM_THEME, since there's no Omarchy theme source anymore.

All shell scripts shellcheck-clean; wezterm.lua passes luac.
2026-06-09 11:06:43 +00:00
Claude
ed8934ebde
feat(omarchy): set JetBrainsMono Nerd Font as default 2026-06-07 17:41:13 +00:00
Claude
f73e3e7846
feat: add layered Omarchy installer with WezTerm + Brave Origin
Adds omarchy/ - a layered installer that patches Omarchy's package list,
runs its installer, then applies an upgrade-safe customization layer:

- Remove packages: try (tobi-try), lazydocker, cliamp, obsidian, pinta,
  signal-desktop, obs-studio, kdenlive, 1password, spotify, typora,
  libreoffice-fresh, chromium
- Clear all default web app (PWA) wrappers; drop Lazydocker TUI entry
- Install Brave Origin Beta as default browser (replaces Chromium)
- Install WezTerm as default terminal, following the active Omarchy theme
  via colors.toml with a Kanagawa Wave fallback + theme-set reload hook
- Menu overrides: trim Setup (System Sleep/DNS/Security) and Install
  (Web App/TUI/Service/Development/Editor/Terminal/Browser/AI/Gaming/Windows)
- Symlink dotfiles + install deps (zsh, plugins, tpm, nvm)

wezterm.lua now reads the Omarchy theme palette instead of a hardcoded one.
All scripts are shellcheck-clean; Lua validated with luac.
2026-06-07 17:25:44 +00:00
Claude
84fbb30d82
chore: drop macOS/Windows support and offline nvim tooling
- Remove macOS/Windows clipboard branches, homebrew fzf path from .vimrc
- Remove is_macos/is_windows logic from wezterm.lua
- Drop scripts/nvim-offline-* and NVIM_OFFLINE plumbing from nvim config
- Clean macOS section from .gitignore; simplify .gitattributes to LF-only
- Trim README of offline-bundle section
2026-06-07 16:50:33 +00:00
21c315d5f2 remove cross platform from config 2026-06-06 11:20:21 +02:00
Brian Pooe
62404cb60f fix: markdown 2026-04-29 16:52:23 +02:00
Brian Pooe
62284ccd19 docs: nvim to ideavimrc 2026-04-29 14:59:34 +02:00
Brian Pooe
4572614e95 feat: updated ideavimrc to match nvim config 2026-04-29 14:58:40 +02:00
Brian Pooe
6102d15662 Add shared IdeaVim config and sync integration 2026-04-16 22:14:57 +02:00
Brian Pooe
b46b555e3e fix: keyboard mapping to windows 2026-03-28 14:24:36 +02:00
Brian Pooe
571f33cdab fix: monokai 2026-03-08 18:25:54 +02:00
Brian Pooe
8c7e5b3f6e fix: zed keymaps with nvim 2026-03-08 18:15:34 +02:00
Brian Pooe
4de9fc08ec feat: added zed config translation of nvim ocnfig 2026-03-08 17:32:49 +02:00
Brian Pooe
b12ba6473f fix: visual corruption across platforms 2026-02-27 17:55:15 +02:00
Brian Pooe
172754b2b8 fix: windows keybinds 2026-02-26 21:53:50 +02:00
Brian Pooe
d1dfb3c3f8 feat(dotfiles): add Windows/WSL sync workflow and harden cross-platform theming
- add PowerShell sync script for Windows + WSL dotfiles/wezterm
deployment
- make .zshrc portable across macOS and WSL (brew detection, guarded
init, update alias)
- switch tmux to deterministic theme selection via current-theme.conf
- align wave/dragon theme files and remove fragile icon glyphs for
portability
- normalize starship wave/dragon configs for cross-platform rendering
- improve .vimrc Windows compatibility (clipboard + termguicolors guard)
- document Windows sync usage in README
2026-02-26 21:08:53 +02:00
Brian Pooe
479a296a20 fix: adjusted wezterm config for both os windows and mac 2026-02-26 19:35:26 +02:00
Brian Pooe
d29b8b682b feat: global theme setter 2026-02-18 22:10:16 +02:00
Brian Pooe
92c9823353 fix: opacity and font size for wezterm 2026-02-18 21:36:33 +02:00
Brian Pooe
5993459fef feat: unified kanagawa theme and lt for hidden folders too 2026-02-18 21:29:21 +02:00
Brian Pooe
f75f233c98 feat: added render markdown and update startship 2026-02-18 21:08:06 +02:00
Brian Pooe
8b5874e9f4 fix: mason 2026-02-15 21:54:30 +02:00
Brian Pooe
36431f73c7 fix: auto enable lsp servers explicitly managed in this config 2026-02-15 21:44:42 +02:00
Brian Pooe
304d501aba fix: rename desc for toggle neotest 2026-02-15 20:56:41 +02:00
Brian Pooe
6c1be18e7a fix: neotest keymaps for debug and toggle panel 2026-02-15 20:56:16 +02:00
Brian Pooe
82827a669a fix: window switching and neotest 2026-02-15 18:54:59 +02:00
Brian Pooe
ded6452470 feat: a simpler line navigation 2026-02-14 18:13:35 +02:00
Brian Pooe
1428860f6d feat: separate wezterm config from windows and macos specifics 2026-02-14 17:24:01 +02:00
Brian Pooe
486b2395b3 fix: blnk.comp auto start up 2026-02-14 17:23:34 +02:00
Brian Pooe
f69382ae8e fix: lsp logs and pop errors on proxy machine 2026-02-14 15:47:51 +02:00
Brian Pooe
37b5620628 feat: run bundler in docker 2026-02-14 14:49:26 +02:00
Claude
7008b31682
Fix prepare script errors and pin nvim-treesitter to master
Issues found when running the prepare script:

1. nvim-treesitter's main branch has a breaking rewrite that removed
   the configs module, ensure_installed, and auto_install. Pin to the
   master branch which has the stable API the config depends on.

2. Second Lazy sync caused mason-nvim-dap "Package is already
   installing" conflicts. Removed — one sync is sufficient.

3. TSInstallSync command no longer exists in new treesitter. Removed
   the step entirely — parsers are already compiled during Lazy sync
   via the :TSUpdate build step and ensure_installed.

4. Mason async installs (mason-nvim-dap) were aborted when nvim quit.
   Added a polling wait on the Mason registry so nvim stays alive
   until all async package installs complete.

5. Removed unnecessary vim.wait(5000) before MasonToolsInstallSync.

6. Collapsed from 4 steps to 3. Added treesitter parser count to the
   summary output.

https://claude.ai/code/session_01J1XAGFnocxQ1cfoaRZceGA
2026-02-12 18:41:43 +00:00
Claude
41c9b49156
Add offline mode for Neovim behind corporate proxy
When NVIM_OFFLINE=1 is set, all network-dependent operations are disabled:
- lazy.nvim update checker and git timeouts
- Mason ensure_installed for LSP servers and tools
- Treesitter auto_install for parsers
- mason-nvim-dap automatic_installation for debug adapters

Includes two scripts for the offline workflow:
- scripts/nvim-offline-prepare.sh: run on a machine with internet to
  pre-download all plugins, Mason packages, and Treesitter parsers
- scripts/nvim-offline-install.sh: deploy the bundle on the proxy machine

Also increases nvim-tree git timeout to 2s for proxy resilience.

https://claude.ai/code/session_01J1XAGFnocxQ1cfoaRZceGA
2026-02-12 17:47:22 +00:00
Claude
2316641b2f
Fix <leader>ot to jump to export class when already in .ts file
The 'ts' section was not included in the inline check, so it fell
through to file switching which re-opened the same file at line 1.
Now jumps to the export class line instead.

https://claude.ai/code/session_016zn34CVg7nXN6v4AvBA2K5
2026-02-11 17:21:29 +00:00
Claude
b4a74db626
Support inline Angular components in file switching keymaps
When in a .component.ts file, <leader>oh and <leader>oc now first look
for inline template:/styles: sections and jump to them. If no inline
section is found, they fall through to opening the external file.
<leader>ot jumps to the export class line when already in the .ts file.

https://claude.ai/code/session_016zn34CVg7nXN6v4AvBA2K5
2026-02-11 17:17:19 +00:00
Claude
f17f4cc4ad
Fix Angular highlights query override using vim.treesitter.query.set()
The after/queries/angular/highlights.scm file was being appended rather
than replacing the bundled query, so the invalid static_member_expression
node type still caused errors. Switch to vim.treesitter.query.set() which
programmatically replaces the query at runtime, bypassing runtimepath
loading order issues with nvim-treesitter.

https://claude.ai/code/session_016zn34CVg7nXN6v4AvBA2K5
2026-02-11 17:12:36 +00:00
Claude
2d9c3127d3
Fix Angular treesitter query error for static_member_expression
Override bundled Angular highlights.scm to remove the
static_member_expression node type reference which no longer exists
in the installed tree-sitter-angular parser, causing a query error
when opening inline templates.

https://claude.ai/code/session_016zn34CVg7nXN6v4AvBA2K5
2026-02-11 17:04:52 +00:00
Claude
a9e443b186
Add Angular development enhancements for nvim
- Add component file switching keymaps (<leader>ot/oh/oc/os) to jump
  between .component.ts, .html, .css/.scss, and .spec.ts files
- Add htmlangular filetype detection for .component.html files with
  Angular treesitter parser activation
- Add prettier formatting for html and htmlangular filetypes
- Disable ts_ls semantic tokens to preserve treesitter injection
  highlighting in Angular inline templates

https://claude.ai/code/session_016zn34CVg7nXN6v4AvBA2K5
2026-02-11 16:52:40 +00:00
Claude
39403ba8a0
Add treesitter injection queries for Angular inline template highlighting
Adds custom treesitter injection queries so that Angular @Component inline
templates get HTML/Angular syntax highlighting and inline styles get CSS
highlighting within TypeScript files.

https://claude.ai/code/session_016zn34CVg7nXN6v4AvBA2K5
2026-02-11 16:25:07 +00:00
Claude
2061135bdd
Keep both <C-s> and <leader>sa for save all, remap close other buffers to <leader>qt
https://claude.ai/code/session_01R1YQ6iEwuV6NfSD7ChTD4S
2026-02-10 19:28:08 +00:00
Claude
353d7a14f3
Update nvim save-all keymap from <C-s> to <leader>sa
https://claude.ai/code/session_01R1YQ6iEwuV6NfSD7ChTD4S
2026-02-10 19:26:13 +00:00
Claude
f55b4e0646
Hide .git folder in nvim-tree file explorer
https://claude.ai/code/session_01CZ49E2kHN3z3B8BaymxJJC
2026-02-10 17:18:30 +00:00