summaryrefslogtreecommitdiff
path: root/plugin/basename.lua
diff options
context:
space:
mode:
authorJosh Rahm <joshuarahm@gmail.com>2022-08-19 00:08:58 -0600
committerJosh Rahm <joshuarahm@gmail.com>2022-08-19 00:08:58 -0600
commit57171e2191fa769d15d2a33db13703d239cb4acf (patch)
treeee6f1b42c0f153c270b522a1755996f64e860a82 /plugin/basename.lua
parent852bd19b8148023db10aad2d9d1e0c44bf38cac6 (diff)
downloadrneovim-userregs-57171e2191fa769d15d2a33db13703d239cb4acf.tar.gz
rneovim-userregs-57171e2191fa769d15d2a33db13703d239cb4acf.tar.bz2
rneovim-userregs-57171e2191fa769d15d2a33db13703d239cb4acf.zip
add basename register
Diffstat (limited to 'plugin/basename.lua')
-rw-r--r--plugin/basename.lua21
1 files changed, 21 insertions, 0 deletions
diff --git a/plugin/basename.lua b/plugin/basename.lua
new file mode 100644
index 0000000..81cc971
--- /dev/null
+++ b/plugin/basename.lua
@@ -0,0 +1,21 @@
+-- Implementation of the basename register.
+--
+-- The basename register is like the filename register ("%), but instead of
+-- returning the whole filename, it will return just the basename.
+--
+-- This register is assigned to the character '$'
+
+local userreg = require("vim.userreg")
+local api = vim.api
+
+local handler = {}
+
+function handler.do_yank(self, content)
+ return
+end
+
+function handler.do_put()
+ return vim.fn.expand('%:t')
+end
+
+userreg.register_handler('$', handler)