diff --git a/CLAUDE.md b/CLAUDE.md new file mode 100644 index 0000000..1f07881 --- /dev/null +++ b/CLAUDE.md @@ -0,0 +1,38 @@ +# Dotfiles + +Personal dotfiles repository for development environment configuration. + +## Structure + +- `nvim/` — Neovim configuration (symlinked to `~/.config/nvim`) + +## Neovim + +Config built for Neovim 0.11+ using native APIs (`vim.lsp.config`, `vim.lsp.enable`, built-in treesitter). + +**Plugin manager:** lazy.nvim (auto-bootstraps on first launch). + +**Languages:** Rust, Zig, TypeScript/JavaScript, C/C++. + +**LSP servers:** +- `rust-analyzer` — via rustaceanvim (install with `rustup component add rust-analyzer`) +- `clangd` — via mason (auto-installed) +- `ts_ls` — via mason (auto-installed) +- `zls` — manual install (`brew install zls`) + +**Key plugins:** telescope, treesitter, nvim-cmp, bufferline, neo-tree, gitsigns, lazygit, lualine, which-key, persistence, alabaster theme. + +**Leader key:** Space. + +## Setup + +```bash +# Symlink nvim config +ln -s ~/Docs/Projects/dotfiles/nvim ~/.config/nvim + +# Install lazygit +brew install lazygit + +# First nvim launch will auto-install plugins, then run: +# :TSInstall rust zig typescript javascript tsx c cpp lua json yaml toml html css markdown bash +```