Files
Dotfiles/.config/nvim/init.lua

68 lines
2.2 KiB
Lua
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
-- 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')
local kitten = vim.fn.expand("~/.local/share/kitty-ssh-kitten/kitty/bin/kitten")
vim.opt.clipboard = "unnamedplus"
vim.g.clipboard = {
name = 'OSC 52',
copy = {
['+'] = require('vim.ui.clipboard.osc52').copy('+'),
-- ['*'] = require('vim.ui.clipboard.osc52').copy('*'),
},
paste = {
['+'] = require('vim.ui.clipboard.osc52').paste('+'),
-- ['*'] = require('vim.ui.clipboard.osc52').paste('*'),
},
}
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")