nix-config/home/pager.nix
Bruno BELANYI abdba0a223 home: pager: fix colorized man pages
Turns out that sessionVariables are not being set at the proper time for
use with `tput`.

This commit also cleans up a bit how the config was being set.
2021-05-16 00:03:59 +02:00

39 lines
1.1 KiB
Nix

{ config, lib, ... }:
let
cfg = config.my.home.pager;
in
{
options.my.home.pager = with lib.my; {
enable = mkDisableOption "pager configuration";
};
config = lib.mkIf cfg.enable {
programs.lesspipe.enable = true;
home.sessionVariables = {
# My default pager
PAGER = "less";
# Clear the screen on start and exit
LESS = "-R -+X -c";
};
programs.zsh.localVariables = {
# Colored man pages
LESS_TERMCAP_mb = "$(tput bold; tput setaf 2)";
LESS_TERMCAP_md = "$(tput bold; tput setaf 6)";
LESS_TERMCAP_me = "$(tput sgr0)";
LESS_TERMCAP_so = "$(tput bold; tput setaf 3; tput setab 4)";
LESS_TERMCAP_se = "$(tput rmso; tput sgr0)";
LESS_TERMCAP_us = "$(tput bold; tput setaf 2)";
LESS_TERMCAP_ue = "$(tput rmul; tput sgr0)";
LESS_TERMCAP_mr = "$(tput rev)";
LESS_TERMCAP_mh = "$(tput dim)";
LESS_TERMCAP_ZN = "$(tput ssubm)";
LESS_TERMCAP_ZV = "$(tput rsubm)";
LESS_TERMCAP_ZO = "$(tput ssupm)";
LESS_TERMCAP_ZW = "$(tput rsupm)";
};
};
}