neovim

Personal neovim configuration files
git clone git://gtms.dev/neovim
Log | Files | Refs

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 })