initial commit
This commit is contained in:
44
homemanager/neovim/lua/config/commands.lua
Normal file
44
homemanager/neovim/lua/config/commands.lua
Normal file
@@ -0,0 +1,44 @@
|
||||
local lib = require('lib.window')
|
||||
|
||||
local command = function(name, callback)
|
||||
vim.api.nvim_create_user_command(name, callback, {})
|
||||
end
|
||||
|
||||
command('Settings', function()
|
||||
local path = vim.fn.expand('~/.config/dotfiles/homes/quirinecker/.config/nvim')
|
||||
lib.new_window(path, 'Settings')
|
||||
end)
|
||||
|
||||
command('TransparencyFix', function()
|
||||
require('lualine').setup(require('plugins.lualine').opts)
|
||||
end)
|
||||
|
||||
command('MavenStartCommand', function()
|
||||
local Path = require("plenary.path")
|
||||
local cwd = Path:new(vim.fn.getcwd()):absolute()
|
||||
local baseName = vim.fn.fnamemodify(vim.api.nvim_buf_get_name(0), ":t")
|
||||
|
||||
if vim.fn.filereadable(cwd .. "/pom.xml") ~= 1 then
|
||||
vim.notify("No pom.xml found in current directory", vim.log.levels.ERROR)
|
||||
return
|
||||
end
|
||||
|
||||
if not baseName:match(".java$") then
|
||||
vim.notify("Current buffer is not a java file", vim.log.levels.ERROR)
|
||||
return
|
||||
end
|
||||
|
||||
local lines = vim.api.nvim_buf_get_lines(0, 0, -1, false)
|
||||
|
||||
local className = baseName:gsub(".java", "")
|
||||
local packageName = ""
|
||||
for _, line in ipairs(lines) do
|
||||
if line:match("^package ") then
|
||||
local value = vim.split(line, " ")[2]
|
||||
packageName = value:gsub(";", "")
|
||||
end
|
||||
end
|
||||
|
||||
vim.fn.setreg("+", "mvn exec:java -Dexec.mainClass=" .. packageName .. "." .. className)
|
||||
vim.notify("Copied Start Command to Clipboard", vim.log.levels.INFO)
|
||||
end)
|
||||
Reference in New Issue
Block a user