From 9d637970493a040e0ff65a5e5e0c04ad25a4e3ef Mon Sep 17 00:00:00 2001 From: Jakub Date: Wed, 11 Jan 2023 10:12:31 -0500 Subject: [PATCH] set some default options and clean up config.def.h --- config.def.h | 270 ++++++++++++++++++++++----------------------------- 1 file changed, 115 insertions(+), 155 deletions(-) diff --git a/config.def.h b/config.def.h index fe4802b..8c9d1e7 100644 --- a/config.def.h +++ b/config.def.h @@ -1,12 +1,8 @@ /* See LICENSE file for copyright and license details. */ -/* - * appearance - * - * font: see http://freedesktop.org/software/fontconfig/fontconfig-user.html - */ -static char *font = "Liberation Mono:pixelsize=12:antialias=true:autohint=true"; -static int borderpx = 2; +/* appearance */ +static char *font = "Hack Nerd Font:pixelsize=14:antialias=true"; +static int borderpx = 0; /* * What program is execed by st depends of these precedence rules: @@ -16,8 +12,9 @@ static int borderpx = 2; * 4: value of shell in /etc/passwd * 5: value of shell in config.h */ -static char *shell = "/bin/sh"; +static char *shell = "/bin/zsh"; char *utmp = NULL; + /* scroll program: to enable use a string like "scroll" */ char *scroll = NULL; char *stty_args = "stty raw pass8 nl -echo -iexten -cstopb 38400"; @@ -29,11 +26,8 @@ char *vtiden = "\033[?6c"; static float cwscale = 1.0; static float chscale = 1.0; -/* - * word delimiter string - * - * More advanced example: L" `'\"()[]{}" - */ +/* word delimiter string + * More advanced example: L" `'\"()[]{}" */ wchar_t *worddelimiters = L" "; /* selection timeouts (in milliseconds) */ @@ -47,30 +41,22 @@ int allowaltscreen = 1; setting the clipboard text */ int allowwindowops = 0; -/* - * draw latency range in ms - from new content/keypress/etc until drawing. +/* draw latency range in ms - from new content/keypress/etc until drawing. * within this range, st draws when content stops arriving (idle). mostly it's * near minlatency, but it waits longer for slow updates to avoid partial draw. - * low minlatency will tear/flicker more, as it can "detect" idle too early. - */ + * low minlatency will tear/flicker more, as it can "detect" idle too early. */ static double minlatency = 8; static double maxlatency = 33; -/* - * blinking timeout (set to 0 to disable blinking) for the terminal blinking - * attribute. - */ +/* blinking timeout (set to 0 to disable blinking) for the terminal blinking + * attribute. */ static unsigned int blinktimeout = 800; -/* - * thickness of underline and bar cursors - */ + /* thickness of underline and bar cursors */ static unsigned int cursorthickness = 2; -/* - * bell volume. It must be a value between -100 and 100. Use 0 for disabling - * it - */ +/* bell volume. It must be a value between -100 and 100. Use 0 for disabling + it */ static int bellvolume = 0; /* default TERM value */ @@ -98,44 +84,46 @@ float alpha = 0.9; /* Terminal colors (16 first used in escape sequence) */ static const char *colorname[] = { + /* 8 normal colors */ - "black", - "red3", - "green3", - "yellow3", - "blue2", - "magenta3", - "cyan3", - "gray90", + "#282828", + "#cc241d", + "#98971a", + "#d79921", + "#458588", + "#b16286", + "#689d6a", + "#a89984", /* 8 bright colors */ - "gray50", - "red", - "green", - "yellow", - "#5c5cff", - "magenta", - "cyan", - "white", + "#928374", + "#fb4934", + "#b8bb26", + "#fabd2f", + "#83a598", + "#d3869b", + "#ebdbb2", + "#8ec07c", + + + [255] = 0, /* more colors can be added after 255 to use with DefaultXX */ - "#cccccc", - "#555555", - "gray90", /* default foreground colour */ - "black", /* default background colour */ + "#ebdbb2", /* default cursor color */ + "#555555", /* default rcs color */ + "#ebdbb2", /* default foreground color */ + "#1d2021", /* default background color */ }; -/* - * Default colors (colorname index) - * foreground, background, cursor, reverse cursor - */ -unsigned int defaultfg = 258; -unsigned int defaultbg = 259; +/* Default colors (colorname index) + foreground, background, cursor, reverse cursor */ unsigned int defaultcs = 256; static unsigned int defaultrcs = 257; +unsigned int defaultfg = 258; +unsigned int defaultbg = 259; /* * https://invisible-island.net/xterm/ctlseqs/ctlseqs.html#h4-Functions-using-CSI-_-ordered-by-the-final-character-lparen-s-rparen:CSI-Ps-SP-q.1D81 @@ -153,84 +141,66 @@ static unsigned int defaultrcs = 257; static unsigned int cursorstyle = 1; static Rune stcursor = 0x2603; /* snowman ("☃") */ -/* - * Default columns and rows numbers - */ - +/* Default columns and rows numbers */ static unsigned int cols = 80; static unsigned int rows = 24; -/* - * Default colour and shape of the mouse cursor - */ +/* Default colour and shape of the mouse cursor */ static unsigned int mouseshape = XC_xterm; static unsigned int mousefg = 7; static unsigned int mousebg = 0; -/* - * Color used to display font attributes when fontconfig selected a font which - * doesn't match the ones requested. - */ +/* Color used to display font attributes when fontconfig selected a font which + doesn't match the ones requested. */ static unsigned int defaultattr = 11; -/* - * Force mouse select/shortcuts while mask is active (when MODE_MOUSE is set). - * Note that if you want to use ShiftMask with selmasks, set this to an other - * modifier, set to 0 to not use it. - */ +/* Force mouse select/shortcuts while mask is active (when MODE_MOUSE is set). + Note that if you want to use ShiftMask with selmasks, set this to an other + modifier, set to 0 to not use it. */ static uint forcemousemod = ShiftMask; -/* - * Xresources preferences to load at startup - */ +/* Xresources preferences to load at startup */ ResourcePref resources[] = { - { "font", STRING, &font }, - { "color0", STRING, &colorname[0] }, - { "color1", STRING, &colorname[1] }, - { "color2", STRING, &colorname[2] }, - { "color3", STRING, &colorname[3] }, - { "color4", STRING, &colorname[4] }, - { "color5", STRING, &colorname[5] }, - { "color6", STRING, &colorname[6] }, - { "color7", STRING, &colorname[7] }, - { "color8", STRING, &colorname[8] }, - { "color9", STRING, &colorname[9] }, - { "color10", STRING, &colorname[10] }, - { "color11", STRING, &colorname[11] }, - { "color12", STRING, &colorname[12] }, - { "color13", STRING, &colorname[13] }, - { "color14", STRING, &colorname[14] }, - { "color15", STRING, &colorname[15] }, - { "cursorcolor", STRING, &colorname[256] }, - { "foreground", STRING, &colorname[258] }, - { "background", STRING, &colorname[259] }, - { "termname", STRING, &termname }, - { "shell", STRING, &shell }, - { "minlatency", INTEGER, &minlatency }, - { "maxlatency", INTEGER, &maxlatency }, - { "blinktimeout", INTEGER, &blinktimeout }, - { "bellvolume", INTEGER, &bellvolume }, - { "tabspaces", INTEGER, &tabspaces }, - { "borderpx", INTEGER, &borderpx }, - { "cwscale", FLOAT, &cwscale }, - { "chscale", FLOAT, &chscale }, - { "opacity", FLOAT, &alpha }, + { "font", STRING, &font }, + { "color0", STRING, &colorname[0] }, + { "color1", STRING, &colorname[1] }, + { "color2", STRING, &colorname[2] }, + { "color3", STRING, &colorname[3] }, + { "color4", STRING, &colorname[4] }, + { "color5", STRING, &colorname[5] }, + { "color6", STRING, &colorname[6] }, + { "color7", STRING, &colorname[7] }, + { "color8", STRING, &colorname[8] }, + { "color9", STRING, &colorname[9] }, + { "color10", STRING, &colorname[10] }, + { "color11", STRING, &colorname[11] }, + { "color12", STRING, &colorname[12] }, + { "color13", STRING, &colorname[13] }, + { "color14", STRING, &colorname[14] }, + { "color15", STRING, &colorname[15] }, + { "cursorcolor", STRING, &colorname[256] }, + { "foreground", STRING, &colorname[258] }, + { "background", STRING, &colorname[259] }, + { "termname", STRING, &termname }, + { "shell", STRING, &shell }, + { "minlatency", INTEGER, &minlatency }, + { "maxlatency", INTEGER, &maxlatency }, + { "blinktimeout", INTEGER, &blinktimeout }, + { "bellvolume", INTEGER, &bellvolume }, + { "tabspaces", INTEGER, &tabspaces }, + { "borderpx", INTEGER, &borderpx }, + { "cwscale", FLOAT, &cwscale }, + { "chscale", FLOAT, &chscale }, + { "opacity", FLOAT, &alpha }, }; -/* - * Internal mouse shortcuts. - * Beware that overloading Button1 will disable the selection. - */ +/* Internal mouse shortcuts. + Beware that overloading Button1 will disable the se */ const unsigned int mousescrollincrement = 1; static MouseShortcut mshortcuts[] = { - /* mask button function argument release */ - { ShiftMask, Button4, kscrollup, {.i = mousescrollincrement} }, - { ShiftMask, Button5, kscrolldown, {.i = mousescrollincrement} }, - { XK_ANY_MOD, Button2, selpaste, {.i = 0}, 1 }, - { ShiftMask, Button4, ttysend, {.s = "\033[5;2~"} }, - { XK_ANY_MOD, Button4, ttysend, {.s = "\031"} }, - { ShiftMask, Button5, ttysend, {.s = "\033[6;2~"} }, - { XK_ANY_MOD, Button5, ttysend, {.s = "\005"} }, + /* mask button function argument release */ + { ShiftMask, Button4, kscrollup, {.i = mousescrollincrement} }, + { ShiftMask, Button5, kscrolldown, {.i = mousescrollincrement} }, }; /* Internal keyboard shortcuts. */ @@ -243,22 +213,22 @@ static char *copyoutput[] = { "/bin/sh", "-xc", "st-copyout", "externalpipe", NU static Shortcut shortcuts[] = { /* mask keysym function argument */ - { XK_ANY_MOD, XK_Break, sendbreak, {.i = 0} }, - { ControlMask, XK_Print, toggleprinter, {.i = 0} }, - { ShiftMask, XK_Print, printscreen, {.i = 0} }, - { XK_ANY_MOD, XK_Print, printsel, {.i = 0} }, - { TERMMOD, XK_Prior, zoom, {.f = +1} }, - { TERMMOD, XK_Next, zoom, {.f = -1} }, - { TERMMOD, XK_Home, zoomreset, {.f = 0} }, - { TERMMOD, XK_C, clipcopy, {.i = 0} }, - { TERMMOD, XK_V, clippaste, {.i = 0} }, - { TERMMOD, XK_Y, selpaste, {.i = 0} }, - { ShiftMask, XK_Insert, selpaste, {.i = 0} }, - { TERMMOD, XK_Num_Lock, numlock, {.i = 0} }, - { MODKEY, XK_l, externalpipe, {.v = openurlcmd } }, - { MODKEY, XK_y, externalpipe, {.v = copyurlcmd } }, - { MODKEY, XK_o, externalpipe, {.v = copyoutput } }, - { ShiftMask, XK_Page_Up, kscrollup, {.i = -1} }, + { XK_ANY_MOD, XK_Break, sendbreak, {.i = 0} }, + { ControlMask, XK_Print, toggleprinter, {.i = 0} }, + { ShiftMask, XK_Print, printscreen, {.i = 0} }, + { XK_ANY_MOD, XK_Print, printsel, {.i = 0} }, + { TERMMOD, XK_Prior, zoom, {.f = +1} }, + { TERMMOD, XK_Next, zoom, {.f = -1} }, + { TERMMOD, XK_Home, zoomreset, {.f = 0} }, + { TERMMOD, XK_C, clipcopy, {.i = 0} }, + { TERMMOD, XK_V, clippaste, {.i = 0} }, + { TERMMOD, XK_Y, selpaste, {.i = 0} }, + { ShiftMask, XK_Insert, selpaste, {.i = 0} }, + { TERMMOD, XK_Num_Lock, numlock, {.i = 0} }, + { MODKEY, XK_l, externalpipe, {.v = openurlcmd } }, + { MODKEY, XK_y, externalpipe, {.v = copyurlcmd } }, + { MODKEY, XK_o, externalpipe, {.v = copyoutput } }, + { ShiftMask, XK_Page_Up, kscrollup, {.i = -1} }, { ShiftMask, XK_Page_Down, kscrolldown, {.i = -1} }, }; @@ -283,22 +253,16 @@ static Shortcut shortcuts[] = { * position for a key. */ -/* - * If you want keys other than the X11 function keys (0xFD00 - 0xFFFF) - * to be mapped below, add them to this array. - */ +/* If you want keys other than the X11 function keys (0xFD00 - 0xFFFF) + * to be mapped below, add them to this array. */ static KeySym mappedkeys[] = { -1 }; -/* - * State bits to ignore when matching key or button events. By default, - * numlock (Mod2Mask) and keyboard layout (XK_SWITCH_MOD) are ignored. - */ +/* State bits to ignore when matching key or button events. By default, + * numlock (Mod2Mask) and keyboard layout (XK_SWITCH_MOD) are ignored. */ static uint ignoremod = Mod2Mask|XK_SWITCH_MOD; -/* - * This is the huge key array which defines all compatibility to the Linux - * world. Please decide about changes wisely. - */ +/* This is the huge key array which defines all compatibility to the Linux + * world. Please decide about changes wisely. */ static Key key[] = { /* keysym mask string appkey appcursor */ { XK_KP_Home, ShiftMask, "\033[2J", 0, -1}, @@ -512,21 +476,17 @@ static Key key[] = { { XK_F35, XK_NO_MOD, "\033[23;5~", 0, 0}, }; -/* - * Selection types' masks. - * Use the same masks as usual. - * Button1Mask is always unset, to make masks match between ButtonPress. - * ButtonRelease and MotionNotify. - * If no match is found, regular selection is used. - */ +/* Selection types' masks. + Use the same masks as usual. + Button1Mask is always unset, to make masks match between ButtonPress. + ButtonRelease and MotionNotify. + If no match is found, regular selection is used. */ static uint selmasks[] = { [SEL_RECTANGULAR] = Mod1Mask, }; -/* - * Printable characters in ASCII, used to estimate the advance width - * of single wide characters. - */ +/* Printable characters in ASCII, used to estimate the advance width + of single wide characters. */ static char ascii_printable[] = " !\"#$%&'()*+,-./0123456789:;<=>?" "@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_"