summary refs log tree commit diff
path: root/.vim
diff options
context:
space:
mode:
authorRobert Günzler <r@gnzler.io>2022-08-02 22:16:30 +0200
committerRobert Günzler <r@gnzler.io>2022-08-02 22:16:30 +0200
commit4283595954bc9373c6270bf553cc8aa52124195d (patch)
tree8e8bc4bddbc35f07fc7e5f7774cbcef3b07cd839 /.vim
parent29e6431127fb86772704deb56f2bc33865d67d49 (diff)
vim: improve the local rc loader
Diffstat (limited to '.vim')
-rw-r--r--.vim/init.lua19
1 files changed, 15 insertions, 4 deletions
diff --git a/.vim/init.lua b/.vim/init.lua
index 77ea09b..271c007 100644
--- a/.vim/init.lua
+++ b/.vim/init.lua
@@ -333,11 +333,22 @@ cmd [[ command! -nargs=* Sh lua require('job').sh(table.concat({<f-args>}, ' '))
 _G.statusline_enable_notifysend = false
 require('statusline')
 
--- source .nvimrc if it exists
-local local_vimrc = vim.fn.getcwd()..'/.nvimrc'
-if vim.loop.fs_stat(local_vimrc) then
-  cmd('source ' .. local_vimrc)
+local load_local_rc = function()
+  local root = vim.fn.getcwd()
+
+  if root and vim.loop.fs_stat(root .. '/.nvimrc') then
+    vim.cmd('luafile ' .. root .. '/.nvimrc')
+    vim.notify('loaded local rc')
+  end
+
+  -- try harder...
+  -- root = require('lspconfig.util').root_pattern('.nvimrc')(vim.fn.getcwd())
+  -- if root and vim.loop.fs_stat(root .. '/.nvimrc') then
+  --   vim.cmd('luafile ' .. root .. '/.nvimrc')
+  --   vim.notify('loaded local rc')
+  -- end
 end
+load_local_rc()
 
 -- TODO: remove eventually
 vim.filetype.add {