diff --git a/nvim/.config/nvim/fnl/dotfiles/init.fnl b/nvim/.config/nvim/fnl/dotfiles/init.fnl index f020922..79253cd 100644 --- a/nvim/.config/nvim/fnl/dotfiles/init.fnl +++ b/nvim/.config/nvim/fnl/dotfiles/init.fnl @@ -9,6 +9,7 @@ (require :dotfiles.core) (require :dotfiles.mapping) (require :dotfiles.conceal) +(require :dotfiles.zoom-toggle) ;(nvim.ex.source "~/.vimrc") diff --git a/nvim/.config/nvim/fnl/dotfiles/zoom-toggle.fnl b/nvim/.config/nvim/fnl/dotfiles/zoom-toggle.fnl new file mode 100644 index 0000000..19770a6 --- /dev/null +++ b/nvim/.config/nvim/fnl/dotfiles/zoom-toggle.fnl @@ -0,0 +1,24 @@ +(module dotfiles.zoom-toggle + {autoload + {a aniseed.core} + require + {anenv aniseed.env + nvim aniseed.nvim + nu aniseed.nvim.util + u dotfiles.util}}) + +(var unzoom! nil) + +(defn zoom-toggle [] + (if unzoom! + (do + (nvim.command unzoom!) + (set unzoom! nil)) + (do + (set unzoom! (nvim.fn.winrestcmd)) + (nvim.ex.resize) + (nvim.ex.vertical :resize)))) + + +(nu.fn-bridge :ZoomToggle :dotfiles.zoom-toggle :zoom-toggle {:return false}) +(u.nnoremap :z ":call ZoomToggle()")