-- Lua vim-dummy variable if vim == nil then local vim = {} end -- @name setup_pascal -- @param -- @short Verify installation of pascal tools or install them. local function setup_pascal() local check_ptop = { os.execute("which ptop") } -- if return value is 1, get ptop if check_ptop == 1 then os.execute("wget -o ~/.local/bin/ptop https://www.nickr.eu/data/ptop64") os.execute("chmod +x ~/.local/bin/ptop") end vim.opt.spell = false end -- Setup and verify pascal tools when opening a pascal file vim.api.nvim_create_autocmd({ "BufEnter" }, { pattern = { "*.pas" }, callback = setup_pascal, }) -- @name leave_pascal -- @param -- @short Leave pascal and reverse any changes to my editor defaults local function leave_pascal() vim.opt.spell = true end vim.api.nvim_create_autocmd({ "BufLeave" }, { pattern = { "*.pas" }, callback = leave_pascal, }) -- @name auto_format -- @param -- @short The format function for pascal. local function auto_format() vim.cmd("checktime %") local write_cmd = "ptop -i 4 -c ~/.config/nvim/ptop.conf " .. vim.api.nvim_buf_get_name(0) .. " " .. vim.api.nvim_buf_get_name(0) os.execute(write_cmd) vim.cmd("checktime %") end -- Add formatter command vim.api.nvim_create_autocmd({ "BufWritePost" }, { pattern = { "*.pas" }, callback = auto_format, })