mirror of
				https://github.com/jesseduffield/lazygit.git
				synced 2025-11-03 01:13:18 +03:00 
			
		
		
		
	Set up benchmark on migration
This commit is contained in:
		@@ -87,3 +87,611 @@ git:
 | 
			
		||||
		})
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
var largeConfiguration = []byte(`
 | 
			
		||||
# Config relating to the Lazygit UI
 | 
			
		||||
gui:
 | 
			
		||||
  # The number of lines you scroll by when scrolling the main window
 | 
			
		||||
  scrollHeight: 2
 | 
			
		||||
 | 
			
		||||
  # If true, allow scrolling past the bottom of the content in the main window
 | 
			
		||||
  scrollPastBottom: true
 | 
			
		||||
 | 
			
		||||
  # See https://github.com/jesseduffield/lazygit/blob/master/docs/Config.md#scroll-off-margin
 | 
			
		||||
  scrollOffMargin: 2
 | 
			
		||||
 | 
			
		||||
  # One of: 'margin' (default) | 'jump'
 | 
			
		||||
  scrollOffBehavior: margin
 | 
			
		||||
 | 
			
		||||
  # The number of spaces per tab; used for everything that's shown in the main view, but probably mostly relevant for diffs.
 | 
			
		||||
  # Note that when using a pager, the pager has its own tab width setting, so you need to pass it separately in the pager command.
 | 
			
		||||
  tabWidth: 4
 | 
			
		||||
 | 
			
		||||
  # If true, capture mouse events.
 | 
			
		||||
  # When mouse events are captured, it's a little harder to select text: e.g. requiring you to hold the option key when on macOS.
 | 
			
		||||
  mouseEvents: true
 | 
			
		||||
 | 
			
		||||
  # If true, do not show a warning when discarding changes in the staging view.
 | 
			
		||||
  skipDiscardChangeWarning: false
 | 
			
		||||
 | 
			
		||||
  # If true, do not show warning when applying/popping the stash
 | 
			
		||||
  skipStashWarning: false
 | 
			
		||||
 | 
			
		||||
  # If true, do not show a warning when attempting to commit without any staged files; instead stage all unstaged files.
 | 
			
		||||
  skipNoStagedFilesWarning: false
 | 
			
		||||
 | 
			
		||||
  # If true, do not show a warning when rewording a commit via an external editor
 | 
			
		||||
  skipRewordInEditorWarning: false
 | 
			
		||||
 | 
			
		||||
  # Fraction of the total screen width to use for the left side section. You may want to pick a small number (e.g. 0.2) if you're using a narrow screen, so that you can see more of the main section.
 | 
			
		||||
  # Number from 0 to 1.0.
 | 
			
		||||
  sidePanelWidth: 0.3333
 | 
			
		||||
 | 
			
		||||
  # If true, increase the height of the focused side window; creating an accordion effect.
 | 
			
		||||
  expandFocusedSidePanel: false
 | 
			
		||||
 | 
			
		||||
  # The weight of the expanded side panel, relative to the other panels. 2 means
 | 
			
		||||
  # twice as tall as the other panels. Only relevant if expandFocusedSidePanel is true.
 | 
			
		||||
  expandedSidePanelWeight: 2
 | 
			
		||||
 | 
			
		||||
  # Sometimes the main window is split in two (e.g. when the selected file has both staged and unstaged changes). This setting controls how the two sections are split.
 | 
			
		||||
  # Options are:
 | 
			
		||||
  # - 'horizontal': split the window horizontally
 | 
			
		||||
  # - 'vertical': split the window vertically
 | 
			
		||||
  # - 'flexible': (default) split the window horizontally if the window is wide enough, otherwise split vertically
 | 
			
		||||
  mainPanelSplitMode: flexible
 | 
			
		||||
 | 
			
		||||
  # How the window is split when in half screen mode (i.e. after hitting '+' once).
 | 
			
		||||
  # Possible values:
 | 
			
		||||
  # - 'left': split the window horizontally (side panel on the left, main view on the right)
 | 
			
		||||
  # - 'top': split the window vertically (side panel on top, main view below)
 | 
			
		||||
  enlargedSideViewLocation: left
 | 
			
		||||
 | 
			
		||||
  # If true, wrap lines in the staging view to the width of the view. This
 | 
			
		||||
  # makes it much easier to work with diffs that have long lines, e.g.
 | 
			
		||||
  # paragraphs of markdown text.
 | 
			
		||||
  wrapLinesInStagingView: true
 | 
			
		||||
 | 
			
		||||
  # One of 'auto' (default) | 'en' | 'zh-CN' | 'zh-TW' | 'pl' | 'nl' | 'ja' | 'ko' | 'ru'
 | 
			
		||||
  language: auto
 | 
			
		||||
 | 
			
		||||
  # Format used when displaying time e.g. commit time.
 | 
			
		||||
  # Uses Go's time format syntax: https://pkg.go.dev/time#Time.Format
 | 
			
		||||
  timeFormat: 02 Jan 06
 | 
			
		||||
 | 
			
		||||
  # Format used when displaying time if the time is less than 24 hours ago.
 | 
			
		||||
  # Uses Go's time format syntax: https://pkg.go.dev/time#Time.Format
 | 
			
		||||
  shortTimeFormat: 3:04PM
 | 
			
		||||
 | 
			
		||||
  # Config relating to colors and styles.
 | 
			
		||||
  # See https://github.com/jesseduffield/lazygit/blob/master/docs/Config.md#color-attributes
 | 
			
		||||
  theme:
 | 
			
		||||
    # Border color of focused window
 | 
			
		||||
    activeBorderColor:
 | 
			
		||||
      - green
 | 
			
		||||
      - bold
 | 
			
		||||
 | 
			
		||||
    # Border color of non-focused windows
 | 
			
		||||
    inactiveBorderColor:
 | 
			
		||||
      - default
 | 
			
		||||
 | 
			
		||||
    # Border color of focused window when searching in that window
 | 
			
		||||
    searchingActiveBorderColor:
 | 
			
		||||
      - cyan
 | 
			
		||||
      - bold
 | 
			
		||||
 | 
			
		||||
    # Color of keybindings help text in the bottom line
 | 
			
		||||
    optionsTextColor:
 | 
			
		||||
      - blue
 | 
			
		||||
 | 
			
		||||
    # Background color of selected line.
 | 
			
		||||
    # See https://github.com/jesseduffield/lazygit/blob/master/docs/Config.md#highlighting-the-selected-line
 | 
			
		||||
    selectedLineBgColor:
 | 
			
		||||
      - blue
 | 
			
		||||
 | 
			
		||||
    # Background color of selected line when view doesn't have focus.
 | 
			
		||||
    inactiveViewSelectedLineBgColor:
 | 
			
		||||
      - bold
 | 
			
		||||
 | 
			
		||||
    # Foreground color of copied commit
 | 
			
		||||
    cherryPickedCommitFgColor:
 | 
			
		||||
      - blue
 | 
			
		||||
 | 
			
		||||
    # Background color of copied commit
 | 
			
		||||
    cherryPickedCommitBgColor:
 | 
			
		||||
      - cyan
 | 
			
		||||
 | 
			
		||||
    # Foreground color of marked base commit (for rebase)
 | 
			
		||||
    markedBaseCommitFgColor:
 | 
			
		||||
      - blue
 | 
			
		||||
 | 
			
		||||
    # Background color of marked base commit (for rebase)
 | 
			
		||||
    markedBaseCommitBgColor:
 | 
			
		||||
      - yellow
 | 
			
		||||
 | 
			
		||||
    # Color for file with unstaged changes
 | 
			
		||||
    unstagedChangesColor:
 | 
			
		||||
      - red
 | 
			
		||||
 | 
			
		||||
    # Default text color
 | 
			
		||||
    defaultFgColor:
 | 
			
		||||
      - default
 | 
			
		||||
 | 
			
		||||
  # Config relating to the commit length indicator
 | 
			
		||||
  commitLength:
 | 
			
		||||
    # If true, show an indicator of commit message length
 | 
			
		||||
    show: true
 | 
			
		||||
 | 
			
		||||
  # If true, show the '5 of 20' footer at the bottom of list views
 | 
			
		||||
  showListFooter: true
 | 
			
		||||
 | 
			
		||||
  # If true, display the files in the file views as a tree. If false, display the files as a flat list.
 | 
			
		||||
  # This can be toggled from within Lazygit with the '' key, but that will not change the default.
 | 
			
		||||
  showFileTree: true
 | 
			
		||||
 | 
			
		||||
  # If true, show the number of lines changed per file in the Files view
 | 
			
		||||
  showNumstatInFilesView: false
 | 
			
		||||
 | 
			
		||||
  # If true, show a random tip in the command log when Lazygit starts
 | 
			
		||||
  showRandomTip: true
 | 
			
		||||
 | 
			
		||||
  # If true, show the command log
 | 
			
		||||
  showCommandLog: true
 | 
			
		||||
 | 
			
		||||
  # If true, show the bottom line that contains keybinding info and useful buttons. If false, this line will be hidden except to display a loader for an in-progress action.
 | 
			
		||||
  showBottomLine: true
 | 
			
		||||
 | 
			
		||||
  # If true, show jump-to-window keybindings in window titles.
 | 
			
		||||
  showPanelJumps: true
 | 
			
		||||
 | 
			
		||||
  # Deprecated: use nerdFontsVersion instead
 | 
			
		||||
  showIcons: false
 | 
			
		||||
 | 
			
		||||
  # Nerd fonts version to use.
 | 
			
		||||
  # One of: '2' | '3' | empty string (default)
 | 
			
		||||
  # If empty, do not show icons.
 | 
			
		||||
  nerdFontsVersion: ""
 | 
			
		||||
 | 
			
		||||
  # If true (default), file icons are shown in the file views. Only relevant if NerdFontsVersion is not empty.
 | 
			
		||||
  showFileIcons: true
 | 
			
		||||
 | 
			
		||||
  # Length of author name in (non-expanded) commits view. 2 means show initials only.
 | 
			
		||||
  commitAuthorShortLength: 2
 | 
			
		||||
 | 
			
		||||
  # Length of author name in expanded commits view. 2 means show initials only.
 | 
			
		||||
  commitAuthorLongLength: 17
 | 
			
		||||
 | 
			
		||||
  # Length of commit hash in commits view. 0 shows '*' if NF icons aren't on.
 | 
			
		||||
  commitHashLength: 8
 | 
			
		||||
 | 
			
		||||
  # If true, show commit hashes alongside branch names in the branches view.
 | 
			
		||||
  showBranchCommitHash: false
 | 
			
		||||
 | 
			
		||||
  # Whether to show the divergence from the base branch in the branches view.
 | 
			
		||||
  # One of: 'none' | 'onlyArrow'  | 'arrowAndNumber'
 | 
			
		||||
  showDivergenceFromBaseBranch: none
 | 
			
		||||
 | 
			
		||||
  # Height of the command log view
 | 
			
		||||
  commandLogSize: 8
 | 
			
		||||
 | 
			
		||||
  # Whether to split the main window when viewing file changes.
 | 
			
		||||
  # One of: 'auto' | 'always'
 | 
			
		||||
  # If 'auto', only split the main window when a file has both staged and unstaged changes
 | 
			
		||||
  splitDiff: auto
 | 
			
		||||
 | 
			
		||||
  # Default size for focused window. Can be changed from within Lazygit with '+' and '_' (but this won't change the default).
 | 
			
		||||
  # One of: 'normal' (default) | 'half' | 'full'
 | 
			
		||||
  screenMode: normal
 | 
			
		||||
 | 
			
		||||
  # Window border style.
 | 
			
		||||
  # One of 'rounded' (default) | 'single' | 'double' | 'hidden'
 | 
			
		||||
  border: rounded
 | 
			
		||||
 | 
			
		||||
  # If true, show a seriously epic explosion animation when nuking the working tree.
 | 
			
		||||
  animateExplosion: true
 | 
			
		||||
 | 
			
		||||
  # Whether to stack UI components on top of each other.
 | 
			
		||||
  # One of 'auto' (default) | 'always' | 'never'
 | 
			
		||||
  portraitMode: auto
 | 
			
		||||
 | 
			
		||||
  # How things are filtered when typing '/'.
 | 
			
		||||
  # One of 'substring' (default) | 'fuzzy'
 | 
			
		||||
  filterMode: substring
 | 
			
		||||
 | 
			
		||||
  # Config relating to the spinner.
 | 
			
		||||
  spinner:
 | 
			
		||||
    # The frames of the spinner animation.
 | 
			
		||||
    frames:
 | 
			
		||||
      - '|'
 | 
			
		||||
      - /
 | 
			
		||||
      - '-'
 | 
			
		||||
      - \
 | 
			
		||||
 | 
			
		||||
    # The "speed" of the spinner in milliseconds.
 | 
			
		||||
    rate: 50
 | 
			
		||||
 | 
			
		||||
  # Status panel view.
 | 
			
		||||
  # One of 'dashboard' (default) | 'allBranchesLog'
 | 
			
		||||
  statusPanelView: dashboard
 | 
			
		||||
 | 
			
		||||
  # If true, jump to the Files panel after popping a stash
 | 
			
		||||
  switchToFilesAfterStashPop: true
 | 
			
		||||
 | 
			
		||||
  # If true, jump to the Files panel after applying a stash
 | 
			
		||||
  switchToFilesAfterStashApply: true
 | 
			
		||||
 | 
			
		||||
  # If true, when using the panel jump keys (default 1 through 5) and target panel is already active, go to next tab instead
 | 
			
		||||
  switchTabsWithPanelJumpKeys: false
 | 
			
		||||
 | 
			
		||||
# Config relating to git
 | 
			
		||||
git:
 | 
			
		||||
  # See https://github.com/jesseduffield/lazygit/blob/master/docs/Custom_Pagers.md
 | 
			
		||||
  paging:
 | 
			
		||||
    # Value of the --color arg in the git diff command. Some pagers want this to be set to 'always' and some want it set to 'never'
 | 
			
		||||
    colorArg: always
 | 
			
		||||
 | 
			
		||||
    # e.g.
 | 
			
		||||
    # diff-so-fancy
 | 
			
		||||
    # delta --dark --paging=never
 | 
			
		||||
    # ydiff -p cat -s --wrap --width={{columnWidth}}
 | 
			
		||||
    pager: ""
 | 
			
		||||
 | 
			
		||||
    useConfig: false
 | 
			
		||||
 | 
			
		||||
    # e.g. 'difft --color=always'
 | 
			
		||||
    externalDiffCommand: ""
 | 
			
		||||
 | 
			
		||||
  # Config relating to committing
 | 
			
		||||
  commit:
 | 
			
		||||
    # If true, pass '--signoff' flag when committing
 | 
			
		||||
    signOff: false
 | 
			
		||||
 | 
			
		||||
    # Automatic WYSIWYG wrapping of the commit message as you type
 | 
			
		||||
    autoWrapCommitMessage: true
 | 
			
		||||
 | 
			
		||||
    # If autoWrapCommitMessage is true, the width to wrap to
 | 
			
		||||
    autoWrapWidth: 72
 | 
			
		||||
 | 
			
		||||
  # Config relating to merging
 | 
			
		||||
  merging:
 | 
			
		||||
    # If true, run merges in a subprocess so that if a commit message is required, Lazygit will not hang
 | 
			
		||||
    # Only applicable to unix users.
 | 
			
		||||
    manualCommit: false
 | 
			
		||||
 | 
			
		||||
    # Extra args passed to , e.g. --no-ff
 | 
			
		||||
    args: ""
 | 
			
		||||
 | 
			
		||||
    # The commit message to use for a squash merge commit. Can contain "{{selectedRef}}" and "{{currentBranch}}" placeholders.
 | 
			
		||||
    squashMergeMessage: Squash merge {{selectedRef}} into {{currentBranch}}
 | 
			
		||||
 | 
			
		||||
  # list of branches that are considered 'main' branches, used when displaying commits
 | 
			
		||||
  mainBranches:
 | 
			
		||||
    - master
 | 
			
		||||
    - main
 | 
			
		||||
 | 
			
		||||
  # Prefix to use when skipping hooks. E.g. if set to 'WIP', then pre-commit hooks will be skipped when the commit message starts with 'WIP'
 | 
			
		||||
  skipHookPrefix: WIP
 | 
			
		||||
 | 
			
		||||
  # If true, periodically fetch from remote
 | 
			
		||||
  autoFetch: true
 | 
			
		||||
 | 
			
		||||
  # If true, periodically refresh files and submodules
 | 
			
		||||
  autoRefresh: true
 | 
			
		||||
 | 
			
		||||
  # If true, pass the --all arg to git fetch
 | 
			
		||||
  fetchAll: true
 | 
			
		||||
 | 
			
		||||
  # If true, lazygit will automatically stage files that used to have merge
 | 
			
		||||
  # conflicts but no longer do; and it will also ask you if you want to
 | 
			
		||||
  # continue a merge or rebase if you've resolved all conflicts. If false, it
 | 
			
		||||
  # won't do either of these things.
 | 
			
		||||
  autoStageResolvedConflicts: true
 | 
			
		||||
 | 
			
		||||
  # Command used when displaying the current branch git log in the main window
 | 
			
		||||
  branchLogCmd: git log --graph --color=always --abbrev-commit --decorate --date=relative --pretty=medium {{branchName}} --
 | 
			
		||||
 | 
			
		||||
  # Command used to display git log of all branches in the main window.
 | 
			
		||||
  # Deprecated: Use allBranchesLogCmds instead.
 | 
			
		||||
  allBranchesLogCmd: git log --graph --all --color=always --abbrev-commit --decorate --date=relative  --pretty=medium
 | 
			
		||||
 | 
			
		||||
  # If true, do not spawn a separate process when using GPG
 | 
			
		||||
  overrideGpg: false
 | 
			
		||||
 | 
			
		||||
  # If true, do not allow force pushes
 | 
			
		||||
  disableForcePushing: false
 | 
			
		||||
 | 
			
		||||
  # See https://github.com/jesseduffield/lazygit/blob/master/docs/Config.md#predefined-branch-name-prefix
 | 
			
		||||
  branchPrefix: ""
 | 
			
		||||
 | 
			
		||||
  # If true, parse emoji strings in commit messages e.g. render :rocket: as 🚀
 | 
			
		||||
  # (This should really be under 'gui', not 'git')
 | 
			
		||||
  parseEmoji: false
 | 
			
		||||
 | 
			
		||||
  # Config for showing the log in the commits view
 | 
			
		||||
  log:
 | 
			
		||||
    # One of: 'date-order' | 'author-date-order' | 'topo-order' | 'default'
 | 
			
		||||
    # 'topo-order' makes it easier to read the git log graph, but commits may not
 | 
			
		||||
    # appear chronologically. See https://git-scm.com/docs/
 | 
			
		||||
    #
 | 
			
		||||
    # Deprecated: Configure this with Log menu -> Commit sort order (<c-l> in the commits window by default).
 | 
			
		||||
    order: topo-order
 | 
			
		||||
 | 
			
		||||
    # This determines whether the git graph is rendered in the commits panel
 | 
			
		||||
    # One of 'always' | 'never' | 'when-maximised'
 | 
			
		||||
    #
 | 
			
		||||
    # 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 view (equivalent to passing the --all argument to git log)
 | 
			
		||||
    showWholeGraph: false
 | 
			
		||||
 | 
			
		||||
  # When copying commit hashes to the clipboard, truncate them to this
 | 
			
		||||
  # length. Set to 40 to disable truncation.
 | 
			
		||||
  truncateCopiedCommitHashesTo: 12
 | 
			
		||||
 | 
			
		||||
# Periodic update checks
 | 
			
		||||
update:
 | 
			
		||||
  # One of: 'prompt' (default) | 'background' | 'never'
 | 
			
		||||
  method: prompt
 | 
			
		||||
 | 
			
		||||
  # Period in days between update checks
 | 
			
		||||
  days: 14
 | 
			
		||||
 | 
			
		||||
# Background refreshes
 | 
			
		||||
refresher:
 | 
			
		||||
  # File/submodule refresh interval in seconds.
 | 
			
		||||
  # Auto-refresh can be disabled via option 'git.autoRefresh'.
 | 
			
		||||
  refreshInterval: 10
 | 
			
		||||
 | 
			
		||||
  # Re-fetch interval in seconds.
 | 
			
		||||
  # Auto-fetch can be disabled via option 'git.autoFetch'.
 | 
			
		||||
  fetchInterval: 60
 | 
			
		||||
 | 
			
		||||
# If true, show a confirmation popup before quitting Lazygit
 | 
			
		||||
confirmOnQuit: false
 | 
			
		||||
 | 
			
		||||
# If true, exit Lazygit when the user presses escape in a context where there is nothing to cancel/close
 | 
			
		||||
quitOnTopLevelReturn: false
 | 
			
		||||
 | 
			
		||||
# Config relating to things outside of Lazygit like how files are opened, copying to clipboard, etc
 | 
			
		||||
os:
 | 
			
		||||
  # Command for editing a file. Should contain "{{filename}}".
 | 
			
		||||
  edit: ""
 | 
			
		||||
 | 
			
		||||
  # Command for editing a file at a given line number. Should contain
 | 
			
		||||
  # "{{filename}}", and may optionally contain "{{line}}".
 | 
			
		||||
  editAtLine: ""
 | 
			
		||||
 | 
			
		||||
  # Same as EditAtLine, except that the command needs to wait until the
 | 
			
		||||
  # window is closed.
 | 
			
		||||
  editAtLineAndWait: ""
 | 
			
		||||
 | 
			
		||||
  # Whether lazygit suspends until an edit process returns
 | 
			
		||||
  editInTerminal: false
 | 
			
		||||
 | 
			
		||||
  # For opening a directory in an editor
 | 
			
		||||
  openDirInEditor: ""
 | 
			
		||||
 | 
			
		||||
  # A built-in preset that sets all of the above settings. Supported presets
 | 
			
		||||
  # are defined in the getPreset function in editor_presets.go.
 | 
			
		||||
  editPreset: ""
 | 
			
		||||
 | 
			
		||||
  # Command for opening a file, as if the file is double-clicked. Should
 | 
			
		||||
  # contain "{{filename}}", but doesn't support "{{line}}".
 | 
			
		||||
  open: ""
 | 
			
		||||
 | 
			
		||||
  # Command for opening a link. Should contain "{{link}}".
 | 
			
		||||
  openLink: ""
 | 
			
		||||
 | 
			
		||||
  # EditCommand is the command for editing a file.
 | 
			
		||||
  # Deprecated: use Edit instead. Note that semantics are different:
 | 
			
		||||
  # EditCommand is just the command itself, whereas Edit contains a
 | 
			
		||||
  # "{{filename}}" variable.
 | 
			
		||||
  editCommand: ""
 | 
			
		||||
 | 
			
		||||
  # EditCommandTemplate is the command template for editing a file
 | 
			
		||||
  # Deprecated: use EditAtLine instead.
 | 
			
		||||
  editCommandTemplate: ""
 | 
			
		||||
 | 
			
		||||
  # OpenCommand is the command for opening a file
 | 
			
		||||
  # Deprecated: use Open instead.
 | 
			
		||||
  openCommand: ""
 | 
			
		||||
 | 
			
		||||
  # OpenLinkCommand is the command for opening a link
 | 
			
		||||
  # Deprecated: use OpenLink instead.
 | 
			
		||||
  openLinkCommand: ""
 | 
			
		||||
 | 
			
		||||
  # CopyToClipboardCmd is the command for copying to clipboard.
 | 
			
		||||
  # See https://github.com/jesseduffield/lazygit/blob/master/docs/Config.md#custom-command-for-copying-to-and-pasting-from-clipboard
 | 
			
		||||
  copyToClipboardCmd: ""
 | 
			
		||||
 | 
			
		||||
  # ReadFromClipboardCmd is the command for reading the clipboard.
 | 
			
		||||
  # See https://github.com/jesseduffield/lazygit/blob/master/docs/Config.md#custom-command-for-copying-to-and-pasting-from-clipboard
 | 
			
		||||
  readFromClipboardCmd: ""
 | 
			
		||||
 | 
			
		||||
# If true, don't display introductory popups upon opening Lazygit.
 | 
			
		||||
disableStartupPopups: false
 | 
			
		||||
 | 
			
		||||
# What to do when opening Lazygit outside of a git repo.
 | 
			
		||||
# - 'prompt': (default) ask whether to initialize a new repo or open in the most recent repo
 | 
			
		||||
# - 'create': initialize a new repo
 | 
			
		||||
# - 'skip': open most recent repo
 | 
			
		||||
# - 'quit': exit Lazygit
 | 
			
		||||
notARepository: prompt
 | 
			
		||||
 | 
			
		||||
# If true, display a confirmation when subprocess terminates. This allows you to view the output of the subprocess before returning to Lazygit.
 | 
			
		||||
promptToReturnFromSubprocess: true
 | 
			
		||||
 | 
			
		||||
# Keybindings
 | 
			
		||||
keybinding:
 | 
			
		||||
  universal:
 | 
			
		||||
    quit: q
 | 
			
		||||
    quit-alt1: <c-c>
 | 
			
		||||
    return: <esc>
 | 
			
		||||
    quitWithoutChangingDirectory: Q
 | 
			
		||||
    togglePanel: <tab>
 | 
			
		||||
    prevItem: <up>
 | 
			
		||||
    nextItem: <down>
 | 
			
		||||
    prevItem-alt: k
 | 
			
		||||
    nextItem-alt: j
 | 
			
		||||
    prevPage: ','
 | 
			
		||||
    nextPage: .
 | 
			
		||||
    scrollLeft: H
 | 
			
		||||
    scrollRight: L
 | 
			
		||||
    gotoTop: <
 | 
			
		||||
    gotoBottom: '>'
 | 
			
		||||
    toggleRangeSelect: v
 | 
			
		||||
    rangeSelectDown: <s-down>
 | 
			
		||||
    rangeSelectUp: <s-up>
 | 
			
		||||
    prevBlock: <left>
 | 
			
		||||
    nextBlock: <right>
 | 
			
		||||
    prevBlock-alt: h
 | 
			
		||||
    nextBlock-alt: l
 | 
			
		||||
    nextBlock-alt2: <tab>
 | 
			
		||||
    prevBlock-alt2: <backtab>
 | 
			
		||||
    jumpToBlock:
 | 
			
		||||
      - "1"
 | 
			
		||||
      - "2"
 | 
			
		||||
      - "3"
 | 
			
		||||
      - "4"
 | 
			
		||||
      - "5"
 | 
			
		||||
    nextMatch: "n"
 | 
			
		||||
    prevMatch: "N"
 | 
			
		||||
    startSearch: /
 | 
			
		||||
    optionMenu: <disabled>
 | 
			
		||||
    optionMenu-alt1: '?'
 | 
			
		||||
    select: <space>
 | 
			
		||||
    goInto: <enter>
 | 
			
		||||
    confirm: <enter>
 | 
			
		||||
    confirmInEditor: <a-enter>
 | 
			
		||||
    remove: d
 | 
			
		||||
    new: "n"
 | 
			
		||||
    edit: e
 | 
			
		||||
    openFile: o
 | 
			
		||||
    scrollUpMain: <pgup>
 | 
			
		||||
    scrollDownMain: <pgdown>
 | 
			
		||||
    scrollUpMain-alt1: K
 | 
			
		||||
    scrollDownMain-alt1: J
 | 
			
		||||
    scrollUpMain-alt2: <c-u>
 | 
			
		||||
    scrollDownMain-alt2: <c-d>
 | 
			
		||||
    executeShellCommand: ':'
 | 
			
		||||
    createRebaseOptionsMenu: m
 | 
			
		||||
 | 
			
		||||
    # 'Files' appended for legacy reasons
 | 
			
		||||
    pushFiles: P
 | 
			
		||||
 | 
			
		||||
    # 'Files' appended for legacy reasons
 | 
			
		||||
    pullFiles: p
 | 
			
		||||
    refresh: R
 | 
			
		||||
    createPatchOptionsMenu: <c-p>
 | 
			
		||||
    nextTab: ']'
 | 
			
		||||
    prevTab: '['
 | 
			
		||||
    nextScreenMode: +
 | 
			
		||||
    prevScreenMode: _
 | 
			
		||||
    undo: z
 | 
			
		||||
    redo: <c-z>
 | 
			
		||||
    filteringMenu: <c-s>
 | 
			
		||||
    diffingMenu: W
 | 
			
		||||
    diffingMenu-alt: <c-e>
 | 
			
		||||
    copyToClipboard: <c-o>
 | 
			
		||||
    openRecentRepos: <c-r>
 | 
			
		||||
    submitEditorText: <enter>
 | 
			
		||||
    extrasMenu: '@'
 | 
			
		||||
    toggleWhitespaceInDiffView: <c-w>
 | 
			
		||||
    increaseContextInDiffView: '}'
 | 
			
		||||
    decreaseContextInDiffView: '{'
 | 
			
		||||
    increaseRenameSimilarityThreshold: )
 | 
			
		||||
    decreaseRenameSimilarityThreshold: (
 | 
			
		||||
    openDiffTool: <c-t>
 | 
			
		||||
  status:
 | 
			
		||||
    checkForUpdate: u
 | 
			
		||||
    recentRepos: <enter>
 | 
			
		||||
    allBranchesLogGraph: a
 | 
			
		||||
  files:
 | 
			
		||||
    commitChanges: c
 | 
			
		||||
    commitChangesWithoutHook: w
 | 
			
		||||
    amendLastCommit: A
 | 
			
		||||
    commitChangesWithEditor: C
 | 
			
		||||
    findBaseCommitForFixup: <c-f>
 | 
			
		||||
    confirmDiscard: x
 | 
			
		||||
    ignoreFile: i
 | 
			
		||||
    refreshFiles: r
 | 
			
		||||
    stashAllChanges: s
 | 
			
		||||
    viewStashOptions: S
 | 
			
		||||
    toggleStagedAll: a
 | 
			
		||||
    viewResetOptions: D
 | 
			
		||||
    fetch: f
 | 
			
		||||
    openMergeTool: M
 | 
			
		||||
    openStatusFilter: <c-b>
 | 
			
		||||
    copyFileInfoToClipboard: "y"
 | 
			
		||||
    collapseAll: '-'
 | 
			
		||||
    expandAll: =
 | 
			
		||||
  branches:
 | 
			
		||||
    createPullRequest: o
 | 
			
		||||
    viewPullRequestOptions: O
 | 
			
		||||
    copyPullRequestURL: <c-y>
 | 
			
		||||
    checkoutBranchByName: c
 | 
			
		||||
    forceCheckoutBranch: F
 | 
			
		||||
    rebaseBranch: r
 | 
			
		||||
    renameBranch: R
 | 
			
		||||
    mergeIntoCurrentBranch: M
 | 
			
		||||
    viewGitFlowOptions: i
 | 
			
		||||
    fastForward: f
 | 
			
		||||
    createTag: T
 | 
			
		||||
    pushTag: P
 | 
			
		||||
    setUpstream: u
 | 
			
		||||
    fetchRemote: f
 | 
			
		||||
    sortOrder: s
 | 
			
		||||
  worktrees:
 | 
			
		||||
    viewWorktreeOptions: w
 | 
			
		||||
  commits:
 | 
			
		||||
    squashDown: s
 | 
			
		||||
    renameCommit: r
 | 
			
		||||
    renameCommitWithEditor: R
 | 
			
		||||
    viewResetOptions: g
 | 
			
		||||
    markCommitAsFixup: f
 | 
			
		||||
    createFixupCommit: F
 | 
			
		||||
    squashAboveCommits: S
 | 
			
		||||
    moveDownCommit: <c-j>
 | 
			
		||||
    moveUpCommit: <c-k>
 | 
			
		||||
    amendToCommit: A
 | 
			
		||||
    resetCommitAuthor: a
 | 
			
		||||
    pickCommit: p
 | 
			
		||||
    revertCommit: t
 | 
			
		||||
    cherryPickCopy: C
 | 
			
		||||
    pasteCommits: V
 | 
			
		||||
    markCommitAsBaseForRebase: B
 | 
			
		||||
    tagCommit: T
 | 
			
		||||
    checkoutCommit: <space>
 | 
			
		||||
    resetCherryPick: <c-R>
 | 
			
		||||
    copyCommitAttributeToClipboard: "y"
 | 
			
		||||
    openLogMenu: <c-l>
 | 
			
		||||
    openInBrowser: o
 | 
			
		||||
    viewBisectOptions: b
 | 
			
		||||
    startInteractiveRebase: i
 | 
			
		||||
  amendAttribute:
 | 
			
		||||
    resetAuthor: a
 | 
			
		||||
    setAuthor: A
 | 
			
		||||
    addCoAuthor: c
 | 
			
		||||
  stash:
 | 
			
		||||
    popStash: g
 | 
			
		||||
    renameStash: r
 | 
			
		||||
  commitFiles:
 | 
			
		||||
    checkoutCommitFile: c
 | 
			
		||||
  main:
 | 
			
		||||
    toggleSelectHunk: a
 | 
			
		||||
    pickBothHunks: b
 | 
			
		||||
    editSelectHunk: E
 | 
			
		||||
  submodules:
 | 
			
		||||
    init: i
 | 
			
		||||
    update: u
 | 
			
		||||
    bulkMenu: b
 | 
			
		||||
  commitMessage:
 | 
			
		||||
    commitMenu: <c-o>
 | 
			
		||||
`)
 | 
			
		||||
 | 
			
		||||
func BenchmarkMigrationOnLargeConfiguration(b *testing.B) {
 | 
			
		||||
	for i := 0; i < b.N; i++ {
 | 
			
		||||
		_, _ = computeMigratedConfig("path doesn't matter", largeConfiguration)
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user