54 lines
1.8 KiB
Lua
54 lines
1.8 KiB
Lua
-- Basic settings
|
||
vim.o.number = true -- Enable line numbers
|
||
-- vim.o.relativenumber = true -- Enable relative line numbers
|
||
vim.o.tabstop = 2 -- Number of spaces a tab represents
|
||
vim.o.shiftwidth = 2 -- Number of spaces for each indentation
|
||
vim.o.expandtab = true -- Convert tabs to spaces
|
||
vim.o.smartindent = true -- Automatically indent new lines
|
||
vim.o.wrap = false -- Disable line wrapping
|
||
vim.o.cursorline = true -- Highlight the current line
|
||
vim.o.termguicolors = true -- Enable 24-bit RGB colors
|
||
vim.filetype.add({ extension = { svx = "markdown" } })
|
||
vim.opt.listchars = { tab = "\\│\\", nbsp = "␣", trail = "·", extends = "›", precedes = "‹", leadmultispace = "│ " }
|
||
vim.opt.list = true
|
||
|
||
require('plugins.nvim-neo-tree')
|
||
require('plugins.rose-pine')
|
||
require('plugins.treesitter')
|
||
require('plugins.conform')
|
||
require('plugins.lsp')
|
||
require('plugins.diffview')
|
||
require('plugins.which-key')
|
||
require('plugins.codecompanion')
|
||
|
||
vim.cmd('syntax enable')
|
||
|
||
|
||
vim.api.nvim_create_user_command(
|
||
"Inlay",
|
||
function()
|
||
vim.lsp.inlay_hint.enable(not vim.lsp.inlay_hint.is_enabled())
|
||
end,
|
||
{ desc = 'Toggles Inlay Hints' }
|
||
)
|
||
vim.api.nvim_create_autocmd('LspAttach', {
|
||
callback = function(ev)
|
||
local client = vim.lsp.get_client_by_id(ev.data.client_id)
|
||
if client and client:supports_method(vim.lsp.protocol.Methods.textDocument_completion) then
|
||
vim.opt.completeopt = { 'menu', 'menuone', 'noinsert', 'fuzzy', 'popup' }
|
||
vim.lsp.completion.enable(true, client.id, ev.buf, { autotrigger = true })
|
||
vim.keymap.set('i', '<C-Space>', function()
|
||
vim.lsp.completion.get()
|
||
end)
|
||
end
|
||
end,
|
||
})
|
||
|
||
vim.diagnostic.config({
|
||
virtual_lines = {
|
||
current_line = true,
|
||
},
|
||
})
|
||
|
||
vim.cmd.source("~/.config/nvim/.vimrc")
|