743 Commits
Author SHA1 Message Date
rootiest 8bfdd6e20c chore: merge history from sunset rootiest-nvim config
The old Neovim configuration (formerly github.com/rootiest/rootiest-nvim,
now preserved on the 'legacy' branch) has been superseded by this repo.
This merge links its history in for continuity without altering the
current tree.
2026-08-24 22:24:53 -04:00
rootiest abda95b98f Merge pull request 'feat(mini.pairs): smart Markdown code-fence expansion on 3rd backtick' (#5) from feat/markdown-smart-backtick-fence into main
Reviewed-on: #5
2026-08-25 02:03:14 +00:00
rootiest fc535b6688 feat(mini.pairs): smart Markdown code-fence expansion on 3rd backtick
Typing a 3rd backtick after mini.pairs' `` pair now expands into a fenced
code block instead of pairing into 4 backticks: the cursor lands right
after the opener (ready for a language id), and backspacing the fence
back out removes the empty closing fence too.

Also includes an already-in-progress .gitignore expansion (AGENTS/ and
agent-generated docs/ subdirs) and a plugins.lua tabs-to-spaces reformat
that were sitting uncommitted in the working tree.
2026-08-24 22:01:49 -04:00
rootiest 1a1963232e docs: fix links 2026-05-31 00:46:50 -04:00
rootiest c867d55228 Merge pull request 'feat: NES normal-mode Tab, native inline completion, clippy LSP, and .gitignore expansion' (#4) from feat/nes-normal-tab-inline-completion-clippy into main
Reviewed-on: #4
2026-05-31 04:45:30 +00:00
rootiest 11a5bc1266 feat(keymaps): add normal-mode NES keymap and enable native inline completion
Adds a normal-mode <Tab> binding that calls sidekick.nes_jump_or_apply() so
NES suggestions can be accepted without entering insert mode. Enables
vim.lsp.inline_completion so the insert-mode <Tab> chain (snippet → NES →
native inline completion → fallback) is fully wired. Updates the README
keymaps table to reflect both modes and the complete Tab chain.
2026-05-31 00:44:34 -04:00
rootiest 7e68bc3391 feat(lsp): configure rust-analyzer to use clippy for checks
Sets the check command to clippy via both vim.lsp.config (for system-installed
rust-analyzer via rustup) and the mason-lspconfig handler, so diagnostics
reflect clippy lints rather than cargo check output.
2026-05-31 00:44:12 -04:00
rootiest 5c980a8b57 chore: expand .gitignore with Lua, Vim, and AI session patterns
Replaces the minimal hand-written ignore list with generated gitignore.io
patterns for Lua and Vim, plus a boilerplate template covering OS artefacts,
temp directories, and AI session/rules files (CLAUDE.md, GEMINI.md, .claud*,
.gemin*, .remember, etc.).
2026-05-31 00:43:11 -04:00
rootiest 17a2b4d25b Merge pull request 'feat: add sidekick.nvim and haunt.nvim with AI and bookmark integration' (#3) from feat/add-sidekick-and-haunt into main
Reviewed-on: #3
2026-05-11 16:39:12 +00:00
rootiest 58fc3e53ac feat(noice): suppress Diagnosing and semantic tokens LSP progress notifications 2026-05-11 12:38:19 -04:00
rootiest 7f9c380eaa feat: add sidekick.nvim and haunt.nvim with AI and bookmark integration
- Add sidekick.nvim: Next Edit Suggestions (NES) via Copilot LSP, integrated
  AI CLI terminal, and Snacks picker send action (<Alt-a>)
- Add haunt.nvim: in-buffer annotation/bookmark manager with Snacks picker
  and 6 keymaps (<leader>ha/ht/hd/hn/hp/hl)
- Wire blink.cmp <Tab> to chain snippet_forward -> NES -> inline completion
- Expose haunt_all and haunt_buffer as Sidekick prompt contexts
- Suppress lua_ls "Loading workspace" progress bar via Noice route
- Update README to document all new plugins, keymaps, and post-install steps
2026-05-11 12:32:19 -04:00
rootiest 859cfc3793 Merge pull request 'feat: add bootstrap module and update docs' (#2) from feat/add-bootstrap-and-update-docs into main
Reviewed-on: #2
2026-05-08 18:21:52 +00:00
rootiestandClaude Sonnet 4.6 d43128c2d0 feat: add bootstrap module and update docs
- Add lua/bootstrap.lua: redirects Neovim data/state paths when running
  as root (e.g. via symlinked ~/.config/nvim) to prevent root sessions
  from conflicting with the user-level install
- Update init.lua to require("bootstrap") before any other module
- Standardize license headers across all Lua files (capitalize author,
  add SPDX-License-Identifier)
- Update README with full plugin stack section, bootstrap docs,
  machine-local override docs, qalculate dependency, and blink.cmp
  auto-rebuild note

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-08 14:19:11 -04:00
rootiest 2153591cf5 Merge pull request 'feat: add new plugins, refactor options, and improve blink.cmp detection' (#1) from feat/add-plugins-refactor-options into main
Reviewed-on: #1
2026-05-08 16:44:41 +00:00
rootiestandClaude Sonnet 4.6 c28e6c3e59 feat: add new plugins, refactor options, and improve blink.cmp detection
- Add focusline.nvim for scroll-aware cursor centering
- Add kitty-scrollback.nvim for Kitty terminal scrollback integration
- Add qalc.nvim for inline calculator support
- Add blink.lib as explicit dependency for blink.cmp
- Fix blink.cmp binary detection to check v2 install path first
- Add PackChanged autocmd to auto-rebuild blink.cmp after updates
- Expand inc-rename.nvim config with all available options documented
- Add luv library path to lazydev for vim.uv completions
- Consolidate leader key setup into options.lua (remove duplicate in init.lua)
- Add autoread + FocusGained/CursorHold triggers for external file changes
- Add BufReadPost autocmd to restore last cursor position on file open
- Reorganize options.lua with section headers and logical grouping
- Update plugin lockfile revisions (blink.cmp, conform, gitsigns, lualine, etc.)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-08 12:30:14 -04:00
rootiestandClaude Sonnet 4.6 93d8f9a28d feat: add gx.nvim, comment-box, and machine-local override support
- Add gx.nvim for smart URL opening (GitHub, plugins, package.json, search)
- Add comment-box.nvim with keymaps for creating/deleting comment boxes
- Load machine-local secrets.lua and local.lua from ~/.config/.user-dots/nvim/
- Update README with new plugins, keymaps, and portability highlight

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-27 18:45:03 -04:00
rootiest 1b6a354c86 docs: update code line count in README 2026-04-22 12:38:14 -04:00
rootiest cdb72cff4d feat: add silent fallback for blink.cmp if binary or cargo is missing 2026-04-22 12:35:44 -04:00
rootiest 688eec7498 docs: add code line count to highlights in README 2026-04-22 12:32:53 -04:00
rootiest 0058de2a77 feat: improve portability and add Grug-far QoL improvements
- Refactor terminal title logic in lua/options.lua with Kitty detection and OSC 2 fallback.
- Set mapleader and maplocalleader explicitly at the top of lua/options.lua.
- Add <leader>sr mapping for Grug-far search and replace in lua/keymaps.lua.
- Add autocommand to close Grug-far window with 'q'.
- Update README.md with system dependencies (Debian/Arch) and new keymaps.
- Highlight portability features (terminal titles, root detection) in README.md.
2026-04-22 12:30:11 -04:00
rootiest 8d6103ec07 feat: add mini.pairs plugin
Automatically enters closing symbol after the cursor when user inserts
an opening symbol.

Ex: Type { and a } is added after the cursor.
2026-04-17 19:05:58 -04:00
rootiest 2e499ca1cb chore: commit nvim-pack-lock.json to maintain package versions across clones 2026-04-17 19:03:23 -04:00
rootiest 0990818e07 docs: add lua/const.lua to modular config list 2026-04-17 18:59:21 -04:00
rootiest 68ba1e3b87 chore: rename data.lua to const.lua to clarify use-case 2026-04-17 18:58:28 -04:00
rootiest 06d86cf46e docs: add initial basic readme for repository 2026-04-17 18:53:48 -04:00
rootiest cfd451eae1 chore: clean out .gemini_session file as well 2026-04-17 18:53:31 -04:00
rootiest fbb6655722 chore: add GPLv3 (or later) licensing to repository
NOTE: lua/lazyload.lua is an MIT licensed file borrowed from another
user's repository. The license header in that file reflects this.
2026-04-17 18:43:38 -04:00
rootiest 8feb5c8415 chore: add gitignore file to exclude any unnecessary files from git 2026-04-17 18:28:26 -04:00
rootiest d448e591d8 fix: include the data.lua file which provides the dashboard header 2026-04-17 18:25:51 -04:00
rootiestandClaude Sonnet 4.6 21ec297431 feat: add plugins, formatting, and editor quality-of-life improvements
- Add leap.nvim (<CR> to jump, S for cross-window) with LeapBackdrop dimming
- Add mini.surround with default s-prefix keymaps
- Add conform.nvim with format-on-save and <leader>cf keymap
- Add undotree with <leader>uu toggle and nerd font shapes
- Add nvim-treesitter-context for sticky scope header (max 3 lines)
- Add inc-rename.nvim with Noice input dialog and <leader>cr keymap
- Add lazydev.nvim for proper Neovim Lua type definitions in lua_ls
- Enable Snacks modules: scratch, zen, terminal (<C-/> toggle), and expand picker with flash integration and frecency matcher
- Configure flash to suppress default keymaps (owned by leap/mini.surround)
- Switch gitsigns from numhl to signcolumn for Snacks.statuscolumn rendering
- Set 2-space indentation with expandtab
- Enable persistent undo via undofile
- Auto-restore persistence session on startup when no file args given

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-17 18:24:47 -04:00
rootiest 444b5739bd initial commit 2026-04-17 04:46:48 -04:00
rootiest 1155311da0 feat(theme): implement dynamic themeing 2025-09-01 14:37:47 -04:00
rootiest 094bf768fc chore(deps): remove old commented-out dependencies 2025-09-01 14:37:17 -04:00
rootiest 096a0cb3b9 feat(nvim_updater): re-enable the nvim_updater plugin 2025-09-01 14:36:30 -04:00
rootiest 8cbd71bbbb fix(mini.nvim): update repository source of mini.nvim
Update the  source repository address to reflect the new mini.nvim organization.
2025-09-01 14:36:01 -04:00
rootiest 0d079826b0 docs(init): improve wording of init docs 2025-09-01 14:32:40 -04:00
rootiest 4545e18a68 feat(config): various config updates
Packaged updates to configuration.
2025-08-23 11:52:26 -04:00
rootiest 00b23548c3 chore(gitignore): add directories to gitignore 2025-08-23 11:51:28 -04:00
rootiest 2243264a24 fix(neovide): tweaks to neovide config 2025-08-23 11:50:56 -04:00
rootiest 209abd810d refactor(deprecated): remove old deprecated configs 2025-08-23 11:50:23 -04:00
rootiest 5cee216130 style(cooklang): cooklang style rules 2025-08-23 11:50:00 -04:00
rootiest 3a2f4e3e70 revert(statuscolumn): remove statuscolumn diagnostic colors
This code was not functioning properly so in the interest of performance, it is to be removed until
it can be fixed
2025-04-02 16:16:27 -04:00
rootiest e0c32bb119 feat(blink.cmp): add ripgrep to blink sources
Allows getting additional suggestions via ripgrep in blink.cmp. Source is added to the end of the
suggestions list and will search the full project directory (within size/root limits)
2025-03-26 00:01:46 -04:00
rootiest 440c7a7cfd feat(color-tags): use nvim-colorizer instead of mini.hipatterns
nvim-colorizer provides more features and recognizes more types of color formats.
2025-03-20 20:31:26 -04:00
rootiest 360df77f4a fix(smart-splits): properly execute the smart-splits keymap overrides 2025-03-19 21:06:17 -04:00
rootiest d060cdd269 style: changed conventional commits style from cz-emoji to standard commitizen
Commit messages will now use a more traditionl style to conform with global standards.
2025-03-19 20:06:32 -04:00
rootiest 8e68148899 📝 Docs(plugins): add plugin name comments for some plugins that were missing them 2025-03-19 19:43:32 -04:00
rootiest df9aebed1f 🗑️ Cleaned(smear-cursor): remove old config option
The use_floating_window option is no longer used so we don't need to set it
2025-03-19 19:42:53 -04:00
rootiest b8aeb1a911 📝 Docs(scrolling): add a simple note making it easy for users to change the behavior of smart-scroll
This adds one line that can be uncommented to prevent the smart-scroll function from remembering the
previous count. Well, it still remembers it, but it won't use it.
2025-03-18 22:38:00 -04:00
rootiest 1ea8611dbc Feat(scrolling): smarter <C-u> and <C-d>
Allows <C-u> and <C-d> to accept a count and scroll by <count>*<half-screen>. The count is
remembered and re-used for both <C-u> and <C-d> so repetitively pressing those sequences will
continue to use the previous count. Count defaults to 1 initally (scroll by one half-screen)
2025-03-18 22:29:45 -04:00