lol huge updates

This commit is contained in:
sankalp committed 2024-08-16 02:51:57 +05:45
1 parent c9d290595f
commit a2b0f73e33
55 files changed
+1259 -290

No files matched your search

+73
View File
@@ -0,0 +1,73 @@
local fn = vim.fn
local api = vim.api
local ns_id = vim.api.nvim_create_namespace('md-codeblaock')
local M = {}
vim.cmd([[
hi DError guibg=#2F1D29 guifg=#EB4838
hi DBError guibg=#2F1D29
hi DWarn guibg=#322425 guifg=#FA9535
hi DBWarn guibg=#322425
]])
function get_hl_group_bg_color(hl_group)
local hl_info = vim.api.nvim_get_hl_by_name(hl_group, true)
if hl_info and hl_info.background then
local bg_color = string.format('#%06x', hl_info.background)
return bg_color
else
return nil
end
end
function hl_line(bufnr, line, hl, vtext)
local text = string.rep(' ', fn.winwidth(fn.bufwinnr(bufnr)))
local opts = {
virt_text = { { ' ' .. vtext .. text, hl.vig } },
hl_eol = true,
virt_text_pos = 'overlay',
}
api.nvim_buf_add_highlight(bufnr, ns_id, hl.gui, line, 0, -1)
pcall(api.nvim_buf_set_extmark, bufnr, ns_id, line, fn.len(fn.getline(line + 1)), opts)
end
function show_diag(bufnr, level, message, lnum)
local hl = {
[1] = {
gui = 'DBError',
vig = 'DError',
},
[2] = {
gui = 'DBWarn',
vig = 'DWarn',
},
[3] = {
gui = 'DBWarn',
vig = 'DWarn',
},
[4] = {
gui = 'DBWarn',
vig = 'DWarn',
},
[5] = {
gui = 'DBWarn',
vig = 'DWarn',
},
}
hl_line(bufnr, lnum, hl[level], message)
end
vim.lsp.handlers['textDocument/publishDiagnostics'] = function(_, result, ctx, _)
if not result.diagnostics then
return
end
local bufnr = vim.uri_to_bufnr(result.uri)
vim.api.nvim_buf_clear_namespace(bufnr, ns_id, 0, -1)
for _, diagnostic in ipairs(result.diagnostics) do
local line = diagnostic.range.start.line
local severity = diagnostic.severity
local message = diagnostic.message
show_diag(bufnr, severity, message, line)
end
end
return M
+21 -11
View File
@@ -1,5 +1,3 @@
local opts = { noremap = true, silent = true }
-- Increment / Decrement
vim.keymap.set('n', '+', '<C-a>')
vim.keymap.set('n', '-', '<C-x>')
@@ -11,8 +9,14 @@ vim.keymap.set('n', '<C-a>', 'gg<S-v>G')
vim.keymap.set('x', '<leader>p', '"_dP')
-- Delete without yanking
vim.keymap.set('n', '<leader>d', '"_d')
vim.keymap.set('v', '<leader>d', '"_d')
vim.keymap.set('n', '<leader>d', '"_d', { desc = 'Delete highlighted text' })
vim.keymap.set('v', '<leader>d', '"_d', { desc = 'Delete highlighted text' })
-- save file
vim.keymap.set('n', '<leader>w', ':w<CR>', { desc = 'Save file' })
-- save and quit
vim.keymap.set('n', '<leader>Q', '<cmd>wq!<CR>', { desc = 'Force save and quit' })
-- Clear highlights on search when pressing <Esc> in normal mode
vim.keymap.set('n', '<Esc>', '<cmd>nohlsearch<CR>')
@@ -25,10 +29,14 @@ vim.keymap.set('n', '<A-Right>', '<cmd>vertical resize +2<cr>', { desc = 'Increa
-- Visual vim.keymap.sets
vim.keymap.set('v', '<leader>r', '"hy:%s/<C-r>h//g<left><left>') -- Replace all instances of highlighted words
vim.keymap.set('v', '<C-s>', ':sort<CR>') -- Sort highlighted text in visual mode with Control+S
vim.keymap.set('v', '<A-s>', ':sort<CR>') -- Sort highlighted text in visual mode with Control+S
vim.keymap.set('v', 'K', ":m '>-2<CR>gv=gv") -- Move current line up
vim.keymap.set('v', 'J', ":m '>+1<CR>gv=gv") -- Move current line down
-- for buffers
vim.api.nvim_set_keymap('n', '<Tab>', ':bnext<CR>', { noremap = true, silent = true })
vim.api.nvim_set_keymap('n', '<S-Tab>', ':bprev<CR>', { noremap = true, silent = true })
--utility vim.keymap.setpings
vim.keymap.set('n', 'n', 'nzzzv') -- keep the cursor centered when doing 'n'
vim.keymap.set('n', 'N', 'Nzzzv') -- keep the cursor centered when doing 'N'
@@ -46,8 +54,8 @@ vim.keymap.set({ 'i' }, '<C-l>', '<Right>', { desc = 'Move cursor to right' })
vim.keymap.set({ 'i' }, '<C-h>', '<Left>', { desc = 'Move cursor to right' })
-- Better window management
vim.keymap.set('n', 'hs', ':split<Return>', opts)
vim.keymap.set('n', 'vs', ':vsplit<Return>', opts)
vim.keymap.set('n', 'vs', ':vsp<CR>', { noremap = true, silent = true })
vim.keymap.set('n', 'hs', ':sp<CR>', { noremap = true, silent = true })
vim.keymap.set('n', '<C-h>', '<C-w>h', { desc = 'Move to left split' })
vim.keymap.set('n', '<C-j>', '<C-w>j', { desc = 'Move to below split' })
vim.keymap.set('n', '<C-k>', '<C-w>k', { desc = 'Move to above split' })
@@ -61,8 +69,13 @@ vim.keymap.set('n', '<A-Right>', '<cmd>vertical resize +2<CR>', { desc = 'Resize
vim.keymap.set('v', '<', '<gv', { desc = '(V) Indent to left' })
vim.keymap.set('v', '>', '>gv', { desc = '(V) Indent to right' })
vim.keymap.set('n', '<Leader>lo', '<cmd>lopen<CR>', { desc = 'Open location list' })
vim.keymap.set('n', '<Leader>lc', '<cmd>lclose<CR>', { desc = 'Close location list' })
vim.keymap.set('n', '<Leader>ln', '<cmd>lnext<CR>', { desc = 'Next location list item' })
vim.keymap.set('n', '<Leader>lp', '<cmd>lprev<CR>', { desc = 'Previous location list item' })
-- insert semicolon in the end
-- vim.keymap.set('i', '<A-;>', '<Esc>miA;<Esc>`ii', { desc = 'insert semicolon in the end' })
vim.keymap.set('i', '<A-;>', '<Esc>miA;<Esc>`ii', { desc = 'insert semicolon in the end' })
-- Change text without putting it into the vim register,
vim.keymap.set({ 'n', 'x' }, 'c', '"_c', { desc = 'Change without yanking' })
@@ -79,6 +92,3 @@ vim.keymap.set('i', 'jj', '<ESC>')
vim.keymap.set('t', 'jk', '<C-\\><C-n>')
vim.keymap.set('t', 'kj', '<C-\\><C-n>')
vim.keymap.set('t', '<ESC>', '<C-\\><C-n>')
-- save file
vim.keymap.set({ 'i', 'v', 'n', 's' }, '<A-s>', '<cmd>wa<cr><esc>', { desc = 'Save all file' })
-1
View File
@@ -19,7 +19,6 @@ vim.opt.rtp:prepend(lazypath)
require('lazy').setup({
spec = {
{ import = 'plugins' },
-- { import = 'plugins.themes' },
},
install = {
missing = true,