summaryrefslogtreecommitdiff
path: root/config.h
diff options
context:
space:
mode:
authorAndrew <saintruler@gmail.com>2020-07-18 13:03:35 +0400
committerAndrew <saintruler@gmail.com>2020-07-18 13:03:35 +0400
commit9f83f6657ab8d2ddf29a040102eb50351c1ae525 (patch)
treebe1283970503dee961df6b8f16784f3029019e43 /config.h
parent6c24e32c065d407386e1a7aaaee1a7869421a739 (diff)
Bumped to 0.8.4 and changed theme to Nord
Diffstat (limited to 'config.h')
-rw-r--r--config.h108
1 files changed, 58 insertions, 50 deletions
diff --git a/config.h b/config.h
index c426df9..e48afd2 100644
--- a/config.h
+++ b/config.h
@@ -11,13 +11,15 @@ static int borderpx = 2;
/*
* What program is execed by st depends of these precedence rules:
* 1: program passed with -e
- * 2: utmp option
+ * 2: scroll and/or utmp
* 3: SHELL environment variable
* 4: value of shell in /etc/passwd
* 5: value of shell in config.h
*/
static char *shell = "/bin/sh";
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";
/* identification sequence returned in DA and DECID */
@@ -30,9 +32,9 @@ static float chscale = 1.0;
/*
* word delimiter string
*
- * More advanced example: " `'\"()[]{}"
+ * More advanced example: L" `'\"()[]{}"
*/
-char *worddelimiters = " ";
+wchar_t *worddelimiters = L" ";
/* selection timeouts (in milliseconds) */
static unsigned int doubleclicktimeout = 300;
@@ -41,9 +43,18 @@ static unsigned int tripleclicktimeout = 600;
/* alt screens */
int allowaltscreen = 1;
-/* frames per second st should at maximum draw to the screen */
-static unsigned int xfps = 120;
-static unsigned int actionfps = 30;
+/* allow certain non-interactive (insecure) window operations such as:
+ setting the clipboard text */
+int allowwindowops = 0;
+
+/*
+ * 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.
+ */
+static double minlatency = 8;
+static double maxlatency = 33;
/*
* blinking timeout (set to 0 to disable blinking) for the terminal blinking
@@ -63,7 +74,6 @@ static unsigned int cursorthickness = 2;
static int bellvolume = 0;
/* default TERM value */
-// char *termname = "st-256color";
char *termname = "xterm-256color";
/*
@@ -89,28 +99,30 @@ float alpha = 0.95;
/* Terminal colors (16 first used in escape sequence) */
static const char *colorname[] = {
/* 8 normal colors */
- [0] = "#000000", /* black */
- [1] = "#ff5555", /* red */
- [2] = "#50fa7b", /* green */
- [3] = "#f1fa8c", /* yellow */
- [4] = "#bd93f9", /* blue */
- [5] = "#ff79c6", /* magenta */
- [6] = "#8be9fd", /* cyan */
- [7] = "#bbbbbb", /* white */
+ "#3b4252", /* black */
+ "#bf616a", /* red */
+ "#a3be8c", /* green */
+ "#ebcb8b", /* yellow */
+ "#81a1c1", /* blue */
+ "#b48ead", /* magenta */
+ "#88c0d0", /* cyan */
+ "#e5e9f0", /* white */
/* 8 bright colors */
- [8] = "#44475a", /* black */
- [9] = "#ff5555", /* red */
- [10] = "#50fa7b", /* green */
- [11] = "#f1fa8c", /* yellow */
- [12] = "#bd93f9", /* blue */
- [13] = "#ff79c6", /* magenta */
- [14] = "#8be9fd", /* cyan */
- [15] = "#ffffff", /* white */
-
- /* special colors */
- [256] = "#282a36", /* background */
- [257] = "#f8f8f2", /* foreground */
+ "#4c566a", /* black */
+ "#bf616a", /* red */
+ "#a3be8c", /* green */
+ "#ebcb8b", /* yellow */
+ "#81a1c1", /* blue */
+ "#b48ead", /* magenta */
+ "#8fbcbb", /* cyan */
+ "#eceff4", /* white */
+
+ [255] = 0,
+
+ /* more colors can be added after 255 to use with DefaultXX */
+ "#2e3440", /* background */
+ "#d8dee9", /* foreground */
};
@@ -121,7 +133,7 @@ static const char *colorname[] = {
unsigned int defaultfg = 257;
unsigned int defaultbg = 256;
static unsigned int defaultcs = 257;
-static unsigned int defaultrcs = 257;
+static unsigned int defaultrcs = 256;
/*
* Colors used, when the specific fg == defaultfg. So in reverse mode this
@@ -130,6 +142,7 @@ static unsigned int defaultrcs = 257;
*/
unsigned int defaultitalic = 7;
unsigned int defaultunderline = 7;
+
/*
* Default shape of cursor
* 2: Block ("█")
@@ -160,19 +173,25 @@ static unsigned int mousebg = 0;
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.
+ */
+static uint forcemousemod = ShiftMask;
+
+/*
* Internal mouse shortcuts.
* Beware that overloading Button1 will disable the selection.
*/
static MouseShortcut mshortcuts[] = {
- /* button mask string */
- { Button4, XK_NO_MOD, "\031" },
- { Button5, XK_NO_MOD, "\005" },
-};
-
-MouseKey mkeys[] = {
- /* button mask function argument */
- { Button4, ShiftMask, kscrollup, {.i = 1} },
- { Button5, ShiftMask, kscrolldown, {.i = 1} },
+ /* mask button function argument release */
+ { ShiftMask, Button4, kscrollup, {.i = 1} },
+ { ShiftMask, Button5, kscrolldown, {.i = 1} },
+ { 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"} },
};
/* Internal keyboard shortcuts. */
@@ -191,10 +210,10 @@ static Shortcut shortcuts[] = {
{ TERMMOD, XK_C, clipcopy, {.i = 0} },
{ TERMMOD, XK_V, clippaste, {.i = 0} },
{ TERMMOD, XK_Y, selpaste, {.i = 0} },
- { ShiftMask, XK_Page_Up, kscrollup, {.i = -1} },
- { ShiftMask, XK_Page_Down, kscrolldown, {.i = -1} },
{ ShiftMask, XK_Insert, selpaste, {.i = 0} },
{ TERMMOD, XK_Num_Lock, numlock, {.i = 0} },
+ { ShiftMask, XK_Page_Up, kscrollup, {.i = -1} },
+ { ShiftMask, XK_Page_Down, kscrolldown, {.i = -1} },
};
/*
@@ -212,10 +231,6 @@ static Shortcut shortcuts[] = {
* * 0: no value
* * > 0: cursor application mode enabled
* * < 0: cursor application mode disabled
- * crlf value
- * * 0: no value
- * * > 0: crlf mode is enabled
- * * < 0: crlf mode is disabled
*
* Be careful with the order of the definitions because st searches in
* this table sequentially, so any XK_ANY_MOD must be in the last
@@ -235,13 +250,6 @@ static KeySym mappedkeys[] = { -1 };
static uint ignoremod = Mod2Mask|XK_SWITCH_MOD;
/*
- * Override mouse-select 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 forceselmod = ShiftMask;
-
-/*
* This is the huge key array which defines all compatibility to the Linux
* world. Please decide about changes wisely.
*/