Cleanup of nvim config

Author Mitja Felicijan <mitja.felicijan@gmail.com> 2026-05-23 13:38:32 +0200
Committer Mitja Felicijan <mitja.felicijan@gmail.com> 2026-05-23 13:38:32 +0200
Commit 44c88dbab7022ea954126dbf3f445ac96c7472a5 (patch)
-rw-r--r-- .config/nvim/init.lua 101
-rw-r--r-- .gitignore 1
2 files changed, 0 insertions, 102 deletions
diff --git a/.config/nvim/init.lua b/.config/nvim/init.lua
1
vim.opt.winborder = "double"
  
2
vim.opt.tabstop = 4
  
3
vim.opt.shiftwidth = 4
  
4
vim.opt.signcolumn = "yes"
  
5
vim.opt.wrap = false
  
6
vim.opt.ignorecase = true
  
7
vim.opt.smartindent = true
  
8
vim.opt.termguicolors = true
  
9
vim.opt.undofile = true
  
10
vim.opt.number = true
  
11
vim.opt.cursorline = true
  
12
vim.opt.foldmethod = "syntax"
  
13
vim.opt.foldlevel = 99
  
14
vim.opt.scrolloff = 10
  
15
vim.opt.mouse = ""
  
16
vim.opt.guicursor = ""
  
17
vim.opt.clipboard = "unnamedplus"
  
18
vim.opt.wildmode = { "longest:full", "full" }
  
19
vim.opt.wildignore:append({ "node_modules", ".git" })
  
20
vim.opt.completeopt = { "menu", "menuone", "popup", "noselect", "noinsert" }
  
21
  
  
22
vim.pack.add({
  
23
	{ src = "https://github.com/nvim-mini/mini.pick" },
  
24
})
  
25
  
  
26
local mini = require('mini.pick')
  
27
mini.setup({
  
28
	source = {
  
29
		show = mini.default_show,
  
30
	},
  
31
	window = {
  
32
		prompt_prefix = " ",
  
33
		config = function()
  
34
			return {
  
35
				border = "single",
  
36
				anchor = "SW",
  
37
				height = 15,
  
38
				width = vim.o.columns,
  
39
				row = vim.o.lines - vim.o.cmdheight - 1,
  
40
				col = 0,
  
41
			}
  
42
		end,
  
43
	},
  
44
})
  
45
  
  
46
vim.keymap.set("n", "<C-Left>",  ":bprevious<CR>")
  
47
vim.keymap.set("n", "<C-Right>", ":bnext<CR>")
  
48
vim.keymap.set("n", "<Leader>d", ":bd!<CR>")
  
49
vim.keymap.set("n", "<Leader>q", ":nohlsearch<CR>")
  
50
vim.keymap.set("n", "<leader>w", ":silent! grep! <cword> | cwindow | redraw!<CR>")
  
51
vim.keymap.set("n", "<Leader>p", ":Pick files<CR>")
  
52
vim.keymap.set("n", "<Leader>b", ":Pick buffers<CR>")
  
53
vim.keymap.set("n", "<Leader>g", ":Pick grep_live<CR>")
  
54
  
  
55
vim.api.nvim_set_hl(0, "Normal", { bg = "#000000" })
  
56
vim.api.nvim_set_hl(0, "CursorLine", { bg = "#222222" })
  
57
vim.api.nvim_set_hl(0, "Keyword", { fg = "#ffcc66" })
  
58
vim.api.nvim_set_hl(0, "Statement", { fg = "#ffcc66" })
  
59
vim.api.nvim_set_hl(0, "Type", { fg = "#66ccff" })
  
60
vim.api.nvim_set_hl(0, "Number", { fg = "#ff9966" })
  
61
vim.api.nvim_set_hl(0, "Float", { fg = "#ff9966" })
  
62
vim.api.nvim_set_hl(0, "Boolean", { fg = "#ff9966" })
  
63
  
  
64
vim.api.nvim_create_autocmd("FileType", {
  
65
	callback = function()
  
66
		vim.opt_local.path = ".,**"
  
67
	end,
  
68
})
  
69
  
  
70
vim.lsp.config("clang", {
  
71
	cmd = { "clangd" },
  
72
	filetype = { ".c", ".h" },
  
73
	root_markers = { ".clangd", ".git", },
  
74
})
  
75
  
  
76
vim.lsp.config("gopls", {
  
77
	cmd = { "gopls" },
  
78
	filetypes = { "go", "gomod", "gowork" },
  
79
	root_markers = { "go.mod", ".git", },
  
80
})
  
81
  
  
82
vim.lsp.config("c3lsp", {
  
83
	cmd = { "c3lsp" },
  
84
	filetypes = { "c3", "c3i" },
  
85
	root_markers = { ".git", },
  
86
})
  
87
  
  
88
vim.lsp.enable({ "clangd", "gopls", "c3lsp" })
  
89
  
  
90
vim.api.nvim_create_autocmd("LspAttach", {
  
91
	callback = function(event)
  
92
		local opts = { buffer = event.buf }
  
93
		vim.keymap.set("n", "gd", vim.lsp.buf.definition, opts)
  
94
		vim.keymap.set("n", "gD", vim.lsp.buf.declaration, opts)
  
95
		vim.keymap.set("n", "gr", vim.lsp.buf.references, opts)
  
96
		vim.keymap.set("n", "gi", vim.lsp.buf.implementation, opts)
  
97
		vim.keymap.set("n", "<C-q>", vim.diagnostic.setloclist, opts)
  
98
		vim.keymap.set("n", "[d", vim.diagnostic.goto_prev, opts)
  
99
		vim.keymap.set("n", "]d", vim.diagnostic.goto_next, opts)
  
100
	end,
  
101
})
  
diff --git a/.gitignore b/.gitignore
1
*.json