mirror of
https://github.com/agresdominik/dotfiles.git
synced 2026-04-21 18:05:50 +00:00
Updated Neovim config to lua, cleaned up unneccecary plugins
This commit is contained in:
@@ -1,14 +0,0 @@
|
||||
[font]
|
||||
size = 11.0
|
||||
|
||||
[font.bold]
|
||||
family = "JetBrains Mono Nerd Font"
|
||||
style = "Bold"
|
||||
|
||||
[font.italic]
|
||||
family = "JetBrains Mono Nerd Font"
|
||||
style = "Italic"
|
||||
|
||||
[font.normal]
|
||||
family = "JetBrains Mono Nerd Font"
|
||||
style = "Regular"
|
||||
@@ -1,15 +0,0 @@
|
||||
font:
|
||||
normal:
|
||||
family: "JetBrains Mono"
|
||||
style: "Regular"
|
||||
|
||||
bold:
|
||||
family: "JetBrains Mono"
|
||||
style: "Bold"
|
||||
|
||||
italic:
|
||||
family: "JetBrains Mono"
|
||||
style: "Italic"
|
||||
|
||||
size: 10.0 # Adjust the font size as needed
|
||||
|
||||
@@ -0,0 +1,16 @@
|
||||
-- Set leader key to Space
|
||||
vim.g.mapleader = " "
|
||||
vim.g.maplocalleader = " "
|
||||
|
||||
-- Load basic settings
|
||||
require("config.options")
|
||||
require("config.keymaps")
|
||||
|
||||
-- Load plugins (lazy.nvim will be auto-installed)
|
||||
require("config.plugins")
|
||||
|
||||
-- Plugin-specific configuration
|
||||
require("config.lsp")
|
||||
require("config.treesitter")
|
||||
require("config.telescope")
|
||||
require("config.cmp")
|
||||
-162
@@ -1,162 +0,0 @@
|
||||
call plug#begin('~/.local/share/nvim/plugged')
|
||||
|
||||
Plug 'nvim-treesitter/nvim-treesitter', {'do': ':TSUpdate'}
|
||||
Plug 'nvim-telescope/telescope.nvim', {'tag': '0.1.0', 'do': ':TSUpdate'}
|
||||
Plug 'neovim/nvim-lspconfig'
|
||||
Plug 'lukas-reineke/indent-blankline.nvim'
|
||||
Plug 'nvim-tree/nvim-tree.lua'
|
||||
|
||||
Plug 'nvim-tree/nvim-web-devicons' " Recommended (for coloured icons)
|
||||
Plug 'akinsho/bufferline.nvim', { 'tag': '*' }
|
||||
Plug 'nvim-lualine/lualine.nvim'
|
||||
|
||||
Plug 'lervag/vimtex' " Main LaTeX plugin for compilation and preview
|
||||
Plug 'nvim-treesitter/nvim-treesitter', {'do': ':TSUpdate'} " Ensure Treesitter is installed
|
||||
Plug 'nvim-treesitter/nvim-treesitter-textobjects' " Better text objects in LaTeX
|
||||
Plug 'nvim-lua/plenary.nvim' " Dependency for some features
|
||||
Plug 'nvim-telescope/telescope-bibtex.nvim' " For searching bibliography files
|
||||
Plug 'godlygeek/tabular' " Table formatting (useful for LaTeX tables)
|
||||
Plug 'dpelle/vim-LanguageTool' " Grammar and spell checking (supports German)
|
||||
Plug 'aspeddro/cmp-pandoc.nvim' " Completion for citations in LaTeX
|
||||
|
||||
" LSP and Autocompletion plugins
|
||||
Plug 'neovim/nvim-lspconfig' " LSP configuration
|
||||
Plug 'hrsh7th/nvim-cmp' " Completion engine
|
||||
Plug 'hrsh7th/cmp-nvim-lsp' " LSP completion source
|
||||
Plug 'hrsh7th/cmp-buffer' " Buffer completion source
|
||||
Plug 'hrsh7th/cmp-path' " Path completion source
|
||||
Plug 'saadparwaiz1/cmp_luasnip' " Snippet completion source
|
||||
Plug 'L3MON4D3/LuaSnip' " Snippet engine
|
||||
Plug 'onsails/lspkind.nvim' " LSP completion icons
|
||||
|
||||
" Git integration for showing git diff signs
|
||||
Plug 'airblade/vim-gitgutter'
|
||||
|
||||
let g:indentLine_enabled = 1
|
||||
set number
|
||||
|
||||
call plug#end()
|
||||
|
||||
let g:vimtex_view_method = 'zathura' " Use Zathura as PDF viewer (change if needed)
|
||||
let g:vimtex_compiler_method = 'latexmk' " Continuous compilation
|
||||
let g:vimtex_quickfix_mode = 0 " Disable quickfix window popups
|
||||
|
||||
" Automatically open quickfix if errors occur
|
||||
autocmd User VimtexEventCompileFailed cwindow
|
||||
|
||||
set spell
|
||||
set spelllang=de,en " Enable German and English spell checking
|
||||
|
||||
" Enable treesitter syntax highlighting
|
||||
lua << EOF
|
||||
require'nvim-treesitter.configs'.setup {
|
||||
highlight = {
|
||||
enable = true, -- Enable highlighting
|
||||
disable = {}, -- List of languages to disable highlighting (optional)
|
||||
},
|
||||
ensure_installed = { "python", "go", "latex" } -- Automatically install parsers for Python
|
||||
}
|
||||
EOF
|
||||
|
||||
" Enable LSP and autocompletion
|
||||
lua << EOF
|
||||
-- Set up nvim-cmp (autocompletion)
|
||||
local cmp = require'cmp'
|
||||
local lspkind = require'lspkind'
|
||||
|
||||
cmp.setup({
|
||||
snippet = {
|
||||
expand = function(args)
|
||||
require('luasnip').lsp_expand(args.body) -- For snippet expansion
|
||||
end,
|
||||
},
|
||||
mapping = {
|
||||
['<C-b>'] = cmp.mapping.scroll_docs(-4),
|
||||
['<C-f>'] = cmp.mapping.scroll_docs(4),
|
||||
['<C-Space>'] = cmp.mapping.complete(),
|
||||
['<C-e>'] = cmp.mapping.close(),
|
||||
['<CR>'] = cmp.mapping.confirm({ select = true }),
|
||||
},
|
||||
sources = {
|
||||
{ name = 'nvim_lsp' },
|
||||
{ name = 'buffer' },
|
||||
{ name = 'path' },
|
||||
{ name = 'luasnip' },
|
||||
},
|
||||
formatting = {
|
||||
format = lspkind.cmp_format({ with_text = true, maxwidth = 50 }),
|
||||
},
|
||||
})
|
||||
|
||||
-- Set up LSP (pyright for Python)
|
||||
local lspconfig = require'lspconfig'
|
||||
|
||||
-- Python LSP setup
|
||||
lspconfig.pyright.setup({
|
||||
on_attach = function(client, bufnr)
|
||||
-- Enable diagnostics (squiggles for errors)
|
||||
vim.lsp.handlers["textDocument/publishDiagnostics"] = vim.lsp.with(
|
||||
vim.lsp.diagnostic.on_publish_diagnostics, {
|
||||
virtual_text = true, -- Enable inline error messages (squiggles)
|
||||
signs = true, -- Enable error/warning signs in the gutter
|
||||
update_in_insert = false, -- Don't update diagnostics while typing
|
||||
}
|
||||
)
|
||||
end
|
||||
})
|
||||
|
||||
-- Set up Go LSP
|
||||
lspconfig.gopls.setup({
|
||||
on_attach = function(client, bufnr)
|
||||
vim.lsp.handlers["textDocument/publishDiagnostics"] = vim.lsp.with(
|
||||
vim.lsp.diagnostic.on_publish_diagnostics, {
|
||||
virtual_text = true,
|
||||
signs = true,
|
||||
update_in_insert = false,
|
||||
}
|
||||
)
|
||||
end,
|
||||
settings = {
|
||||
gopls = {
|
||||
analyses = {
|
||||
unusedparams = true,
|
||||
},
|
||||
staticcheck = true,
|
||||
},
|
||||
},
|
||||
})
|
||||
|
||||
EOF
|
||||
|
||||
lua << EOF
|
||||
-- lualine (statusline)
|
||||
require('lualine').setup()
|
||||
|
||||
-- bufferline (tabs)
|
||||
require('bufferline').setup{}
|
||||
|
||||
require('nvim-web-devicons').setup {
|
||||
default = true; -- Enables default icons
|
||||
}
|
||||
|
||||
require("nvim-tree").setup {
|
||||
view = {
|
||||
width = 30,
|
||||
side = "left",
|
||||
},
|
||||
renderer = {
|
||||
icons = {
|
||||
show = {
|
||||
file = true,
|
||||
folder = true,
|
||||
folder_arrow = true,
|
||||
git = true,
|
||||
},
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
|
||||
EOF
|
||||
|
||||
|
||||
@@ -0,0 +1,25 @@
|
||||
{
|
||||
"LuaSnip": { "branch": "master", "commit": "73813308abc2eaeff2bc0d3f2f79270c491be9d7" },
|
||||
"barbar.nvim": { "branch": "master", "commit": "549ee11d97057eae207bafa2c23c315942cca097" },
|
||||
"cmp-buffer": { "branch": "main", "commit": "b74fab3656eea9de20a9b8116afa3cfc4ec09657" },
|
||||
"cmp-cmdline": { "branch": "main", "commit": "d126061b624e0af6c3a556428712dd4d4194ec6d" },
|
||||
"cmp-nvim-lsp": { "branch": "main", "commit": "bd5a7d6db125d4654b50eeae9f5217f24bb22fd3" },
|
||||
"cmp-path": { "branch": "main", "commit": "c642487086dbd9a93160e1679a1327be111cbc25" },
|
||||
"cmp_luasnip": { "branch": "master", "commit": "98d9cb5c2c38532bd9bdb481067b20fea8f32e90" },
|
||||
"friendly-snippets": { "branch": "main", "commit": "572f5660cf05f8cd8834e096d7b4c921ba18e175" },
|
||||
"gitsigns.nvim": { "branch": "main", "commit": "1ee5c1fd068c81f9dd06483e639c2aa4587dc197" },
|
||||
"lazy.nvim": { "branch": "main", "commit": "59334064f8604ca073791c25dcc5c9698865406e" },
|
||||
"lualine.nvim": { "branch": "master", "commit": "b8c23159c0161f4b89196f74ee3a6d02cdc3a955" },
|
||||
"mini.nvim": { "branch": "main", "commit": "79654ef28182986dcdd9e2d3506d1728fc7c4f79" },
|
||||
"neo-tree.nvim": { "branch": "v3.x", "commit": "9130e58424ad95bf2dd8b40afbb8cf04d648638c" },
|
||||
"nui.nvim": { "branch": "main", "commit": "de740991c12411b663994b2860f1a4fd0937c130" },
|
||||
"nvim-cmp": { "branch": "main", "commit": "b5311ab3ed9c846b585c0c15b7559be131ec4be9" },
|
||||
"nvim-lspconfig": { "branch": "master", "commit": "e688b486fe9291f151eae7e5c0b5a5c4ef980847" },
|
||||
"nvim-treesitter": { "branch": "master", "commit": "42fc28ba918343ebfd5565147a42a26580579482" },
|
||||
"nvim-web-devicons": { "branch": "master", "commit": "b8221e42cf7287c4dcde81f232f58d7b947c210d" },
|
||||
"plenary.nvim": { "branch": "master", "commit": "b9fd5226c2f76c951fc8ed5923d85e4de065e509" },
|
||||
"render-markdown.nvim": { "branch": "main", "commit": "7e6af36c846017122e07e68803bbf95f3c729ca3" },
|
||||
"sonokai": { "branch": "master", "commit": "cf50520d1cddf7a4e7bccae650cdf0a6dd362a10" },
|
||||
"telescope.nvim": { "branch": "master", "commit": "b4da76be54691e854d3e0e02c36b0245f945c2c7" },
|
||||
"tokyonight.nvim": { "branch": "main", "commit": "4d159616aee17796c2c94d2f5f87d2ee1a3f67c7" }
|
||||
}
|
||||
@@ -0,0 +1,74 @@
|
||||
-- Completion setup for Neovim using nvim-cmp and LuaSnip
|
||||
|
||||
-- Safely import modules
|
||||
local cmp_status, cmp = pcall(require, "cmp")
|
||||
if not cmp_status then
|
||||
return
|
||||
end
|
||||
|
||||
local snip_status, luasnip = pcall(require, "luasnip")
|
||||
if not snip_status then
|
||||
return
|
||||
end
|
||||
|
||||
-- Load friendly-snippets (optional, prebuilt snippets)
|
||||
require("luasnip.loaders.from_vscode").lazy_load()
|
||||
|
||||
-- Setup nvim-cmp
|
||||
cmp.setup({
|
||||
snippet = {
|
||||
expand = function(args)
|
||||
luasnip.lsp_expand(args.body)
|
||||
end,
|
||||
},
|
||||
|
||||
mapping = cmp.mapping.preset.insert({
|
||||
["<C-Space>"] = cmp.mapping.complete(), -- Trigger completion menu
|
||||
["<CR>"] = cmp.mapping.confirm({ select = true }), -- Confirm selection
|
||||
["<Tab>"] = cmp.mapping(function(fallback)
|
||||
if cmp.visible() then
|
||||
cmp.select_next_item()
|
||||
elseif luasnip.expand_or_jumpable() then
|
||||
luasnip.expand_or_jump()
|
||||
else
|
||||
fallback()
|
||||
end
|
||||
end, { "i", "s" }),
|
||||
|
||||
["<S-Tab>"] = cmp.mapping(function(fallback)
|
||||
if cmp.visible() then
|
||||
cmp.select_prev_item()
|
||||
elseif luasnip.jumpable(-1) then
|
||||
luasnip.jump(-1)
|
||||
else
|
||||
fallback()
|
||||
end
|
||||
end, { "i", "s" }),
|
||||
}),
|
||||
|
||||
sources = cmp.config.sources({
|
||||
{ name = "nvim_lsp" }, -- LSP completion
|
||||
{ name = "luasnip" }, -- Snippets
|
||||
}, {
|
||||
{ name = "buffer" }, -- Words in current buffer
|
||||
{ name = "path" }, -- File system paths
|
||||
}),
|
||||
|
||||
window = {
|
||||
completion = cmp.config.window.bordered(),
|
||||
documentation = cmp.config.window.bordered(),
|
||||
},
|
||||
|
||||
formatting = {
|
||||
format = function(entry, vim_item)
|
||||
vim_item.menu = ({
|
||||
nvim_lsp = "[LSP]",
|
||||
luasnip = "[Snip]",
|
||||
buffer = "[Buf]",
|
||||
path = "[Path]",
|
||||
})[entry.source.name]
|
||||
return vim_item
|
||||
end,
|
||||
},
|
||||
})
|
||||
|
||||
@@ -0,0 +1,34 @@
|
||||
local map = vim.api.nvim_set_keymap
|
||||
local opts = { noremap = true, silent = true }
|
||||
|
||||
-- Tabs shortcuts
|
||||
map('n', '<A-,>', '<Cmd>BufferPrevious<CR>', opts)
|
||||
map('n', '<A-.>', '<Cmd>BufferNext<CR>', opts)
|
||||
map('n', '<A-1>', '<Cmd>BufferGoto 1<CR>', opts)
|
||||
map('n', '<A-2>', '<Cmd>BufferGoto 2<CR>', opts)
|
||||
map('n', '<A-3>', '<Cmd>BufferGoto 3<CR>', opts)
|
||||
map('n', '<A-4>', '<Cmd>BufferGoto 4<CR>', opts)
|
||||
map('n', '<A-5>', '<Cmd>BufferGoto 5<CR>', opts)
|
||||
map('n', '<A-6>', '<Cmd>BufferGoto 6<CR>', opts)
|
||||
map('n', '<A-7>', '<Cmd>BufferGoto 7<CR>', opts)
|
||||
map('n', '<A-8>', '<Cmd>BufferGoto 8<CR>', opts)
|
||||
map('n', '<A-9>', '<Cmd>BufferGoto 9<CR>', opts)
|
||||
map('n', '<A-0>', '<Cmd>BufferLast<CR>', opts)
|
||||
|
||||
map('n', '<A-c>', '<Cmd>BufferClose<CR>', opts)
|
||||
|
||||
map('n', '<C-p>', '<Cmd>BufferPick<CR>', opts)
|
||||
map('n', '<C-s-p>', '<Cmd>BufferPickDelete<CR>', opts)
|
||||
|
||||
map('n', '<Space>bb', '<Cmd>BufferOrderByBufferNumber<CR>', opts)
|
||||
map('n', '<Space>bn', '<Cmd>BufferOrderByName<CR>', opts)
|
||||
map('n', '<Space>bd', '<Cmd>BufferOrderByDirectory<CR>', opts)
|
||||
map('n', '<Space>bl', '<Cmd>BufferOrderByLanguage<CR>', opts)
|
||||
map('n', '<Space>bw', '<Cmd>BufferOrderByWindowNumber<CR>', opts)
|
||||
|
||||
-- Toggle Neotree
|
||||
map('n', '<leader>e', ':Neotree toggle<CR>', opts)
|
||||
|
||||
-- Terminal
|
||||
map('n', '<leader>t', ':terminal<CR>', opts)
|
||||
|
||||
@@ -0,0 +1,34 @@
|
||||
-- Common on_attach handler
|
||||
local on_attach = function(client, bufnr)
|
||||
local opts = { buffer = bufnr }
|
||||
vim.keymap.set("n", "gd", vim.lsp.buf.definition, opts)
|
||||
vim.keymap.set("n", "K", vim.lsp.buf.hover, opts)
|
||||
vim.keymap.set("n", "<leader>rn", vim.lsp.buf.rename, opts)
|
||||
vim.keymap.set("n", "<leader>ca", vim.lsp.buf.code_action, opts)
|
||||
end
|
||||
|
||||
-- Configure all your servers
|
||||
vim.lsp.config("lua_ls", {
|
||||
on_attach = on_attach,
|
||||
settings = {
|
||||
Lua = { diagnostics = { globals = { "vim" } } },
|
||||
},
|
||||
})
|
||||
|
||||
vim.lsp.config("pyright", { on_attach = on_attach })
|
||||
vim.lsp.config("gopls", { on_attach = on_attach })
|
||||
vim.lsp.config("clangd", { on_attach = on_attach })
|
||||
vim.lsp.config("omnisharp", { on_attach = on_attach })
|
||||
vim.lsp.config("jdtls", { on_attach = on_attach })
|
||||
vim.lsp.config("ts_ls", { on_attach = on_attach })
|
||||
vim.lsp.config("jsonls", { on_attach = on_attach })
|
||||
vim.lsp.config("yamlls", { on_attach = on_attach })
|
||||
|
||||
-- Enable them all
|
||||
for _, server in ipairs({
|
||||
"lua_ls", "pyright", "gopls", "clangd",
|
||||
"omnisharp", "jdtls", "ts_ls", "jsonls", "yamlls",
|
||||
}) do
|
||||
vim.lsp.enable(server)
|
||||
end
|
||||
|
||||
@@ -0,0 +1,10 @@
|
||||
vim.opt.number = true
|
||||
vim.opt.relativenumber = false
|
||||
vim.opt.tabstop = 4
|
||||
vim.opt.shiftwidth = 4
|
||||
vim.opt.expandtab = true
|
||||
vim.opt.termguicolors = true
|
||||
vim.opt.cursorline = true
|
||||
vim.opt.mouse = "a"
|
||||
vim.opt.clipboard = "unnamedplus"
|
||||
|
||||
@@ -0,0 +1,94 @@
|
||||
-- Bootstrap lazy.nvim if not installed
|
||||
local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
|
||||
if not vim.loop.fs_stat(lazypath) then
|
||||
vim.fn.system({
|
||||
"git", "clone", "--filter=blob:none",
|
||||
"https://github.com/folke/lazy.nvim.git",
|
||||
lazypath
|
||||
})
|
||||
end
|
||||
vim.opt.rtp:prepend(lazypath)
|
||||
|
||||
-- Plugins
|
||||
require("lazy").setup({
|
||||
-- Core
|
||||
"nvim-lua/plenary.nvim",
|
||||
|
||||
-- UI
|
||||
"nvim-lualine/lualine.nvim",
|
||||
"nvim-tree/nvim-web-devicons",
|
||||
|
||||
-- Treesitter
|
||||
{ "nvim-treesitter/nvim-treesitter", build = ":TSUpdate" },
|
||||
|
||||
-- Telescope
|
||||
"nvim-telescope/telescope.nvim",
|
||||
|
||||
-- LSP
|
||||
"neovim/nvim-lspconfig",
|
||||
|
||||
-- Themes
|
||||
"folke/tokyonight.nvim",
|
||||
{
|
||||
'sainnhe/sonokai',
|
||||
lazy = false,
|
||||
priority = 1000,
|
||||
config = function()
|
||||
-- Optionally configure and load the colorscheme
|
||||
-- directly inside the plugin declaration.
|
||||
vim.g.sonokai_enable_italic = true
|
||||
vim.cmd.colorscheme('sonokai')
|
||||
end
|
||||
},
|
||||
|
||||
-- Autocomplete
|
||||
{
|
||||
"hrsh7th/nvim-cmp",
|
||||
"hrsh7th/cmp-nvim-lsp",
|
||||
"hrsh7th/cmp-buffer",
|
||||
"hrsh7th/cmp-path",
|
||||
"hrsh7th/cmp-cmdline",
|
||||
"L3MON4D3/LuaSnip",
|
||||
"saadparwaiz1/cmp_luasnip",
|
||||
"rafamadriz/friendly-snippets",
|
||||
},
|
||||
|
||||
-- Markdown Preview Page
|
||||
{
|
||||
'MeanderingProgrammer/render-markdown.nvim',
|
||||
dependencies = { 'nvim-treesitter/nvim-treesitter', 'nvim-mini/mini.nvim'}, -- if you use the mini.nvim suite
|
||||
-- dependencies = { 'nvim-treesitter/nvim-treesitter', 'nvim-mini/mini.icons' }, -- if you use standalone mini plugins
|
||||
-- dependencies = { 'nvim-treesitter/nvim-treesitter', 'nvim-tree/nvim-web-devicons' }, -- if you prefer nvim-web-devicons
|
||||
---@module 'render-markdown'
|
||||
---@type render.md.UserConfig
|
||||
opts = {},
|
||||
},
|
||||
|
||||
-- Tabs
|
||||
{ 'romgrk/barbar.nvim',
|
||||
dependencies = {
|
||||
'lewis6991/gitsigns.nvim', -- OPTIONAL: for git status
|
||||
'nvim-tree/nvim-web-devicons', -- OPTIONAL: for file icons
|
||||
},
|
||||
init = function() vim.g.barbar_auto_setup = false end,
|
||||
opts = {
|
||||
-- lazy.nvim will automatically call setup for you. put your options here, anything missing will use the default:
|
||||
-- animation = true,
|
||||
-- insert_at_start = true,
|
||||
-- …etc.
|
||||
},
|
||||
},
|
||||
|
||||
{
|
||||
"nvim-neo-tree/neo-tree.nvim",
|
||||
branch = "v3.x",
|
||||
dependencies = {
|
||||
"nvim-lua/plenary.nvim",
|
||||
"MunifTanjim/nui.nvim",
|
||||
"nvim-tree/nvim-web-devicons", -- optional, but recommended
|
||||
},
|
||||
lazy = false, -- neo-tree will lazily load itself
|
||||
},
|
||||
|
||||
})
|
||||
|
||||
@@ -0,0 +1,25 @@
|
||||
local telescope = require("telescope")
|
||||
|
||||
telescope.setup({
|
||||
defaults = {
|
||||
prompt_prefix = "🔍 ",
|
||||
selection_caret = " ",
|
||||
path_display = { "smart" },
|
||||
sorting_strategy = "ascending",
|
||||
layout_config = { prompt_position = "top" },
|
||||
},
|
||||
pickers = {
|
||||
find_files = {
|
||||
hidden = true, -- show hidden files
|
||||
},
|
||||
},
|
||||
})
|
||||
|
||||
-- Optional: keymaps for quick access
|
||||
local builtin = require("telescope.builtin")
|
||||
vim.keymap.set("n", "<leader>ff", builtin.find_files, { desc = "Find files" })
|
||||
vim.keymap.set("n", "<leader>fg", builtin.live_grep, { desc = "Grep text" })
|
||||
vim.keymap.set("n", "<leader>fb", builtin.buffers, { desc = "Find buffers" })
|
||||
vim.keymap.set("n", "<leader>fh", builtin.help_tags, { desc = "Find help" })
|
||||
vim.keymap.set("n", "<leader>fr", builtin.oldfiles, { desc = "Recent files" })
|
||||
|
||||
@@ -0,0 +1,16 @@
|
||||
require("nvim-treesitter.configs").setup({
|
||||
ensure_installed = {
|
||||
-- Programming Languages
|
||||
"lua", "python", "bash", "javascript", "typescript",
|
||||
"go", "java", "c", "cpp", "c_sharp", "rust",
|
||||
|
||||
-- Web Languages
|
||||
"html", "css", "scss", "json", "yaml", "toml", "xml",
|
||||
|
||||
-- Other formats
|
||||
"markdown", "markdown_inline", "sql", "dockerfile", "gitignore"
|
||||
},
|
||||
highlight = { enable = true },
|
||||
indent = { enable = true },
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user