Make url creation and opening two steps
This commit is contained in:
parent
aeff967d39
commit
618c0a873a
2 changed files with 22 additions and 13 deletions
|
|
@ -34,7 +34,7 @@ local function get_current_branch_or_commit_with_priority(priority)
|
|||
end
|
||||
end
|
||||
|
||||
function M.open_file(
|
||||
function M.get_file_url(
|
||||
priority,
|
||||
--[[optional]]
|
||||
range_start,
|
||||
|
|
@ -67,12 +67,10 @@ function M.open_file(
|
|||
file_page_url = file_page_url .. "#L" .. range_start .. "-L" .. range_end
|
||||
end
|
||||
|
||||
if not utils.open_url(file_page_url) then
|
||||
utils.notify("Could not open the built URL " .. file_page_url, vim.log.levels.ERROR)
|
||||
end
|
||||
return file_page_url
|
||||
end
|
||||
|
||||
function M.open_repo(priority)
|
||||
function M.get_repo_url(priority)
|
||||
-- make sure to update the current directory
|
||||
M.setup()
|
||||
if M.is_no_git_origin then
|
||||
|
|
@ -80,8 +78,11 @@ function M.open_repo(priority)
|
|||
return
|
||||
end
|
||||
|
||||
|
||||
local url = M.repo_url .. "/tree/" .. get_current_branch_or_commit_with_priority(priority)
|
||||
return url
|
||||
end
|
||||
|
||||
function M.open_url(url)
|
||||
if not utils.open_url(url) then
|
||||
utils.notify("Could not open the built URL " .. url, vim.log.levels.ERROR)
|
||||
end
|
||||
|
|
|
|||
|
|
@ -13,11 +13,15 @@ local function complete_func(arg_lead, _, _)
|
|||
end
|
||||
|
||||
vim.api.nvim_create_user_command("OpenInGHFile", function(opts)
|
||||
local url
|
||||
|
||||
if opts.range == 0 then -- Nothing was selected
|
||||
openingh.open_file(opts.args)
|
||||
else -- Current line or block was selected
|
||||
openingh.open_file(opts.args, opts.line1, opts.line2)
|
||||
url = openingh.get_file_url(opts.args)
|
||||
else -- Current line or block was selected
|
||||
url = openingh.get_file_url(opts.args, opts.line1, opts.line2)
|
||||
end
|
||||
|
||||
openingh.open_url(url)
|
||||
end, {
|
||||
range = true,
|
||||
nargs = '?',
|
||||
|
|
@ -25,11 +29,15 @@ end, {
|
|||
})
|
||||
|
||||
vim.api.nvim_create_user_command("OpenInGHFileLines", function(opts)
|
||||
local url
|
||||
|
||||
if opts.range == 0 then -- Nothing was selected
|
||||
openingh.open_file(opts.args, opts.line1)
|
||||
else -- Current line or block was selected
|
||||
openingh.open_file(opts.args, opts.line1, opts.line2)
|
||||
url = openingh.get_file_url(opts.args, opts.line1)
|
||||
else -- Current line or block was selected
|
||||
url = openingh.get_file_url(opts.args, opts.line1, opts.line2)
|
||||
end
|
||||
|
||||
openingh.open_url(url)
|
||||
end, {
|
||||
range = true,
|
||||
nargs = '?',
|
||||
|
|
@ -37,7 +45,7 @@ end, {
|
|||
})
|
||||
|
||||
vim.api.nvim_create_user_command("OpenInGHRepo", function(opts)
|
||||
openingh.open_repo(opts.args)
|
||||
openingh.open_url(openingh.get_repo_url(opts.args))
|
||||
end, {
|
||||
nargs = '?',
|
||||
complete = complete_func,
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue