Files
config/lazygit/config.yml
2025-10-01 13:23:44 +02:00

297 lines
12 KiB
YAML

gui:
skipRewordInEditorWarning: true
# # stuff relating to the UI
# windowSize: 'normal' # one of 'normal' | 'half' | 'full' default is 'normal'
scrollHeight: 8 # how many lines you scroll by
# scrollPastBottom: true # enable scrolling past the bottom
# scrollOffMargin: 2 # how many lines to keep before/after the cursor when it reaches the top/bottom of the view; see 'Scroll-off Margin' section below
# scrollOffBehavior: 'margin' # one of 'margin' | 'jump'; see 'Scroll-off Margin' section below
# sidePanelWidth: 0.3333 # number from 0 to 1
# expandFocusedSidePanel: false
# mainPanelSplitMode: 'flexible' # one of 'horizontal' | 'flexible' | 'vertical'
# enlargedSideViewLocation: 'left' # one of 'left' | 'top'
# language: 'auto' # one of 'auto' | 'en' | 'zh-CN' | 'zh-TW' | 'pl' | 'nl' | 'ja' | 'ko' | 'ru'
# timeFormat: '02 Jan 06' # https://pkg.go.dev/time#Time.Format
# shortTimeFormat: '3:04PM'
theme:
activeBorderColor:
- green
- bold
inactiveBorderColor:
- red
- bold
# searchingActiveBorderColor:
# - cyan
# - bold
# optionsTextColor:
# - blue
# selectedLineBgColor:
# - blue # set to `default` to have no background colour
# cherryPickedCommitBgColor:
# - cyan
# cherryPickedCommitFgColor:
# - blue
# unstagedChangesColor:
# - red
# defaultFgColor:
# - default
# commitLength:
# show: true
# mouseEvents: true
# skipDiscardChangeWarning: false
# skipStashWarning: false
# showFileTree: true # for rendering changes files in a tree format
# showListFooter: true # for seeing the '5 of 20' message in list panels
# showRandomTip: true
# showBranchCommitHash: false # show commit hashes alongside branch names
# showBottomLine: true # for hiding the bottom information line (unless it has important information to tell you)
# showPanelJumps: true # for showing the jump-to-panel keybindings as panel subtitles
# showCommandLog: true
# showIcons: false # deprecated: use nerdFontsVersion instead
# nerdFontsVersion: "" # nerd fonts version to use ("2" or "3"); empty means don't show nerd font icons
# showFileIcons: true # for hiding file icons in the file views
# commandLogSize: 8
# splitDiff: 'auto' # one of 'auto' | 'always'
# skipRewordInEditorWarning: false # for skipping the confirmation before launching the reword editor
# border: 'rounded' # one of 'single' | 'double' | 'rounded' | 'hidden'
# animateExplosion: true # shows an explosion animation when nuking the working tree
# portraitMode: 'auto' # one of 'auto' | 'never' | 'always'
# filterMode: 'substring' # one of 'substring' | 'fuzzy'; see 'Filtering' section below
spinner:
frames: ['⠋', '⠙', '⠹', '⠸', '⠼', '⠴', '⠦', '⠧', '⠇', '⠏']
rate: 100
# statusPanelView: 'dashboard' # one of 'dashboard' | 'allBranchesLog'
# git:
# colorArg: always
# useConfig: false
# commit:
# signOff: false
# autoWrapCommitMessage: true # automatic WYSIWYG wrapping of the commit message as you type
# autoWrapWidth: 72 # if autoWrapCommitMessage is true, the width to wrap to
# merging:
# # only applicable to unix users
# manualCommit: false
# # extra args passed to `git merge`, e.g. --no-ff
# args: ''
# log:
# # one of date-order, author-date-order, topo-order or default.
# # topo-order makes it easier to read the git log graph, but commits may not
# # appear chronologically. See https://git-scm.com/docs/git-log#_commit_ordering
# #
# # Deprecated: Configure this with `Log menu -> Commit sort order` (<c-l> in the commits window by default).
# order: 'topo-order'
# # one of always, never, when-maximised
# # this determines whether the git graph is rendered in the commits panel
# #
# # Deprecated: Configure this with `Log menu -> Show git graph` (<c-l> in the commits window by default).
# showGraph: 'always'
# # displays the whole git graph by default in the commits panel (equivalent to passing the `--all` argument to `git log`)
# showWholeGraph: false
# skipHookPrefix: WIP
# # The main branches. We colour commits green if they belong to one of these branches,
# # so that you can easily see which commits are unique to your branch (coloured in yellow)
# mainBranches: [master, main]
# autoFetch: true
# autoRefresh: true
# fetchAll: true # Pass --all flag when running git fetch. Set to false to fetch only origin (or the current branch's upstream remote if there is one)
# branchLogCmd: 'git log --graph --color=always --abbrev-commit --decorate --date=relative --pretty=medium {{branchName}} --'
# allBranchesLogCmd: 'git log --graph --all --color=always --abbrev-commit --decorate --date=relative --pretty=medium'
# overrideGpg: false # prevents lazygit from spawning a separate process when using GPG
# disableForcePushing: false
# parseEmoji: false
# truncateCopiedCommitHashesTo: 12 # When copying commit hashes to the clipboard, truncate them to this length. Set to 40 to disable truncation.
# os:
# copyToClipboardCmd: '' # See 'Custom Command for Copying to Clipboard' section
# editPreset: '' # see 'Configuring File Editing' section
# edit: ''
# editAtLine: ''
# editAtLineAndWait: ''
# open: ''
# openLink: ''
# refresher:
# refreshInterval: 10 # File/submodule refresh interval in seconds. Auto-refresh can be disabled via option 'git.autoRefresh'.
# fetchInterval: 60 # Re-fetch interval in seconds. Auto-fetch can be disabled via option 'git.autoFetch'.
# update:
# method: prompt # can be: prompt | background | never
# days: 14 # how often an update is checked for
# confirmOnQuit: false
# # determines whether hitting 'esc' will quit the application when there is nothing to cancel/close
quitOnTopLevelReturn: false
# disableStartupPopups: false
notARepository: "skip" # one of: 'prompt' | 'create' | 'skip' | 'quit'
# promptToReturnFromSubprocess: true # display confirmation when subprocess terminates
keybinding:
universal:
quit: "<c-c>"
# quit-alt1: '<c-c>' # alternative/alias of quit
# return: 'q' # return to previous menu, will quit if there's nowhere to return
# quitWithoutChangingDirectory: 'Q'
# togglePanel: '<tab>' # goto the next panel
# prevItem: '<up>' # go one line up
# nextItem: '<down>' # go one line down
# prevItem-alt: 'k' # go one line up
# nextItem-alt: 'j' # go one line down
prevPage: "[" # go to next page in list
nextPage: "]" # go to previous page in list
# gotoTop: '<' # go to top of list
# gotoBottom: '>' # go to bottom of list
# scrollLeft: 'H' # scroll left within list view
# scrollRight: 'L' # scroll right within list view
# prevBlock: '<left>' # goto the previous block / panel
# nextBlock: '<right>' # goto the next block / panel
# prevBlock-alt: 'h' # goto the previous block / panel
# nextBlock-alt: 'l' # goto the next block / panel
jumpToBlock: ["5", "1", "2", "3", "4"] # goto the Nth block / panel
# nextMatch: 'n'
# prevMatch: 'N'
# optionMenu: <disabled> # show help menu
# optionMenu-alt1: '?' # show help menu
# select: '<space>'
# goInto: '<enter>'
# openRecentRepos: '<c-r>'
# confirm: '<enter>'
# remove: 'd'
# new: 'n'
# edit: 'e'
# openFile: 'o'
# scrollUpMain: '<pgup>' # main panel scroll up
# scrollDownMain: '<pgdown>' # main panel scroll down
# scrollUpMain-alt1: 'K' # main panel scroll up
# scrollDownMain-alt1: 'J' # main panel scroll down
# scrollUpMain-alt2: '<c-u>' # main panel scroll up
# scrollDownMain-alt2: '<c-d>' # main panel scroll down
# executeCustomCommand: ':'
# createRebaseOptionsMenu: 'm'
# pushFiles: 'P'
# pullFiles: 'p'
# refresh: 'R'
# createPatchOptionsMenu: '<c-p>'
prevTab: ","
nextTab: "."
# nextScreenMode: '+'
# prevScreenMode: '_'
undo: "u"
redo: "<c-r>"
# filteringMenu: '<c-s>'
# diffingMenu: 'W'
# diffingMenu-alt: '<c-e>' # deprecated
# copyToClipboard: '<c-o>'
# submitEditorText: '<enter>'
# extrasMenu: '@'
# toggleWhitespaceInDiffView: '<c-w>'
# increaseContextInDiffView: '}'
# decreaseContextInDiffView: '{'
# toggleRangeSelect: 'v'
# rangeSelectUp: '<s-up>'
# rangeSelectDown: '<s-down>'
# status:
# checkForUpdate: 'u'
# recentRepos: '<enter>'
# files:
# commitChanges: 'c'
# commitChangesWithoutHook: 'w' # commit changes without pre-commit hook
# amendLastCommit: 'A'
# commitChangesWithEditor: 'C'
# findBaseCommitForFixup: '<c-f>'
# confirmDiscard: 'x'
# ignoreFile: 'i'
# refreshFiles: 'r'
# stashAllChanges: 's'
# viewStashOptions: 'S'
# toggleStagedAll: 'a' # stage/unstage all
# viewResetOptions: 'D'
# fetch: 'f'
# toggleTreeView: '`'
# openMergeTool: 'M'
# openStatusFilter: '<c-b>'
# branches:
# createPullRequest: 'o'
# viewPullRequestOptions: 'O'
# checkoutBranchByName: 'c'
# forceCheckoutBranch: 'F'
# rebaseBranch: 'r'
# renameBranch: 'R'
# mergeIntoCurrentBranch: 'M'
# viewGitFlowOptions: 'i'
# fastForward: 'f' # fast-forward this branch from its upstream
# createTag: 'T'
# pushTag: 'P'
# setUpstream: 'u' # set as upstream of checked-out branch
# fetchRemote: 'f'
# commits:
# squashDown: 's'
# renameCommit: 'r'
# renameCommitWithEditor: 'R'
# viewResetOptions: 'g'
# markCommitAsFixup: 'f'
# createFixupCommit: 'F' # create fixup commit for this commit
# squashAboveCommits: 'S'
# moveDownCommit: '<c-j>' # move commit down one
# moveUpCommit: '<c-k>' # move commit up one
# amendToCommit: 'A'
# amendAttributeMenu: 'a'
# pickCommit: 'p' # pick commit (when mid-rebase)
# revertCommit: 't'
# cherryPickCopy: 'C'
# pasteCommits: 'V'
# tagCommit: 'T'
# checkoutCommit: '<space>'
# resetCherryPick: '<c-R>'
# copyCommitMessageToClipboard: '<c-y>'
# openLogMenu: '<c-l>'
# viewBisectOptions: 'b'
# stash:
# popStash: 'g'
# renameStash: 'r'
# commitFiles:
# checkoutCommitFile: 'c'
# main:
# toggleSelectHunk: 'a'
# pickBothHunks: 'b'
# submodules:
# init: 'i'
# update: 'u'
# bulkMenu: 'b'
# commitMessage:
# commitMenu: '<c-o>'
# amendAttribute:
# addCoAuthor: 'c'
# resetAuthor: 'a'
# setAuthor: 'A'
# git:
# paging:
# colorArg: always
# pager: delta --side-by-side --line-numbers --keep-plus-minus-markers --paging=never
# # externalDiffCommand: difft --color=always --display=inline --syntax-highlight=on --tab-width=2
customCommands:
- key: "<c-V>"
context: "files"
command: 'bash -c ''modname=$(grep -Po "(?<=<name>).+(?=</name>)" {{.SelectedPath}}/About/About.xml); git add {{.SelectedPath}}; git commit -m "Add $modname"'''
description: "Add and commit rimworld mod with its name"
- key: "<c-N>"
context: "files"
command: 'bash -c ''modname=$(grep -Po "(?<=<name>).+(?=</name>)" {{.SelectedPath}}/About/About.xml); git add {{.SelectedPath}}; git commit -m "Update $modname"'''
description: "Add and commit rimworld mod with its name"
- key: "<c-B>"
context: "files"
command: 'bash -c ''modname=$(git diff HEAD -- {{.SelectedPath}}/About/About.xml | grep -Po "(?<=<name>).+(?=</name>)"); git add {{.SelectedPath}}; git commit -m "Remove $modname"'''
description: "Remove and commit rimworld mod with its path"
- key: "<c-a>"
context: "files"
command: "git submodule add ./{{.SelectedPath}}/.git {{.SelectedPath}}"
description: "Add selected path as a git submodule"
- key: "U"
context: "files"
command: 'git commit -m "Update"'
description: "Add and commit all changes as a plain update"
- key: "O"
context: "files"
command: 'oco --yes'
description: "Open commit options"
services:
"gitlab.neos.hr": "gitlab:gitlab.neos.hr"
os:
shell: "C:\\Program Files\\Git\\bin\\bash.exe"