summaryrefslogtreecommitdiff
path: root/after/ftplugin
diff options
context:
space:
mode:
authorMarcelo <setanta@gmail.com>2025-03-30 04:26:45 -0300
committerMarcelo <setanta@gmail.com>2025-03-30 04:26:45 -0300
commit59545fa03fd37ab712a721ff0868f2493e689fcf (patch)
treec335c65e23b0c54de16c49f7dc84e0f67f488323 /after/ftplugin
parent88d135fad55deff2de6711090aafb9bf675ede6c (diff)
`gx` will open the neovim plugins in github.
If `gx` is used over a string of the format "xxx/yyy" when editing a Lua file, a github prefix will be added before opening. Also fixed other Lua specific bindings with `buffer = true`, so that those bindings stop spilling outside lua.
Diffstat (limited to 'after/ftplugin')
-rw-r--r--after/ftplugin/lua.lua16
1 files changed, 13 insertions, 3 deletions
diff --git a/after/ftplugin/lua.lua b/after/ftplugin/lua.lua
index dca196a..5011d56 100644
--- a/after/ftplugin/lua.lua
+++ b/after/ftplugin/lua.lua
@@ -1,3 +1,13 @@
-vim.keymap.set("n", "<Leader><Leader>x", "<CMD>source %<CR>", { desc = "Reloads the current config file" })
-vim.keymap.set("n", "<Leader>x", "<CMD>.lua<CR>", { desc = "Executes the current line" })
-vim.keymap.set("v", "<Leader>x", "<CMD>lua<CR>", { desc = "Executes the current selection" })
+vim.keymap.set("n", "<Leader><Leader>x", "<CMD>source %<CR>", { buffer = true, desc = "Reloads the current config file" })
+vim.keymap.set("n", "<Leader>x", "<CMD>.lua<CR>", { buffer = true, desc = "Executes the current line" })
+vim.keymap.set("v", "<Leader>x", "<CMD>lua<CR>", { buffer = true, desc = "Executes the current selection" })
+
+-- Open neovim plugins in github.
+vim.keymap.set("n", "gx", function()
+ local path = vim.fn.expand('<cWORD>')
+ local url = path:match([[^["']([^/]+/[^/]+)["'],?$]])
+ if url then
+ path = "https://github.com/" .. url
+ end
+ vim.ui.open(path)
+end, { buffer = true })