52 lines
1.7 KiB
Lua
52 lines
1.7 KiB
Lua
-- Quarto autocommands file
|
|
--
|
|
|
|
local status_wk, wk = pcall(require, 'which-key')
|
|
if not status_wk then
|
|
return
|
|
end
|
|
|
|
local group = vim.api.nvim_create_augroup('quarto_autocommands', { clear = true })
|
|
|
|
vim.api.nvim_create_autocmd('FileType', {
|
|
group = group,
|
|
desc = '',
|
|
pattern = 'quarto',
|
|
callback = function()
|
|
local init = function()
|
|
local quarto_cfg = require('quarto.config').config
|
|
quarto_cfg.codeRunner.default_method = 'molten'
|
|
vim.cmd [[MoltenInit]]
|
|
end
|
|
local deinit = function()
|
|
local quarto_cfg = require('quarto.config').config
|
|
quarto_cfg.codeRunner.default_method = 'slime'
|
|
vim.cmd [[MoltenStop]]
|
|
vim.cmd [[MoltenDeinit]]
|
|
end
|
|
wk.add {
|
|
{ mode = { 'n', 'v', 'i' } },
|
|
|
|
{ -- Quarto
|
|
{ '<leader>q', group = '[q]uarto', buffer = true },
|
|
{ '<leader>qp', '<CMD>QuartoPreview<CR>', desc = '[p]review Quarto', buffer = true },
|
|
{ '<leader>qs', '<CMD>QuartoSend<CR>', desc = '[s]end to Quarto', buffer = true },
|
|
},
|
|
|
|
{ -- Molten
|
|
{ '<leader>M', group = '[M]olten', buffer = true },
|
|
{ '<leader>Mi', init, desc = '[i]nitialize Molten', buffer = true },
|
|
{ '<leader>Ms', deinit, desc = '[s]top Molten', buffer = true },
|
|
{ '<leader>Mp', '<CMD>MoltenPause<CR>', desc = '[p]ause Molten', buffer = true },
|
|
{ '<leader>Mr', '<CMD>MoltenReset<CR>', desc = '[r]eset Molten', buffer = true },
|
|
},
|
|
|
|
{ -- Vim-slime
|
|
{ '<leader>S', group = '[S]lime', buffer = true },
|
|
{ '<leader>Ss', '<CMD>SlimeSend<CR>', desc = '[s]end to Slime', buffer = true },
|
|
{ '<leader>Sr', '<CMD>SlimeRestart<CR>', desc = '[r]estart Slime', buffer = true },
|
|
},
|
|
}
|
|
end,
|
|
})
|