Updated scripts
This commit is contained in:
parent
ec590a7a81
commit
292759db4e
@ -13,32 +13,32 @@ vim.opt.relativenumber = true
|
||||
vim.opt.termguicolors = true
|
||||
vim.opt.undofile = true
|
||||
vim.opt.signcolumn = "yes"
|
||||
vim.g.netrw_banner = 0 -- gets rid of the annoying banner for netrw
|
||||
vim.g.netrw_banner = 0 -- gets rid of the annoying banner for netrw
|
||||
vim.g.netrw_browse_split = 4 -- open in prior window
|
||||
vim.g.netrw_altv = 1 -- change from left splitting to right splitting
|
||||
vim.g.netrw_liststyle = 3 -- tree style view in netrw
|
||||
vim.g.netrw_altv = 1 -- change from left splitting to right splitting
|
||||
vim.g.netrw_liststyle = 3 -- tree style view in netrw
|
||||
|
||||
-------------------------------------------------------------------
|
||||
-- Autocommands
|
||||
-------------------------------------------------------------------
|
||||
-- -- show cursor line only in active window
|
||||
-- local cursorLineGrp = vim.api.nvim_create_augroup("CursorLine", { clear = true })
|
||||
-- vim.api.nvim_create_autocmd(
|
||||
-- { "InsertLeave", "WinEnter" },
|
||||
-- { pattern = "*", command = "set cursorline", group = cursorLineGrp }
|
||||
-- )
|
||||
-- vim.api.nvim_create_autocmd(
|
||||
-- { "InsertEnter", "WinLeave" },
|
||||
-- { pattern = "*", command = "set nocursorline", group = cursorLineGrp }
|
||||
-- )
|
||||
-- vim.api.nvim_create_autocmd(
|
||||
-- { "InsertLeave", "FocusGained" },
|
||||
-- { pattern = "*", command = "set cursorline", group = cursorLineGrp }
|
||||
-- )
|
||||
-- vim.api.nvim_create_autocmd(
|
||||
-- { "InsertEnter", "FocusLost" },
|
||||
-- { pattern = "*", command = "set nocursorline", group = cursorLineGrp }
|
||||
-- )
|
||||
-- show cursor line only in active window
|
||||
local cursorLineGrp = vim.api.nvim_create_augroup("CursorLine", { clear = true })
|
||||
vim.api.nvim_create_autocmd(
|
||||
{ "InsertLeave", "WinEnter" },
|
||||
{ pattern = "*", command = "set cursorline", group = cursorLineGrp }
|
||||
)
|
||||
vim.api.nvim_create_autocmd(
|
||||
{ "InsertEnter", "WinLeave" },
|
||||
{ pattern = "*", command = "set nocursorline", group = cursorLineGrp }
|
||||
)
|
||||
vim.api.nvim_create_autocmd(
|
||||
{ "InsertLeave", "FocusGained" },
|
||||
{ pattern = "*", command = "set cursorline", group = cursorLineGrp }
|
||||
)
|
||||
vim.api.nvim_create_autocmd(
|
||||
{ "InsertEnter", "FocusLost" },
|
||||
{ pattern = "*", command = "set nocursorline", group = cursorLineGrp }
|
||||
)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
-- Plugin installation
|
||||
@ -52,35 +52,67 @@ vim.pack.add({
|
||||
{ src = "https://github.com/echasnovski/mini.statusline" },
|
||||
{ src = "https://github.com/echasnovski/mini.pick" },
|
||||
{ src = "https://github.com/echasnovski/mini.extra" },
|
||||
{ src = 'https://github.com/neovim/nvim-lspconfig' },
|
||||
{ src = 'https://github.com/lewis6991/gitsigns.nvim' },
|
||||
{ src = 'https://github.com/MunifTanjim/nui.nvim' },
|
||||
{ src = 'https://github.com/folke/noice.nvim' },
|
||||
{ src = "https://github.com/neovim/nvim-lspconfig" },
|
||||
{ src = "https://github.com/lewis6991/gitsigns.nvim" },
|
||||
{ src = "https://github.com/MunifTanjim/nui.nvim" },
|
||||
{ src = "https://github.com/folke/noice.nvim" },
|
||||
{ src = "https://github.com/L3MON4D3/LuaSnip" },
|
||||
{ src = "https://github.com/rafamadriz/friendly-snippets" },
|
||||
{ src = 'https://github.com/saghen/blink.cmp' },
|
||||
{ src = "https://github.com/saghen/blink.cmp" },
|
||||
{ src = "https://github.com/stevearc/conform.nvim" },
|
||||
})
|
||||
|
||||
-------------------------------------------------------------------
|
||||
-- Plugin config
|
||||
-------------------------------------------------------------------
|
||||
require "noice".setup()
|
||||
require("noice").setup()
|
||||
require("conform").setup({
|
||||
formatters_by_ft = {
|
||||
lua = { "stylua" },
|
||||
python = { "isort", "black" },
|
||||
rust = { "rustfmt", lsp_format = "fallback" },
|
||||
c = { "clang_format" },
|
||||
cpp = { "clang_format" },
|
||||
javascript = { "prettier" },
|
||||
typescript = { "prettier" },
|
||||
javascriptreact = { "prettier" },
|
||||
typescriptreact = { "prettier" },
|
||||
css = { "prettier" },
|
||||
html = { "prettier" },
|
||||
json = { "prettier" },
|
||||
yaml = { "prettier" },
|
||||
markdown = { "prettier" },
|
||||
sh = { "shfmt" },
|
||||
},
|
||||
formatters = {
|
||||
clang_format = {
|
||||
prepend_args = { "--style={BasedOnStyle: LLVM, IndentWidth: 4, TabWidth: 4, UseTab: Never}" },
|
||||
},
|
||||
shfmt = {
|
||||
prepend_args = { "-i", "4" },
|
||||
},
|
||||
},
|
||||
format_on_save = {
|
||||
timeout_ms = 3000,
|
||||
lsp_format = "fallback",
|
||||
},
|
||||
})
|
||||
|
||||
local win_config = function()
|
||||
local height = math.floor(0.618 * vim.o.lines)
|
||||
local width = math.floor(0.618 * vim.o.columns)
|
||||
return {
|
||||
anchor = 'NW',
|
||||
anchor = "NW",
|
||||
height = height,
|
||||
width = width,
|
||||
row = math.floor(0.5 * (vim.o.lines - height)),
|
||||
col = math.floor(0.5 * (vim.o.columns - width)),
|
||||
}
|
||||
end
|
||||
require "mini.pick".setup({ window = { config = win_config } })
|
||||
require "mini.extra".setup()
|
||||
require "mini.statusline".setup()
|
||||
require "gitsigns".setup({
|
||||
require("mini.pick").setup({ window = { config = win_config } })
|
||||
require("mini.extra").setup()
|
||||
require("mini.statusline").setup()
|
||||
require("gitsigns").setup({
|
||||
signs = {
|
||||
add = { text = "▎" },
|
||||
change = { text = "▎" },
|
||||
@ -110,17 +142,17 @@ require("blink.cmp").setup({
|
||||
auto_show = true,
|
||||
draw = {
|
||||
columns = {
|
||||
{ "label", "label_description", gap = 1 },
|
||||
{ "kind_icon", "kind" }
|
||||
{ "label", "label_description", gap = 1 },
|
||||
{ "kind_icon", "kind" },
|
||||
},
|
||||
}
|
||||
},
|
||||
},
|
||||
},
|
||||
sources = {
|
||||
default = { 'lsp', 'buffer', 'path', 'snippets' },
|
||||
default = { "lsp", "buffer", "path", "snippets" },
|
||||
providers = {
|
||||
-- defaults to `{ 'buffer' }`
|
||||
lsp = { fallbacks = {} }
|
||||
lsp = { fallbacks = {} },
|
||||
},
|
||||
},
|
||||
fuzzy = { implementation = "lua" },
|
||||
@ -168,27 +200,29 @@ vim.diagnostic.config({
|
||||
local map = vim.keymap.set
|
||||
vim.g.mapleader = " "
|
||||
-- QoL bindings
|
||||
map('i', 'jj', '<Esc>', { noremap = true, silent = true })
|
||||
map('n', '<leader>u', ':update<CR> :source<CR>', { noremap = true, silent = true })
|
||||
map('n', '<leader>w', ':write<CR>', { noremap = true, silent = true })
|
||||
map('n', '<leader>q', ':quit<CR>', { noremap = true, silent = true })
|
||||
map('n', '<leader>v', ':vsplit<CR>', { noremap = true, silent = true })
|
||||
map("i", "jj", "<Esc>", { noremap = true, silent = true })
|
||||
map("n", "<leader>u", ":update<CR> :source<CR>", { noremap = true, silent = true })
|
||||
map("n", "<leader>w", ":write<CR>", { noremap = true, silent = true })
|
||||
map("n", "<leader>q", ":quit<CR>", { noremap = true, silent = true })
|
||||
map("n", "<leader>v", ":vsplit<CR>", { noremap = true, silent = true })
|
||||
|
||||
-- Git
|
||||
map('n', '<leader>g', ':LazyGitCurrentFile<CR>', { noremap = true, silent = true })
|
||||
map("n", "<leader>g", ":LazyGitCurrentFile<CR>", { noremap = true, silent = true })
|
||||
|
||||
-- File browser
|
||||
map('n', '<leader>e', ':25Lex<CR>', { noremap = true, silent = true })
|
||||
map('n', '<leader>f', ":Pick files<CR>", { noremap = true, silent = true })
|
||||
map('n', '<leader>h', ":Pick help<CR>", { noremap = true, silent = true })
|
||||
map("n", "<leader>e", ":25Lex<CR>", { noremap = true, silent = true })
|
||||
map("n", "<leader>f", ":Pick files<CR>", { noremap = true, silent = true })
|
||||
map("n", "<leader>h", ":Pick help<CR>", { noremap = true, silent = true })
|
||||
|
||||
-- LSP
|
||||
map('n', '<leader>lf', vim.lsp.buf.format, { noremap = true, silent = true })
|
||||
map("n", "grr", ":Pick lsp scope='references'<CR>", { noremap = true, silent = true })
|
||||
map("n", "grt", ":Pick lsp scope='type_definition'<CR>", { noremap = true, silent = true })
|
||||
map("n", "gri", ":Pick lsp scope='implementation'<CR>", { noremap = true, silent = true })
|
||||
|
||||
-- Global Copy/Paste
|
||||
map({ 'n', 'v' }, '<leader>y', '"+y', { noremap = true, silent = true })
|
||||
map({ 'n', 'v' }, '<leader>d', '"+d', { noremap = true, silent = true })
|
||||
map({ 'n', 'v' }, '<leader>c', '1z=', { noremap = true, silent = true })
|
||||
map({ "n", "v" }, "<leader>y", '"+y', { noremap = true, silent = true })
|
||||
map({ "n", "v" }, "<leader>d", '"+d', { noremap = true, silent = true })
|
||||
map({ "n", "v" }, "<leader>c", "1z=", { noremap = true, silent = true })
|
||||
|
||||
-- Smart splits to support TMUX
|
||||
map({ "n", "t" }, "<A-h>", require("smart-splits").resize_left, { desc = "Resize left" })
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user