diff --git a/.config/nvim/fnl/init.fnl b/.config/nvim/fnl/init.fnl index 259a6f4..0a50a91 100644 --- a/.config/nvim/fnl/init.fnl +++ b/.config/nvim/fnl/init.fnl @@ -201,6 +201,12 @@ (let [{: setup} (require :ibl)] (setup)) +;; peekaboo + +; there's probably a better way to make this function accessible +; from lua without putting it in another file to be required... +(set vim.g.peekaboo_window "lua require('peekaboo')()") + ;;; generate help files ;; Load all plugins now. diff --git a/.config/nvim/fnl/peekaboo.fnl b/.config/nvim/fnl/peekaboo.fnl new file mode 100644 index 0000000..cd47d72 --- /dev/null +++ b/.config/nvim/fnl/peekaboo.fnl @@ -0,0 +1,19 @@ +(local {: floor} math) +(local {: columns : lines} vim.o) +(local {:nvim_create_buf nvim-create-buf :nvim_open_win nvim-open-win} vim.api) + +;; https://github.com/junegunn/vim-peekaboo/issues/68/#issuecomment-1013782594 +(fn [] + (let [width (floor (* columns 0.8)) + height (floor (* lines 0.8)) + row (- (/ (- lines height) 2) 1) + col (/ (- columns width) 2) + opts {:relative :editor + : row + : col + : width + : height + :style :minimal + :border :rounded} + buf (nvim-create-buf false true)] + (nvim-open-win buf true opts))) diff --git a/.gitmodules b/.gitmodules index 84b8dc9..ec1744b 100644 --- a/.gitmodules +++ b/.gitmodules @@ -155,3 +155,7 @@ path = .local/share/nvim/site/pack/alpha/start/dispatch url = https://github.com/tpope/vim-dispatch.git branch = master +[submodule "peekaboo"] + path = .local/share/nvim/site/pack/alpha/start/peekaboo + url = https://github.com/junegunn/vim-peekaboo.git + branch = master diff --git a/.local/share/nvim/site/pack/alpha/start/peekaboo b/.local/share/nvim/site/pack/alpha/start/peekaboo new file mode 160000 index 0000000..cc4469c --- /dev/null +++ b/.local/share/nvim/site/pack/alpha/start/peekaboo @@ -0,0 +1 @@ +Subproject commit cc4469c204099c73dd7534531fa8ba271f704831