diff --git a/modules/programs/git.nix b/modules/programs/git.nix index 5bd828b30..0b5dae5bc 100644 --- a/modules/programs/git.nix +++ b/modules/programs/git.nix @@ -340,6 +340,14 @@ in { ''; }; + pagerOpts = mkOption { + type = types.listOf types.str; + default = [ "--tabs=4" "-RFX" ]; + description = '' + Arguments to be passed to less. + ''; + }; + markEmptyLines = mkOption { type = types.bool; default = true; @@ -547,7 +555,9 @@ in { programs.git.iniContent = let dsfCommand = "${pkgs.diff-so-fancy}/bin/diff-so-fancy"; in { - core.pager = "${dsfCommand} | ${pkgs.less}/bin/less --tabs=4 -RFX"; + core.pager = "${dsfCommand} | ${pkgs.less}/bin/less ${ + escapeShellArgs cfg.diff-so-fancy.pagerOpts + }"; interactive.diffFilter = "${dsfCommand} --patch"; diff-so-fancy = { markEmptyLines = cfg.diff-so-fancy.markEmptyLines;