terminal.lua (1641B)
1 local terminal = require('tms.p.terminal') 2 3 vim.keymap.set('n', '<leader>tl', function() 4 terminal.interactive() 5 end, { desc = 'Terminal Interactive' }) 6 vim.keymap.set('n', '<leader>tL', function() 7 terminal.catchup() 8 end, { desc = 'Terminal Catchup' }) 9 vim.keymap.set('n', '<leader>to', function() 10 terminal.toggle() 11 end, { desc = 'Terminal Toggle' }) 12 vim.keymap.set('n', '<leader>tj', ':TerminalRun<space>', { desc = 'Terminal Set' }) 13 vim.keymap.set('n', '<leader>tJ', ':TerminalRun<space><Up>', { desc = 'Terminal Edit Last' }) 14 vim.keymap.set('n', '<leader>tk', function() 15 local ok = terminal.rerun() 16 if not ok then 17 vim.api.nvim_feedkeys(':TerminalRun ', 'n', nil) 18 end 19 end, { desc = 'Terminal Run' }) 20 vim.keymap.set('n', '<leader>th', function() 21 terminal.exit() 22 end, { desc = 'Terminal Exit' }) 23 vim.keymap.set('t', '<leader>tl', function() 24 terminal.interactive() 25 end, { desc = 'Terminal Interactive' }) 26 vim.keymap.set('t', '<leader>to', function() 27 terminal.toggle() 28 end, { desc = 'Terminal Toggle' }) 29 vim.keymap.set('t', '<leader>th', function() 30 terminal.exit() 31 end, { desc = 'Terminal Exit' }) 32 33 local group = vim.api.nvim_create_augroup('user-terminal', {}) 34 vim.api.nvim_create_autocmd('BufEnter', { 35 group = group, 36 pattern = 'terminal', 37 command = 'let g:SexyScroller_ScrollTime=0|let g:SexyScroller_CursorTime=0', 38 }) 39 vim.api.nvim_create_autocmd('BufLeave', { 40 group = group, 41 pattern = 'terminal', 42 command = 'let g:SexyScroller_ScrollTime=10|let g:SexyScroller_CursorTime=5', 43 }) 44 45 vim.api.nvim_create_user_command('TerminalRun', function(data) 46 require('tms.p.terminal').run(data.args) 47 end, { nargs = 1 })