attachment_dir = nil, -- The local directory for files (see the "summary" section)
reviewer_settings = {
jump_with_no_diagnostics = false, -- Jump to last position in discussion tree if true, otherwise stay in reviewer and show warning.
diffview = {
imply_local = false, -- If true, will attempt to use --imply_local option when calling |:DiffviewOpen|
},
},
connection_settings = {
proxy = "", -- Configure a proxy URL to use when connecting to GitLab. Supports URL schemes: http, https, socks5
insecure = false, -- Like curl's --insecure option, ignore bad x509 certificates on connection
remote = "origin", -- The default remote that your MRs target
},
keymaps = {
disable_all = false, -- Disable all mappings created by the plugin
help = "g?", -- Open a help popup for local keymaps when a relevant view is focused (popup, discussion panel, etc)
global = {
disable_all = false, -- Disable all global mappings created by the plugin
add_assignee = "glaa",
delete_assignee = "glad",
add_label = "glla",
delete_label = "glld",
add_reviewer = "glra",
delete_reviewer = "glrd",
approve = "glA", -- Approve MR
revoke = "glR", -- Revoke MR approval
merge = "glM", -- Merge the feature branch to the target branch and close MR
set_auto_merge = "glm", -- Set MR to merge automatically when the pipeline succeeds
rebase = "glrr", -- Rebase the feature branch of the MR on the server and pull the new state
rebase_skip_ci = "glrs", -- Same as `rebase`, but skip the CI pipeline
rebase_force = "glrf", -- Same as `rebase`, but rebase even if MR already is rebased
create_mr = "glC", -- Create a new MR for currently checked-out feature branch
choose_merge_request = "glc", -- Chose MR for review (if necessary check out the feature branch)
start_review = "glS", -- Start review for the currently checked-out branch
reload_review = "gl<C-R>", -- Load new MR state from Gitlab and apply new diff refs to the diff view
close_review = "glQ", -- Close the reviewer, discussions, and shut down the Go server
summary = "gls", -- Show the editable summary of the MR
copy_mr_url = "glu", -- Copy the URL of the MR to the system clipboard
open_in_browser = "glo", -- Open the URL of the MR in the default Internet browser
create_note = "gln", -- Create a note (comment not linked to a specific line)
pipeline = "glp", -- Show the pipeline status
toggle_discussions = "gld", -- Toggle the discussions window
toggle_draft_mode = "glD", -- Toggle between draft mode (comments posted as drafts) and live mode (comments are posted immediately)
publish_all_drafts = "glP", -- Publish all draft comments/notes
},
popup = {
disable_all = false, -- Disable all default mappings for the popup windows (comments, summary, MR creation, etc.)
next_field = "<Tab>", -- Cycle to the next field. Accepts |count|.
prev_field = "<S-Tab>", -- Cycle to the previous field. Accepts |count|.
perform_action = "ZZ", -- Once in normal mode, does action (like saving comment or applying description edit, etc)
perform_linewise_action = "ZA", -- Once in normal mode, does the linewise action (see logs for this job, etc)
discard_changes = "ZQ", -- Quit the popup discarding changes, the popup content is not saved to the `temp_registers` (see `:h gitlab.nvim.temp-registers`)
},
discussion_tree = {
disable_all = false, -- Disable all default mappings for the discussion tree window
add_emoji = "Ea", -- Add an emoji to the note/comment
delete_emoji = "Ed", -- Remove an emoji from a note/comment
delete_comment = "dd", -- Delete comment
edit_comment = "e", -- Edit comment
reply = "r", -- Reply to comment
toggle_resolved = "-", -- Toggle the resolved status of the whole discussion
jump_to_file = "o", -- Jump to comment location in file
jump_to_reviewer = "a", -- Jump to the comment location in the reviewer window
open_in_browser = "b", -- Jump to the URL of the current note/discussion
copy_node_url = "u", -- Copy the URL of the current node to clipboard
switch_view = "c", -- Toggle between the notes and discussions views
toggle_tree_type = "i", -- Toggle type of discussion tree - "simple", or "by_file_name"
publish_draft = "P", -- Publish the currently focused note/comment
toggle_date_format = "dt", -- Toggle between date formats: relative (e.g., "5 days ago", "just now", "October 13, 2024" for dates more than a month ago) and absolute (e.g., "03/01/2024 at 11:43")
toggle_draft_mode = "D", -- Toggle between draft mode (comments posted as drafts) and live mode (comments are posted immediately)
toggle_sort_method = "st", -- Toggle whether discussions are sorted by the "latest_reply", or by "original_comment", see `:h gitlab.nvim.toggle_sort_method`
toggle_node = "t", -- Open or close the discussion
toggle_all_discussions = "T", -- Open or close separately both resolved and unresolved discussions
toggle_resolved_discussions = "R", -- Open or close all resolved discussions
toggle_unresolved_discussions = "U", -- Open or close all unresolved discussions
refresh_data = "<C-R>", -- Refresh the data in the view by hitting Gitlab's APIs again
print_node = "<leader>p", -- Print the current node (for debugging)
},
reviewer = {
disable_all = false, -- Disable all default mappings for the reviewer windows
create_comment = "c", -- Create a comment for the lines that the following {motion} moves over. Repeat the key(s) for creating comment for the current line
create_suggestion = "s", -- Create a suggestion for the lines that the following {motion} moves over. Repeat the key(s) for creating comment for the current line
move_to_discussion_tree = "a", -- Jump to the comment in the discussion tree
},
},
popup = { -- The popup for comment creation, editing, and replying
width = "40%", -- Can be a percentage (string or decimal, "40%" = 0.4) of editor screen width, or an integer (number of columns)
height = "60%", -- Can be a percentage (string or decimal, "60%" = 0.6) of editor screen width, or an integer (number of rows)
position = "50%", -- Position (from the top left corner), either a number or percentage string that applies to both horizontal and vertical position, or a table that specifies them separately, e.g., { row = "90%", col = "100%" } places popups in the bottom right corner while leaving the status line visible
border = "rounded", -- One of "rounded", "single", "double", "solid"
opacity = 1.0, -- From 0.0 (fully transparent) to 1.0 (fully opaque)
-- The emoji version used by the Gitlab instance: https://{GITLAB_URL}/-/emojis/{VERSION}/emojis.json. Can be a function that receives the gitlab_url as an argument and returns the version string, e.g.:
-- version = function(gitlab_url)
-- return gitlab_url == "https://gitlab.com" and "4" or "3"
-- end
version = "4",
},
choose_merge_request = {
open_reviewer = true, -- Open the reviewer window automatically after switching merge requests
},
info = { -- Show additional fields in the summary view
enabled = true,
horizontal = false, -- Display metadata to the left of the summary rather than underneath
fields = { -- The fields listed here will be displayed, in whatever order you choose
"author",
"created_at",
"updated_at",
"merge_status",
"draft",
"conflicts",
"assignees",
"reviewers",
"pipeline",
"branch",
"target_branch",
"auto_merge",
"delete_branch",
"squash",
"labels",
"web_url",
"mergeability_checks", -- See more detailed configuration below
},
},
-- Settings for the mergeability checks in the summary view