mirror of
https://github.com/gryf/urxvt-wrapper.git
synced 2025-12-17 11:30:21 +01:00
Introduced additional fonts for symbols and emoji.
Using some of the nerd fonts[1] urxvt can display glyphs, which are available there, but still, there is a several other glyphs, which are defined in different font files, than Deja Vu, which I'm using as a main scalable font. Moreover, I really like to use Fixed Misc[2] from Xorg, since it's crisp and readable. In this commit, urxvt will have a list of fonts passed to, instead of only one, to have greater number of glyphs to display. [1] https://www.nerdfonts.com/ [2] https://gitlab.freedesktop.org/xorg/font/font-misc-misc
This commit is contained in:
95
urxvt.sh
95
urxvt.sh
@@ -1,23 +1,33 @@
|
|||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
# urxvt.sh - simplify urxvt commandline execution.
|
# urxvt.sh - simplify urxvt commandline execution.
|
||||||
# v1.1
|
# v1.2
|
||||||
|
|
||||||
SIZE=14
|
SIZE=14
|
||||||
|
FIXED_SIZE=16
|
||||||
ICON_PATH="${HOME}/GNUstep/Library/Icons"
|
ICON_PATH="${HOME}/GNUstep/Library/Icons"
|
||||||
ICON="tilda.png"
|
ICON="tilda.png"
|
||||||
FONT_NAME="DejaVuSansMono Nerd Font Mono"
|
FONT_BOOK="style=Book"
|
||||||
FONT_NORMAL="style=Book"
|
FONT_REGULAR="style=Regular"
|
||||||
|
FONT_MEDIUM="style=Medium"
|
||||||
FONT_BOLD="style=Bold"
|
FONT_BOLD="style=Bold"
|
||||||
FONT_ITALIC="style=Oblique"
|
|
||||||
FONT_BOLDITALIC="style=Bold Oblique"
|
# FIXED_NORMAL="-Misc-Fixed-Medium-R-Normal-*-15-*-*-*-C-*-ISO10646-1"
|
||||||
FIXED_NORMAL="-Misc-Fixed-Medium-R-Normal-*-15-*-*-*-C-*-ISO10646-1"
|
# FIXED_ITALIC="-Misc-Fixed-Medium-O-Normal-*-15-*-*-*-C-*-ISO10646-1"
|
||||||
FIXED_ITALIC="-Misc-Fixed-Medium-O-Normal-*-15-*-*-*-C-*-ISO10646-1"
|
# FIXED_BOLD="-Misc-Fixed-Bold-R-Normal-*-15-*-*-*-C-*-ISO10646-1"
|
||||||
FIXED_BOLD="-Misc-Fixed-Bold-R-Normal-*-15-*-*-*-C-*-ISO10646-1"
|
|
||||||
|
# Regular fonts.
|
||||||
|
DEJAVU="xft:DejaVuSansMono Nerd Font Mono:_FONT_STYLE_:pixelsize=_SIZE_"
|
||||||
|
FIXED="xft:Misc Fixed:_FONT_STYLE_:pixelsize=_FIXEDSIZE_:antialias=false"
|
||||||
|
# Fonts, that provides with symbols, icons, emoji (besides those in Nerd Font)
|
||||||
|
SYMBOLA="xft:Symbola:_FONT_STYLE_:pixelsize=_SIZE_"
|
||||||
|
UNIFONT="xft:Unifont Upper:_FONT_STYLE_:pixelsize=_SIZE_"
|
||||||
|
|
||||||
XFT=true
|
XFT=true
|
||||||
EXEC=''
|
EXEC=''
|
||||||
PERLEXT="url-select,keyboard-select,font-size,color-themes"
|
PERLEXT="url-select,keyboard-select,font-size,color-themes"
|
||||||
|
|
||||||
|
# TODO: do we need italic/bolditalic?
|
||||||
|
|
||||||
function rxvt {
|
function rxvt {
|
||||||
urxvtc "$@"
|
urxvtc "$@"
|
||||||
@@ -27,6 +37,10 @@ function rxvt {
|
|||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function join_by {
|
||||||
|
local IFS="$1"; shift; echo "$*";
|
||||||
|
}
|
||||||
|
|
||||||
function usage {
|
function usage {
|
||||||
echo "Usage: $(basename "${0}") [options]"
|
echo "Usage: $(basename "${0}") [options]"
|
||||||
echo
|
echo
|
||||||
@@ -36,7 +50,8 @@ function usage {
|
|||||||
echo " default tilda.png"
|
echo " default tilda.png"
|
||||||
echo " -t activate tabbedalt extension"
|
echo " -t activate tabbedalt extension"
|
||||||
echo " -s size set font size, default 14"
|
echo " -s size set font size, default 14"
|
||||||
echo " -f use fixed misc font instead of DejaVu"
|
echo " -f use fixed misc font as a main font instead of"
|
||||||
|
echo " DejaVu"
|
||||||
echo " -e pass exec to the urxvt"
|
echo " -e pass exec to the urxvt"
|
||||||
echo " -n no perl extensions"
|
echo " -n no perl extensions"
|
||||||
echo " -h this help"
|
echo " -h this help"
|
||||||
@@ -56,6 +71,7 @@ while getopts ":i:hfs:te:n" option; do
|
|||||||
;;
|
;;
|
||||||
s)
|
s)
|
||||||
SIZE=${OPTARG}
|
SIZE=${OPTARG}
|
||||||
|
FIXED_SIZE=${OPTARG}
|
||||||
;;
|
;;
|
||||||
f)
|
f)
|
||||||
XFT=false
|
XFT=false
|
||||||
@@ -73,18 +89,63 @@ while getopts ":i:hfs:te:n" option; do
|
|||||||
esac
|
esac
|
||||||
done
|
done
|
||||||
|
|
||||||
args=("-pe" "${PERLEXT}" "-icon" "${ICON_PATH}/${ICON}")
|
|
||||||
if ${XFT}; then
|
if ${XFT}; then
|
||||||
args+=("-fn" "xft:${FONT_NAME}:${FONT_NORMAL}:pixelsize=${SIZE}"
|
FONTS="${DEJAVU/_FONT_STYLE_/style=Book}"
|
||||||
"-fb" "xft:${FONT_NAME}:${FONT_BOLD}:pixelsize=${SIZE}"
|
FONTS="${FONTS/_SIZE_/$SIZE}"
|
||||||
"-fbi" "xft:${FONT_NAME}:${FONT_BOLDITALIC}:pixelsize=${SIZE}"
|
FONTS="${FONTS},${SYMBOLA/_FONT_STYLE_/style=Regular}"
|
||||||
"-fi" "xft:${FONT_NAME}:${FONT_ITALIC}:pixelsize=${SIZE}")
|
FONTS="${FONTS/_SIZE_/$SIZE}"
|
||||||
|
FONTS="${FONTS},${UNIFONT/_FONT_STYLE_/style=Medium}"
|
||||||
|
FONTS="${FONTS/_SIZE_/$SIZE},${FIXED/_FONT_STYLE_/style=Regular}"
|
||||||
|
FONTS="${FONTS/_FIXEDSIZE_/$FIXED_SIZE}"
|
||||||
|
|
||||||
|
FONTSB="${DEJAVU/_FONT_STYLE_/style=Bold}"
|
||||||
|
FONTSB="${FONTSB/_SIZE_/$SIZE}"
|
||||||
|
FONTSB="${FONTSB},${SYMBOLA/_FONT_STYLE_/style=Bold}"
|
||||||
|
FONTSB="${FONTSB/_SIZE_/$SIZE}"
|
||||||
|
FONTSB="${FONTSB},${UNIFONT/_FONT_STYLE_/style=Bold}"
|
||||||
|
FONTSB="${FONTSB/_SIZE_/$SIZE},${FIXED/_FONT_STYLE_/style=Bold}"
|
||||||
|
FONTSB="${FONTSB/_FIXEDSIZE_/$FIXED_SIZE}"
|
||||||
else
|
else
|
||||||
args+=("-fn" "${FIXED_NORMAL}"
|
FONTS="${FIXED/_FONT_STYLE_/style=Regular}"
|
||||||
"-fb" "${FIXED_BOLD}"
|
FONTS="${FONTS/_FIXEDSIZE_/$FIXED_SIZE}"
|
||||||
"-fi" "${FIXED_ITALIC}")
|
FONTS="${FONTS},${DEJAVU/_FONT_STYLE_/style=Book}"
|
||||||
|
FONTS="${FONTS/_SIZE_/$SIZE}"
|
||||||
|
FONTS="${FONTS},${SYMBOLA/_FONT_STYLE_/style=Regular}"
|
||||||
|
FONTS="${FONTS/_SIZE_/$SIZE}"
|
||||||
|
FONTS="${FONTS},${UNIFONT/_FONT_STYLE_/style=Medium}"
|
||||||
|
FONTS="${FONTS/_SIZE_/$SIZE}"
|
||||||
|
|
||||||
|
FONTSB="${FIXED/_FONT_STYLE_/style=Bold}"
|
||||||
|
FONTSB="${FONTSB/_FIXEDSIZE_/$FIXED_SIZE}"
|
||||||
|
FONTSB="${FONTSB},${DEJAVU/_FONT_STYLE_/style=Bold}"
|
||||||
|
FONTSB="${FONTSB/_SIZE_/$SIZE}"
|
||||||
|
FONTSB="${FONTSB},${SYMBOLA/_FONT_STYLE_/style=Bold}"
|
||||||
|
FONTSB="${FONTSB/_SIZE_/$SIZE}"
|
||||||
|
FONTSB="${FONTSB},${UNIFONT/_FONT_STYLE_/style=Bold}"
|
||||||
|
FONTSB="${FONTSB/_SIZE_/$SIZE}"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# DEJAVU="xft:DejaVuSansMono Nerd Font Mono:${FONT_BOOK}:${SIZE},"`
|
||||||
|
# `"xft:Symbola:${FONT_REGULAR}:${SIZE},"`
|
||||||
|
# `"xft:Unifont Upper:${FONT_MEDIUM}:${SIZE},"`
|
||||||
|
# `"xft:Misc Fixed:${FONT_REGULAR}:${FIXED_SIZE}:antialias=false"
|
||||||
|
|
||||||
|
# DEJAVU_BOLD="xft:DejaVuSansMono Nerd Font Mono:${FONT_BOLD}:${SIZE},"`
|
||||||
|
# `"xft:Symbola:${FONT_BOLD}:${SIZE},"`
|
||||||
|
# `"xft:Unifont Upper:${FONT_BOLD}:${SIZE},"`
|
||||||
|
# `"xft:Misc Fixed:${FONT_BOLD}:${FIXED_SIZE}:antialias=false"
|
||||||
|
|
||||||
|
# FIXED="xft:Misc Fixed:${FONT_REGULAR}:${FIXED_SIZE}:antialias=false,"`
|
||||||
|
# `"xft:DejaVuSansMono Nerd Font Mono:${FONT_BOOK}:${SIZE},"`
|
||||||
|
# `"xft:Symbola:${FONT_REGULAR}:${SIZE},"`
|
||||||
|
# `"xft:Unifont Upper:${FONT_MEDIUM}:${SIZE}"
|
||||||
|
|
||||||
|
# FIXED_BOLD="xft:Misc Fixed:${FONT_BOLD}:${FIXED_SIZE}:antialias=false,"`
|
||||||
|
# `"xft:DejaVuSansMono Nerd Font Mono:${FONT_BOLD}:${SIZE},"`
|
||||||
|
|
||||||
|
args=("-pe" "${PERLEXT}" "-icon" "${ICON_PATH}/${ICON}")
|
||||||
|
args+=("-fn" "${FONTS}" "-fb" "${FONTSB}" )
|
||||||
|
|
||||||
if [ -n "${EXEC}" ]; then
|
if [ -n "${EXEC}" ]; then
|
||||||
args+=("-e" "${EXEC}")
|
args+=("-e" "${EXEC}")
|
||||||
fi
|
fi
|
||||||
|
|||||||
Reference in New Issue
Block a user