Skip to content
Subway SeatSubway SeatSubway Seat
← All ports

CLI & TUI

lazygit

Orange borders on the focused panel, gold while searching, warm grounds for the selected line, and copied and rebase-base commits marked in sage and gold. The diff pane shows git's own colors, so install the git port; or add the -delta.yml file to run diffs through delta with the delta port's feature (it uses git.diffRenderers, the key in lazygit 0.65; older releases call it git.paging).

Showing WalnutTunnelEnamelMoquetteDeep LevelPortlandGuimardCatacombesCarrelage. Switch flavors with the bullets up top.

lazygit Report a problem with this portReport a problem with this portReport a problem with this portReport a problem with this portReport a problem with this portReport a problem with this portReport a problem with this portReport a problem with this portReport a problem with this port

The quick way

The installer sets it up for you, then tells you the one thing it can't do. More ways to install

curl -fsSL https://oddurs.github.io/subway-seat/install.sh | sh -s -- --flavor walnut --only lazygit
curl -fsSL https://oddurs.github.io/subway-seat/install.sh | sh -s -- --flavor tunnel --only lazygit
curl -fsSL https://oddurs.github.io/subway-seat/install.sh | sh -s -- --flavor enamel --only lazygit
curl -fsSL https://oddurs.github.io/subway-seat/install.sh | sh -s -- --flavor moquette --only lazygit
curl -fsSL https://oddurs.github.io/subway-seat/install.sh | sh -s -- --flavor deep --only lazygit
curl -fsSL https://oddurs.github.io/subway-seat/install.sh | sh -s -- --flavor portland --only lazygit
curl -fsSL https://oddurs.github.io/subway-seat/install.sh | sh -s -- --flavor guimard --only lazygit
curl -fsSL https://oddurs.github.io/subway-seat/install.sh | sh -s -- --flavor catacombes --only lazygit
curl -fsSL https://oddurs.github.io/subway-seat/install.sh | sh -s -- --flavor carrelage --only lazygit

Turn it on

In fish, once (set -U keeps it). lazygit merges every file in LG_CONFIG_FILE and stops if one is missing, hence the touch. For delta diffs, add the flavor's -delta.yml file to the list
set -l dir (lazygit --print-config-dir); mkdir -p $dir; touch $dir/config.yml
set -Ux LG_CONFIG_FILE "$dir/config.yml,$HOME/.config/lazygit/subway-seat.yml"
In fish, once (set -U keeps it). lazygit merges every file in LG_CONFIG_FILE and stops if one is missing, hence the touch. For delta diffs, add the flavor's -delta.yml file to the list
set -l dir (lazygit --print-config-dir); mkdir -p $dir; touch $dir/config.yml
set -Ux LG_CONFIG_FILE "$dir/config.yml,$HOME/.config/lazygit/subway-seat-tunnel.yml"
In fish, once (set -U keeps it). lazygit merges every file in LG_CONFIG_FILE and stops if one is missing, hence the touch. For delta diffs, add the flavor's -delta.yml file to the list
set -l dir (lazygit --print-config-dir); mkdir -p $dir; touch $dir/config.yml
set -Ux LG_CONFIG_FILE "$dir/config.yml,$HOME/.config/lazygit/subway-seat-enamel.yml"
In fish, once (set -U keeps it). lazygit merges every file in LG_CONFIG_FILE and stops if one is missing, hence the touch. For delta diffs, add the flavor's -delta.yml file to the list
set -l dir (lazygit --print-config-dir); mkdir -p $dir; touch $dir/config.yml
set -Ux LG_CONFIG_FILE "$dir/config.yml,$HOME/.config/lazygit/london-moquette.yml"
In fish, once (set -U keeps it). lazygit merges every file in LG_CONFIG_FILE and stops if one is missing, hence the touch. For delta diffs, add the flavor's -delta.yml file to the list
set -l dir (lazygit --print-config-dir); mkdir -p $dir; touch $dir/config.yml
set -Ux LG_CONFIG_FILE "$dir/config.yml,$HOME/.config/lazygit/london-deep-level.yml"
In fish, once (set -U keeps it). lazygit merges every file in LG_CONFIG_FILE and stops if one is missing, hence the touch. For delta diffs, add the flavor's -delta.yml file to the list
set -l dir (lazygit --print-config-dir); mkdir -p $dir; touch $dir/config.yml
set -Ux LG_CONFIG_FILE "$dir/config.yml,$HOME/.config/lazygit/london-portland.yml"
In fish, once (set -U keeps it). lazygit merges every file in LG_CONFIG_FILE and stops if one is missing, hence the touch. For delta diffs, add the flavor's -delta.yml file to the list
set -l dir (lazygit --print-config-dir); mkdir -p $dir; touch $dir/config.yml
set -Ux LG_CONFIG_FILE "$dir/config.yml,$HOME/.config/lazygit/paris-guimard.yml"
In fish, once (set -U keeps it). lazygit merges every file in LG_CONFIG_FILE and stops if one is missing, hence the touch. For delta diffs, add the flavor's -delta.yml file to the list
set -l dir (lazygit --print-config-dir); mkdir -p $dir; touch $dir/config.yml
set -Ux LG_CONFIG_FILE "$dir/config.yml,$HOME/.config/lazygit/paris-catacombes.yml"
In fish, once (set -U keeps it). lazygit merges every file in LG_CONFIG_FILE and stops if one is missing, hence the touch. For delta diffs, add the flavor's -delta.yml file to the list
set -l dir (lazygit --print-config-dir); mkdir -p $dir; touch $dir/config.yml
set -Ux LG_CONFIG_FILE "$dir/config.yml,$HOME/.config/lazygit/paris-carrelage.yml"
subway-seat.ymlsave as ~/.config/lazygit/subway-seat.yml
# Subway Seat — generated from palette.py by build.py. Edit the palette, not this file.
# Subway Seat for lazygit.
gui:
  theme:
    activeBorderColor:
      - '#EC7F31'
      - 'bold'
    inactiveBorderColor:
      - '#7B6047'
    searchingActiveBorderColor:
      - '#F3BF45'
      - 'bold'
    optionsTextColor:
      - '#F3BF45'
    selectedLineBgColor:
      - '#513B27'
    inactiveViewSelectedLineBgColor:
      - '#43301F'
    cherryPickedCommitFgColor:
      - '#20160E'
    cherryPickedCommitBgColor:
      - '#86AD95'
    markedBaseCommitFgColor:
      - '#20160E'
    markedBaseCommitBgColor:
      - '#F3BF45'
    unstagedChangesColor:
      - '#FF8373'
    defaultFgColor:
      - '#EDDCBC'
  authorColors:
    '*': '#86AD95'
subway-seat-delta.ymlsave as ~/.config/lazygit/subway-seat-delta.yml
# Subway Seat — generated from palette.py by build.py. Edit the palette, not this file.
# Subway Seat: lazygit's diff pane through delta, with the delta port's subway-seat feature.
# Needs delta, the delta port's include in your gitconfig, and the bat theme.
git:
  diffRenderers:
    - colorArg: always
      command: delta --features subway-seat --paging=never
subway-seat-tunnel.ymlsave as ~/.config/lazygit/subway-seat-tunnel.yml
# Subway Seat — generated from palette.py by build.py. Edit the palette, not this file.
# Subway Seat Tunnel for lazygit.
gui:
  theme:
    activeBorderColor:
      - '#EC7F31'
      - 'bold'
    inactiveBorderColor:
      - '#745B45'
    searchingActiveBorderColor:
      - '#F3BF45'
      - 'bold'
    optionsTextColor:
      - '#F3BF45'
    selectedLineBgColor:
      - '#3D2C1D'
    inactiveViewSelectedLineBgColor:
      - '#302115'
    cherryPickedCommitFgColor:
      - '#140D07'
    cherryPickedCommitBgColor:
      - '#86AD95'
    markedBaseCommitFgColor:
      - '#140D07'
    markedBaseCommitBgColor:
      - '#F3BF45'
    unstagedChangesColor:
      - '#FF8373'
    defaultFgColor:
      - '#E9D8B6'
  authorColors:
    '*': '#86AD95'
subway-seat-tunnel-delta.ymlsave as ~/.config/lazygit/subway-seat-tunnel-delta.yml
# Subway Seat — generated from palette.py by build.py. Edit the palette, not this file.
# Subway Seat Tunnel: lazygit's diff pane through delta, with the delta port's subway-seat-tunnel feature.
# Needs delta, the delta port's include in your gitconfig, and the bat theme.
git:
  diffRenderers:
    - colorArg: always
      command: delta --features subway-seat-tunnel --paging=never
subway-seat-enamel.ymlsave as ~/.config/lazygit/subway-seat-enamel.yml
# Subway Seat — generated from palette.py by build.py. Edit the palette, not this file.
# Subway Seat Enamel for lazygit.
gui:
  theme:
    activeBorderColor:
      - '#A04800'
      - 'bold'
    inactiveBorderColor:
      - '#A58D6D'
    searchingActiveBorderColor:
      - '#976608'
      - 'bold'
    optionsTextColor:
      - '#976608'
    selectedLineBgColor:
      - '#DBCDB3'
    inactiveViewSelectedLineBgColor:
      - '#EEE4D0'
    cherryPickedCommitFgColor:
      - '#F8EFDF'
    cherryPickedCommitBgColor:
      - '#3E7157'
    markedBaseCommitFgColor:
      - '#F8EFDF'
    markedBaseCommitBgColor:
      - '#976608'
    unstagedChangesColor:
      - '#BF4233'
    defaultFgColor:
      - '#3E2C1E'
  authorColors:
    '*': '#3E7157'
subway-seat-enamel-delta.ymlsave as ~/.config/lazygit/subway-seat-enamel-delta.yml
# Subway Seat — generated from palette.py by build.py. Edit the palette, not this file.
# Subway Seat Enamel: lazygit's diff pane through delta, with the delta port's subway-seat-enamel feature.
# Needs delta, the delta port's include in your gitconfig, and the bat theme.
git:
  diffRenderers:
    - colorArg: always
      command: delta --features subway-seat-enamel --paging=never
london-moquette.ymlsave as ~/.config/lazygit/london-moquette.yml
# Subway Seat — generated from palette.py by build.py. Edit the palette, not this file.
# London Moquette for lazygit.
gui:
  theme:
    activeBorderColor:
      - '#DE8946'
      - 'bold'
    inactiveBorderColor:
      - '#576685'
    searchingActiveBorderColor:
      - '#F2C03F'
      - 'bold'
    optionsTextColor:
      - '#F2C03F'
    selectedLineBgColor:
      - '#303F61'
    inactiveViewSelectedLineBgColor:
      - '#263451'
    cherryPickedCommitFgColor:
      - '#121826'
    cherryPickedCommitBgColor:
      - '#54B4B5'
    markedBaseCommitFgColor:
      - '#121826'
    markedBaseCommitBgColor:
      - '#F2C03F'
    unstagedChangesColor:
      - '#FE8474'
    defaultFgColor:
      - '#D8DEEA'
  authorColors:
    '*': '#54B4B5'
london-moquette-delta.ymlsave as ~/.config/lazygit/london-moquette-delta.yml
# Subway Seat — generated from palette.py by build.py. Edit the palette, not this file.
# London Moquette: lazygit's diff pane through delta, with the delta port's london-moquette feature.
# Needs delta, the delta port's include in your gitconfig, and the bat theme.
git:
  diffRenderers:
    - colorArg: always
      command: delta --features london-moquette --paging=never
london-deep-level.ymlsave as ~/.config/lazygit/london-deep-level.yml
# Subway Seat — generated from palette.py by build.py. Edit the palette, not this file.
# London Deep Level for lazygit.
gui:
  theme:
    activeBorderColor:
      - '#DE8946'
      - 'bold'
    inactiveBorderColor:
      - '#53617D'
    searchingActiveBorderColor:
      - '#F2C03F'
      - 'bold'
    optionsTextColor:
      - '#F2C03F'
    selectedLineBgColor:
      - '#232F49'
    inactiveViewSelectedLineBgColor:
      - '#1A243A'
    cherryPickedCommitFgColor:
      - '#0A0E18'
    cherryPickedCommitBgColor:
      - '#54B4B5'
    markedBaseCommitFgColor:
      - '#0A0E18'
    markedBaseCommitBgColor:
      - '#F2C03F'
    unstagedChangesColor:
      - '#FE8474'
    defaultFgColor:
      - '#D4DAE7'
  authorColors:
    '*': '#54B4B5'
london-deep-level-delta.ymlsave as ~/.config/lazygit/london-deep-level-delta.yml
# Subway Seat — generated from palette.py by build.py. Edit the palette, not this file.
# London Deep Level: lazygit's diff pane through delta, with the delta port's london-deep-level feature.
# Needs delta, the delta port's include in your gitconfig, and the bat theme.
git:
  diffRenderers:
    - colorArg: always
      command: delta --features london-deep-level --paging=never
london-portland.ymlsave as ~/.config/lazygit/london-portland.yml
# Subway Seat — generated from palette.py by build.py. Edit the palette, not this file.
# London Portland for lazygit.
gui:
  theme:
    activeBorderColor:
      - '#A54300'
      - 'bold'
    inactiveBorderColor:
      - '#8192B4'
    searchingActiveBorderColor:
      - '#8D6C08'
      - 'bold'
    optionsTextColor:
      - '#8D6C08'
    selectedLineBgColor:
      - '#BFCFF1'
    inactiveViewSelectedLineBgColor:
      - '#DCE5F7'
    cherryPickedCommitFgColor:
      - '#E8F0FF'
    cherryPickedCommitBgColor:
      - '#007376'
    markedBaseCommitFgColor:
      - '#E8F0FF'
    markedBaseCommitBgColor:
      - '#8D6C08'
    unstagedChangesColor:
      - '#CC2E25'
    defaultFgColor:
      - '#293040'
  authorColors:
    '*': '#007376'
london-portland-delta.ymlsave as ~/.config/lazygit/london-portland-delta.yml
# Subway Seat — generated from palette.py by build.py. Edit the palette, not this file.
# London Portland: lazygit's diff pane through delta, with the delta port's london-portland feature.
# Needs delta, the delta port's include in your gitconfig, and the bat theme.
git:
  diffRenderers:
    - colorArg: always
      command: delta --features london-portland --paging=never
paris-guimard.ymlsave as ~/.config/lazygit/paris-guimard.yml
# Subway Seat — generated from palette.py by build.py. Edit the palette, not this file.
# Paris Guimard for lazygit.
gui:
  theme:
    activeBorderColor:
      - '#CA9245'
      - 'bold'
    inactiveBorderColor:
      - '#586B61'
    searchingActiveBorderColor:
      - '#F1BF4B'
      - 'bold'
    optionsTextColor:
      - '#F1BF4B'
    selectedLineBgColor:
      - '#30463B'
    inactiveViewSelectedLineBgColor:
      - '#263930'
    cherryPickedCommitFgColor:
      - '#131A17'
    cherryPickedCommitBgColor:
      - '#549B9F'
    markedBaseCommitFgColor:
      - '#131A17'
    markedBaseCommitBgColor:
      - '#F1BF4B'
    unstagedChangesColor:
      - '#E7877B'
    defaultFgColor:
      - '#D9E1DB'
  authorColors:
    '*': '#549B9F'
paris-guimard-delta.ymlsave as ~/.config/lazygit/paris-guimard-delta.yml
# Subway Seat — generated from palette.py by build.py. Edit the palette, not this file.
# Paris Guimard: lazygit's diff pane through delta, with the delta port's paris-guimard feature.
# Needs delta, the delta port's include in your gitconfig, and the bat theme.
git:
  diffRenderers:
    - colorArg: always
      command: delta --features paris-guimard --paging=never
paris-catacombes.ymlsave as ~/.config/lazygit/paris-catacombes.yml
# Subway Seat — generated from palette.py by build.py. Edit the palette, not this file.
# Paris Catacombes for lazygit.
gui:
  theme:
    activeBorderColor:
      - '#CA9245'
      - 'bold'
    inactiveBorderColor:
      - '#54655C'
    searchingActiveBorderColor:
      - '#F1BF4B'
      - 'bold'
    optionsTextColor:
      - '#F1BF4B'
    selectedLineBgColor:
      - '#24342C'
    inactiveViewSelectedLineBgColor:
      - '#1A2921'
    cherryPickedCommitFgColor:
      - '#0A100D'
    cherryPickedCommitBgColor:
      - '#549B9F'
    markedBaseCommitFgColor:
      - '#0A100D'
    markedBaseCommitBgColor:
      - '#F1BF4B'
    unstagedChangesColor:
      - '#E7877B'
    defaultFgColor:
      - '#D4DDD7'
  authorColors:
    '*': '#549B9F'
paris-catacombes-delta.ymlsave as ~/.config/lazygit/paris-catacombes-delta.yml
# Subway Seat — generated from palette.py by build.py. Edit the palette, not this file.
# Paris Catacombes: lazygit's diff pane through delta, with the delta port's paris-catacombes feature.
# Needs delta, the delta port's include in your gitconfig, and the bat theme.
git:
  diffRenderers:
    - colorArg: always
      command: delta --features paris-catacombes --paging=never
paris-carrelage.ymlsave as ~/.config/lazygit/paris-carrelage.yml
# Subway Seat — generated from palette.py by build.py. Edit the palette, not this file.
# Paris Carrelage for lazygit.
gui:
  theme:
    activeBorderColor:
      - '#764C00'
      - 'bold'
    inactiveBorderColor:
      - '#859792'
    searchingActiveBorderColor:
      - '#916D07'
      - 'bold'
    optionsTextColor:
      - '#916D07'
    selectedLineBgColor:
      - '#C6D2CF'
    inactiveViewSelectedLineBgColor:
      - '#E1E6E5'
    cherryPickedCommitFgColor:
      - '#EEF2F1'
    cherryPickedCommitBgColor:
      - '#006267'
    markedBaseCommitFgColor:
      - '#EEF2F1'
    markedBaseCommitBgColor:
      - '#916D07'
    unstagedChangesColor:
      - '#AC3B32'
    defaultFgColor:
      - '#27342F'
  authorColors:
    '*': '#006267'
paris-carrelage-delta.ymlsave as ~/.config/lazygit/paris-carrelage-delta.yml
# Subway Seat — generated from palette.py by build.py. Edit the palette, not this file.
# Paris Carrelage: lazygit's diff pane through delta, with the delta port's paris-carrelage feature.
# Needs delta, the delta port's include in your gitconfig, and the bat theme.
git:
  diffRenderers:
    - colorArg: always
      command: delta --features paris-carrelage --paging=never