diff options
-rw-r--r-- | nvim/.config/nvim/lazy-lock.json | 21 | ||||
-rw-r--r-- | nvim/.config/nvim/lua/tobyvin/lsp.lua | 22 | ||||
-rw-r--r-- | nvim/.config/nvim/lua/tobyvin/plugins.lua | 22 | ||||
-rw-r--r-- | nvim/.config/nvim/lua/tobyvin/plugins/cmp.lua | 10 | ||||
-rw-r--r-- | nvim/.config/nvim/lua/tobyvin/plugins/dap.lua | 59 | ||||
-rw-r--r-- | nvim/.config/nvim/lua/tobyvin/plugins/dressing.lua | 2 | ||||
-rw-r--r-- | nvim/.config/nvim/lua/tobyvin/plugins/fidget.lua | 1 | ||||
-rw-r--r-- | nvim/.config/nvim/lua/tobyvin/plugins/git-conflict.lua | 17 | ||||
-rw-r--r-- | nvim/.config/nvim/lua/tobyvin/plugins/gitsigns.lua | 1 | ||||
-rw-r--r-- | nvim/.config/nvim/lua/tobyvin/plugins/harpoon.lua | 5 | ||||
-rw-r--r-- | nvim/.config/nvim/lua/tobyvin/plugins/lspconfig.lua | 9 | ||||
-rw-r--r-- | nvim/.config/nvim/lua/tobyvin/plugins/neogit.lua | 15 | ||||
-rw-r--r-- | nvim/.config/nvim/lua/tobyvin/plugins/refactoring.lua | 7 | ||||
-rw-r--r-- | nvim/.config/nvim/lua/tobyvin/plugins/rust-tools.lua | 2 | ||||
-rw-r--r-- | nvim/.config/nvim/lua/tobyvin/plugins/undotree.lua | 17 | ||||
-rw-r--r-- | nvim/.config/nvim/lua/tobyvin/plugins/yanky.lua | 16 |
16 files changed, 118 insertions, 108 deletions
diff --git a/nvim/.config/nvim/lazy-lock.json b/nvim/.config/nvim/lazy-lock.json index 7248728..81905c2 100644 --- a/nvim/.config/nvim/lazy-lock.json +++ b/nvim/.config/nvim/lazy-lock.json @@ -2,7 +2,7 @@ "Comment.nvim": { "branch": "master", "commit": "5f01c1a89adafc52bf34e3bf690f80d9d726715d" }, "LuaSnip": { "branch": "master", "commit": "5570fd797eae0790affb54ea669a150cad76db5d" }, "LuaSnip-snippets.nvim": { "branch": "main", "commit": "d7e40e4cce622eab2316607dbcd8d6039bcb9fe0" }, - "SchemaStore.nvim": { "branch": "main", "commit": "d1625bb74b3a7f84aad278a7968f4496ae8936c6" }, + "SchemaStore.nvim": { "branch": "main", "commit": "9f294b2f5890210293e59a1702c3ee504ec7704e" }, "alpha-nvim": { "branch": "main", "commit": "21a0f2520ad3a7c32c0822f943368dc063a569fb" }, "cmp-buffer": { "branch": "main", "commit": "3022dbc9166796b644a841a02de8dd1cc1d311fa" }, "cmp-cmdline": { "branch": "main", "commit": "23c51b2a3c00f6abc4e922dbd7c3b9aca6992063" }, @@ -23,13 +23,13 @@ "dressing.nvim": { "branch": "master", "commit": "4436d6f41e2f6b8ada57588acd1a9f8b3d21453c" }, "fidget.nvim": { "branch": "main", "commit": "44585a0c0085765195e6961c15529ba6c5a2a13b" }, "friendly-snippets": { "branch": "main", "commit": "1a6a02350568d6830bcfa167c72f9b6e75e454ae" }, - "fzf": { "branch": "master", "commit": "73162a4bc3403e3532afa8a95008a3b4a00d554a" }, + "fzf": { "branch": "master", "commit": "8e283f512acb74faef6f1760927e1ef4da1b5263" }, "git-conflict.nvim": { "branch": "main", "commit": "77faa75c09a6af88e7b54d8d456327e06611f7ea" }, "gitsigns.nvim": { "branch": "main", "commit": "2ab3bdf0a40bab53033048c6be75bda86316b55d" }, "gruvbox.nvim": { "branch": "main", "commit": "c64ec557672c9c8ecc71a438533525482021377f" }, "harpoon": { "branch": "master", "commit": "21d0d1bfa3000e4384740bfaefa0ebc51c773786" }, "indent-blankline.nvim": { "branch": "master", "commit": "c4c203c3e8a595bc333abaf168fcb10c13ed5fb7" }, - "lazy.nvim": { "branch": "main", "commit": "e5dcc871491eadc5ed98e633afc519670e71c4a1" }, + "lazy.nvim": { "branch": "main", "commit": "a973c2edc2167012d4721a784a0da46906cf005c" }, "lsp_signature.nvim": { "branch": "master", "commit": "600b2729ad8649d0745c76c55f5fd7586713d6dd" }, "lspkind-nvim": { "branch": "master", "commit": "c68b3a003483cf382428a43035079f78474cd11e" }, "lualine.nvim": { "branch": "master", "commit": "fffbcb829288c3ca366f17cdb8d46aefb5c1d6f3" }, @@ -41,21 +41,20 @@ "neodev.nvim": { "branch": "main", "commit": "c5f0a814abf89b5b1e3cfed95322813939bdc0c5" }, "neogit": { "branch": "master", "commit": "0d6002c6af432343937283fb70791fc76fa7227c" }, "neovim-session-manager": { "branch": "master", "commit": "f8c85da390c5d1ad3bfd229ac2ed805c5742263d" }, - "null-ls.nvim": { "branch": "main", "commit": "ef9010b2ac11e2068a8e1d5a4eff576289a1f9a4" }, - "numb.nvim": { "branch": "master", "commit": "d95b7ea62e320b02ca1aa9df3635471a88d6f3b1" }, + "null-ls.nvim": { "branch": "main", "commit": "b26851b3e7ac1c0c85666f8a74e36aef2acb89c6" }, "nvim-bqf": { "branch": "main", "commit": "b418b0a241d36509196944a6f6bee886c775d54f" }, - "nvim-cmp": { "branch": "main", "commit": "8868cf9a09e5f3c2612a22ccb82dcc6d9f0d0d35" }, + "nvim-cmp": { "branch": "main", "commit": "d09b0c396aaa078cdfe78316ec06940971136e85" }, "nvim-colorizer.lua": { "branch": "master", "commit": "36c610a9717cc9ec426a07c8e6bf3b3abcb139d6" }, "nvim-dap": { "branch": "master", "commit": "6f2ea9e33b48a51849ec93c6c38148a5372018e4" }, - "nvim-dap-go": { "branch": "main", "commit": "bd9823da22165ea4aa7ec232e8c3a9b3158e017a" }, + "nvim-dap-go": { "branch": "main", "commit": "342834b5243035593ef2527d948562610a123218" }, "nvim-dap-python": { "branch": "master", "commit": "d4400d075c21ed8fb8e8ac6a5ff56f58f6e93531" }, "nvim-dap-virtual-text": { "branch": "master", "commit": "2971ce3e89b1711cc26e27f73d3f854b559a77d4" }, - "nvim-lspconfig": { "branch": "master", "commit": "25f0c65bd8fddadbafd0048a68560bf160ceb98c" }, + "nvim-lspconfig": { "branch": "master", "commit": "f6cdf0ac0e8ac5b2c40457cc1d83a9357dc2f7ce" }, "nvim-navic": { "branch": "master", "commit": "7a2b823152fe4de65ee7925b0e32d26ed73bc57c" }, "nvim-notify": { "branch": "master", "commit": "b005821516f1f37801a73067afd1cef2dbc4dfe8" }, - "nvim-treesitter": { "branch": "master", "commit": "895d4a1202f36df561ba032c93b9deb72e1edee8" }, + "nvim-treesitter": { "branch": "master", "commit": "06989a933e24d1ae5c140e3934545218a1c1b48f" }, "nvim-treesitter-context": { "branch": "master", "commit": "d28654b012d4c56beafec630ef7143275dff76f8" }, - "nvim-treesitter-textobjects": { "branch": "master", "commit": "a2e436d88d1880da6678049316e4c45135901866" }, + "nvim-treesitter-textobjects": { "branch": "master", "commit": "b062311ea6da061756ebb591d30f61c9e5b44141" }, "nvim-ts-context-commentstring": { "branch": "main", "commit": "32d9627123321db65a4f158b72b757bcaef1a3f4" }, "nvim-ts-hint-textobject": { "branch": "master", "commit": "ad03c877903835a2ca9635accab47bff8be21b18" }, "nvim-web-devicons": { "branch": "master", "commit": "05e1072f63f6c194ac6e867b567e6b437d3d4622" }, @@ -67,7 +66,7 @@ "scope.nvim": { "branch": "main", "commit": "2db6d31de8e3a98d2b41c0f0d1f5dc299ee76875" }, "surround.nvim": { "branch": "master", "commit": "36c253d6470910692491b13382f54c9bab2811e1" }, "telescope-dap.nvim": { "branch": "master", "commit": "313d2ea12ae59a1ca51b62bf01fc941a983d9c9c" }, - "telescope-file-browser.nvim": { "branch": "master", "commit": "cad567e11131a01f2934930c1efc8b1b09a0dc56" }, + "telescope-file-browser.nvim": { "branch": "master", "commit": "efd17359e5e224ac5f5f0e8b1629d8a66f1819e6" }, "telescope-fzf-native.nvim": { "branch": "main", "commit": "fab3e2212e206f4f8b3bbaa656e129443c9b802e" }, "telescope-live-grep-args.nvim": { "branch": "master", "commit": "7de3baef1ec4fb77f7a8195fe87bebd513244b6a" }, "telescope.nvim": { "branch": "master", "commit": "e960efa60e97df58e089b00270f09d60f27202c8" }, diff --git a/nvim/.config/nvim/lua/tobyvin/lsp.lua b/nvim/.config/nvim/lua/tobyvin/lsp.lua index d5b398e..58de09e 100644 --- a/nvim/.config/nvim/lua/tobyvin/lsp.lua +++ b/nvim/.config/nvim/lua/tobyvin/lsp.lua @@ -1,4 +1,6 @@ -local M = {} +require("tobyvin.lsp.handlers") +require("tobyvin.lsp.highlighting") +require("tobyvin.lsp.formatting") vim.api.nvim_create_autocmd("LspAttach", { group = vim.api.nvim_create_augroup("tobyvin_lsp", { clear = true }), @@ -8,21 +10,3 @@ vim.api.nvim_create_autocmd("LspAttach", { vim.api.nvim_exec_autocmds("User", { pattern = "LspAttach", data = { client_id = client.id } }) end, }) - -require("tobyvin.lsp.handlers") -require("tobyvin.lsp.highlighting") -require("tobyvin.lsp.formatting") - -setmetatable(M, { - __index = function(t, k) - local ok, val = pcall(require, string.format("tobyvin.lsp.%s", k)) - - if ok then - rawset(t, k, val) - end - - return val - end, -}) - -return M diff --git a/nvim/.config/nvim/lua/tobyvin/plugins.lua b/nvim/.config/nvim/lua/tobyvin/plugins.lua index 815ba25..d7c937b 100644 --- a/nvim/.config/nvim/lua/tobyvin/plugins.lua +++ b/nvim/.config/nvim/lua/tobyvin/plugins.lua @@ -1,22 +1,22 @@ return { "nvim-lua/plenary.nvim", - "ThePrimeagen/harpoon", - "norcalli/nvim-colorizer.lua", - "b0o/SchemaStore.nvim", { - "nacro90/numb.nvim", - config = true, + "norcalli/nvim-colorizer.lua", + event = "BufReadPre", }, { "tiagovla/scope.nvim", + event = "VeryLazy", config = true, }, { "lukas-reineke/virt-column.nvim", + event = "VeryLazy", config = true, }, { "petertriho/cmp-git", + event = "VeryLazy", dependencies = { "nvim-lua/plenary.nvim" }, config = true, }, @@ -33,6 +33,7 @@ return { }, { "ur4ltz/surround.nvim", + event = "VeryLazy", config = true, }, { @@ -40,4 +41,15 @@ return { event = "VeryLazy", config = true, }, + { + "akinsho/git-conflict.nvim", + event = "BufReadPre", + config = { + disable_diagnostics = true, + highlights = { + incoming = "diffText", + current = "diffAdd", + }, + }, + }, } diff --git a/nvim/.config/nvim/lua/tobyvin/plugins/cmp.lua b/nvim/.config/nvim/lua/tobyvin/plugins/cmp.lua index 1138013..c5f95ed 100644 --- a/nvim/.config/nvim/lua/tobyvin/plugins/cmp.lua +++ b/nvim/.config/nvim/lua/tobyvin/plugins/cmp.lua @@ -12,7 +12,6 @@ local M = { "petertriho/cmp-git", "Dosx001/cmp-commit", "davidsierradz/cmp-conventionalcommits", - "rcarriga/cmp-dap", "ray-x/lsp_signature.nvim", "L3MON4D3/LuaSnip", "saadparwaiz1/cmp_luasnip", @@ -26,7 +25,6 @@ function M.config() local default = require("cmp.config.default")() local context = require("cmp.config.context") - local cmp_dap = require("cmp_dap") local in_comment = function() return vim.api.nvim_get_mode().mode ~= "c" @@ -35,7 +33,7 @@ function M.config() end local enabled = function() - return (default.enabled() or cmp_dap.is_dap_buffer()) and not in_comment() + return (default.enabled() or require("cmp_dap").is_dap_buffer()) and not in_comment() end local expand_snip = function(args) @@ -88,12 +86,6 @@ function M.config() }, }) - cmp.setup.filetype({ "dap-repl", "dapui_watches", "dapui_hover" }, { - sources = { - { name = "dap" }, - }, - }) - cmp.setup.filetype({ "tex", "bib", diff --git a/nvim/.config/nvim/lua/tobyvin/plugins/dap.lua b/nvim/.config/nvim/lua/tobyvin/plugins/dap.lua index ad6cd04..cff0b07 100644 --- a/nvim/.config/nvim/lua/tobyvin/plugins/dap.lua +++ b/nvim/.config/nvim/lua/tobyvin/plugins/dap.lua @@ -3,33 +3,50 @@ local telescope_dap = { dependencies = { "nvim-telescope/telescope.nvim", }, - init = function() - vim.keymap.set("n", "<leader>dC", function() - require("telescope").extensions.dap.commands() - end, { desc = "commands" }) - - vim.keymap.set("n", "<leader>dd", function() - require("telescope").extensions.dap.configurations() - end, { desc = "configurations" }) - - vim.keymap.set("n", "<leader>dl", function() - require("telescope").extensions.dap.list_breakpoints() - end, { desc = "breakpoints" }) - - vim.keymap.set("n", "<leader>df", function() - require("telescope").extensions.dap.frames() - end, { desc = "frames" }) - - vim.keymap.set("n", "<leader>dv", function() - require("telescope").extensions.dap.variables() - end, { desc = "variables" }) - end, } +function telescope_dap.init() + vim.keymap.set("n", "<leader>dC", function() + require("telescope").extensions.dap.commands() + end, { desc = "commands" }) + + vim.keymap.set("n", "<leader>dd", function() + require("telescope").extensions.dap.configurations() + end, { desc = "configurations" }) + + vim.keymap.set("n", "<leader>dl", function() + require("telescope").extensions.dap.list_breakpoints() + end, { desc = "breakpoints" }) + + vim.keymap.set("n", "<leader>df", function() + require("telescope").extensions.dap.frames() + end, { desc = "frames" }) + + vim.keymap.set("n", "<leader>dv", function() + require("telescope").extensions.dap.variables() + end, { desc = "variables" }) +end + +local cmp_dap = { + "rcarriga/cmp-dap", + dependencies = { + "hrsh7th/nvim-cmp", + }, +} + +function cmp_dap.config() + require("cmp").setup.filetype({ "dap-repl", "dapui_watches", "dapui_hover" }, { + sources = { + { name = "dap" }, + }, + }) +end + local M = { "mfussenegger/nvim-dap", dependencies = { telescope_dap, + cmp_dap, { "mfussenegger/nvim-dap-python", config = "", diff --git a/nvim/.config/nvim/lua/tobyvin/plugins/dressing.lua b/nvim/.config/nvim/lua/tobyvin/plugins/dressing.lua index bf05a5e..b0857db 100644 --- a/nvim/.config/nvim/lua/tobyvin/plugins/dressing.lua +++ b/nvim/.config/nvim/lua/tobyvin/plugins/dressing.lua @@ -1,6 +1,6 @@ local M = { "stevearc/dressing.nvim", - lazy = true, + event = "VeryLazy", dependencies = { "nvim-telescope/telescope.nvim", }, diff --git a/nvim/.config/nvim/lua/tobyvin/plugins/fidget.lua b/nvim/.config/nvim/lua/tobyvin/plugins/fidget.lua index f73e99d..079f676 100644 --- a/nvim/.config/nvim/lua/tobyvin/plugins/fidget.lua +++ b/nvim/.config/nvim/lua/tobyvin/plugins/fidget.lua @@ -1,5 +1,6 @@ local M = { "j-hui/fidget.nvim", + event = "LspAttach", } function M.config() diff --git a/nvim/.config/nvim/lua/tobyvin/plugins/git-conflict.lua b/nvim/.config/nvim/lua/tobyvin/plugins/git-conflict.lua deleted file mode 100644 index 81ae499..0000000 --- a/nvim/.config/nvim/lua/tobyvin/plugins/git-conflict.lua +++ /dev/null @@ -1,17 +0,0 @@ -local M = { - "akinsho/git-conflict.nvim", -} - -function M.config() - local git_conflict = require("git-conflict") - - git_conflict.setup({ - disable_diagnostics = true, - highlights = { - incoming = "diffText", - current = "diffAdd", - }, - }) -end - -return M diff --git a/nvim/.config/nvim/lua/tobyvin/plugins/gitsigns.lua b/nvim/.config/nvim/lua/tobyvin/plugins/gitsigns.lua index 109a596..c8d13a5 100644 --- a/nvim/.config/nvim/lua/tobyvin/plugins/gitsigns.lua +++ b/nvim/.config/nvim/lua/tobyvin/plugins/gitsigns.lua @@ -1,5 +1,6 @@ local M = { "lewis6991/gitsigns.nvim", + event = "BufReadPre", dependencies = { "nvim-lua/plenary.nvim" }, } diff --git a/nvim/.config/nvim/lua/tobyvin/plugins/harpoon.lua b/nvim/.config/nvim/lua/tobyvin/plugins/harpoon.lua new file mode 100644 index 0000000..3a0c1e2 --- /dev/null +++ b/nvim/.config/nvim/lua/tobyvin/plugins/harpoon.lua @@ -0,0 +1,5 @@ +local M = { + "ThePrimeagen/harpoon", +} + +return M diff --git a/nvim/.config/nvim/lua/tobyvin/plugins/lspconfig.lua b/nvim/.config/nvim/lua/tobyvin/plugins/lspconfig.lua index 8df2f6b..681a3cf 100644 --- a/nvim/.config/nvim/lua/tobyvin/plugins/lspconfig.lua +++ b/nvim/.config/nvim/lua/tobyvin/plugins/lspconfig.lua @@ -1,14 +1,19 @@ local M = { "neovim/nvim-lspconfig", + event = "BufReadPre", dependencies = { "folke/neodev.nvim", "hrsh7th/cmp-nvim-lsp", + "b0o/SchemaStore.nvim", }, } function M.config() local lspconfig = require("lspconfig") - local lsp = require("tobyvin.lsp") + local configs = require("tobyvin.lsp.configs") + + require("neodev") + require("mason") require("lspconfig.ui.windows").default_options.border = "single" @@ -17,7 +22,7 @@ function M.config() }) local available = lspconfig.util.available_servers() - for name, config in pairs(lsp.configs) do + for name, config in pairs(configs) do if not vim.tbl_contains(available, name) then lspconfig[name].setup(config) end diff --git a/nvim/.config/nvim/lua/tobyvin/plugins/neogit.lua b/nvim/.config/nvim/lua/tobyvin/plugins/neogit.lua index 81bd9b6..68d1457 100644 --- a/nvim/.config/nvim/lua/tobyvin/plugins/neogit.lua +++ b/nvim/.config/nvim/lua/tobyvin/plugins/neogit.lua @@ -1,20 +1,19 @@ local M = { "TimUntersberger/neogit", dependencies = { "sindrets/diffview.nvim" }, -} - -function M.config() - local neogit = require("neogit") - - neogit.setup({ + config = { disable_commit_confirmation = true, disable_signs = true, integrations = { diffview = true, }, - }) + }, +} - vim.keymap.set("n", "<leader>gg", neogit.open, { desc = "neogit" }) +function M.init() + vim.keymap.set("n", "<leader>gg", function() + require("neogit").open() + end, { desc = "neogit" }) end return M diff --git a/nvim/.config/nvim/lua/tobyvin/plugins/refactoring.lua b/nvim/.config/nvim/lua/tobyvin/plugins/refactoring.lua index f68e6d0..8e9c116 100644 --- a/nvim/.config/nvim/lua/tobyvin/plugins/refactoring.lua +++ b/nvim/.config/nvim/lua/tobyvin/plugins/refactoring.lua @@ -1,15 +1,12 @@ local M = { "ThePrimeagen/refactoring.nvim", + config = true, } function M.init() - vim.keymap.set("v", "<leader>r", function() + vim.keymap.set("v", "<leader>rr", function() require("refactoring").select_refactor() end, { desc = "refactor" }) end -function M.config() - require("refactoring").setup({}) -end - return M diff --git a/nvim/.config/nvim/lua/tobyvin/plugins/rust-tools.lua b/nvim/.config/nvim/lua/tobyvin/plugins/rust-tools.lua index 998901b..14ae777 100644 --- a/nvim/.config/nvim/lua/tobyvin/plugins/rust-tools.lua +++ b/nvim/.config/nvim/lua/tobyvin/plugins/rust-tools.lua @@ -25,11 +25,13 @@ function M.init() local external_docs = require("rust-tools").external_docs.open_external_docs local expand_macro = require("rust-tools").expand_macro.expand_macro local hover_actions = require("rust-tools").hover_actions.hover_actions + local ssr = require("rust-tools").ssr.ssr vim.keymap.set("n", "<leader>dd", debuggables, { desc = "debug", buffer = bufnr }) vim.keymap.set("n", "<leader>tt", runnables, { desc = "test", buffer = bufnr }) vim.keymap.set("n", "<leader>lo", open_cargo_toml, { desc = "open Cargo.toml", buffer = bufnr }) vim.keymap.set("n", "<leader>le", expand_macro, { desc = "expand macro", buffer = bufnr }) + vim.keymap.set("n", "<leader>rs", ssr, { desc = "ssr", buffer = bufnr }) local utils = require("tobyvin.utils") utils.documentation.register("rust", external_docs) diff --git a/nvim/.config/nvim/lua/tobyvin/plugins/undotree.lua b/nvim/.config/nvim/lua/tobyvin/plugins/undotree.lua index ab697ef..b0e05d4 100644 --- a/nvim/.config/nvim/lua/tobyvin/plugins/undotree.lua +++ b/nvim/.config/nvim/lua/tobyvin/plugins/undotree.lua @@ -3,16 +3,19 @@ local M = { dependencies = { "nvim-lua/plenary.nvim", }, -} - -function M.config() - local undotree = require("undotree") - - undotree.setup({ + cmd = "UndoTree", + config = { window = { winblend = 0, }, - }) + }, +} + +function M.init() + -- TODO: fix this not registering as a command + vim.api.nvim_create_user_command("UndoTree", function() + require("undotree").open() + end) end return M diff --git a/nvim/.config/nvim/lua/tobyvin/plugins/yanky.lua b/nvim/.config/nvim/lua/tobyvin/plugins/yanky.lua index 0172046..a4ea8cc 100644 --- a/nvim/.config/nvim/lua/tobyvin/plugins/yanky.lua +++ b/nvim/.config/nvim/lua/tobyvin/plugins/yanky.lua @@ -1,7 +1,14 @@ local M = { "gbprod/yanky.nvim", + event = "TextYankPost", } +function M.init() + vim.keymap.set({ "n", "x" }, "<C-p>", function() + require("yanky.picker").select_in_history() + end, { desc = "yank history" }) +end + function M.config() local yanky = require("yanky") @@ -10,14 +17,17 @@ function M.config() on_put = false, on_yank = false, }, + picker = { + select = { + action = require("yanky.picker").actions.set_register(require("yanky.utils").get_default_register()), -- nil to use default put action + }, + }, preserve_cursor_position = { enabled = false, }, }) - local picker = require("yanky.picker") - picker.setup() - vim.keymap.set({ "n", "x" }, "<C-p>", picker.select_in_history, { desc = "yank history" }) + yanky.init_history() end return M |