diff --git a/ftplugin/qf.vim b/ftplugin/qf.vim deleted file mode 100644 index 34f3f5f..0000000 --- a/ftplugin/qf.vim +++ /dev/null @@ -1 +0,0 @@ -setlocal errorformat=%f\|%l\ col\ %c\|%m diff --git a/ftplugin/smarty.lua b/ftplugin/smarty.lua deleted file mode 100644 index ed7f6bb..0000000 --- a/ftplugin/smarty.lua +++ /dev/null @@ -1,3 +0,0 @@ -vim.opt.tabstop = 2 -vim.opt.softtabstop = 2 -vim.opt.shiftwidth = 2 diff --git a/init.lua b/init.lua index 877387e..c3b88db 100644 --- a/init.lua +++ b/init.lua @@ -1,5 +1,4 @@ -require("plugins") -require("configs") +require("basics") require("lsp") -require("keymaps") require("autocmds") +require("plugins") diff --git a/lua/autocmds.lua b/lua/autocmds.lua index 4304a41..9ded339 100644 --- a/lua/autocmds.lua +++ b/lua/autocmds.lua @@ -1,16 +1,13 @@ -local autocmd = vim.api.nvim_create_autocmd -local augroup = vim.api.nvim_create_augroup - -- Highlight yanked text -local highlight_group = augroup("YankHighlight", { clear = true }) -autocmd("TextYankPost", { +local highlight_group = vim.api.nvim_create_augroup("YankHighlight", { clear = true }) +vim.api.nvim_create_autocmd("TextYankPost", { pattern = "*", callback = function() vim.highlight.on_yank({ timeout = 170 }) end, group = highlight_group, }) -- Auto fromat via LSP -autocmd("BufWritePre", { +vim.api.nvim_create_autocmd("BufWritePre", { pattern = "*", callback = function(ev) for _, client in pairs(vim.lsp.get_clients({ bufnr = ev.buf })) do @@ -23,7 +20,7 @@ autocmd("BufWritePre", { }) -- Auto fromat via external formatters -autocmd("BufWritePost", { +vim.api.nvim_create_autocmd("BufWritePost", { pattern = "*", callback = function(ev) local ft = vim.bo[ev.buf].filetype diff --git a/lua/basics.lua b/lua/basics.lua new file mode 100644 index 0000000..8447925 --- /dev/null +++ b/lua/basics.lua @@ -0,0 +1,47 @@ +-- Opts ----------------------------------------------------------------------- + +local opt = vim.opt +opt.colorcolumn = { "80", "100", "120" } +opt.signcolumn = "yes:1" +opt.termguicolors = true +opt.ignorecase = true +opt.swapfile = false +opt.autoindent = true +opt.expandtab = true +opt.tabstop = 4 +opt.softtabstop = 4 +opt.shiftwidth = 4 +opt.shiftround = true +opt.number = true +opt.relativenumber = true +opt.numberwidth = 2 +opt.wrap = false +opt.cursorline = true +opt.scrolloff = 8 +opt.inccommand = "nosplit" +opt.undodir = os.getenv("HOME") .. "/.cache/nvim/undodir" +opt.undofile = true +opt.winborder = "none" +opt.hlsearch = false + +vim.cmd.filetype("plugin indent on") + +-- Keymaps -------------------------------------------------------------------- + +vim.g.mapleader = " " +vim.keymap.set("n", "", "") + +vim.keymap.set("n", "j", "v:count == 0 ? 'gj' : 'j'", { expr = true, silent = true }) +vim.keymap.set("n", "k", "v:count == 0 ? 'gk' : 'k'", { expr = true, silent = true }) +vim.keymap.set("n", "", "zz") +vim.keymap.set("n", "", "zz") +vim.keymap.set("t", "", "") -- Make Esc act as Esc in terminal + +vim.keymap.set("n", "te", "tabnew", { silent = true }) +vim.keymap.set("n", "tn", "tabn", { silent = true }) +vim.keymap.set("n", "tp", "tabp", { silent = true }) + +vim.keymap.set("v", "p", '"_dP') +vim.keymap.set("x", "y", [["+y]], { silent = true }) + +vim.keymap.set("n", "cd", function() vim.fn.chdir(vim.fn.expand("%:p:h")) end) diff --git a/lua/configs.lua b/lua/configs.lua deleted file mode 100644 index e161c1f..0000000 --- a/lua/configs.lua +++ /dev/null @@ -1,28 +0,0 @@ -vim.g.mapleader = " " - -local opt = vim.opt -opt.colorcolumn = { "80", "100", "120" } -opt.signcolumn = "yes:1" -opt.termguicolors = true -opt.ignorecase = true -opt.swapfile = false -opt.autoindent = true -opt.expandtab = true -opt.tabstop = 4 -opt.softtabstop = 4 -opt.shiftwidth = 4 -opt.shiftround = true -opt.number = true -opt.relativenumber = true -opt.numberwidth = 2 -opt.wrap = false -opt.cursorline = true -opt.scrolloff = 8 -opt.inccommand = "nosplit" -opt.undodir = os.getenv("HOME") .. "/.cache/nvim/undodir" -opt.undofile = true -opt.winborder = "none" -opt.hlsearch = false - -vim.cmd.filetype("plugin indent on") -vim.cmd.colorscheme("catppuccin-macchiato") diff --git a/lua/keymaps.lua b/lua/keymaps.lua deleted file mode 100644 index 4e4d9ba..0000000 --- a/lua/keymaps.lua +++ /dev/null @@ -1,83 +0,0 @@ -local keymap = vim.keymap.set -local s = { silent = true } - -keymap("n", "", "") - --- movement -keymap("n", "j", "v:count == 0 ? 'gj' : 'j'", { expr = true, silent = true }) -keymap("n", "k", "v:count == 0 ? 'gk' : 'k'", { expr = true, silent = true }) -keymap("n", "", "zz") -keymap("n", "", "zz") - ---- save and quit -keymap("n", "w", "w!", s) -keymap("n", "q", "q", s) - --- tabs -keymap("n", "te", "tabnew", s) -keymap("n", "tn", "tabn", s) -keymap("n", "tp", "tabp", s) - ---- split windows -keymap("n", "_", "vsplit", s) -keymap("n", "-", "split", s) - --- copy and paste -keymap("v", "p", '"_dP') -keymap("x", "y", [["+y]], s) - --- terminal -keymap("t", "", "") - --- cd current dir -keymap("n", "cd", 'lua vim.fn.chdir(vim.fn.expand("%:p:h"))') - -local ns = { noremap = true, silent = true } -keymap("n", "grd", "lua vim.lsp.buf.definition()", ns) -keymap("n", "dn", "lua vim.diagnostic.jump({count = 1})", ns) -keymap("n", "dp", "lua vim.diagnostic.jump({count = -1})", ns) - -keymap("n", "s", require("flash").jump, ns) - -keymap("n", "-", "Oil") -keymap("n", "oc", function() require("oil").open(vim.fn.getcwd()) end) -keymap("n", "ps", "lua vim.pack.update()") -keymap("n", "gs", "Git", ns) -keymap("n", "gp", "Git push", ns) - --- Snacks.picker -------------------------------------------------------------- - -local snacks = require("snacks") -keymap("n", "e", function() snacks.explorer() end) - -local p = snacks.picker -keymap("n", "", p.smart) - -keymap("n", "fb", p.buffers) -keymap("n", "ff", p.files) -keymap("n", "fF", p.git_files) -keymap("n", "fg", p.grep) -keymap("n", "fh", p.help) -keymap("n", "fl", p.lines) -keymap("n", "fr", p.recent) -keymap("n", "fc", function() p.files({ cwd = vim.fn.stdpath("config") }) end) - -keymap("n", "gd", p.lsp_definitions) -keymap("n", "gD", p.lsp_declarations) -keymap("n", "gr", p.lsp_references) -keymap("n", "gi", p.lsp_implementations) - -keymap("n", "ss", "Fluoride", { desc = "Fluoride" }) -keymap("n", "sS", p.lsp_workspace_symbols) - -keymap("n", "gb", p.git_branches) -keymap("n", "gs", p.git_status) -keymap("n", "gl", p.git_log) - --- MiniHarp ------------------------------------------------------------------- - -keymap("n", "ma", require("miniharp").toggle_file) -keymap("n", "mc", require("miniharp").clear) -keymap("n", "ml", require("miniharp").show_list) -keymap("n", "", require("miniharp").next) -keymap("n", "", require("miniharp").prev) diff --git a/lua/plugins.lua b/lua/plugins.lua index 2caf94a..b3bd862 100644 --- a/lua/plugins.lua +++ b/lua/plugins.lua @@ -28,16 +28,31 @@ vim.pack.add({ -- no config plugins ---------------------------------------------------------- -require("flash").setup() +vim.cmd.colorscheme("catppuccin-macchiato") require("nvim-autopairs").setup() require("todo-comments").setup() require("noice").setup() require("colorful-menu").setup() require("fluoride").setup() require("hardtime").setup() -require("miniharp").setup({ show_on_autoload = true }) require("nvim-treesitter").setup({ install_dir = vim.fn.stdpath("data") .. "/site" }) +-- flash ---------------------------------------------------------------------- + +require("flash").setup() +vim.keymap.set("n", "s", require("flash").jump, { noremap = true, silent = true }) + +-- MiniHarp ------------------------------------------------------------------- + +local miniharp = require("miniharp") +miniharp.setup({ show_on_autoload = true }) + +vim.keymap.set("n", "ma", miniharp.toggle_file) +vim.keymap.set("n", "mc", miniharp.clear) +vim.keymap.set("n", "ml", miniharp.show_list) +vim.keymap.set("n", "", miniharp.next) +vim.keymap.set("n", "", miniharp.prev) + -- lualine ------------------------------------------------------------------- require("lualine").setup({ @@ -71,7 +86,6 @@ require("gitsigns").setup({ gitsigns.nav_hunk("next") end end) - map("n", "[c", function() if vim.wo.diff then vim.cmd.normal({ "[c", bang = true }) @@ -83,16 +97,8 @@ require("gitsigns").setup({ -- Actions map("n", "hs", gitsigns.stage_hunk) map("n", "hr", gitsigns.reset_hunk) - map( - "v", - "hs", - function() gitsigns.stage_hunk({ vim.fn.line("."), vim.fn.line("v") }) end - ) - map( - "v", - "hr", - function() gitsigns.reset_hunk({ vim.fn.line("."), vim.fn.line("v") }) end - ) + map("v", "hs", function() gitsigns.stage_hunk({ vim.fn.line("."), vim.fn.line("v") }) end) + map("v", "hr", function() gitsigns.reset_hunk({ vim.fn.line("."), vim.fn.line("v") }) end) map("n", "hR", gitsigns.reset_buffer) map("n", "hp", gitsigns.preview_hunk) map("n", "hi", gitsigns.preview_hunk_inline) @@ -135,9 +141,7 @@ require("blink.cmp").setup({ components = { label = { text = function(ctx) return require("colorful-menu").blink_components_text(ctx) end, - highlight = function(ctx) - return require("colorful-menu").blink_components_highlight(ctx) - end, + highlight = function(ctx) return require("colorful-menu").blink_components_highlight(ctx) end, }, }, }, @@ -165,7 +169,10 @@ require("oil").setup({ watch_for_changes = true, skip_confirm_for_simple_edits = true, }) -require("oil-git-status").setup({}) +require("oil-git-status").setup() + +vim.keymap.set("n", "-", "Oil") +vim.keymap.set("n", "oc", function() require("oil").open(vim.fn.getcwd()) end) -- snacks.nvim --------------------------------------------------------------- @@ -243,6 +250,31 @@ require("snacks").setup({ }, }) +local p = require("snacks").picker +vim.keymap.set("n", "", p.smart) +vim.keymap.set("n", "e", function() require("snacks").explorer() end) + +vim.keymap.set("n", "fb", p.buffers) +vim.keymap.set("n", "ff", p.files) +vim.keymap.set("n", "fF", p.git_files) +vim.keymap.set("n", "fg", p.grep) +vim.keymap.set("n", "fh", p.help) +vim.keymap.set("n", "fl", p.lines) +vim.keymap.set("n", "fr", p.recent) +vim.keymap.set("n", "fc", function() p.files({ cwd = vim.fn.stdpath("config") }) end) + +vim.keymap.set("n", "gd", p.lsp_definitions) +vim.keymap.set("n", "gD", p.lsp_declarations) +vim.keymap.set("n", "gr", p.lsp_references) +vim.keymap.set("n", "gi", p.lsp_implementations) + +vim.keymap.set("n", "ss", "Fluoride") +vim.keymap.set("n", "sS", p.lsp_workspace_symbols) + +vim.keymap.set("n", "gb", p.git_branches) +vim.keymap.set("n", "gs", p.git_status) +vim.keymap.set("n", "gl", p.git_log) + -- tiny-inline-diagnostic.nvim ----------------------------------------------- require("tiny-inline-diagnostic").setup({ diff --git a/stylua.toml b/stylua.toml index ba011cb..568b008 100644 --- a/stylua.toml +++ b/stylua.toml @@ -1,5 +1,5 @@ indent_width = 2 -column_width = 100 +column_width = 120 indent_type = "Spaces" collapse_simple_statement = "Always"