add toggleterm

This commit is contained in:
Aditya 2024-03-06 19:56:07 +05:30
parent 7305fd7ff0
commit 5095c414b3
Signed by: aditya
SSH key fingerprint: SHA256:jL1IvWsjjlPtw6HvDIHfXfhO9IkIokNEyIfuFhSdoyU
3 changed files with 63 additions and 0 deletions

View file

@ -70,5 +70,7 @@
./utils/project-nvim.nix ./utils/project-nvim.nix
./utils/sidebar.nix ./utils/sidebar.nix
./utils/tmux-navigator.nix ./utils/tmux-navigator.nix
./utils/todo-comments.nix
./utils/toggleterm.nix
]; ];
} }

View file

@ -0,0 +1,5 @@
{
plugins.todo-comments = {
enable = true;
};
}

View file

@ -0,0 +1,56 @@
{
plugins.toggleterm = {
enable = true;
size = ''
function(term)
if term.direction == "horizontal" then
return 15
elseif term.direction == "vertical" then
return vim.o.columns * 0.4
end
end
'';
openMapping = "<A-i>";
hideNumbers = true;
shadeTerminals = true;
startInInsert = true;
terminalMappings = true;
persistMode = true;
insertMappings = true;
closeOnExit = true;
shell = "zsh";
direction = "horizontal"; # 'vertical' | 'horizontal' | 'window' | 'float'
autoScroll = true;
floatOpts = {
border = "single"; # 'single' | 'double' | 'shadow' | 'curved' | ... other options supported by win open
width = 80;
height = 20;
winblend = 0;
};
winbar = {
enabled = true;
nameFormatter = ''
function(term)
return term.name
end
'';
};
};
# extraConfigLua = ''
# function _G.set_terminal_keymaps()
# local opts = { buffer = 0 }
# vim.keymap.set("t", "<esc>", [[<C-\><C-n>]], opts)
# vim.keymap.set("t", "jk", [[<C-\><C-n>]], opts)
# vim.keymap.set("t", "<C-h>", [[<Cmd>wincmd h<CR>]], opts)
# vim.keymap.set("t", "<C-j>", [[<Cmd>wincmd j<CR>]], opts)
# vim.keymap.set("t", "<C-k>", [[<Cmd>wincmd k<CR>]], opts)
# vim.keymap.set("t", "<C-l>", [[<Cmd>wincmd l<CR>]], opts)
# vim.keymap.set("t", "<C-w>", [[<C-\><C-n><C-w>]], opts)
# end
#
# -- if you only want these mappings for toggle term use term://*toggleterm#* instead
# -- vim.cmd("autocmd! TermOpen term://*toggleterm#* lua set_terminal_keymaps()")
# '';
}