nvim/.latestBackup/lua/config/commands.lua

63 lines
2.1 KiB
Lua
Raw Permalink Normal View History

2023-08-02 16:39:49 +02:00
local pickers = require "telescope.pickers"
local finders = require "telescope.finders"
local conf = require("telescope.config").values
local actions = require "telescope.actions"
local action_state = require "telescope.actions.state"
vim.api.nvim_create_user_command("OP", function ()
local folders = vim.fn.systemlist("\\ls -d $HOME/projects/*/")
for i, folder in ipairs(folders) do
folders[i] = string.match(string.match(folder, "[^/]*/$"), "^[^/]*")
end
pickers.new({}, {
prompt_title = "Open project",
finder = finders.new_table {
results = folders
},
sorter = conf.generic_sorter({}),
attach_mappings = function (prompt_bufnr, map)
actions.select_default:replace(function ()
actions.close(prompt_bufnr)
local selection = action_state.get_selected_entry()
selection = selection[1]
vim.cmd("cd $HOME/projects/" .. selection)
vim.cmd("Alpha")
vim.cmd("BWipeout other")
end)
return true
end
}):find()
end, {})
vim.api.nvim_create_user_command("OD", function ()
local folders = vim.fn.systemlist("\\ls -d */")
for i, folder in ipairs(folders) do
folders[i] = string.match(string.match(folder, "[^/]*/$"), "^[^/]*")
end
pickers.new({}, {
prompt_title = "Open directory",
finder = finders.new_table {
results = folders
},
sorter = conf.generic_sorter({}),
attach_mappings = function (prompt_bufnr, map)
actions.select_default:replace(function ()
actions.close(prompt_bufnr)
local selection = action_state.get_selected_entry()
selection = selection[1]
vim.cmd("cd " .. selection)
vim.cmd("Alpha")
vim.cmd("BWipeout other")
end)
return true
end
}):find()
end, {})
vim.api.nvim_create_user_command("Config", function ()
vim.cmd("cd $HOME/.config/nvim")
vim.cmd("Alpha")
vim.cmd("BWipeout other")
vim.cmd("NeoTreeFloatToggle")
end, {})