Bugfixes, Etc. (#502)
* Fix: Jumping to renamed files (#484) * fix: prevent "cursor position outside buffer" error * fix: swap file_name and old_file_name in reviewer data `old_file_name` is not set to the empty string for un-renamed files anymore, because then we can remove the empty-line check in `comment_helpers.go` which was used to replace the empty string with the current file name anyway. * fix: add old_file_name to discussion root node data * fix: also consider old_file_name when jumping to the reviewer This fixes jumping to renamed files, however, may not work for comments that were created on renamed files with the previous version of `gitlab.nvim` as that version assigned the `file_name` and `old_file_name` incorrectly. * refactor: don't shadow variable * fix: check file_name or old_file_name based on which SHA comment belongs to * Fix: Store reviewer data before creating comment popup (#476) * Fix: Make publishing drafts more robust (#483) * Fix: Swap file_name and old_file_name in reviewer data (#485) * Feat: Enable toggling date format between relative and absolute (#491) * Fix: Add opts to help popup (#492) * Fix: Force start_line for jumping to diagnostic to be inside buffer (#494) * fix: redefine colors after reloading colorscheme (#500) * Fix: Use path instead of oldpath as fallback for unrenamed files (#496) * Fix: Use file_name when old_file_name is not set (#495) * fix(ci): fix lua tests (#501) * Proxy Support (#499) This is a #MINOR release. --------- Co-authored-by: Jakub F. Bortlík <jakub.bortlik@proton.me> Co-authored-by: Jonathan Duck <Duckbrain30@gmail.com>
This commit is contained in:
committed by
GitHub
parent
a260f648fe
commit
e29909cd10
@@ -6,7 +6,12 @@ local state = require("gitlab.state")
|
||||
local List = require("gitlab.utils.list")
|
||||
local Popup = require("nui.popup")
|
||||
|
||||
M.open = function()
|
||||
---@class HelpPopupOpts
|
||||
---@field discussion_tree boolean|nil Whether help popup is for the discussion tree
|
||||
|
||||
--- @param opts HelpPopupOpts|nil Table with options for the help popup
|
||||
M.open = function(opts)
|
||||
local help_opts = opts or {}
|
||||
local bufnr = vim.api.nvim_get_current_buf()
|
||||
local keymaps = vim.api.nvim_buf_get_keymap(bufnr, "n")
|
||||
local help_content_lines = List.new(keymaps):reduce(function(agg, keymap)
|
||||
@@ -17,26 +22,28 @@ M.open = function()
|
||||
return agg
|
||||
end, {})
|
||||
|
||||
table.insert(help_content_lines, "")
|
||||
table.insert(
|
||||
help_content_lines,
|
||||
string.format(
|
||||
"%s = draft; %s = unlinked comment; %s = resolved",
|
||||
state.settings.discussion_tree.draft,
|
||||
state.settings.discussion_tree.unlinked,
|
||||
state.settings.discussion_tree.resolved
|
||||
if help_opts.discussion_tree then
|
||||
table.insert(help_content_lines, "")
|
||||
table.insert(
|
||||
help_content_lines,
|
||||
string.format(
|
||||
"%s = draft; %s = unlinked comment; %s = resolved",
|
||||
state.settings.discussion_tree.draft,
|
||||
state.settings.discussion_tree.unlinked,
|
||||
state.settings.discussion_tree.resolved
|
||||
)
|
||||
)
|
||||
)
|
||||
end
|
||||
|
||||
local longest_line = u.get_longest_string(help_content_lines)
|
||||
local opts = { "Help", state.settings.popup.help, longest_line + 3, #help_content_lines, 70 }
|
||||
local help_popup = Popup(popup.create_popup_state(unpack(opts)))
|
||||
local popup_opts = { "Help", state.settings.popup.help, longest_line + 3, #help_content_lines, 70 }
|
||||
local help_popup = Popup(popup.create_popup_state(unpack(popup_opts)))
|
||||
|
||||
help_popup:on(event.BufLeave, function()
|
||||
help_popup:unmount()
|
||||
end)
|
||||
|
||||
popup.set_up_autocommands(help_popup, nil, vim.api.nvim_get_current_win(), opts)
|
||||
popup.set_up_autocommands(help_popup, nil, vim.api.nvim_get_current_win(), popup_opts)
|
||||
|
||||
help_popup:mount()
|
||||
|
||||
|
||||
Reference in New Issue
Block a user