diff options
Diffstat (limited to 'pkgs/custom-neovim/config')
| -rw-r--r-- | pkgs/custom-neovim/config/lua/keymaps.lua | 14 | ||||
| -rw-r--r-- | pkgs/custom-neovim/config/lua/plugins/auto-session.lua | 12 | ||||
| -rw-r--r-- | pkgs/custom-neovim/config/lua/plugins/blink.lua | 13 | ||||
| -rw-r--r-- | pkgs/custom-neovim/config/lua/plugins/fzf.lua | 22 | ||||
| -rw-r--r-- | pkgs/custom-neovim/config/lua/plugins/image.lua | 7 | ||||
| -rw-r--r-- | pkgs/custom-neovim/config/lua/plugins/markdown.lua | 16 | ||||
| -rw-r--r-- | pkgs/custom-neovim/config/lua/plugins/mini-completion.lua | 39 | ||||
| -rw-r--r-- | pkgs/custom-neovim/config/lua/statusline.lua | 15 |
8 files changed, 71 insertions, 67 deletions
diff --git a/pkgs/custom-neovim/config/lua/keymaps.lua b/pkgs/custom-neovim/config/lua/keymaps.lua index 9c1d260..535962d 100644 --- a/pkgs/custom-neovim/config/lua/keymaps.lua +++ b/pkgs/custom-neovim/config/lua/keymaps.lua @@ -68,11 +68,11 @@ mapkey("n", "<leader>ws", "Save current session", ":AutoSession save<cr>") mapkey("n", "<leader>wr", "Open last session", ":AutoSession restore<cr>") mapkey("n", "<leader>wp", "Purge orphaned sessions", ":AutoSession purgeOrphaned<cr>") mapkey("n", "<leader>wl", "Leave current session", function() - vim.cmd.wa() + vim.cmd("wa") vim.cmd("AutoSession save") - vim.cmd.new() + vim.cmd("new") vim.cmd([[.+,$bwipeout]]) - vim.cmd.cd("~") + vim.cmd("cd ~") end) -- Terminal @@ -104,8 +104,8 @@ mapkey({ "n", "v" }, "<up>", "Go up visually", "g<up>") -- QOL Keys mapkey("t", "<Esc><Esc>", "Exit terminal insert mode", "<C-\\><C-n>") -vim.keymap.set("c", "<cr>", function() - if vim.fn.pumvisible() == 1 then return '<c-y>' end - return '<cr>' -end, { expr = true }) -- Make enter complete command. +-- vim.keymap.set("c", "<cr>", function() +-- if vim.fn.pumvisible() == 1 then return '<c-y>' end +-- return '<cr>' +-- end, { expr = true }) -- Make enter complete command. mapkey("n", "<esc>", "Clear highlights", ":noh<cr>") -- Make esc clear highlights diff --git a/pkgs/custom-neovim/config/lua/plugins/auto-session.lua b/pkgs/custom-neovim/config/lua/plugins/auto-session.lua index deedd9a..f352cad 100644 --- a/pkgs/custom-neovim/config/lua/plugins/auto-session.lua +++ b/pkgs/custom-neovim/config/lua/plugins/auto-session.lua @@ -4,7 +4,19 @@ return { after = function() require("auto-session").setup { auto_create = false, + auto_restore = true, legacy_cmds = false, + + cwd_change_handling = true, + pre_cwd_changed_cmds = { + "wa", + "silent %bw!", + "clearjumps", + "lua MiniClue.ensure_buf_triggers()", + }, + + git_use_branch_name = true, + git_auto_restore_on_branch_change = true, suppressed_dirs = { "~/", }, diff --git a/pkgs/custom-neovim/config/lua/plugins/blink.lua b/pkgs/custom-neovim/config/lua/plugins/blink.lua index 7ff0072..030a556 100644 --- a/pkgs/custom-neovim/config/lua/plugins/blink.lua +++ b/pkgs/custom-neovim/config/lua/plugins/blink.lua @@ -1,10 +1,17 @@ return { "blink.cmp", - lazy = true, - event = "InsertEnter", + lazy = false, after = function () require("blink.cmp").setup { - keymap = { preset = 'default' }, + keymap = { + preset = 'default', + + ['<Up'] = false, + ['<Down>'] = false, + + ['<Tab>'] = {'select_next', 'fallback'}, + ['<S-Tab>'] = {'select_prev'}, + }, sources = { default = { 'lsp', 'snippets', 'path' }, }, diff --git a/pkgs/custom-neovim/config/lua/plugins/fzf.lua b/pkgs/custom-neovim/config/lua/plugins/fzf.lua index 1c1b9aa..e8987a9 100644 --- a/pkgs/custom-neovim/config/lua/plugins/fzf.lua +++ b/pkgs/custom-neovim/config/lua/plugins/fzf.lua @@ -11,14 +11,20 @@ return { require("fzf-lua").register_ui_select() + local multiline_string_to_table = function (input_str) + local lines = {} + for line in input_str:gmatch("[^\r\n]+") do + table.insert(lines, line) + end + return lines + end + Custom_pickers = {} Custom_pickers.fzf_dir_cd = function() local dirs = {} - for name, type in vim.fs.dir("./", {depth = 100}) do - if type == "directory" then - table.insert(dirs, name) - end + for i, name in ipairs(multiline_string_to_table(vim.fn.system("fd -t d"))) do + table.insert(dirs, name) end require("fzf-lua").fzf_exec( dirs, { @@ -36,10 +42,8 @@ return { Custom_pickers.fzf_dir_tcd = function() local dirs = {} - for name, type in vim.fs.dir("./", {depth = 100}) do - if type == "directory" then - table.insert(dirs, name) - end + for i, name in ipairs(multiline_string_to_table(vim.fn.system("fd -t d"))) do + table.insert(dirs, name) end require("fzf-lua").fzf_exec( dirs, { @@ -54,5 +58,5 @@ return { } }) end - end, + end } diff --git a/pkgs/custom-neovim/config/lua/plugins/image.lua b/pkgs/custom-neovim/config/lua/plugins/image.lua deleted file mode 100644 index ca02217..0000000 --- a/pkgs/custom-neovim/config/lua/plugins/image.lua +++ /dev/null @@ -1,7 +0,0 @@ -return { - "image.nvim", - lazy = false, - after = function () - require("image").setup{} - end -} diff --git a/pkgs/custom-neovim/config/lua/plugins/markdown.lua b/pkgs/custom-neovim/config/lua/plugins/markdown.lua index d5398ff..0ff22f7 100644 --- a/pkgs/custom-neovim/config/lua/plugins/markdown.lua +++ b/pkgs/custom-neovim/config/lua/plugins/markdown.lua @@ -39,11 +39,27 @@ return { mapkey("n", "<leader>mt", "Toggle table mode", ":Mtm<cr>") mapkey({"n", "v"}, "<leader>mm", "Toggle checkbox", ":MDTaskToggle<cr>") mapkey("n", "<leader>mv", "Toggle markdown preview", ":RenderMarkdown toggle<cr>") + mapkey("n", "<leader>mp", "Paste image", ":PasteImage<cr>") end, } end }, { + "img-clip.nvim", + lazy = true, + ft = { + "markdown", + }, + cmd = { + "PasteImage", + "ImgClipDebug", + "ImgClipConfig", + }, + after = function () + require("img-clip").setup {} + end, + }, + { "markdown-table-mode.nvim", lazy = true, ft = "markdown", diff --git a/pkgs/custom-neovim/config/lua/plugins/mini-completion.lua b/pkgs/custom-neovim/config/lua/plugins/mini-completion.lua deleted file mode 100644 index 7cc0fa6..0000000 --- a/pkgs/custom-neovim/config/lua/plugins/mini-completion.lua +++ /dev/null @@ -1,39 +0,0 @@ -return { - "mini.completion", - enabled = true, - lazy = true, - event = "InsertEnter", - after = function() - require("mini.completion").setup { - window = { - info = { - border = "rounded", - }, - signature = { - border = "rounded", - }, - }, - } - local imap_expr = function(lhs, rhs) - vim.keymap.set('i', lhs, rhs, { expr = true }) - end - imap_expr('<Tab>', [[pumvisible() ? "\<C-n>" : "\<Tab>"]]) - imap_expr('<S-Tab>', [[pumvisible() ? "\<C-p>" : "\<S-Tab>"]]) - - -- Disable arrow keys from navigating completion window. - -- I like to navigate inside insert mode and the window prevents that. - - vim.keymap.set('i', '<Up>', function() - -- cancel completion popup - vim.fn.complete(vim.fn.col('.'), {}) - - vim.api.nvim_feedkeys(vim.api.nvim_replace_termcodes('<Up>', true, false, true), 'n', true) - end, { noremap = true, desc = 'Cancel completion and move cursor up' }) - - vim.keymap.set('i', '<Down>', function() - vim.fn.complete(vim.fn.col('.'), {}) - - vim.api.nvim_feedkeys(vim.api.nvim_replace_termcodes('<Down>', true, false, true), 'n', true) - end, { noremap = true, desc = 'Cancel completion and move cursor down' }) - end -} diff --git a/pkgs/custom-neovim/config/lua/statusline.lua b/pkgs/custom-neovim/config/lua/statusline.lua index 1c1bc31..dc7bce7 100644 --- a/pkgs/custom-neovim/config/lua/statusline.lua +++ b/pkgs/custom-neovim/config/lua/statusline.lua @@ -253,17 +253,28 @@ components.tab_counter = function (args) return before..icon..current_tab_index.."/"..num_tabs..after end +components.session_name = function (args) + args = args or {} + local before = args.before or "" + local after = args.after or "" + + if not vim.g.loaded_auto_session then + return "" + end + + return before..require("auto-session.lib").current_session_name(true)..after +end + -- Define Statusline local statusline = function () return { components.mode({before = " "}), components.git_branch(), - -- components.git_status(), components.cwd(), "%=", - -- components.diagnostics(), + components.session_name(), components.tab_counter(), components.location({after = vim.g.neovide and " " or ""}), components.progress({after = ""}), |
