- ~0ms load time
- <100 lines of Lua
- simple to setup and customize
This plugin exposes to the user only one function:
- toggle("optional: process_name") - opens (toggles) terminal window with given process (opens
bash
by default)
- With folke/lazy.nvim
{ "Ernest1338/termplug.nvim" }
use "Ernest1338/termplug.nvim"
add("Ernest1338/termplug.nvim")
Firstly, call the setup
function with optional config (see configuration options below):
require("termplug").setup()
In your init.lua, set the mapping to toggle a terminal window:
vim.keymap.set({ "n", "t" }, "<A-i>", "<cmd> Term <CR>")
If you want to toggle different process, eg. lazygit use:
vim.keymap.set({ "n", "t" }, "<C-g>", "<cmd> Term lazygit <CR>")
There is only one configuration option: size
.
It controlls how big will be the popup window. Takes values from 0.0
to 1.0
(defaults to 0.9).
Set the size value to 1
for a full screen terminal popup.
- For folke/lazy.nvim
{ "Ernest1338/termplug.nvim", config = { size = 0.5 } },
use {
"Ernest1338/termplug.nvim",
config = function()
require("termplug").setup{ size = 0.5 }
end
}
later(function()
add("Ernest1338/termplug.nvim")
require("termplug").setup({ size = 0.5 })
end)
- Neovim >= v0.7.0
Because I wanted a simple plugin to toggle a popup terminal window with a mapping and every existing terminal plugins seem over complicated.
Combined with the ability to choose which process to execute, this plugin became not only a terminal plugin but it can also toggle a popup window with any TUI application of your choosing.
For simplicity, it supports toggling only one of each process (one bash, one lazygit, ...) at a time.