diff options
Diffstat (limited to 'lua')
-rw-r--r-- | lua/config/alpha.lua | 44 | ||||
-rw-r--r-- | lua/config/autocommands.lua | 33 | ||||
-rw-r--r-- | lua/config/autopairs.lua | 34 | ||||
-rw-r--r-- | lua/config/bufferline.lua | 167 | ||||
-rw-r--r-- | lua/config/cmp.lua | 133 | ||||
-rw-r--r-- | lua/config/colorizer.lua | 16 | ||||
-rw-r--r-- | lua/config/colorscheme.lua | 9 | ||||
-rw-r--r-- | lua/config/comment.lua | 24 | ||||
-rw-r--r-- | lua/config/gitsigns.lua | 75 | ||||
-rw-r--r-- | lua/config/hop.lua | 8 | ||||
-rw-r--r-- | lua/config/lsp/handlers.lua | 170 | ||||
-rw-r--r-- | lua/config/lsp/init.lua | 10 | ||||
-rw-r--r-- | lua/config/lsp/lsp-installer.lua | 34 | ||||
-rw-r--r-- | lua/config/lsp/null-ls.lua | 38 | ||||
-rw-r--r-- | lua/config/lsp/settings/pyright.lua | 12 | ||||
-rw-r--r-- | lua/config/lsp/settings/sumneko_lua.lua | 18 | ||||
-rw-r--r-- | lua/config/lualine.lua | 64 | ||||
-rw-r--r-- | lua/config/spectre.lua | 135 | ||||
-rw-r--r-- | lua/config/telescope.lua | 120 | ||||
-rw-r--r-- | lua/config/treesitter.lua | 29 | ||||
-rw-r--r-- | lua/config/whichkey.lua | 217 | ||||
-rw-r--r-- | lua/config/zen.lua | 28 | ||||
-rw-r--r-- | lua/settings/init.lua | 4 | ||||
-rw-r--r-- | lua/settings/keymaps.lua | 59 | ||||
-rw-r--r-- | lua/settings/options.lua | 48 |
25 files changed, 0 insertions, 1529 deletions
diff --git a/lua/config/alpha.lua b/lua/config/alpha.lua deleted file mode 100644 index fa12693..0000000 --- a/lua/config/alpha.lua +++ /dev/null @@ -1,44 +0,0 @@ --- A customizable greeter. - -local status_ok, alpha = pcall(require, "alpha") -if not status_ok then - return -end - -local dashboard = require "alpha.themes.dashboard" -dashboard.section.header.val = { - [[ ##############..... ############## ]], - [[ ##############......############## ]], - [[ ##########..........########## ]], - [[ ##########........########## ]], - [[ ##########.......########## ]], - [[ ##########.....##########.. ]], - [[ ##########....##########..... ]], - [[ ..##########..##########......... ]], - [[ ....##########.#########............. ]], - [[ ..################JJJ............ ]], - [[ ################............. ]], - [[ ##############.JJJ.JJJJJJJJJJ ]], - [[ ############...JJ...JJ..JJ JJ ]], - [[ ##########....JJ...JJ..JJ JJ ]], - [[ ########......JJJ..JJJ JJJ JJJ ]], - [[ ###### ......... ]], - [[ ..... ]], - [[ . ]], -} -dashboard.section.buttons.val = { - dashboard.button("f", " Find file", ":Telescope file_browser <CR>"), - dashboard.button("e", " New file", ":ene <BAR> startinsert <CR>"), - dashboard.button("p", " Find project", ":Telescope projects <CR>"), - dashboard.button("r", " Recently used files", ":Telescope oldfiles <CR>"), - dashboard.button("t", " Find text", ":Telescope live_grep <CR>"), - dashboard.button("c", " Configuration", ":e ~/.config/nvim/init.lua <CR>"), - dashboard.button("q", " Quit Neovim", ":qa<CR>"), -} - -dashboard.section.header.opts.hl = "AlphaHeader" -dashboard.section.buttons.opts.hl = "AlphaButtons" - -dashboard.opts.opts.noautocmd = true --- vim.cmd([[autocmd User AlphaReady echo 'ready']]) -alpha.setup(dashboard.opts) diff --git a/lua/config/autocommands.lua b/lua/config/autocommands.lua deleted file mode 100644 index ef144d9..0000000 --- a/lua/config/autocommands.lua +++ /dev/null @@ -1,33 +0,0 @@ --- autocmd! remove all autocommands, if entered under a group it will clear that group - -vim.cmd [[ - augroup _general_settings - autocmd! - autocmd FileType qf,help,man,lspinfo nnoremap <silent> <buffer> q :close<CR> - autocmd TextYankPost * silent!lua require('vim.highlight').on_yank({higroup = 'Search', timeout = 200}) - autocmd BufWinEnter * :set formatoptions-=cro - autocmd FileType qf set nobuflisted - augroup end - - augroup _git - autocmd! - autocmd FileType gitcommit setlocal wrap - autocmd FileType gitcommit setlocal spell - augroup end - - augroup _markdown - autocmd! - autocmd FileType markdown setlocal wrap - autocmd FileType markdown setlocal spell - augroup end - - augroup _auto_resize - autocmd! - autocmd VimResized * tabdo wincmd = - augroup end - - augroup _alpha - autocmd! - autocmd User AlphaReady set showtabline=0 | autocmd BufUnload <buffer> set showtabline=2 - augroup end -]] diff --git a/lua/config/autopairs.lua b/lua/config/autopairs.lua deleted file mode 100644 index e218aff..0000000 --- a/lua/config/autopairs.lua +++ /dev/null @@ -1,34 +0,0 @@ --- Autopair for brackets and quote symbols. - -local status_ok, npairs = pcall(require, "nvim-autopairs") -if not status_ok then - return -end - -npairs.setup { - check_ts = true, - ts_config = { - lua = { "string", "source" }, - javascript = { "string", "template_string" }, - java = false, - }, - disable_filetype = { "TelescopePrompt", "spectre_panel" }, - fast_wrap = { - map = "<M-e>", - chars = { "{", "[", "(", '"', "'" }, - pattern = string.gsub([[ [%'%"%)%>%]%)%}%,] ]], "%s+", ""), - offset = 0, -- Offset from pattern match - end_key = "$", - keys = "qwertyuiopzxcvbnmasdfghjkl", - check_comma = true, - highlight = "PmenuSel", - highlight_grey = "LineNr", - }, -} - -local cmp_autopairs = require "nvim-autopairs.completion.cmp" -local cmp_status_ok, cmp = pcall(require, "cmp") -if not cmp_status_ok then - return -end -cmp.event:on("confirm_done", cmp_autopairs.on_confirm_done { map_char = { tex = "" } }) diff --git a/lua/config/bufferline.lua b/lua/config/bufferline.lua deleted file mode 100644 index 04a2e79..0000000 --- a/lua/config/bufferline.lua +++ /dev/null @@ -1,167 +0,0 @@ --- Adds a bar that displays open buffers. - -local status_ok, bufferline = pcall(require, "bufferline") -if not status_ok then - return -end - -bufferline.setup { - options = { - numbers = "none", -- | "ordinal" | "buffer_id" | "both" | function({ ordinal, id, lower, raise }): string, - close_command = "Bdelete! %d", -- can be a string | function, see "Mouse actions" - right_mouse_command = nil, -- can be a string | function, see "Mouse actions" - left_mouse_command = nil, -- can be a string | function, see "Mouse actions" - middle_mouse_command = nil, -- can be a string | function, see "Mouse actions" - -- NOTE: this plugin is designed with this icon in mind, - -- and so changing this is NOT recommended, this is intended - -- as an escape hatch for people who cannot bear it for whatever reason - indicator_icon = "", - buffer_close_icon = "", - modified_icon = "●", - close_icon = "", - left_trunc_marker = "", - right_trunc_marker = "", - --- name_formatter can be used to change the buffer's label in the bufferline. - --- Please note some names can/will break the - --- bufferline so use this at your discretion knowing that it has - --- some limitations that will *NOT* be fixed. - -- name_formatter = function(buf) -- buf contains a "name", "path" and "bufnr" - -- -- remove extension from markdown files for example - -- if buf.name:match('%.md') then - -- return vim.fn.fnamemodify(buf.name, ':t:r') - -- end - -- end, - max_name_length = 30, - max_prefix_length = 30, -- prefix used when a buffer is de-duplicated - tab_size = 21, - diagnostics = false, -- | "nvim_lsp" | "coc", - diagnostics_update_in_insert = false, - -- diagnostics_indicator = function(count, level, diagnostics_dict, context) - -- return "("..count..")" - -- end, - -- NOTE: this will be called a lot so don't do any heavy processing here - -- custom_filter = function(buf_number) - -- -- filter out filetypes you don't want to see - -- if vim.bo[buf_number].filetype ~= "<i-dont-want-to-see-this>" then - -- return true - -- end - -- -- filter out by buffer name - -- if vim.fn.bufname(buf_number) ~= "<buffer-name-I-dont-want>" then - -- return true - -- end - -- -- filter out based on arbitrary rules - -- -- e.g. filter out vim wiki buffer from tabline in your work repo - -- if vim.fn.getcwd() == "<work-repo>" and vim.bo[buf_number].filetype ~= "wiki" then - -- return true - -- end - -- end, - offsets = { { filetype = "NvimTree", text = "", padding = 1 } }, - show_buffer_icons = false, - show_buffer_close_icons = false, - show_close_icon = false, - show_tab_indicators = false, - persist_buffer_sort = true, -- whether or not custom sorted buffers should persist - -- can also be a table containing 2 custom separators - -- [focused and unfocused]. eg: { '|', '|' } - separator_style = "thin", -- | "thick" | "thin" | { 'any', 'any' }, - enforce_regular_tabs = true, - always_show_bufferline = true, - -- sort_by = 'id' | 'extension' | 'relative_directory' | 'directory' | 'tabs' | function(buffer_a, buffer_b) - -- -- add custom logic - -- return buffer_a.modified > buffer_b.modified - -- end - }, - highlights = { - fill = { - guifg = { attribute = "fg", highlight = "#ff0000" }, - guibg = { attribute = "bg", highlight = "TabLine" }, - }, - background = { - guifg = { attribute = "fg", highlight = "TabLine" }, - guibg = { attribute = "bg", highlight = "TabLine" }, - }, - - -- buffer_selected = { - -- guifg = {attribute='fg',highlight='#ff0000'}, - -- guibg = {attribute='bg',highlight='#0000ff'}, - -- gui = 'none' - -- }, - buffer_visible = { - guifg = { attribute = "fg", highlight = "TabLine" }, - guibg = { attribute = "bg", highlight = "TabLine" }, - }, - - close_button = { - guifg = { attribute = "fg", highlight = "TabLine" }, - guibg = { attribute = "bg", highlight = "TabLine" }, - }, - close_button_visible = { - guifg = { attribute = "fg", highlight = "TabLine" }, - guibg = { attribute = "bg", highlight = "TabLine" }, - }, - -- close_button_selected = { - -- guifg = {attribute='fg',highlight='TabLineSel'}, - -- guibg ={attribute='bg',highlight='TabLineSel'} - -- }, - - tab_selected = { - guifg = { attribute = "fg", highlight = "Normal" }, - guibg = { attribute = "bg", highlight = "Normal" }, - }, - tab = { - guifg = { attribute = "fg", highlight = "TabLine" }, - guibg = { attribute = "bg", highlight = "TabLine" }, - }, - tab_close = { - -- guifg = {attribute='fg',highlight='LspDiagnosticsDefaultError'}, - guifg = { attribute = "fg", highlight = "TabLineSel" }, - guibg = { attribute = "bg", highlight = "Normal" }, - }, - - duplicate_selected = { - guifg = { attribute = "fg", highlight = "TabLineSel" }, - guibg = { attribute = "bg", highlight = "TabLineSel" }, - gui = "italic", - }, - duplicate_visible = { - guifg = { attribute = "fg", highlight = "TabLine" }, - guibg = { attribute = "bg", highlight = "TabLine" }, - gui = "italic", - }, - duplicate = { - guifg = { attribute = "fg", highlight = "TabLine" }, - guibg = { attribute = "bg", highlight = "TabLine" }, - gui = "italic", - }, - - modified = { - guifg = { attribute = "fg", highlight = "TabLine" }, - guibg = { attribute = "bg", highlight = "TabLine" }, - }, - modified_selected = { - guifg = { attribute = "fg", highlight = "Normal" }, - guibg = { attribute = "bg", highlight = "Normal" }, - }, - modified_visible = { - guifg = { attribute = "fg", highlight = "TabLine" }, - guibg = { attribute = "bg", highlight = "TabLine" }, - }, - - separator = { - guifg = { attribute = "bg", highlight = "TabLine" }, - guibg = { attribute = "bg", highlight = "TabLine" }, - }, - separator_selected = { - guifg = { attribute = "bg", highlight = "Normal" }, - guibg = { attribute = "bg", highlight = "Normal" }, - }, - -- separator_visible = { - -- guifg = {attribute='bg',highlight='TabLine'}, - -- guibg = {attribute='bg',highlight='TabLine'} - -- }, - indicator_selected = { - guifg = { attribute = "fg", highlight = "LspDiagnosticsDefaultHint" }, - guibg = { attribute = "bg", highlight = "Normal" }, - }, - }, -} diff --git a/lua/config/cmp.lua b/lua/config/cmp.lua deleted file mode 100644 index 6f136b2..0000000 --- a/lua/config/cmp.lua +++ /dev/null @@ -1,133 +0,0 @@ --- Configuration for completion plugin. - -local cmp_status_ok, cmp = pcall(require, "cmp") -if not cmp_status_ok then - return -end - -local snip_status_ok, luasnip = pcall(require, "luasnip") -if not snip_status_ok then - return -end - -require("luasnip/loaders/from_vscode").lazy_load() - -local check_backspace = function() - local col = vim.fn.col "." - 1 - return col == 0 or vim.fn.getline("."):sub(col, col):match "%s" -end - -local kind_icons = { - Text = "", - Method = "m", - Function = "", - Constructor = "", - Field = "", - Variable = "", - Class = "", - Interface = "", - Module = "", - Property = "", - Unit = "", - Value = "", - Enum = "", - Keyword = "", - Snippet = "", - Color = "", - File = "", - Reference = "", - Folder = "", - EnumMember = "", - Constant = "", - Struct = "", - Event = "", - Operator = "", - TypeParameter = "", -} - -cmp.setup { - snippet = { - expand = function(args) - luasnip.lsp_expand(args.body) -- For `luasnip` users. - end, - }, - mapping = { - ["<C-k>"] = cmp.mapping.select_prev_item(), - ["<C-j>"] = cmp.mapping.select_next_item(), - ["<C-b>"] = cmp.mapping(cmp.mapping.scroll_docs(-1), { "i", "c" }), - ["<C-f>"] = cmp.mapping(cmp.mapping.scroll_docs(1), { "i", "c" }), - ["<C-Space>"] = cmp.mapping(cmp.mapping.complete(), { "i", "c" }), - ["<C-y>"] = cmp.config.disable, -- Specify `cmp.config.disable` if you want to remove the default `<C-y>` mapping. - ["<C-e>"] = cmp.mapping { - i = cmp.mapping.abort(), - c = cmp.mapping.close(), - }, - -- Accept currently selected item. If none selected, `select` first item. - -- Set `select` to `false` to only confirm explicitly selected items. - ["<CR>"] = cmp.mapping.confirm { select = true }, - ["<Tab>"] = cmp.mapping(function(fallback) - if cmp.visible() then - cmp.select_next_item() - elseif luasnip.expandable() then - luasnip.expand() - elseif luasnip.expand_or_jumpable() then - luasnip.expand_or_jump() - elseif check_backspace() then - fallback() - else - fallback() - end - end, { - "i", - "s", - }), - ["<S-Tab>"] = cmp.mapping(function(fallback) - if cmp.visible() then - cmp.select_prev_item() - elseif luasnip.jumpable(-1) then - luasnip.jump(-1) - else - fallback() - end - end, { - "i", - "s", - }), - }, - formatting = { - fields = { "kind", "abbr", "menu" }, - format = function(entry, vim_item) - -- Kind icons - vim_item.kind = string.format("%s", kind_icons[vim_item.kind]) - -- vim_item.kind = string.format('%s %s', kind_icons[vim_item.kind], vim_item.kind) -- This concatonates the icons with the name of the item kind - vim_item.menu = ({ - nvim_lsp = "[LSP]", - nvim_lua = "[NVIM_LUA]", - luasnip = "[Snippet]", - buffer = "[Buffer]", - path = "[Path]", - })[entry.source.name] - return vim_item - end, - }, - -- TODO: check out more sources - sources = { - { name = "nvim_lsp" }, - { name = "nvim_lua" }, - { name = "luasnip" }, - { name = "buffer" }, - { name = "path" }, - { name = "orgmode" }, - }, - confirm_opts = { - behavior = cmp.ConfirmBehavior.Replace, - select = false, - }, - documentation = { - border = { "╭", "─", "╮", "│", "╯", "─", "╰", "│" }, - }, - experimental = { - ghost_text = false, - native_menu = false, - }, -} diff --git a/lua/config/colorizer.lua b/lua/config/colorizer.lua deleted file mode 100644 index a964c94..0000000 --- a/lua/config/colorizer.lua +++ /dev/null @@ -1,16 +0,0 @@ --- Enables colorization of color codes in source files. - -local status_ok, colorizer = pcall(require, "colorizer") -if not status_ok then - return -end - -colorizer.setup({ "*" }, { - RGB = true, -- #RGB hex codes - RRGGBB = true, -- #RRGGBB hex codes - RRGGBBAA = true, -- #RRGGBBAA hex codes - rgb_fn = true, -- CSS rgb() and rgba() functions - hsl_fn = true, -- CSS hsl() and hsla() functions - css = true, -- Enable all CSS features: rgb_fn, hsl_fn, names, RGB, RRGGBB - css_fn = true, -- Enable all CSS *functions*: rgb_fn, hsl_fn -}) diff --git a/lua/config/colorscheme.lua b/lua/config/colorscheme.lua deleted file mode 100644 index 8fe7c27..0000000 --- a/lua/config/colorscheme.lua +++ /dev/null @@ -1,9 +0,0 @@ --- Neovim colorscheme. - -local colorscheme = "no-clown-fiesta" - -local status_ok, _ = pcall(vim.cmd, "colorscheme " .. colorscheme) -if not status_ok then - vim.notify("colorscheme " .. colorscheme .. " not found!") - return -end diff --git a/lua/config/comment.lua b/lua/config/comment.lua deleted file mode 100644 index 4968314..0000000 --- a/lua/config/comment.lua +++ /dev/null @@ -1,24 +0,0 @@ --- Language aware commenting. - -local status_ok, comment = pcall(require, "Comment") -if not status_ok then - return -end - -comment.setup { - pre_hook = function(ctx) - local U = require "Comment.utils" - - local location = nil - if ctx.ctype == U.ctype.block then - location = require("ts_context_commentstring.utils").get_cursor_location() - elseif ctx.cmotion == U.cmotion.v or ctx.cmotion == U.cmotion.V then - location = require("ts_context_commentstring.utils").get_visual_start_location() - end - - return require("ts_context_commentstring.internal").calculate_commentstring { - key = ctx.ctype == U.ctype.line and "__default" or "__multiline", - location = location, - } - end, -} diff --git a/lua/config/gitsigns.lua b/lua/config/gitsigns.lua deleted file mode 100644 index 3a5ce9d..0000000 --- a/lua/config/gitsigns.lua +++ /dev/null @@ -1,75 +0,0 @@ --- Add git signs to source files. - -local status_ok, gitsigns = pcall(require, "gitsigns") -if not status_ok then - return -end - -gitsigns.setup { - signs = { - add = { - hl = "GitSignsAdd", - text = "▎", - numhl = "GitSignsAddNr", - linehl = "GitSignsAddLn", - }, - change = { - hl = "GitSignsChange", - text = "▎", - numhl = "GitSignsChangeNr", - linehl = "GitSignsChangeLn", - }, - delete = { - hl = "GitSignsDelete", - text = "契", - numhl = "GitSignsDeleteNr", - linehl = "GitSignsDeleteLn", - }, - topdelete = { - hl = "GitSignsDelete", - text = "契", - numhl = "GitSignsDeleteNr", - linehl = "GitSignsDeleteLn", - }, - changedelete = { - hl = "GitSignsChange", - text = "▎", - numhl = "GitSignsChangeNr", - linehl = "GitSignsChangeLn", - }, - }, - signcolumn = true, -- Toggle with `:Gitsigns toggle_signs` - numhl = false, -- Toggle with `:Gitsigns toggle_numhl` - linehl = false, -- Toggle with `:Gitsigns toggle_linehl` - word_diff = false, -- Toggle with `:Gitsigns toggle_word_diff` - watch_gitdir = { - interval = 1000, - follow_files = true, - }, - attach_to_untracked = true, - current_line_blame = false, -- Toggle with `:Gitsigns toggle_current_line_blame` - current_line_blame_opts = { - virt_text = true, - virt_text_pos = "eol", -- 'eol' | 'overlay' | 'right_align' - delay = 1000, - ignore_whitespace = false, - }, - current_line_blame_formatter_opts = { - relative_time = false, - }, - sign_priority = 6, - update_debounce = 100, - status_formatter = nil, -- Use default - max_file_length = 40000, - preview_config = { - -- Options passed to nvim_open_win - border = "single", - style = "minimal", - relative = "cursor", - row = 0, - col = 1, - }, - yadm = { - enable = false, - }, -} diff --git a/lua/config/hop.lua b/lua/config/hop.lua deleted file mode 100644 index 65fd792..0000000 --- a/lua/config/hop.lua +++ /dev/null @@ -1,8 +0,0 @@ -local status_ok, hop = pcall(require, "hop") -if not status_ok then - return -end - -hop.setup() -vim.api.nvim_set_keymap("n", "s", ":HopChar2<cr>", { silent = true }) -vim.api.nvim_set_keymap("n", "S", ":HopWord<cr>", { silent = true }) diff --git a/lua/config/lsp/handlers.lua b/lua/config/lsp/handlers.lua deleted file mode 100644 index ba38faa..0000000 --- a/lua/config/lsp/handlers.lua +++ /dev/null @@ -1,170 +0,0 @@ --- Handler for LSP servers. - -local M = {} - --- TODO: backfill this to template -M.setup = function() - local signs = { - { name = "DiagnosticSignError", text = "" }, - { name = "DiagnosticSignWarn", text = "" }, - { name = "DiagnosticSignHint", text = "" }, - { name = "DiagnosticSignInfo", text = "" }, - } - - for _, sign in ipairs(signs) do - vim.fn.sign_define(sign.name, { texthl = sign.name, text = sign.text, numhl = "" }) - end - - local config = { - -- disable virtual text - virtual_text = false, - -- show signs - signs = { - active = signs, - }, - update_in_insert = true, - underline = true, - severity_sort = true, - float = { - focusable = false, - style = "minimal", - border = "rounded", - source = "always", - header = "", - prefix = "", - }, - } - - vim.diagnostic.config(config) - - vim.lsp.handlers["textDocument/hover"] = vim.lsp.with(vim.lsp.handlers.hover, { - border = "rounded", - }) - - vim.lsp.handlers["textDocument/signatureHelp"] = vim.lsp.with( - vim.lsp.handlers.signature_help, - { - border = "rounded", - } - ) -end - -local function lsp_highlight_document(client) - -- Set autocommands conditional on server_capabilities - if client.resolved_capabilities.document_highlight then - vim.api.nvim_exec( - [[ - let ftToIgnore = ['html'] - augroup lsp_document_highlight - autocmd! * <buffer> - autocmd CursorHold <buffer> if index(ftToIgnore, &ft) < 0 | lua vim.lsp.buf.document_highlight() - autocmd CursorMoved <buffer> if index(ftToIgnore, &ft) < 0 | lua vim.lsp.buf.clear_references() - augroup END - ]], - false - ) - end -end -local function lsp_keymaps(bufnr) - local opts = { noremap = true, silent = true } - vim.api.nvim_buf_set_keymap( - bufnr, - "n", - "gD", - "<cmd>lua vim.lsp.buf.declaration()<CR>", - opts - ) - vim.api.nvim_buf_set_keymap( - bufnr, - "n", - "gd", - "<cmd>lua vim.lsp.buf.definition()<CR>", - opts - ) - vim.api.nvim_buf_set_keymap(bufnr, "n", "K", "<cmd>lua vim.lsp.buf.hover()<CR>", opts) - vim.api.nvim_buf_set_keymap( - bufnr, - "n", - "gi", - "<cmd>lua vim.lsp.buf.implementation()<CR>", - opts - ) - -- vim.api.nvim_buf_set_keymap(bufnr, "n", "<C-k>", "<cmd>lua vim.lsp.buf.signature_help()<CR>", opts) - -- vim.api.nvim_buf_set_keymap(bufnr, "n", "<leader>rn", "<cmd>lua vim.lsp.buf.rename()<CR>", opts) - vim.api.nvim_buf_set_keymap( - bufnr, - "n", - "gr", - "<cmd>lua vim.lsp.buf.references()<CR>", - opts - ) - -- vim.api.nvim_buf_set_keymap(bufnr, "n", "<leader>ca", "<cmd>lua vim.lsp.buf.code_action()<CR>", opts) - -- vim.api.nvim_buf_set_keymap(bufnr, "n", "<leader>f", "<cmd>lua vim.diagnostic.open_float()<CR>", opts) - -- vim.api.nvim_buf_set_keymap(bufnr, "n", "[d", '<cmd>lua vim.diagnostic.goto_prev({ border = "rounded" })<CR>', opts) - -- vim.api.nvim_buf_set_keymap(bufnr, "n", "]d", '<cmd>lua vim.diagnostic.goto_next({ border = "rounded" })<CR>', opts) - vim.api.nvim_buf_set_keymap( - bufnr, - "n", - "gl", - "<cmd>lua vim.diagnostic.open_float()<CR>", - opts - ) - vim.api.nvim_buf_set_keymap( - bufnr, - "n", - "<leader>q", - "<cmd>lua vim.diagnostic.setloclist()<CR>", - opts - ) - vim.cmd [[ command! Format execute 'lua vim.lsp.buf.formatting()' ]] -end - -M.on_attach = function(client, bufnr) - if client.name == "tsserver" then - client.resolved_capabilities.document_formatting = false - end - lsp_keymaps(bufnr) - lsp_highlight_document(client) -end - -local capabilities = vim.lsp.protocol.make_client_capabilities() - -local status_ok, cmp_nvim_lsp = pcall(require, "cmp_nvim_lsp") -if not status_ok then - return -end - -M.capabilities = cmp_nvim_lsp.update_capabilities(capabilities) - -function M.enable_format_on_save() - vim.cmd [[ - augroup format_on_save - autocmd! - autocmd BufWritePre * lua vim.lsp.buf.formatting() - augroup end - ]] - vim.notify "Enabled format on save" -end - -function M.disable_format_on_save() - M.remove_augroup "format_on_save" - vim.notify "Disabled format on save" -end - -function M.toggle_format_on_save() - if vim.fn.exists "#format_on_save#BufWritePre" == 0 then - M.enable_format_on_save() - else - M.disable_format_on_save() - end -end - -function M.remove_augroup(name) - if vim.fn.exists("#" .. name) == 1 then - vim.cmd("au! " .. name) - end -end - -vim.cmd [[ command! LspToggleAutoFormat execute 'lua require("user.lsp.handlers").toggle_format_on_save()' ]] - -return M diff --git a/lua/config/lsp/init.lua b/lua/config/lsp/init.lua deleted file mode 100644 index a0bb068..0000000 --- a/lua/config/lsp/init.lua +++ /dev/null @@ -1,10 +0,0 @@ --- Loads the LSP module. - -local status_ok, _ = pcall(require, "lspconfig") -if not status_ok then - return -end - -require "config.lsp.lsp-installer" -require("config.lsp.handlers").setup() -require "config.lsp.null-ls" diff --git a/lua/config/lsp/lsp-installer.lua b/lua/config/lsp/lsp-installer.lua deleted file mode 100644 index 8bd6b98..0000000 --- a/lua/config/lsp/lsp-installer.lua +++ /dev/null @@ -1,34 +0,0 @@ --- LSP installer. - -local status_ok, lsp_installer = pcall(require, "nvim-lsp-installer") -if not status_ok then - return -end - --- Register a handler that will be called for all installed servers. --- Alternatively, you may also register handlers on specific server instances instead (see example below). -lsp_installer.on_server_ready(function(server) - local opts = { - on_attach = require("config.lsp.handlers").on_attach, - capabilities = require("config.lsp.handlers").capabilities, - } - - if server.name == "jsonls" then - local jsonls_opts = require "config.lsp.settings.jsonls" - opts = vim.tbl_deep_extend("force", jsonls_opts, opts) - end - - if server.name == "sumneko_lua" then - local sumneko_opts = require "config.lsp.settings.sumneko_lua" - opts = vim.tbl_deep_extend("force", sumneko_opts, opts) - end - - if server.name == "pyright" then - local pyright_opts = require "config.lsp.settings.pyright" - opts = vim.tbl_deep_extend("force", pyright_opts, opts) - end - - -- This setup() function is exactly the same as lspconfig's setup function. - -- Refer to https://github.com/neovim/nvim-lspconfig/blob/master/doc/server_configurations.md - server:setup(opts) -end) diff --git a/lua/config/lsp/null-ls.lua b/lua/config/lsp/null-ls.lua deleted file mode 100644 index 662d429..0000000 --- a/lua/config/lsp/null-ls.lua +++ /dev/null @@ -1,38 +0,0 @@ --- Adds LSP diagnostics and formatting. - -local null_ls_status_ok, null_ls = pcall(require, "null-ls") -if not null_ls_status_ok then - return -end - --- https://github.com/jose-elias-alvarez/null-ls.nvim/tree/main/lua/null-ls/builtins/formatting -local formatting = null_ls.builtins.formatting - --- https://github.com/jose-elias-alvarez/null-ls.nvim/tree/main/lua/null-ls/builtins/diagnostics -local diagnostics = null_ls.builtins.diagnostics - -null_ls.setup { - debug = false, - sources = { - diagnostics.cppcheck, - diagnostics.flake8, - diagnostics.golangci_lint, - diagnostics.jsonlint, - diagnostics.shellcheck, - diagnostics.yamllint, - formatting.black.with { extra_args = { "--fast" } }, - formatting.erlfmt, - formatting.fourmolu, - formatting.gofmt, - formatting.goimports, - formatting.nixfmt, - formatting.prettier.with { - extra_args = { "--no-semi", "--single-quote", "--jsx-single-quote" }, - }, - formatting.rustfmt, - formatting.shfmt, - formatting.sqlformat, - formatting.stylua, - formatting.terraform_fmt, - }, -} diff --git a/lua/config/lsp/settings/pyright.lua b/lua/config/lsp/settings/pyright.lua deleted file mode 100644 index 780495e..0000000 --- a/lua/config/lsp/settings/pyright.lua +++ /dev/null @@ -1,12 +0,0 @@ --- Config for pyright language server. - -return { - settings = { - - python = { - analysis = { - typeCheckingMode = "off", - }, - }, - }, -} diff --git a/lua/config/lsp/settings/sumneko_lua.lua b/lua/config/lsp/settings/sumneko_lua.lua deleted file mode 100644 index ebf039f..0000000 --- a/lua/config/lsp/settings/sumneko_lua.lua +++ /dev/null @@ -1,18 +0,0 @@ --- Config for a Lua language server. - -return { - settings = { - - Lua = { - diagnostics = { - globals = { "vim" }, - }, - workspace = { - library = { - [vim.fn.expand "$VIMRUNTIME/lua"] = true, - [vim.fn.stdpath "config" .. "/lua"] = true, - }, - }, - }, - }, -} diff --git a/lua/config/lualine.lua b/lua/config/lualine.lua deleted file mode 100644 index 15ca449..0000000 --- a/lua/config/lualine.lua +++ /dev/null @@ -1,64 +0,0 @@ --- Statusbar - -local status_ok, lualine = pcall(require, "lualine") -if not status_ok then - return -end - -local hide_in_width = function() - return vim.fn.winwidth(0) > 80 -end - -local diagnostics = { - "diagnostics", - sources = { "nvim_diagnostic" }, - sections = { "error", "warn" }, - symbols = { error = " ", warn = " " }, - colored = false, - update_in_insert = false, - always_visible = true, -} - -local diff = { - "diff", - colored = false, - symbols = { added = " ", modified = " ", removed = " " }, -- changes diff symbols - cond = hide_in_width, -} - -local branch = { - "b:gitsigns_head", - icon = " ", - cond = hide_in_width, -} - -local filetype = { "filetype", cond = hide_in_width, color = {} } - -lualine.setup { - options = { - icons_enabled = true, - theme = "auto", - component_separators = { left = "", right = "" }, - section_separators = { left = "", right = "" }, - disabled_filetypes = { "alpha", "dashboard", "NvimTree", "Outline" }, - always_divide_middle = true, - }, - sections = { - lualine_a = { "mode" }, - lualine_b = { branch, "filename" }, - lualine_c = { diff }, - lualine_x = { diagnostics, filetype }, - lualine_y = {}, - lualine_z = { "location", "progress", "encoding" }, - }, - inactive_sections = { - lualine_a = { "mode" }, - lualine_b = { "filename" }, - lualine_c = {}, - lualine_x = {}, - lualine_y = {}, - lualine_z = { "location", "progress", "encoding" }, - }, - tabline = {}, - extensions = {}, -} diff --git a/lua/config/spectre.lua b/lua/config/spectre.lua deleted file mode 100644 index 0ee0d34..0000000 --- a/lua/config/spectre.lua +++ /dev/null @@ -1,135 +0,0 @@ -local status_ok, spectre = pcall(require, "spectre") -if not status_ok then - return -end -spectre.setup { - - color_devicons = true, - highlight = { - ui = "String", - search = "DiffChange", - replace = "DiffDelete", - }, - mapping = { - ["toggle_line"] = { - map = "t", - cmd = "<cmd>lua require('spectre').toggle_line()<CR>", - desc = "toggle current item", - }, - ["enter_file"] = { - map = "<cr>", - cmd = "<cmd>lua require('spectre.actions').select_entry()<CR>", - desc = "goto current file", - }, - ["send_to_qf"] = { - map = "Q", - cmd = "<cmd>lua require('spectre.actions').send_to_qf()<CR>", - desc = "send all item to quickfix", - }, - ["replace_cmd"] = { - map = "c", - cmd = "<cmd>lua require('spectre.actions').replace_cmd()<CR>", - desc = "input replace vim command", - }, - ["show_option_menu"] = { - map = "o", - cmd = "<cmd>lua require('spectre').show_options()<CR>", - desc = "show option", - }, - ["run_replace"] = { - map = "R", - cmd = "<cmd>lua require('spectre.actions').run_replace()<CR>", - desc = "replace all", - }, - ["change_view_mode"] = { - map = "m", - cmd = "<cmd>lua require('spectre').change_view()<CR>", - desc = "change result view mode", - }, - ["toggle_ignore_case"] = { - map = "I", - cmd = "<cmd>lua require('spectre').change_options('ignore-case')<CR>", - desc = "toggle ignore case", - }, - ["toggle_ignore_hidden"] = { - map = "H", - cmd = "<cmd>lua require('spectre').change_options('hidden')<CR>", - desc = "toggle search hidden", - }, - -- you can put your mapping here it only use normal mode - }, - find_engine = { - -- rg is map with finder_cmd - ["rg"] = { - cmd = "rg", - -- default args - args = { - "--color=never", - "--no-heading", - "--with-filename", - "--line-number", - "--column", - }, - options = { - ["ignore-case"] = { - value = "--ignore-case", - icon = "[I]", - desc = "ignore case", - }, - ["hidden"] = { - value = "--hidden", - desc = "hidden file", - icon = "[H]", - }, - -- you can put any option you want here it can toggle with - -- show_option function - }, - }, - ["ag"] = { - cmd = "ag", - args = { - "--vimgrep", - "-s", - }, - options = { - ["ignore-case"] = { - value = "-i", - icon = "[I]", - desc = "ignore case", - }, - ["hidden"] = { - value = "--hidden", - desc = "hidden file", - icon = "[H]", - }, - }, - }, - }, - replace_engine = { - ["sed"] = { - cmd = "sed", - args = nil, - }, - options = { - ["ignore-case"] = { - value = "--ignore-case", - icon = "[I]", - desc = "ignore case", - }, - }, - }, - default = { - find = { - --pick one of item in find_engine - cmd = "rg", - options = { "ignore-case" }, - }, - replace = { - --pick one of item in replace_engine - cmd = "sed", - }, - }, - replace_vim_cmd = "cdo", - is_open_target_win = true, --open file on opener window - is_insert_mode = false, -- start open panel on is_insert_mode -} diff --git a/lua/config/telescope.lua b/lua/config/telescope.lua deleted file mode 100644 index b7ef6e4..0000000 --- a/lua/config/telescope.lua +++ /dev/null @@ -1,120 +0,0 @@ --- Telescope a highly extendable fuzzy finder over lists. - -local status_ok, telescope = pcall(require, "telescope") -if not status_ok then - return -end - -local actions = require "telescope.actions" - -telescope.setup { - defaults = { - prompt_prefix = " ", - selection_caret = " ", - path_display = { "smart" }, - initial_mode = "insert", - selection_strategy = "reset", - sorting_strategy = "ascending", - layout_strategy = "horizontal", - layout_config = { - prompt_position = "top", - preview_cutoff = 120, - horizontal = { mirror = false }, - vertical = { mirror = false }, - }, - vimgrep_arguments = { - "rg", - "--color=never", - "--no-heading", - "--with-filename", - "--line-number", - "--column", - "--smart-case", - "--hidden", - }, - mappings = { - i = { - ["<C-n>"] = actions.cycle_history_next, - ["<C-p>"] = actions.cycle_history_prev, - - ["<C-j>"] = actions.move_selection_next, - ["<C-k>"] = actions.move_selection_previous, - - ["<C-c>"] = actions.close, - - ["<Down>"] = actions.move_selection_next, - ["<Up>"] = actions.move_selection_previous, - - ["<CR>"] = actions.select_default, - ["<C-x>"] = actions.select_horizontal, - ["<C-v>"] = actions.select_vertical, - ["<C-t>"] = actions.select_tab, - - ["<C-u>"] = actions.preview_scrolling_up, - ["<C-d>"] = actions.preview_scrolling_down, - - ["<PageUp>"] = actions.results_scrolling_up, - ["<PageDown>"] = actions.results_scrolling_down, - - ["<Tab>"] = actions.toggle_selection + actions.move_selection_worse, - ["<S-Tab>"] = actions.toggle_selection + actions.move_selection_better, - ["<C-q>"] = actions.send_to_qflist + actions.open_qflist, - ["<M-q>"] = actions.send_selected_to_qflist + actions.open_qflist, - ["<C-l>"] = actions.complete_tag, - ["<C-_>"] = actions.which_key, -- keys from pressing <C-/> - }, - n = { - ["<esc>"] = actions.close, - ["<CR>"] = actions.select_default, - ["<C-x>"] = actions.select_horizontal, - ["<C-v>"] = actions.select_vertical, - ["<C-t>"] = actions.select_tab, - - ["<Tab>"] = actions.toggle_selection + actions.move_selection_worse, - ["<S-Tab>"] = actions.toggle_selection + actions.move_selection_better, - ["<C-q>"] = actions.send_to_qflist + actions.open_qflist, - ["<M-q>"] = actions.send_selected_to_qflist + actions.open_qflist, - - ["j"] = actions.move_selection_next, - ["k"] = actions.move_selection_previous, - ["H"] = actions.move_to_top, - ["M"] = actions.move_to_middle, - ["L"] = actions.move_to_bottom, - - ["<Down>"] = actions.move_selection_next, - ["<Up>"] = actions.move_selection_previous, - ["gg"] = actions.move_to_top, - ["G"] = actions.move_to_bottom, - - ["<C-u>"] = actions.preview_scrolling_up, - ["<C-d>"] = actions.preview_scrolling_down, - - ["<PageUp>"] = actions.results_scrolling_up, - ["<PageDown>"] = actions.results_scrolling_down, - - ["?"] = actions.which_key, - }, - }, - }, - pickers = { - -- Default configuration for builtin pickers goes here: - -- picker_name = { - -- picker_config_key = value, - -- ... - -- } - -- Now the picker_config_key will be applied every time you call this - -- builtin picker - }, - extensions = { - fzf = { - fuzzy = true, -- false will only do exact matching - override_generic_sorter = true, -- override the generic sorter - override_file_sorter = true, -- override the file sorter - case_mode = "smart_case", -- or "ignore_case" or "respect_case" - -- the default case_mode is "smart_case" - }, - }, -} - -telescope.load_extension "fzf" -telescope.load_extension "file_browser" diff --git a/lua/config/treesitter.lua b/lua/config/treesitter.lua deleted file mode 100644 index ec914fe..0000000 --- a/lua/config/treesitter.lua +++ /dev/null @@ -1,29 +0,0 @@ --- Treesitter is a tool for building syntax trees for source files. --- In the neovim context it helps with better coloring. - -local status_ok, treesitter = pcall(require, "nvim-treesitter.configs") -if not status_ok then - return -end - -treesitter.setup { - ensure_installed = "maintained", - sync_install = false, - ignore_install = { "" }, -- List of parsers to ignore installing - autopairs = { - enable = true, - }, - highlight = { - enable = true, -- false will disable the whole extension - disable = { "org" }, -- list of language that will be disabled - additional_vim_regex_highlighting = { "org" }, - }, - context_commentstring = { - enable = true, - enable_autocmd = false, - }, - indent = { enable = true, disable = { "yaml", "python", "css" } }, - playground = { - enable = true, - }, -} diff --git a/lua/config/whichkey.lua b/lua/config/whichkey.lua deleted file mode 100644 index f68cdc9..0000000 --- a/lua/config/whichkey.lua +++ /dev/null @@ -1,217 +0,0 @@ -local status_ok, which_key = pcall(require, "which-key") -if not status_ok then - return -end - -local setup = { - plugins = { - marks = true, -- shows a list of your marks on ' and ` - registers = true, -- shows your registers on " in NORMAL or <C-r> in INSERT mode - spelling = { - enabled = true, -- enabling this will show WhichKey when pressing z= to select spelling suggestions - suggestions = 20, -- how many suggestions should be shown in the list? - }, - -- the presets plugin, adds help for a bunch of default keybindings in Neovim - -- No actual key bindings are created - presets = { - operators = false, -- adds help for operators like d, y, ... and registers them for motion / text object completion - motions = false, -- adds help for motions - text_objects = false, -- help for text objects triggered after entering an operator - windows = true, -- default bindings on <c-w> - nav = true, -- misc bindings to work with windows - z = true, -- bindings for folds, spelling and others prefixed with z - g = true, -- bindings for prefixed with g - }, - }, - -- add operators that will trigger motion and text object completion - -- to enable all native operators, set the preset / operators plugin above - -- operators = { gc = "Comments" }, - key_labels = { - -- override the label used to display some keys. It doesn't effect WK in any other way. - -- For example: - -- ["<space>"] = "SPC", - -- ["<cr>"] = "RET", - -- ["<tab>"] = "TAB", - }, - icons = { - breadcrumb = "»", -- symbol used in the command line area that shows your active key combo - separator = "", -- symbol used between a key and it's label - group = "+", -- symbol prepended to a group - }, - popup_mappings = { - scroll_down = "<c-d>", -- binding to scroll down inside the popup - scroll_up = "<c-u>", -- binding to scroll up inside the popup - }, - window = { - border = "rounded", -- none, single, double, shadow - position = "bottom", -- bottom, top - margin = { 1, 0, 1, 0 }, -- extra window margin [top, right, bottom, left] - padding = { 2, 2, 2, 2 }, -- extra window padding [top, right, bottom, left] - winblend = 0, - }, - layout = { - height = { min = 4, max = 25 }, -- min and max height of the columns - width = { min = 20, max = 50 }, -- min and max width of the columns - spacing = 3, -- spacing between columns - align = "left", -- align columns left, center or right - }, - ignore_missing = true, -- enable this to hide mappings for which you didn't specify a label - hidden = { "<silent>", "<cmd>", "<Cmd>", "<CR>", "call", "lua", "^:", "^ " }, -- hide mapping boilerplate - show_help = true, -- show help message on the command line when the popup is visible - triggers = "auto", -- automatically setup triggers - -- triggers = {"<leader>"} -- or specify a list manually - triggers_blacklist = { - -- list of mode / prefixes that should never be hooked by WhichKey - -- this is mostly relevant for key maps that start with a native binding - -- most people should not need to change this - i = { "j", "k" }, - v = { "j", "k" }, - }, -} - -local opts = { - mode = "n", -- NORMAL mode - prefix = "<leader>", - buffer = nil, -- Global mappings. Specify a buffer number for buffer local mappings - silent = true, -- use `silent` when creating keymaps - noremap = true, -- use `noremap` when creating keymaps - nowait = true, -- use `nowait` when creating keymaps -} - -local mappings = { - ["k"] = { '<cmd>lua require("Comment.api").toggle_current_linewise()<CR>', "Comment" }, - ["a"] = { "<cmd>Alpha<cr>", "Alpha" }, - ["b"] = { - "<cmd>lua require('telescope.builtin').buffers(require('telescope.themes').get_dropdown{previewer = false})<cr>", - "Buffers", - }, - ["e"] = { "<cmd>NvimTreeToggle<cr>", "Explorer" }, - ["c"] = { "<cmd>Bdelete!<CR>", "Close Buffer" }, - ["n"] = { "<cmd>nohlsearch<CR>", "No Highlight" }, - ["f"] = { - "<cmd>lua require('telescope.builtin').find_files(require('telescope.themes').get_dropdown{previewer = false})<cr>", - "Find files", - }, - ["F"] = { "<cmd>Telescope file_browser<cr>", "Browse files" }, - ["t"] = { "<cmd>Telescope live_grep theme=ivy<cr>", "Find Text" }, - ["P"] = { "<cmd>Telescope projects<cr>", "Projects" }, - ["z"] = { "<cmd>ZenMode<cr>", "Zen Mode" }, - ["v"] = { "<cmd>vsplit<cr>", "Vertical Split" }, - ["h"] = { "<cmd>split<cr>", "Horizontal Split" }, - - p = { - name = "Packer", - c = { "<cmd>PackerCompile<cr>", "Compile" }, - i = { "<cmd>PackerInstall<cr>", "Install" }, - s = { "<cmd>PackerSync<cr>", "Sync" }, - S = { "<cmd>PackerStatus<cr>", "Status" }, - u = { "<cmd>PackerUpdate<cr>", "Update" }, - }, - - g = { - name = "Git", - g = { "<cmd>lua _LAZYGIT_TOGGLE()<CR>", "Lazygit" }, - j = { "<cmd>lua require 'gitsigns'.next_hunk()<cr>", "Next Hunk" }, - k = { "<cmd>lua require 'gitsigns'.prev_hunk()<cr>", "Prev Hunk" }, - l = { "<cmd>lua require 'gitsigns'.blame_line()<cr>", "Blame" }, - p = { "<cmd>lua require 'gitsigns'.preview_hunk()<cr>", "Preview Hunk" }, - r = { "<cmd>lua require 'gitsigns'.reset_hunk()<cr>", "Reset Hunk" }, - R = { "<cmd>lua require 'gitsigns'.reset_buffer()<cr>", "Reset Buffer" }, - s = { "<cmd>lua require 'gitsigns'.stage_hunk()<cr>", "Stage Hunk" }, - u = { - "<cmd>lua require 'gitsigns'.undo_stage_hunk()<cr>", - "Undo Stage Hunk", - }, - o = { "<cmd>Telescope git_status<cr>", "Open changed file" }, - b = { "<cmd>Telescope git_branches<cr>", "Checkout branch" }, - c = { "<cmd>Telescope git_commits<cr>", "Checkout commit" }, - d = { - "<cmd>Gitsigns diffthis HEAD<cr>", - "Diff", - }, - }, - - l = { - name = "LSP", - a = { "<cmd>lua vim.lsp.buf.code_action()<cr>", "Code Action" }, - d = { - "<cmd>Telescope lsp_document_diagnostics<cr>", - "Document Diagnostics", - }, - w = { - "<cmd>Telescope lsp_workspace_diagnostics<cr>", - "Workspace Diagnostics", - }, - f = { "<cmd>lua vim.lsp.buf.formatting()<cr>", "Format" }, - i = { "<cmd>LspInfo<cr>", "Info" }, - I = { "<cmd>LspInstallInfo<cr>", "Installer Info" }, - j = { - "<cmd>lua vim.lsp.diagnostic.goto_next()<CR>", - "Next Diagnostic", - }, - k = { - "<cmd>lua vim.lsp.diagnostic.goto_prev()<cr>", - "Prev Diagnostic", - }, - l = { "<cmd>lua vim.lsp.codelens.run()<cr>", "CodeLens Action" }, - q = { "<cmd>lua vim.lsp.diagnostic.set_loclist()<cr>", "Quickfix" }, - r = { "<cmd>lua vim.lsp.buf.rename()<cr>", "Rename" }, - s = { "<cmd>Telescope lsp_document_symbols<cr>", "Document Symbols" }, - S = { - "<cmd>Telescope lsp_dynamic_workspace_symbols<cr>", - "Workspace Symbols", - }, - }, - - s = { - name = "Search", - b = { "<cmd>Telescope git_branches<cr>", "Checkout branch" }, - c = { "<cmd>Telescope colorscheme<cr>", "Colorscheme" }, - h = { "<cmd>Telescope help_tags<cr>", "Find Help" }, - M = { "<cmd>Telescope man_pages<cr>", "Man Pages" }, - r = { "<cmd>Telescope oldfiles<cr>", "Open Recent File" }, - R = { "<cmd>Telescope registers<cr>", "Registers" }, - k = { "<cmd>Telescope keymaps<cr>", "Keymaps" }, - C = { "<cmd>Telescope commands<cr>", "Commands" }, - }, - - o = { - name = "Orgmode", - a = {"<cmd>lua require('orgmode').action('agenda.prompt')", "Open agenda prompt"}, - c = {"<cmd>lua require('orgmode').action('capture.prompt')", "Open capture prompt"}, - }, - - r = { - name = "Replace", - r = { "<cmd>lua require('spectre').open()<cr>", "Replace" }, - w = { - "<cmd>lua require('spectre').open_visual({select_word=true})<cr>", - "Replace Word", - }, - f = { "<cmd>lua require('spectre').open_file_search()<cr>", "Replace Buffer" }, - }, - - T = { - name = "Treesitter", - p = { "<cmd>TSPlaygroundToggle<cr>", "Playground" }, - }, -} - -local vopts = { - mode = "v", -- VISUAL mode - prefix = "<leader>", - buffer = nil, -- Global mappings. Specify a buffer number for buffer local mappings - silent = true, -- use `silent` when creating keymaps - noremap = true, -- use `noremap` when creating keymaps - nowait = true, -- use `nowait` when creating keymaps -} -local vmappings = { - ["k"] = { - '<ESC><CMD>lua require("Comment.api").toggle_linewise_op(vim.fn.visualmode())<CR>', - "Comment", - }, -} - -which_key.setup(setup) -which_key.register(mappings, opts) -which_key.register(vmappings, vopts) diff --git a/lua/config/zen.lua b/lua/config/zen.lua deleted file mode 100644 index b54442d..0000000 --- a/lua/config/zen.lua +++ /dev/null @@ -1,28 +0,0 @@ --- Zen mode - -local status_ok, zen_mode = pcall(require, "zen-mode") -if not status_ok then - return -end - -zen_mode.setup { - window = { - backdrop = 1, - height = 1, -- height of the Zen window - width = 120, - options = { - signcolumn = "no", -- disable signcolumn - number = false, -- disable number column - relativenumber = false, -- disable relative numbers - -- cursorline = false, -- disable cursorline - -- cursorcolumn = false, -- disable cursor column - -- foldcolumn = "0", -- disable fold column - -- list = false, -- disable whitespace characters - }, - }, - plugins = { - gitsigns = { enabled = false }, -- disables git signs - tmux = { enabled = true }, - twilight = { enabled = true }, - }, -} diff --git a/lua/settings/init.lua b/lua/settings/init.lua deleted file mode 100644 index dfcaf8f..0000000 --- a/lua/settings/init.lua +++ /dev/null @@ -1,4 +0,0 @@ --- Load nvim settings - -require "settings.options" -require "settings.keymaps" diff --git a/lua/settings/keymaps.lua b/lua/settings/keymaps.lua deleted file mode 100644 index 8d8ed73..0000000 --- a/lua/settings/keymaps.lua +++ /dev/null @@ -1,59 +0,0 @@ --- Custom keymappings. - -local opts = { noremap = true, silent = true } - --- Shorten function name -local keymap = vim.api.nvim_set_keymap - ---Remap space as leader key -keymap("", "<Space>", "<Nop>", opts) -vim.g.mapleader = " " -vim.g.maplocalleader = " " - --- Modes --- normal_mode = "n", --- insert_mode = "i", --- visual_mode = "v", --- visual_block_mode = "x", --- term_mode = "t", --- command_mode = "c", - --- Normal -- --- Better window navigation -keymap("n", "<C-h>", "<C-w>h", opts) -keymap("n", "<C-j>", "<C-w>j", opts) -keymap("n", "<C-k>", "<C-w>k", opts) -keymap("n", "<C-l>", "<C-w>l", opts) - -keymap("n", "<leader>e", ":Lex 30<cr>", opts) - --- Resize with arrows -keymap("n", "<C-Up>", ":resize +2<CR>", opts) -keymap("n", "<C-Down>", ":resize -2<CR>", opts) -keymap("n", "<C-Left>", ":vertical resize -2<CR>", opts) -keymap("n", "<C-Right>", ":vertical resize +2<CR>", opts) - --- Navigate buffers -keymap("n", "<S-l>", ":bnext<CR>", opts) -keymap("n", "<S-h>", ":bprevious<CR>", opts) - --- Insert -- --- Press jk fast to enter -keymap("i", "jk", "<ESC>", opts) - --- Visual -- --- Stay in indent mode -keymap("v", "<", "<gv", opts) -keymap("v", ">", ">gv", opts) - --- Move text up and down -keymap("v", "<A-j>", ":m .+1<CR>==", opts) -keymap("v", "<A-k>", ":m .-2<CR>==", opts) -keymap("v", "p", '"_dP', opts) - --- Visual Block -- --- Move text up and down -keymap("x", "J", ":move '>+1<CR>gv-gv", opts) -keymap("x", "K", ":move '<-2<CR>gv-gv", opts) -keymap("x", "<A-j>", ":move '>+1<CR>gv-gv", opts) -keymap("x", "<A-k>", ":move '<-2<CR>gv-gv", opts) diff --git a/lua/settings/options.lua b/lua/settings/options.lua deleted file mode 100644 index 65a4143..0000000 --- a/lua/settings/options.lua +++ /dev/null @@ -1,48 +0,0 @@ --- Sets options in neovim - -local options = { - backup = false, -- creates a backup file - clipboard = "unnamedplus", -- allows neovim to access the system clipboard - cmdheight = 2, -- more space in the neovim command line for displaying messages - completeopt = { "menuone", "noselect" }, -- mostly just for cmp - conceallevel = 0, -- so that `` is visible in markdown files - fileencoding = "utf-8", -- the encoding written to a file - hlsearch = true, -- highlight all matches on previous search pattern - ignorecase = true, -- ignore case in search patterns - mouse = "", -- disable the mouse to be used in neovim - pumheight = 10, -- pop up menu height - showmode = false, -- we don't need to see things like -- INSERT -- anymore - showtabline = 2, -- always show tabs - smartcase = true, -- smart case - smartindent = true, -- make indenting smarter again - splitbelow = true, -- force all horizontal splits to go below current window - splitright = true, -- force all vertical splits to go to the right of current window - swapfile = false, -- creates a swapfile - termguicolors = true, -- set term gui colors (most terminals support this) - timeoutlen = 1000, -- time to wait for a mapped sequence to complete (in milliseconds) - undofile = true, -- enable persistent undo - updatetime = 300, -- faster completion (4000ms default) - writebackup = false, -- if a file is being edited by another program (or was written to file while editing with another program), it is not allowed to be edited - expandtab = true, -- convert tabs to spaces - shiftwidth = 2, -- the number of spaces inserted for each indentation - tabstop = 2, -- insert 2 spaces for a tab - cursorline = true, -- highlight the current line - number = true, -- set numbered lines - relativenumber = true, -- set relative numbered lines - numberwidth = 4, -- set number column width to 2 {default 4} - signcolumn = "yes", -- always show the sign column, otherwise it would shift the text each time - wrap = false, -- display lines as one long line - scrolloff = 8, -- is one of my fav - sidescrolloff = 8, - guifont = "monospace:h17", -- the font used in graphical neovim applications -} - -vim.opt.shortmess:append "c" - -for k, v in pairs(options) do - vim.opt[k] = v -end - -vim.cmd "set whichwrap+=<,>,[,],h,l" -vim.cmd [[set iskeyword+=-]] -vim.cmd [[set formatoptions-=cro]] |