.config/nvim/lua/config/util.lua

changeset 1078
aa4c1aa529a5
child 1085
c2d11f022cf0
new file mode 100644
--- /dev/null
+++ b/.config/nvim/lua/config/util.lua
@@ -0,0 +1,32 @@
+local M = {}
+
+function M.calias(abbrev, expand)
+  vim.cmd.cnoreabbrev(
+    string.format(
+      [[<expr> %s (getcmdtype() == ":" && getcmdline() == "%s") ? "%s" : "%s"]],
+      abbrev,
+      abbrev,
+      expand,
+      abbrev
+    )
+  )
+end
+
+function M.autocmd(group, event, pattern, opts)
+  if type(opts) == "function" then
+    local func = opts
+    opts = { callback = function (_)
+      func()
+    end }
+  end
+
+  vim.api.nvim_create_autocmd(
+    event,
+    vim.tbl_extend("keep", opts, {
+      group = group,
+      pattern = pattern,
+    })
+  )
+end
+
+return M

mercurial