A small, fast, portable Neovim config built on bare lazy.nvim (no LazyVim, no LSPs, no Mason). Vendored `based` colorscheme (GPLv3, self-authored, derived from vim-vividchalk) so the config loads on any machine with just nvim + git — the listed treesitter parsers ship prebuilt, so no compiler is needed for the configured languages. Plugins: snacks.nvim (picker/explorer/buffers), nvim-treesitter (pinned to master for the declarative ensure_installed/highlight/indent API), blink.cmp (buffer+path completion, prebuilt binary), lualine, gitsigns, mini.align/ comment/surround. Personal keymaps ported: jj/jk/kj/чя escape, ж -> :, Russian langmap, arrow disables, bracket-return expansions, gc/sa-sd-sr/gz-gZ.
42 lines
1.4 KiB
Lua
42 lines
1.4 KiB
Lua
-- nvim-treesitter: highlighting, indentation, and treesitter-based folds.
|
|
-- All listed parsers ship PREBUILT in the plugin repo, so no compiler is needed
|
|
-- for the configured languages. A C toolchain (base-devel) is only required if
|
|
-- you add parsers that aren't prebuilt or force `:TSInstall` to recompile.
|
|
-- Pinned to the legacy `master` branch, which keeps the declarative
|
|
-- ensure_installed/highlight/indent API the old config used. The new `main`
|
|
-- branch dropped this API in favor of do-it-yourself autocommands.
|
|
return {
|
|
{
|
|
"nvim-treesitter/nvim-treesitter",
|
|
branch = "master",
|
|
event = "VeryLazy",
|
|
build = ":TSUpdate",
|
|
opts = {
|
|
ensure_installed = {
|
|
"bash",
|
|
"css",
|
|
"html",
|
|
"javascript",
|
|
"json",
|
|
"lua",
|
|
"markdown",
|
|
"markdown_inline",
|
|
"python",
|
|
"query",
|
|
"regex",
|
|
"rust",
|
|
"scss",
|
|
"svelte",
|
|
"tsx",
|
|
"typescript",
|
|
"vim",
|
|
"yaml",
|
|
},
|
|
highlight = { enable = true },
|
|
indent = { enable = true },
|
|
},
|
|
config = function(_, opts)
|
|
require("nvim-treesitter.configs").setup(opts)
|
|
end,
|
|
},
|
|
} |