/ modules / home / programs / lazygit.nix
lazygit.nix
 1  {
 2    config,
 3    ...
 4  }:
 5  {
 6    programs.lazygit = {
 7      enable = true;
 8      enableZshIntegration = false; # NOTE: always drops you into root of monorepo otherwise
 9      settings = {
10        notARepository = "quit";
11        disableStartupPopups = true;
12        promptToReturnFromSubprocess = true;
13  
14        gui = {
15          sidePanelWidth = 0.33;
16          nerdFontsVersion = "3";
17          scrollPastBottom = false;
18          scrollOffBehaviour = "jump";
19          switchTabsWithPanelJumpKeys = true;
20        };
21  
22        os = {
23          editInTerminal = true;
24          edit = "emacs -nw {{filename}}";
25          openDirInEditor = "emacs -nw {{dir}}";
26          editAtLine = "emacs -nw +{{line}} {{filename}}";
27        };
28  
29        git = {
30          parseEmoji = true;
31          overrideGpg = true;
32          commit.signOff = true;
33          branchPrefix = "${config.me.username}/";
34          pagers = [
35            {
36              pager = "delta --paging=never";
37            }
38          ];
39        };
40      };
41    };
42  }