- Drop the
hyprctl dispatch execwrapper from the hyprbars minimize button so the bar plugin runs~/.local/bin/hypr-minimize.shdirectly (one fewer subprocess hop) - Add
hypr/scripts/hyprbars-patch-deploy.shto deploy the locally-built patched hyprbars.soand reload it live viahyprpm disable/enable, so the upstreamm_bCancelledDownleak fix can be re-applied afterhyprpm updateclobbers it; full diagnosis and patch inrollecode/dms-minimize#upstream-hyprbars-m_bcancelleddown-leak-patch-below
dms-hide-on-fullscreen.shnow also tracks the active window class/title so the DMS bar and dock hide when BG3, Sims 4 (TS4_x64.exe), Overwatch, Battle.net or any Steam app is focused, even when the game runs windowed (Hyprland's fullscreen event alone misses windowed-fullscreen games)- Use correct DMS IPC calls:
bar hide index 0/bar reveal index 0anddock hide/dock reveal; previousmanualHidecall was a no-op against this Quickshell build
- Route Alt+Tab through hymission mission control; keep Super+Tab on hyprswitch GUI
- Render brave-origin-nightly hyprbars titlebar as solid black
- Autostart
dms-hide-on-fullscreen.shso the DMS bar/dock auto-hide when any window is fullscreen
- Switch hyprbars minimize glyph back to
nf-md-window_minimizeafter trying several plain-minus alternatives that the bar font cannot render cleanly
- Restore hyprbars minimize button with macOS-style red and yellow dots (close
#ED5256, minimize#E8AF0F) using dark red and dark amber for the hover icons - Resize hyprbars buttons to 12px and bump
bar_paddingto 8 withbar_button_padding8 for macOS-style spacing - Switch minimize glyph to a centered minus
- Switch hymission plugin source from
gfhdhytghd/hymissionto forkrollecode/hymissionso locally-developed PRs (toggle default, raise-on-select, damage-tracking-override, hover-dwell, hyprbars suppression, reserved-area awareness, close button) stay live until merged upstream - Drop the manual
plugin = ...libhymission.sodirective fromhypr/hyprland.conf; hyprpm now manages the build and reload, so plugin survives Hyprland updates without manual rebuilds
- Bump hyprswitch
--size-factorfrom 5 to 8 for larger Alt+Tab thumbnails - Remove
max-widthcap on hyprswitch monitor containers so they grow with size factor - Raise hyprswitch monitor
min-widthfrom 400px to 600px - Include
special:minimizedworkspace in hyprswitch switcher and restore minimized windows automatically when selected viahyprswitch-dispatch-with-restore.shwrapper - Add
immediate onwindowrule forbg3.*,ts4_x64.exe, andbattle.net.*to enable screen tearing during gameplay for low input lag - Drop invalid
noanim,noborder,bordersize, andidleinhibitwindowrule fields that no longer exist in Hyprland 0.54 and were spamming on-screen config errors
- Disable Super key press that opened app selector
- Comment out
hyprmissionctrlkeybinds (plugin crashes Hyprland)
- Add Wayfire compositor config at
wayfire/wayfire.iniwith DMS autostart, scale exposé onSuper+A, hot corners, floating window rules, and Hyprland-style keybinds - Add
setup_wayfirefunction toinstall.shthat symlinkswayfire/wayfire.inito~/.config/wayfire.ini - Leave mouse acceleration unset so libinput uses the per-device default, matching Hyprland's empty
accel_profilebehaviour - Disable
Super+Mminimize binding because Wayfire has no taskbar to restore from
- Restore hyprbars
bar_heightto 28
- Slim hyprbars: smaller bar height, smaller text, zero button padding
- Make close button background transparent with white X on hover
- Bump close icon size for better hover target
- Add
browser-flags/directory withchromium-flags.conf,brave-flags.conf,brave-origin-nightly-flags.conf - Disable hardware video decoding in Brave Origin Nightly to prevent NVIDIA GPU hangs on autoplay videos
- Add
setup_browser_flagsfunction toinstall.shthat symlinks browser flag configs to~/.config
- Remove labwc compositor configs - labwc cannot match Hyprland's blur, animations, or DMS dock minimize integration
- Remove hyprbars minimize button - clicking it triggers a click-leak bug that makes the next click in the unminimized window act as a drag; use Super+M instead
- Add labwc compositor configs (
rc.xml,autostart,environment,menu.xml) as a parallel session alongside Hyprland with ported keybinds, window rules, autostart, and built-in floating titlebars - Symlink
~/.config/labwctolabwc/in the dotfiles repo
- Autostart
wl-paste --watch cliphist storefor text and images so clipboard history persists after source apps close - Add Brave Origin Nightly windowrule with the same float and size as Brave
- Add Brave windowrule to always float at 1710x1200 centered
- Add
claude-code/update-cross-channel-context.shhook that patches Son of Anton handoff file on every Claude Code Stop event - Register Stop hook in
claude-code/settings.jsonreference config - Symlink the new hook in
install.shso fresh installs pick it up automatically
- Use Catppuccin Mocha Peach for orange/yellow ANSI color instead of Mauve
- Update foot config: green blinking cursor, disable bell, hide mouse when typing
- Add OSC 7 note for preserving CWD on spawn-terminal
- Add
focus_on_activatewindowrule to prevent minimized windows from stealing focus - Add
suppress_event maximizewindowrule for all windows - Add Super+M keybind for minimize
- Switch default terminal to foot
- Speed up Hyprland animations for snappier feel
- Set hyprbars
bar_part_of_windowto true - Disable window rounding to fix blur sharp corners on hyprbars
- Remove autogenerated config header
- Add
hyprpm-ensure.shscript to auto-rebuild plugins on Hyprland startup - Replace manual
hyprpm reloadwith update + reload for post-update compatibility - Invoke hyprpm-ensure via
bashto avoid dotfiles sync stripping execute permissions
- Add safeguard to prevent file paths leaking as language names to Code::Stats
- Set WezTerm opacity to 0.65 on macOS for
qllervouser
- Use
dms-minimizefor hyprbar minimize button instead oftoggle-minimize.sh - Enable
icon_on_hoverfor hyprbar buttons with close and minimize icons - Increase hyprbar button size from 12 to 14
- Remove workspace 99 minimize keybind
- Remove non-existent
dms/outputs.confsource reference from Hyprland config
- Move planner commands and CLAUDE.md to separate
claude-day-plannerrepo
- Enforce exhaustive fetching of all Linear issues and Sunsama backlog with pagination
- Reference previous day/week plans for carry-over tasks
- Exclude planning meta-entries from changelog
- Switch Gmail MCP to actively maintained ArtyMcLabin fork (pure stdio, no port)
- Add ääkköset rule and task status verification to global
CLAUDE.md - Add
/finish-daycommand for end-of-day Timely + changelog wrap-up - Add task completion tracking to sync changelog and daily plan
- Add GitHub MCP server for commits and releases
- Switch Slack MCP from bot token to user token for all-channel access
- Add revenue-first prioritization tiers to planner commands
- Add Help Scout, Linear inbox, and Obsidian note scanning to planners
- Enforce English, present tense, and no source labels in changelog entries
- Fix Code::Stats language detection leaking file paths as language names
- Fix XP counter reading wrong line from daily counter file
- Add comprehensive file extension to language mapping
- Re-enable DMS restart after hyprlock unlock to restore volume HUD
- Add free time planner command (
/plan-freetime) for personal task planning - Fix black border on area screenshots by disabling slurp layer animation
- Add global
CLAUDE.mdwith MCP-first tool preferences - Update task completion to sync both changelog and daily plan
- Enforce English and present tense in changelog entries
- Remove source labels from changelog entries in
/finish-day - Switch Slack MCP from bot token to user token for all-channel access
- Add
/finish-daycommand for end-of-day Timely + changelog wrap-up - Add revenue-first prioritization tiers to planner commands
- Add workaholic protection with strict overtime rules
- Add Help Scout support to planner commands
- Add GitHub MCP server for commits and releases
- Emphasize Obsidian note scanning for uncaptured action items
- Emphasize Sunsama backlog check in planners
- Disable F3 window expose and hot corner (no working solution available)
- Remove
window-overview.shscript
- Disable hy3 plugin, switch to dwindle layout (hy3 incompatible with hyprland 0.54.x)
- Load plugins via hyprpm instead of manual hyprctl plugin load
- Fix Discord zombie processes on boot by removing redundant background fork from exec-once
- Add auto-update wrapper script for Discord to prevent stuck splash screen on version mismatch
- Improve planner prompts: timeblocked schedule, work categories, analysis section, week lookahead
- Add CTO role context and full team Linear board search
- Filter personal tasks, use checkbox lists, Finnish date format
- Silently skip failed MCP sections
- Add
append-changelog.shhook for auto-logging completed tasks to Obsidian Life changelog - Add PostToolUse hook for Sunsama and Linear task completions
- Add
plan-today,plan-weekanddonecommand prompts for Claude Code
- Add context window usage percentage to status line
- Add custom colors for duration and context percentage in status line
- Disable WezTerm background transparency on macOS
- Remove DMS restart after hyprlock unlock
- Switch Neovim AI helper to OpenAI direct API with gpt-4.1-nano for instant responses
- Add OpenAI API key to secrets configuration
- Remove unbounded codestats-hook.log and debug log that caused CPU spikes
- Replace log-parsing statusline loop with lightweight daily counter file (/tmp/codestats-xp-today)
- Fix status line script permissions (add execute bit)
- Fix integer expression errors in status line when variables are empty
- Add default values for LINES_ADD, LINES_REM, and DURATION_MS
- Add Claude Code status line with session duration, lines changed, and Code::Stats XP display
- Fix macOS compatibility in status line (replace grep -oP with portable sed)
- Update README with status line setup docs and symlink instructions
- Restore hy3 layout, keybindings, and tab styling config
- Change Super+G to hy3:makegroup tab toggle for proper tab toggling
- Make Code::Stats XP hook async and non-blocking (systemMessage instead of notify-send/WezTerm overlay)
- Fix windows going off-screen after monitor power cycle and hyprlock unlock
- Save window positions before lock, restore with monitor bounds clamping after unlock
- Fix monitor-watcher overwriting saved positions on hyprlock restart
- Disable hy3 plugin due to version mismatch with Hyprland 0.53.3
- Switch from hy3 to dwindle layout temporarily
- Update windowrule syntax for Hyprland 0.53 breaking changes
- Convert all windowrulev2 to windowrule format
- Comment out hy3 keybindings, add dwindle equivalents for window moving
- Remove invalid windowrule properties (nofocus, noborder, noshadow, etc.)
- Comment out hyprbars plugin windowrules (syntax incompatible)
- Add hy3 plugin for i3-like manual tiling with smart autotile
- Configure autotile with 800px width and 500px height thresholds to prevent tiny windows
- Add transparent blurred tab styling matching hyprbars theme
- Add hy3 keybindings: Super+H/J/G for horizontal/vertical/tab groups
- Add Super+U to untab, Super+O to toggle layout orientation
- Add Super+E to expand window, Super+A/Z for parent/child focus
- Update arrow key bindings to use hy3:movefocus and hy3:movewindow
- Move workspace switching to Super+Alt+arrows
- Move file manager to Super+Shift+E
- Document all Hyprland keybindings in README
- Keep DMS restart after unlock (bugs not fixed in recent updates)
- Add custom title bar color for The Lounge IRC app
- Remove clipboard management (cliphist, wl-clip-persist, clipboard-notify) - DMS 1.2 has native clipboard
- Remove Sunsama, Signal, AyuGram, The Lounge from autostart; Discord starts minimized to tray
- Update Hyprland config for 0.53 windowrule syntax
- Fix float rule: use new
windowrule = match:class .*, float onsyntax - Fix hyprbars plugin rules: use block syntax without
plugin:prefix per hyprland-plugins#586 - Convert windowrulev2 to new windowrule format where applicable
- Fix deprecated windowrule syntax for Hyprland (suppressevent, nofocus)
- Add Fish shell configuration with Oh My Posh support
- Add Oh My Posh catppuccin_macchiato theme
- Update starship config: add git branch icon, path truncation with ../ symbol
- Symlink starship.toml to ~/.config/
- Add wallpaper-sync.sh to auto-sync hyprpaper wallpaper to hyprlock
- Remove deprecated hyprlock options (grace, fail_transition)
- Disable IRC autostart, add thelounge-app
- Fix hyprlock black background after monitor power cycle (NVIDIA workaround)
- Add monitor-watcher.sh to detect monitor reconnect and restart hyprlock
- Add hyprlock-wrapper.sh for DMS restart after unlock
- Add hypridle with unlock_cmd support
- Add allow_session_lock_restore to Hyprland misc config
- Remove markdown from conform.nvim formatters
- Disable waybar
- Add .inputrc with readline config for macOS: disable bracketed paste, Option+Arrow word movement
- Super+scroll for volume, Super+Shift+scroll for workspaces
- Remove steam from startup, all apps launch on workspace 1
- Fix scroll bind delay with scroll_event_delay = 0
- Only assign apps to workspaces at startup, not on every launch
- Make AyuGram's window decoration more minimal
- Disable Hyprland window shadows
- Let WezTerm handle its own opacity instead of Hyprland override
- Disable hyprbars for AyuGram Desktop
- Remove custom paste keybindings on macOS to fix bracketed paste escape sequence leakage
- Fix Hyprland config compatibility with stable version 0.52.1 (remove deprecated options: no_border_on_floating, allow_tearing, rounding_power)
- Improve WezTerm macOS visual style: 60% opacity with blur, 13pt font, 1.15 line height, 0.9 letter spacing
- Wrap macOS IRC SSH connection in local screen session to persist when detaching
- Add hyprlock
- NVIDIA settings
- Fix duplicate clipboard notifications by adding hash-based deduplication
- Make clipboard notifications more reliable by handling errors gracefully
- Add timeouts to prevent clipboard monitoring from hanging
- Fix double dollar sign in the prompt by disabling Starship git stash indicator
- Comment out PS1 export in .bash_profile (conflicts with Starship)
- Switch nvim colorscheme from Catppuccin Mocha to GitHub Dark
- Add GitHub theme plugin for nvim
- Make WezTerm font spacing OS-specific (cell_width 0.9 on Linux, 0.85 on macOS)
- Adjust WezTerm foreground color brightness (#d9e0ee)
- Set bold font weight to 600 (SemiBold) instead of 620
- Set Linux font size to 10
- Remove custom purple variable color overrides in nvim
- Remove hardtime plugin completely
- Replace Dracula with Catppuccin Mocha color scheme for WezTerm
- Set macOS WezTerm to 99% opacity with blur
- Restore green cursor color
- Adjust macOS WezTerm padding (3.5cell left/right)
- Change variable colors from orange to bright purple
- Disable mini.files from auto-opening when opening directories
- Remove native Vim keybinding overrides (Ctrl+A, Ctrl+E, Ctrl+T, Ctrl+P) to preserve standard functionality
- Fix leap.nvim keybind conflict by changing from 's' to 's' to avoid interfering with substitute command
- Add Tokyo Night theme with Telescope theme picker (Space+s+t) for live preview
- Disable Trouble diagnostics panel from auto-opening by default
- Revert Ollama model to qwen2.5-coder:7b (codeqwen:code doesn't support FIM API for completions)
- Fix WezTerm window decoration glitches on Linux by making window_decorations OS-specific (INTEGRATED_BUTTONS on macOS, NONE on Linux)
- Add GPU acceleration to WezTerm with WebGpu and HighPerformance power preference
- Add Cmd+Shift+? keybind for Neovim AI helper on macOS via WezTerm translation
- Fix Cmd+Shift+? not working - WezTerm now translates it to Ctrl+? for Neovim
- Update plugin list in README to match actual installed plugins
- Make treesitter installation more bulletproof with proper directory setup and permissions
- Add setup_nvim_directories() function to install.sh to create all required Neovim directories before plugin installation
- Add enhanced error handling and permission validation for treesitter parser installation
- Fix "tar: tree-sitter-lua-tmp: Cannot open: No such file or directory" errors on remote servers
- Add directory writability checks with helpful warning messages
- Pre-create ~/.local/share/nvim, ~/.local/share/nvim/lazy, ~/.cache/nvim, and ~/.cache/nvim/nvim-treesitter directories
- Add Mission Control-style window overview with hot corner and F3 keybind
- Add top-right hot corner script for instant window grid overview
- Improve window-overview.sh with minimum window size (400×300) to keep windows readable
- Add max 5 columns limit to prevent tiny windows in grid layout
- Add lightweight Vim AI helper with Ctrl+Shift+? (Cmd+Shift+? on Mac) for quick Neovim questions
- Replace CodeCompanion with minimal custom floating window using OpenRouter API directly
- Optimize window grid spacing and margins for better screen space usage
- Add DMS overview patches for showing only workspaces with windows
- Create patch-dms-overview script to reapply customizations after DMS updates
- Re-enable wayland support
- Add cross-platform desktop notifications to Code::Stats hook (Linux/macOS, safe for headless systems)
- Add automatic claude-conversation-saver plugin installation in install.sh for auto-archiving all conversations to markdown
- Add Super+Shift+C keybind to center windows in Hyprland
- Set Hyprland border_size to 1 with low opacity for subtle borders
- Reduce extend_border_grab_area from 25 to 10 pixels
- Enable no_hardware_cursors in Hyprland for proper cursor shape changes
- Add mouse_move_enables_dpms and key_press_enables_dpms to Hyprland
- Add CodeCompanion AI chat plugin for asking Neovim questions with nv hotkey (uses OpenRouter auto-router)
- Add "Open Link" and "Open in Incognito" options to WezTerm right-click context menu for URLs (incognito Linux-only, uses chromium)
- Add automatic URL detection and selection on right-click in WezTerm
- Add selected URL/text preview as first item in WezTerm right-click context menu
- Improve URL detection to recognize domains without protocol (example.com, github.io, etc.)
- Fix right-click menu losing selection by preserving existing selection before showing menu
- Add auto-restart capability to clipboard-notify.sh with systemd service integration
- Move clipboard-notify from hyprland.conf exec-once to systemd service for better reliability
- Add documentation for auto-saving Claude Code conversations with claude-conversation-saver plugin
- Add individual linter activation prompts in install.sh for phpcs, stylelint, flake8, luacheck, jsonlint, and eslint
- Add linter feature flags to local.lua configuration file
- Make nvim-lint conditionally enable linters based on flags in local.lua
- Add comprehensive linter documentation to README with manual activation instructions and installation commands
- Document project-specific linter detection for ESLint and phpcs
- Fix Ctrl+W and Ctrl+K not working in nano on SSH servers by changing WezTerm shortcuts to Alt+W and Alt+K
- Fix Ctrl+P to search all files in project instead of only recent files
- Replace heavy neo-tree with lightweight mini.files file explorer
- Fix phpcs and eslint to always use project-local vendor/bin or node_modules/.bin executables when available
- Fix phpcs to automatically detect and use phpcs.xml or phpcs.xml.dist from project root
- Fix linters to set correct working directory for project-specific configurations
- Fix nvim-lint invalid args error by using directory-change wrapper instead of modifying linter configs
- Fix unused local variable warning in darwin.lua by prefixing with underscore
- Add Super+Shift+C keybind to center windows on current workspace in Hyprland (fixes windows appearing outside screen)
- Add LSP (Language Server Protocol) as optional feature with explanation in install.sh
- Make Mason and LSP plugins optional with enable_lsp flag (defaults to enabled)
- Install Node.js via nvm when LSP enabled (no sudo required, per-user installation)
- Explain LSP features: autocomplete, go-to-definition, error checking, hover docs
- Show LSP requirements during install: Node.js/npm (~100MB), language servers (~50-200MB)
- Add leap.nvim for quick motion jumping (s/S to jump forward/backward)
- Replace broken session plugins with auto-session + cd-project.nvim for VSCode Project Manager workflow
- SaveProject command saves current directory to projects (prompts for optional name)
- OpenProject/Cmd+Shift+O in nvim opens saved projects picker to browse and switch
- Cmd+Shift+O in WezTerm shows project menu reading from cd-project.nvim.json (works even outside nvim)
- Sessions auto-save on exit and restore when switching projects (no empty buffer tabs)
- Fix all Cmd+Shift keybindings on macOS (E for neo-tree, O for projects) - match WezTerm Ctrl translations
- Auto-refresh neo-tree when switching projects via cd-project hook
- Disable Kitty keyboard protocol in WezTerm to prevent escape sequences in copied text
- Configure dashboard to show recent projects with hyper theme
- Add Cmd+Shift+S to prepare for screenshots (sets opacity to 100% for 5 seconds, macOS only)
- Projects stored in ~/.config/nvim/cd-project.nvim.json (manually editable)
- Add optional feature flags system with install.sh prompts for Ollama AI, Discord Rich Presence, and Gamify plugin
- Create lua/local.lua (gitignored) with machine-specific feature flags
- Make plugins conditionally load based on local.lua configuration (backward compatible - defaults to enabled)
- Make install.sh idempotent with prompts before backing up configs (WezTerm, Neovim, Hammerspoon), building/upgrading Neovim, and installing Git
- Add automatic Neovim version detection and upgrade to latest release (0.10+) in install.sh
- Build Neovim from source on Ubuntu/Debian to avoid GLIBC compatibility issues
- Use pre-built binaries for Fedora/RHEL/CentOS (newer GLIBC)
- Change install.sh to use HTTPS for git clone instead of SSH for better remote server compatibility
- Add Comment.nvim plugin with Cmd+Shift+7 (macOS) and Ctrl+Shift+7 (Linux/Windows) keybindings for toggling comments
- Add Hammerspoon configuration for macOS with Cmd+Option+Left/Right Mouse drag for window move/resize (Hyprland-style)
- Use canvas preview for smooth resizing (SkyRocket.spoon approach), Cmd+Option+Click without drag passes through to apps
- Remove Ctrl+D and Ctrl+Shift+D WezTerm split keybindings to restore default terminal behavior (close/terminate)
- Fix lualine always showing (independent of gamify), CodeStats XP shown even when gamify disabled, better error handling
- Add backup of local.lua when re-running install.sh to preserve settings
- Add version badge to README.md
- Make install.sh explicitly state which existing config files are found and preserved (not overwritten)
- Fix plugins not loading when optional features disabled (filter out nil values from plugin table)
- Fix project switcher not working on macOS (add Cmd+Shift+O keybinding)
- Fix Cmd+P (file finder) and Cmd+Shift+P (command palette) not working in nvim on macOS
- Add Cmd+Shift+F for live grep text search across all files in project
- Add ripgrep installation to install.sh (required for Telescope live_grep)
- Fix nvim-lint ESLint to search from file location upward, use project-local installation with proper working directory for node_modules resolution
- Fix ESLint notifications showing for non-JavaScript files (only run for JS/TS files)
- Add phpcs project-local configuration (searches for vendor/bin/phpcs, auto-detects phpcs.xml and composer.json rules)
- Disable TypeScript LSP diagnostics (use ESLint for JavaScript/TypeScript linting instead)
- Replace persistence.nvim and project.nvim with neovim-project (VSCode Project Manager-like experience)
- Remove WezTerm project switcher menu, pass Cmd+Shift+O to nvim for project management
- Configure neovim-project to only show manually saved projects (no auto-discovery)
- Add :SaveProject command (accessible via Cmd+Shift+P command palette) to save current directory to projects
- Add LSP keybindings: gd (go-to-definition), K (hover), Ctrl+Click (go-to-definition), gr (references), etc.
- Fix neo-tree to not create state files in project directories
- Fix missing TSConfig fields in nvim-treesitter configuration (sync_install, ignore_install, modules)
- Fix Claude Code XP hook to work globally from any directory (use ~/.claude/settings.json instead of settings.local.json)
- Add nvim-treesitter plugin for better syntax highlighting and code understanding with auto-parser directory creation
- Add Cmd+A for select all in nvim on macOS (keeps Ctrl+A for beginning of line)
- Add Ctrl+A for select all in nvim on Linux/Windows
- Add Tab/Shift+Tab for indenting/dedenting in nvim (all platforms)
- Add Cmd+Click to open URLs in default browser on macOS (WezTerm)
- Enable cursorline in nvim to highlight current line
- Add Claude Code integration with automatic Code::Stats XP tracking via hooks
- Add claude-code directory with codestats-hook.sh and secrets management
- Add XP logging to ~/.claude/codestats-hook.log with timestamps
- Add yellow ASCII box WezTerm overlay notifications showing XP (1 XP per line written by Claude)
- Add simple code-stats implementation for nvim without external dependencies
- Add Cmd+V paste and Cmd+C copy keybindings for macOS in wezterm
- Add Telescope search keymaps (s prefix for search operations)
- Fix gamify streak recalculation on nvim startup (handles Syncthing sync and DST transitions)
- Set leader key to space in nvim
- Increase bottom padding in wezterm for macOS (0.5cell → 1.5cell)
- Update .gitignore to exclude claude-code/secrets.sh
- Update starship.toml, show full path
- Add hyprland config
- Add barbar for nvim with custom styling (dim grey background, purple bottom border for active tab)
- Configure barbar to auto-hide when only one buffer is open
- Add Ctrl+T keybinding to open new tab
- Remove minimap plugin (wfxr/minimap.vim)
- Add neo-tree as default file explorer
- Add oklch-color-picker plugin for color picking
- Fix Code::Stats integration (custom XP submission workaround for broken plugin)
- Add Code::Stats XP display in lualine statusline with yellow color
- Fix CTRL + SHIFT + E (toggle neo-tree) and CTRL + SHIFT + A (toggle Trouble diagnostics) keybindings
- Configure WezTerm to pass through Ctrl+Shift+A and Ctrl+Shift+E to Neovim
- Set Trouble and neo-tree to load on startup (not lazy-loaded)
- Add luacheck compliance to keymaps configuration
- Remove nodeadkeys (too used to Mac's tilde with space)
- Update Hyprland config to use WezTerm instead of Ghostty (terminal variable, IRC autostart, restore-layout.sh)
- Disable hyprsession in Hyprland config
- Simplify connect-irc.sh script (remove manual window positioning)
- Remove redundant launch-ssh-tmux.sh script
- Add bash tab completion with trailing slashes for directories
- Revamp dotfiles after years of hiatus
- Release directly 2.0.0
- Open CHANGELOG.md
- Release os-specific wezterm and nvim settings