aboutsummaryrefslogtreecommitdiff
path: root/vim/bundle/vim-addon-mw-utils/autoload/env_reload.vim
diff options
context:
space:
mode:
Diffstat (limited to 'vim/bundle/vim-addon-mw-utils/autoload/env_reload.vim')
-rw-r--r--vim/bundle/vim-addon-mw-utils/autoload/env_reload.vim12
1 files changed, 12 insertions, 0 deletions
diff --git a/vim/bundle/vim-addon-mw-utils/autoload/env_reload.vim b/vim/bundle/vim-addon-mw-utils/autoload/env_reload.vim
new file mode 100644
index 0000000..d8af33a
--- /dev/null
+++ b/vim/bundle/vim-addon-mw-utils/autoload/env_reload.vim
@@ -0,0 +1,12 @@
+" in sh/bash you can type export to get a list of environment variables
+" This function assigns those env vars to Vim.
+" Does not delete env vars yet
+" Example: env_reload#ReloadEnv(system("sh -c 'export'")
+fun! env_reload#ReloadEnv(bash_export_command_output)
+ for i in split(a:bash_export_command_output,"\n")
+ let m = matchlist(i, 'export \([^=]\+\)="\(.*\)"')
+ if empty(m) | continue | endif
+ " don't care about quoted values right now.
+ exec 'let $'.m[1].'='.string(m[2])
+ endfor
+endf