{ config, lib, ... }: let cfg = config.soispha.programs.less; in { options.soispha.programs.less = { enable = lib.mkEnableOption "less"; }; config = lib.mkIf cfg.enable { home-manager.users.soispha = { home.sessionVariables = { PAGER = "less"; MANPAGER = "less --color=d+r --color=u+b"; # These are added here because adding them in the lesskey file somehow doesn't work. LESSHISTSIZE = 10000; LESSHISTFILE = "${config.home-manager.users.soispha.xdg.dataHome}/less/history"; }; programs.less = { enable = true; keys = builtins.readFile ./command.less + builtins.readFile ./line-edit.less + builtins.readFile ./env.less; }; }; }; }