aboutsummaryrefslogtreecommitdiff
path: root/lua/user
diff options
context:
space:
mode:
authorsrdusr <trevorgray@srdusr.com>2023-04-12 20:04:40 +0200
committersrdusr <trevorgray@srdusr.com>2023-04-12 20:04:40 +0200
commitb8c7bd6dc2edc26949c14418193f9ddd5fa49c02 (patch)
tree2973ac9afa88ce4724f29673ce3f44f828a6e3cc /lua/user
parent044aead9d60a81e03cd60f11b6e34851f9093edf (diff)
downloaddotfiles-b8c7bd6dc2edc26949c14418193f9ddd5fa49c02.tar.gz
dotfiles-b8c7bd6dc2edc26949c14418193f9ddd5fa49c02.zip
Set bare dotfiles repository git environment variables dynamically
Diffstat (limited to 'lua/user')
-rw-r--r--lua/user/mods.lua44
1 files changed, 44 insertions, 0 deletions
diff --git a/lua/user/mods.lua b/lua/user/mods.lua
index 8a1f3f3..704ffdf 100644
--- a/lua/user/mods.lua
+++ b/lua/user/mods.lua
@@ -163,4 +163,48 @@ end
--------------------------------------------------
+-- Set bare dotfiles repository git environment variables dynamically
+
+-- Set git enviornment variables
+--function M.Set_git_env_vars()
+-- local git_dir_job = vim.fn.jobstart({ "git", "rev-parse", "--git-dir" })
+-- local command_status = vim.fn.jobwait({ git_dir_job })[1]
+-- if command_status > 0 then
+-- vim.env.GIT_DIR = vim.fn.expand("$HOME/.cfg")
+-- vim.env.GIT_WORK_TREE = vim.fn.expand("~")
+-- else
+-- vim.env.GIT_DIR = nil
+-- vim.env.GIT_WORK_TREE = nil
+-- end
+-- -- Launch terminal emulator with Git environment variables set
+-- --require("toggleterm").exec(string.format([[%s %s]], os.getenv("SHELL"), "-i"))
+--end
+
+------
+
+local prev_cwd = ""
+
+function M.Set_git_env_vars()
+ local cwd = vim.fn.getcwd()
+ if cwd ~= prev_cwd then
+ prev_cwd = cwd
+ local git_dir_job = vim.fn.jobstart({ "git", "rev-parse", "--git-dir" })
+ local command_status = vim.fn.jobwait({ git_dir_job })[1]
+ if command_status > 0 then
+ vim.env.GIT_DIR = vim.fn.expand("$HOME/.cfg")
+ vim.env.GIT_WORK_TREE = vim.fn.expand("~")
+ else
+ vim.env.GIT_DIR = nil
+ vim.env.GIT_WORK_TREE = nil
+ end
+ end
+end
+vim.cmd [[augroup my_git_env_vars]]
+vim.cmd [[ autocmd!]]
+vim.cmd [[ autocmd BufEnter * lua require('user.mods').Set_git_env_vars()]]
+vim.cmd [[ autocmd VimEnter * lua require('user.mods').Set_git_env_vars()]]
+vim.cmd [[augroup END]]
+
+--------------------------------------------------
+
return M