vim: add plugin 'ruifm/gitlinker.nvim'
This commit is contained in:
parent
46cfb7ddca
commit
01f34758a2
2 changed files with 41 additions and 0 deletions
|
@ -7,6 +7,7 @@
|
|||
"cmp-path": { "branch": "main", "commit": "91ff86cd9c29299a64f968ebb45846c485725f23" },
|
||||
"cmp_luasnip": { "branch": "master", "commit": "05a9ab28b53f71d1aece421ef32fee2cb857a843" },
|
||||
"fidget.nvim": { "branch": "legacy", "commit": "2f7c08f45639a64a5c0abcf67321d52c3f499ae6" },
|
||||
"gitlinker.nvim": { "branch": "master", "commit": "cc59f732f3d043b626c8702cb725c82e54d35c25" },
|
||||
"indent-blankline.nvim": { "branch": "master", "commit": "12e92044d313c54c438bd786d11684c88f6f78cd" },
|
||||
"lazy.nvim": { "branch": "main", "commit": "28126922c9b54e35a192ac415788f202c3944c9f" },
|
||||
"lspkind-nvim": { "branch": "master", "commit": "1735dd5a5054c1fb7feaf8e8658dbab925f4f0cf" },
|
||||
|
|
40
config/nvim/lua/fschauen/plugins/gitlinker.lua
Normal file
40
config/nvim/lua/fschauen/plugins/gitlinker.lua
Normal file
|
@ -0,0 +1,40 @@
|
|||
local M = { 'ruifm/gitlinker.nvim' }
|
||||
|
||||
M.dependencies = { 'nvim-lua/plenary.nvim' }
|
||||
|
||||
local open_repo = function()
|
||||
require('gitlinker').get_repo_url { action_callback = require('gitlinker.actions').open_in_browser }
|
||||
end
|
||||
|
||||
local browser = function(mode)
|
||||
return function()
|
||||
require('gitlinker').get_buf_range_url(mode, { action_callback = require('gitlinker.actions').open_in_browser })
|
||||
end
|
||||
end
|
||||
|
||||
local clipboard = function(mode)
|
||||
return function()
|
||||
require('gitlinker').get_buf_range_url(mode, { action_callback = require('gitlinker.actions').copy_to_clipboard })
|
||||
end
|
||||
end
|
||||
|
||||
M.keys = {
|
||||
{ '<leader>gr', open_repo, desc = ' open [r]epository in browser' },
|
||||
{ '<leader>gl', clipboard('n'), desc = ' copy perma[l]ink to clipboard' },
|
||||
{ '<leader>gl', clipboard('v'), desc = ' copy perma[l]ink to clipboard', mode = 'v' },
|
||||
{ '<leader>gL', browser('n'), desc = ' open perma[L]ink in browser' },
|
||||
{ '<leader>gL', browser('v'), desc = ' open perma[L]ink in browser', mode = 'v' },
|
||||
}
|
||||
|
||||
M.config = function()
|
||||
require('gitlinker').setup {
|
||||
mappings = nil, -- I'm defining me own mappings above.
|
||||
|
||||
callbacks = {
|
||||
['git.schauenburg.me'] = require('gitlinker.hosts').get_gitea_type_url,
|
||||
},
|
||||
}
|
||||
end
|
||||
|
||||
return M
|
||||
|
Loading…
Add table
Reference in a new issue