return { 'numToStr/FTerm.nvim', config = function() require('FTerm').setup({ -- just keep the standard settings for now }) -- Toggle FTerm vim.keymap.set('n', '', 'lua require("FTerm").toggle()', { desc = "Toggle FTerm"}) vim.keymap.set('t', '', 'lua require("FTerm").toggle()', { desc = "Toggle FTerm"}) -- Run commands vim.keymap.set('n', 'l', 'lua require("FTerm").run("lazygit")', { desc = "Run FTerm lazygit"}) -- Scratch commands vim.keymap.set('n', 'bd', 'lua require("FTerm").scratch({ cmd = "sh scripts/build.sh" })', { desc = "Scratch build.sh with default options"}) vim.keymap.set('n', 'bc', 'lua require("FTerm").scratch({ cmd = "sh scripts/build.sh -cb" })', { desc = "Scratch build.sh with clean build option"}) vim.keymap.set('n', 'bf', 'lua require("FTerm").scratch({ cmd = "sh scripts/build.sh -fb" })', { desc = "Scratch build.sh with fresh option"}) vim.keymap.set('n', 'bn', 'lua require("FTerm").scratch({ cmd = "sh scripts/build.sh -nb" })', { desc = "Scratch build.sh with no build option"}) vim.keymap.set('n', 'cf', 'lua require("FTerm").scratch({ cmd = "sh scripts/checkformat.sh" })', { desc = "Scratch checkformat readonly"}) vim.keymap.set('n', 'ca', 'lua require("FTerm").scratch({ cmd = "sh scripts/checkanalyzer.sh" })', { desc = "Scratch checkanalyzer"}) end, }