From de3235450c29969ef0cf29c45b54c0916710c762 Mon Sep 17 00:00:00 2001 From: Fernando Schauenburg Date: Sat, 7 Oct 2023 15:53:57 +0200 Subject: [PATCH] zsh: move man pages customization to separate file --- config/zsh/.zshrc | 32 +----------------- config/zsh/man-pages.zsh | 70 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 71 insertions(+), 31 deletions(-) create mode 100644 config/zsh/man-pages.zsh diff --git a/config/zsh/.zshrc b/config/zsh/.zshrc index e3781b1..07b7746 100644 --- a/config/zsh/.zshrc +++ b/config/zsh/.zshrc @@ -1,40 +1,10 @@ -# Customize man pages. - reset="$(printf %b '\e[0m')" - bold='\e[1m' faint='\e[2m' italic='\e[3m' underline='\e[4m' - black='\e[30m' brblack='\e[90m' black_bg='\e[40m' brblack_bg='\e[100m' - red='\e[31m' brred='\e[91m' red_bg='\e[41m' brred_bg='\e[101m' - green='\e[32m' brgreen='\e[92m' green_bg='\e[42m' brgreen_bg='\e[102m' - yellow='\e[33m' bryellow='\e[93m' yellow_bg='\e[43m' bryellow_bg='\e[103m' - blue='\e[34m' brblue='\e[94m' blue_bg='\e[44m' brblue_bg='\e[104m' -magenta='\e[35m' brmagenta='\e[95m' magenta_bg='\e[45m' brmagenta_bg='\e[105m' - cyan='\e[36m' brcyan='\e[96m' cyan_bg='\e[46m' brcyan_bg='\e[106m' - white='\e[37m' brwhite='\e[97m' white_bg='\e[47m' brwhite_bg='\e[107m' - -export LESS_TERMCAP_md="$(printf %b $blue)" # bold -export LESS_TERMCAP_mb="$LESS_TERMCAP_md" # blink -export LESS_TERMCAP_me="$reset" -export LESS_TERMCAP_us="$(printf %b $brblue $italic $underline)" # underline -export LESS_TERMCAP_ue="$reset" -export LESS_TERMCAP_so="$(printf %b $black $yellow_bg $bold)" # search -export LESS_TERMCAP_se="$reset" -export GROFF_NO_SGR=1 - -unset bold faint italic underline reset -unset black brblack black_bg brblack_bg -unset red brred red_bg brred_bg -unset green brgreen green_bg brgreen_bg -unset yellow bryellow yellow_bg bryellow_bg -unset blue brblue blue_bg brblue_bg -unset magenta brmagenta magenta_bg brmagenta_bg -unset cyan brcyan cyan_bg brcyan_bg -unset white brwhite white_bg brwhite_bg - # Set up zsh for interactive use (options, prompt, aliases, etc.) source "$ZDOTDIR/aliases.zsh" source "$ZDOTDIR/completion.zsh" source "$ZDOTDIR/functions.zsh" source "$ZDOTDIR/history.zsh" source "$ZDOTDIR/line-editor.zsh" +source "$ZDOTDIR/man-pages.zsh" source "$ZDOTDIR/prompt.zsh" # Prevent ctrl-s from freezing the terminal. diff --git a/config/zsh/man-pages.zsh b/config/zsh/man-pages.zsh new file mode 100644 index 0000000..db752cb --- /dev/null +++ b/config/zsh/man-pages.zsh @@ -0,0 +1,70 @@ +customize_man_pages() { + # Foreground colors + typeset -A fg + fg[black]='\e[30m' + fg[red]='\e[31m' + fg[green]='\e[32m' + fg[yellow]='\e[33m' + fg[blue]='\e[34m' + fg[magenta]='\e[35m' + fg[cyan]='\e[36m' + fg[white]='\e[37m' + fg[br_black]='\e[90m' + fg[br_red]='\e[91m' + fg[br_green]='\e[92m' + fg[br_yellow]='\e[93m' + fg[br_blue]='\e[94m' + fg[br_magenta]='\e[95m' + fg[br_cyan]='\e[96m' + fg[br_white]='\e[97m' + + # Background colors + typeset -A bg + bg[black]='\e[40m' + bg[red]='\e[41m' + bg[green]='\e[42m' + bg[yellow]='\e[43m' + bg[blue]='\e[44m' + bg[magenta]='\e[45m' + bg[cyan]='\e[46m' + bg[white]='\e[47m' + bg[br_black]='\e[100m' + bg[br_red]='\e[101m' + bg[br_green]='\e[102m' + bg[br_yellow]='\e[103m' + bg[br_blue]='\e[104m' + bg[br_magenta]='\e[105m' + bg[br_cyan]='\e[106m' + bg[br_white]='\e[107m' + + # Other modifiers + local reset='\e[0m' + local bold='\e[1m' + local faint='\e[2m' + local italic='\e[3m' + local underline='\e[4m' + + ####################### + # Customize man pages # + ####################### + + # bold (md) and blink (mb) + export LESS_TERMCAP_md="$(printf %b $fg[blue])" + export LESS_TERMCAP_mb="$LESS_TERMCAP_md" + export LESS_TERMCAP_me="$(printf %b $reset)" + + # underline + export LESS_TERMCAP_us="$(printf %b $fg[br_blue] $italic $underline)" + export LESS_TERMCAP_ue="$(printf %b $reset)" + + # search + export LESS_TERMCAP_so="$(printf %b $fg[black] $bg[yellow] $bold)" + export LESS_TERMCAP_se="$(printf %b $reset)" + + # Tell `groff` to not emit SGR sequences, since we are telling `less` to + # generate them as per the configurations above. + export GROFF_NO_SGR=1 +} + +customize_man_pages +