diff options
| author | Ariel DAlessandro <ariel.dalessandro@auto1.com> | 2021-08-14 12:20:33 +0200 |
|---|---|---|
| committer | Ariel DAlessandro <ariel.dalessandro@auto1.com> | 2021-08-14 12:20:33 +0200 |
| commit | 7c8ba7a40a3209fc1cf483e82f62560b4dff1a06 (patch) | |
| tree | 9240909a0aa60dee6ef7aaa2c471f34b419126b9 | |
| parent | 9d7663ca36fcefcacbefb20807e9379d7316ddf2 (diff) | |
| download | nvim-conf-7c8ba7a40a3209fc1cf483e82f62560b4dff1a06.tar.gz nvim-conf-7c8ba7a40a3209fc1cf483e82f62560b4dff1a06.zip | |
add packer and refactoring
| -rw-r--r-- | lua/alpha/init.lua | 1 | ||||
| -rw-r--r-- | lua/alpha/refactoring.lua | 35 | ||||
| -rw-r--r-- | lua/plugins.lua | 11 | ||||
| -rw-r--r-- | plugin/packer_compiled.lua | 93 | ||||
| -rw-r--r-- | plugin/plugins.vim | 1 |
5 files changed, 141 insertions, 0 deletions
diff --git a/lua/alpha/init.lua b/lua/alpha/init.lua index fa7dd53..c403f8c 100644 --- a/lua/alpha/init.lua +++ b/lua/alpha/init.lua @@ -1 +1,2 @@ require("alpha.telescope") +require("alpha.refactoring") diff --git a/lua/alpha/refactoring.lua b/lua/alpha/refactoring.lua new file mode 100644 index 0000000..262400f --- /dev/null +++ b/lua/alpha/refactoring.lua @@ -0,0 +1,35 @@ +local refactor = require("refactoring") +refactor.setup() + +-- telescope refactoring helper +local function refactor(prompt_bufnr) + local content = require("telescope.actions.state").get_selected_entry( + prompt_bufnr + ) + require("telescope.actions").close(prompt_bufnr) + require("refactoring").refactor(content.value) +end +-- NOTE: M is a global object +-- for the sake of simplicity in this example +-- you can extract this function and the helper above +-- and then require the file and call the extracted function +-- in the mappings below +M = {} +M.refactors = function() + require("telescope.pickers").new({}, { + prompt_title = "refactors", + finder = require("telescope.finders").new_table({ + results = require("refactoring").get_refactors(), + }), + sorter = require("telescope.config").values.generic_sorter({}), + attach_mappings = function(_, map) + map("i", "<CR>", refactor) + map("n", "<CR>", refactor) + return true + end + }):find() +end + +vim.api.nvim_set_keymap("v", "<Leader>re", [[ <Cmd>lua require('refactoring').refactor('Extract Function')<CR>]], {noremap = true, silent = true, expr = false}) +vim.api.nvim_set_keymap("v", "<Leader>rf", [[ <Cmd>lua require('refactoring').refactor('Extract Function To File')<CR>]], {noremap = true, silent = true, expr = false}) +vim.api.nvim_set_keymap("v", "<Leader>rt", [[ <Cmd>lua M.refactors()<CR>]], {noremap = true, silent = true, expr = false}) diff --git a/lua/plugins.lua b/lua/plugins.lua new file mode 100644 index 0000000..ebe891d --- /dev/null +++ b/lua/plugins.lua @@ -0,0 +1,11 @@ +vim.cmd [[packadd packer.nvim]] + +return require('packer').startup(function() + use { + "ThePrimeagen/refactoring.nvim", + requires = { + {"nvim-lua/plenary.nvim"}, + {"nvim-treesitter/nvim-treesitter"} + } + } +end) diff --git a/plugin/packer_compiled.lua b/plugin/packer_compiled.lua new file mode 100644 index 0000000..937e98d --- /dev/null +++ b/plugin/packer_compiled.lua @@ -0,0 +1,93 @@ +-- Automatically generated packer.nvim plugin loader code + +if vim.api.nvim_call_function('has', {'nvim-0.5'}) ~= 1 then + vim.api.nvim_command('echohl WarningMsg | echom "Invalid Neovim version for packer.nvim! | echohl None"') + return +end + +vim.api.nvim_command('packadd packer.nvim') + +local no_errors, error_msg = pcall(function() + + local time + local profile_info + local should_profile = false + if should_profile then + local hrtime = vim.loop.hrtime + profile_info = {} + time = function(chunk, start) + if start then + profile_info[chunk] = hrtime() + else + profile_info[chunk] = (hrtime() - profile_info[chunk]) / 1e6 + end + end + else + time = function(chunk, start) end + end + +local function save_profiles(threshold) + local sorted_times = {} + for chunk_name, time_taken in pairs(profile_info) do + sorted_times[#sorted_times + 1] = {chunk_name, time_taken} + end + table.sort(sorted_times, function(a, b) return a[2] > b[2] end) + local results = {} + for i, elem in ipairs(sorted_times) do + if not threshold or threshold and elem[2] > threshold then + results[i] = elem[1] .. ' took ' .. elem[2] .. 'ms' + end + end + + _G._packer = _G._packer or {} + _G._packer.profile_output = results +end + +time([[Luarocks path setup]], true) +local package_path_str = "/home/arieldalessandro/.cache/nvim/packer_hererocks/2.1.0-beta3/share/lua/5.1/?.lua;/home/arieldalessandro/.cache/nvim/packer_hererocks/2.1.0-beta3/share/lua/5.1/?/init.lua;/home/arieldalessandro/.cache/nvim/packer_hererocks/2.1.0-beta3/lib/luarocks/rocks-5.1/?.lua;/home/arieldalessandro/.cache/nvim/packer_hererocks/2.1.0-beta3/lib/luarocks/rocks-5.1/?/init.lua" +local install_cpath_pattern = "/home/arieldalessandro/.cache/nvim/packer_hererocks/2.1.0-beta3/lib/lua/5.1/?.so" +if not string.find(package.path, package_path_str, 1, true) then + package.path = package.path .. ';' .. package_path_str +end + +if not string.find(package.cpath, install_cpath_pattern, 1, true) then + package.cpath = package.cpath .. ';' .. install_cpath_pattern +end + +time([[Luarocks path setup]], false) +time([[try_loadstring definition]], true) +local function try_loadstring(s, component, name) + local success, result = pcall(loadstring(s)) + if not success then + vim.schedule(function() + vim.api.nvim_notify('packer.nvim: Error running ' .. component .. ' for ' .. name .. ': ' .. result, vim.log.levels.ERROR, {}) + end) + end + return result +end + +time([[try_loadstring definition]], false) +time([[Defining packer_plugins]], true) +_G.packer_plugins = { + ["nvim-treesitter"] = { + loaded = true, + path = "/home/arieldalessandro/.local/share/nvim/site/pack/packer/start/nvim-treesitter" + }, + ["plenary.nvim"] = { + loaded = true, + path = "/home/arieldalessandro/.local/share/nvim/site/pack/packer/start/plenary.nvim" + }, + ["refactoring.nvim"] = { + loaded = true, + path = "/home/arieldalessandro/.local/share/nvim/site/pack/packer/start/refactoring.nvim" + } +} + +time([[Defining packer_plugins]], false) +if should_profile then save_profiles() end + +end) + +if not no_errors then + vim.api.nvim_command('echohl ErrorMsg | echom "Error in packer_compiled: '..error_msg..'" | echom "Please check your config for correctness" | echohl None') +end diff --git a/plugin/plugins.vim b/plugin/plugins.vim new file mode 100644 index 0000000..f5df1c5 --- /dev/null +++ b/plugin/plugins.vim @@ -0,0 +1 @@ +lua require('plugins') |