diff options
author | Jonathan Raines <[email protected]> | 2021-07-06 12:40:10 -0500 |
---|---|---|
committer | GitHub <[email protected]> | 2021-07-06 13:40:10 -0400 |
commit | f6e377fcfed932b71456a0b0780c1f5ed22cabd4 (patch) | |
tree | 4cd23a795a3e79782f947f4f36fe7cbe8fd7ac27 | |
parent | 68bfac0468ea4d5d7faf5bede0a4ab8cb5572f0c (diff) |
Replace LazyGit Plugin with FTerm Instance (#717)
* Replace LazyGit Plugin with FTerm Instance
* Added gg keybind to FTerm LazyGit
* Added check to see if lazygit is installed
* Changed lazyload event to prevent error when called from dashboard on startup
* Removed lazygit plugin. Changed Fterm lazy loading
* Made the executable check more universal for when we include other terminal applications
Co-authored-by: rebuilt <[email protected]>
-rw-r--r-- | lua/default-config.lua | 1 | ||||
-rw-r--r-- | lua/lv-floatterm/init.lua | 39 | ||||
-rw-r--r-- | lua/lv-which-key/init.lua | 8 | ||||
-rw-r--r-- | lua/plugins.lua | 14 |
4 files changed, 47 insertions, 15 deletions
diff --git a/lua/default-config.lua b/lua/default-config.lua index fcf33799..47ee86a1 100644 --- a/lua/default-config.lua +++ b/lua/default-config.lua @@ -78,7 +78,6 @@ O = { symbol_outline = { active = false }, debug = { active = false }, dap_install = { active = false }, - lazygit = { active = false }, lush = { active = false }, diffview = { active = false }, floatterm = { active = false }, diff --git a/lua/lv-floatterm/init.lua b/lua/lv-floatterm/init.lua new file mode 100644 index 00000000..0901c1f6 --- /dev/null +++ b/lua/lv-floatterm/init.lua @@ -0,0 +1,39 @@ +local M = {} + +M.config = function() + require'FTerm'.setup({ + dimensions = { + height = 0.8, + width = 0.8, + x = 0.5, + y = 0.5 + }, + border = 'single' -- or 'double' + }) + + -- Create LazyGit Terminal + local term = require("FTerm.terminal") + local lazy = term:new():setup({ + cmd = "lazygit", + dimensions = { + height = 0.9, + width = 0.9 + } + }) + + local function is_installed(exe) + return vim.fn.executable(exe) == 1 + end + + -- Use this to toggle gitui in a floating terminal + function _G.__fterm_lazygit() + if is_installed("lazygit") ~= true then + print("Please install lazygit. Check documentation for more information") + return + end + lazy:toggle() + end +end + +return M + diff --git a/lua/lv-which-key/init.lua b/lua/lv-which-key/init.lua index 5fb3c92d..a14a82b6 100644 --- a/lua/lv-which-key/init.lua +++ b/lua/lv-which-key/init.lua @@ -263,8 +263,12 @@ if O.plugin.zen.active then vim.api.nvim_set_keymap("n", "<leader>z", ":ZenMode<CR>", { noremap = true, silent = true }) mappings["z"] = "Zen" end -if O.plugin.lazygit.active then - vim.api.nvim_set_keymap("n", "<leader>gg", ":LazyGit<CR>", { noremap = true, silent = true }) +if O.plugin.floatterm.active then + vim.api.nvim_set_keymap("n", "<leader>gg", "<CMD>lua _G.__fterm_lazygit()<CR>", { noremap = true, silent = true }) + vim.api.nvim_set_keymap("n", "<A-i>", "<CMD>lua require('FTerm').toggle()<CR>", { noremap = true, silent = true }) + vim.api.nvim_set_keymap("t", "<A-i>", "<C-\\><C-n><CMD>lua require('FTerm').toggle()<CR>", { noremap = true, silent = true }) + vim.api.nvim_set_keymap("n", "<A-l>", "<CMD>lua _G.__fterm_lazygit()<CR>", { noremap = true, silent = true }) + vim.api.nvim_set_keymap("t", "<A-l>", "<C-\\><C-n><CMD>lua _G.__fterm_lazygit()<CR>", { noremap = true, silent = true }) mappings["gg"] = "LazyGit" end if O.plugin.telescope_project.active then diff --git a/lua/plugins.lua b/lua/plugins.lua index 69542b94..50f96517 100644 --- a/lua/plugins.lua +++ b/lua/plugins.lua @@ -217,12 +217,9 @@ return require("packer").startup(function(use) -- Floating terminal use { "numToStr/FTerm.nvim", - event = "BufRead", + event = "BufWinEnter", config = function() - require("FTerm").setup { - dimensions = { height = 0.8, width = 0.8, x = 0.5, y = 0.5 }, - border = "single", -- or 'double' - } + require('lv-floatterm').config() end, disable = not O.plugin.floatterm.active, } @@ -249,13 +246,6 @@ return require("packer").startup(function(use) disable = not O.plugin.sanegx.active, } - -- Lazygit - use { - "kdheepak/lazygit.nvim", - cmd = "LazyGit", - disable = not O.plugin.lazygit.active, - } - -- Diffview use { "sindrets/diffview.nvim", |