feat: init toggleterm

This commit is contained in:
Matthew Leong 2024-06-09 23:45:05 -07:00
parent 73ec555c45
commit 982c79ebc1
10 changed files with 41 additions and 29 deletions

View file

@ -1,7 +1,7 @@
-- Override Cosmic editor options -- Override Cosmic editor options
local g = vim.g local g = vim.g
local map = require('cosmic.utils').map local map = require('cosmic.utils').set_keymap
local opt = vim.opt local opt = vim.opt
-- Default leader is <space> -- Default leader is <space>

View file

@ -1,4 +1,4 @@
local map = require('cosmic.utils').map local map = require('cosmic.utils').set_keymap
-- Quickfix mappings -- Quickfix mappings
map('n', '<leader>ck', ':cexpr []<cr>', { desc = 'Clear list' }) map('n', '<leader>ck', ':cexpr []<cr>', { desc = 'Clear list' })
@ -34,4 +34,13 @@ map('n', '<C-Down>', ':resize +2<CR>', { desc = 'Resize +2' })
map('n', '<C-Left>', ':vertical resize -2<CR>', { desc = 'Vertical Resize -2' }) map('n', '<C-Left>', ':vertical resize -2<CR>', { desc = 'Vertical Resize -2' })
map('n', '<C-Right>', ':vertical resize +2<CR>', { desc = 'Vertical Resize +2' }) map('n', '<C-Right>', ':vertical resize +2<CR>', { desc = 'Vertical Resize +2' })
-- map('n', '<C-h>', [[<Cmd>wincmd h<CR>]], {})
-- map('n', '<C-j>', [[<Cmd>wincmd j<CR>]], {})
-- map('n', '<C-k>', [[<Cmd>wincmd k<CR>]], {})
-- map('n', '<C-l>', [[<Cmd>wincmd l<CR>]], {})
--[[ map('n', '<C-h>', '<C-w>h', {}) ]]
--[[ map('n', '<C-j>', '<C-w>j', {}) ]]
--[[ map('n', '<C-k>', '<C-w>k', {}) ]]
--[[ map('n', '<C-l>', '<C-w>l', {}) ]]
map('n', '<leader>bo', '<cmd>%bd|e#<cr>', { desc = 'Close all buffers but the current one' }) -- https://stackoverflow.com/a/42071865/516188 map('n', '<leader>bo', '<cmd>%bd|e#<cr>', { desc = 'Close all buffers but the current one' }) -- https://stackoverflow.com/a/42071865/516188

View file

@ -1,4 +1,4 @@
local map = require('cosmic.utils').map local map = require('cosmic.utils').set_keymap
-- session -- session
map('n', '<leader>sl', '<cmd>silent RestoreSession<cr>', { desc = 'Restore session' }) map('n', '<leader>sl', '<cmd>silent RestoreSession<cr>', { desc = 'Restore session' })

View file

@ -1,6 +1,6 @@
local user_config = require('cosmic.core.user') local user_config = require('cosmic.core.user')
local u = require('cosmic.utils') local u = require('cosmic.utils')
local map = require('cosmic.utils').map local map = require('cosmic.utils').set_keymap
return { return {
'folke/noice.nvim', 'folke/noice.nvim',

View file

@ -46,7 +46,7 @@ return {
require('nvim-tree').setup(u.merge(args, user_config.plugins.nvim_tree or {})) require('nvim-tree').setup(u.merge(args, user_config.plugins.nvim_tree or {}))
end, end,
init = function() init = function()
local map = require('cosmic.utils').map local map = require('cosmic.utils').set_keymap
map('n', '<C-n>', ':NvimTreeToggle<CR>', { desc = 'Toggle Tree' }) map('n', '<C-n>', ':NvimTreeToggle<CR>', { desc = 'Toggle Tree' })
map('n', '<leader>nt', ':NvimTreeToggle<CR>', { desc = 'Toggle Tree' }) map('n', '<leader>nt', ':NvimTreeToggle<CR>', { desc = 'Toggle Tree' })

View file

@ -15,7 +15,7 @@ return {
init = function() init = function()
-- normal mappings -- normal mappings
local u = require('cosmic.utils') local u = require('cosmic.utils')
local map = u.map local map = u.set_keymap
map('n', '<leader>ff', '', { map('n', '<leader>ff', '', {
callback = require('cosmic.plugins.telescope.utils').project_files, callback = require('cosmic.plugins.telescope.utils').project_files,

View file

@ -3,9 +3,9 @@ local user_config = require('cosmic.core.user')
return { return {
'voldikss/vim-floaterm', 'voldikss/vim-floaterm',
cmd = { 'FloatermToggle', 'FloatermNew' }, cmd = { 'FloatermToggle', 'FloatermNew' },
keys = { --[[ keys = { ]]
{ '<C-l>', '<cmd>FloatermToggle<cr>', desc = 'Floating Terminal' }, --[[ { '<C-l>', '<cmd>FloatermToggle<cr>', desc = 'Floating Terminal' }, ]]
}, --[[ }, ]]
config = function() config = function()
local g = vim.g local g = vim.g
local title = vim.env.SHELL local title = vim.env.SHELL

View file

@ -1,4 +1,4 @@
local map = require('cosmic.utils').map local map = require('cosmic.utils').set_keymap
map('n', '<C-l>', ':FloatermToggle<CR>', { desc = 'Toggle Floaterm' }) map('n', '<C-l>', ':FloatermToggle<CR>', { desc = 'Toggle Floaterm' })
map('t', '<C-l>', [[<C-\><C-n>]], { desc = 'Close Floaterm' }) map('t', '<C-l>', [[<C-\><C-n>]], { desc = 'Close Floaterm' })

View file

@ -1,5 +1,5 @@
local user_config = require('cosmic.core.user') local user_config = require('cosmic.core.user')
local map = require('cosmic.utils').map local map = require('cosmic.utils').set_keymap
local create_buf_map = require('cosmic.utils').create_buf_map local create_buf_map = require('cosmic.utils').create_buf_map
return { return {
'akinsho/toggleterm.nvim', 'akinsho/toggleterm.nvim',
@ -9,29 +9,32 @@ return {
float_opts = { float_opts = {
border = user_config.border, border = user_config.border,
}, },
highlights = {
FloatBorder = {
link = 'FloatBorder',
},
},
}) })
local Terminal = require('toggleterm.terminal').Terminal local Terminal = require('toggleterm.terminal').Terminal
function new_terminal() local function new_terminal()
local terminal = Terminal:new({ local terminal = Terminal:new()
on_open = function(term)
local buf_map = create_buf_map(term.bufnr, {
noremap = false,
})
vim.cmd('startinsert!')
end,
-- function to run on closing the terminal
on_close = function(term)
vim.cmd('startinsert!')
end,
})
terminal:toggle() terminal:toggle()
end end
map('n', '<C-l>', ':ToggleTerm<CR>', { desc = 'Toggle Terminal' }) map('n', '<leader>kn', new_terminal, { desc = 'New terminal' })
map('t', '<esc>', [[<C-\><C-n>]], { desc = 'Close Floaterm' })
map('t', '<C-w>n', new_terminal, { desc = 'New terminal' }) map('n', '<leader>k', ':ToggleTerm<CR>', { desc = 'Toggle Terminal' })
map('t', '<leader>k', [[<C-\><C-n>]] .. ':ToggleTerm<CR>', { desc = 'Toggle Terminal' })
map('n', '<leader>kk', ':TermSelect<CR>', { desc = 'Choose open terminal' })
map('t', '<leader>kk', [[<C-\><C-n>]] .. ':TermSelect<CR>', { desc = 'Choose open terminal' })
map('t', '<esc>', [[<C-\><C-n>]], { desc = 'Visual mode' })
map('t', '<leader>kn', new_terminal, { desc = 'New terminal' })
map('n', '<leader>kr', ':ToggleTermSetName<CR>', { desc = 'Rename terminal' })
-- @TODO: close all
end, end,
lazy = false, lazy = false,
} }

View file

@ -1,6 +1,6 @@
local M = {} local M = {}
function M.map(mode, lhs, rhs, opts) function M.set_keymap(mode, lhs, rhs, opts)
local defaults = { local defaults = {
silent = true, silent = true,
noremap = true, noremap = true,
@ -10,7 +10,7 @@ end
function M.create_buf_map(bufnr, opts) function M.create_buf_map(bufnr, opts)
return function(mode, lhs, rhs, map_opts) return function(mode, lhs, rhs, map_opts)
M.map( M.set_keymap(
mode, mode,
lhs, lhs,
rhs, rhs,