-#define TAB 8
+#define TAB 8
#define TNAME "st-256color"
-#define FONT "6x13"
-#define BOLDFONT "6x13bold"
+#define FONT "-*-*-medium-r-*-*-*-120-75-75-*-60-*-*"
+#define BOLDFONT "-*-*-bold-r-*-*-*-120-75-75-*-60-*-*"
#define BORDER 2
#define SHELL "/bin/sh"
-/* Terminal colors */
+/* Terminal colors (16 first used in escape sequence) */
static const char *colorname[] = {
"black",
- "#CC0000",
- "#4E9A06",
- "#C4A000",
- "#3465A4",
- "#75507B",
- "#06989A",
- "#888a85",
- "#555753",
- "#EF2929",
- "#8AE234",
- "#FCE94F",
- "#729FCF",
- "#AD7FA8",
- "#34E2E2",
- "#EEEEEC"
+ "red3",
+ "green3",
+ "yellow3",
+ "blue2",
+ "magenta3",
+ "cyan3",
+ "gray90",
+ "gray50",
+ "red",
+ "green",
+ "yellow",
+ "#5c5cff",
+ "magenta",
+ "cyan",
+ "white"
};
-/* Default colors (colorname index) */
-/* foreground, background, cursor, visual bell */
+/* Default colors (colorname index)
+ foreground, background, cursor */
#define DefaultFG 7
#define DefaultBG 0
#define DefaultCS 1
-/* special keys */
+/* Special keys (change & recompile st.info accordingly)
+ Keep in mind that kpress() in st.c hardcodes some keys.
+
+ Mask value:
+ * Use XK_ANY_MOD to match the key no matter modifiers state
+ * Use XK_NO_MOD to match the key alone (no modifiers)
+
+ key, mask, output */
static Key key[] = {
- { XK_BackSpace, "\177" },
- { XK_Delete, "\033[3~" },
- { XK_Home, "\033[1~" },
- { XK_End, "\033[4~" },
- { XK_Prior, "\033[5~" },
- { XK_Next, "\033[6~" },
- { XK_F1, "\033OP" },
- { XK_F2, "\033OQ" },
- { XK_F3, "\033OR" },
- { XK_F4, "\033OS" },
- { XK_F5, "\033[15~" },
- { XK_F6, "\033[17~" },
- { XK_F7, "\033[18~" },
- { XK_F8, "\033[19~" },
- { XK_F9, "\033[20~" },
- { XK_F10, "\033[21~" },
- { XK_F11, "\033[23~" },
- { XK_F12, "\033[24~" },
+ { XK_BackSpace, XK_NO_MOD, "\177" },
+ { XK_Insert, XK_NO_MOD, "\033[2~" },
+ { XK_Delete, XK_NO_MOD, "\033[3~" },
+ { XK_Home, XK_NO_MOD, "\033[1~" },
+ { XK_End, XK_NO_MOD, "\033[4~" },
+ { XK_Prior, XK_NO_MOD, "\033[5~" },
+ { XK_Next, XK_NO_MOD, "\033[6~" },
+ { XK_F1, XK_NO_MOD, "\033OP" },
+ { XK_F2, XK_NO_MOD, "\033OQ" },
+ { XK_F3, XK_NO_MOD, "\033OR" },
+ { XK_F4, XK_NO_MOD, "\033OS" },
+ { XK_F5, XK_NO_MOD, "\033[15~" },
+ { XK_F6, XK_NO_MOD, "\033[17~" },
+ { XK_F7, XK_NO_MOD, "\033[18~" },
+ { XK_F8, XK_NO_MOD, "\033[19~" },
+ { XK_F9, XK_NO_MOD, "\033[20~" },
+ { XK_F10, XK_NO_MOD, "\033[21~" },
+ { XK_F11, XK_NO_MOD, "\033[23~" },
+ { XK_F12, XK_NO_MOD, "\033[24~" },
};
+/* Line drawing characters (sometime specific to each font...) */
static char gfx[] = {
- ['}'] = 'f',
- ['.'] = 'v',
- [','] = '<',
- ['+'] = '>',
- ['-'] = '^',
- ['h'] = '#',
- ['~'] = 'o',
- ['a'] = ':',
- ['f'] = '\\',
- ['`'] = '+',
- ['z'] = '>',
- ['{'] = '*',
- ['q'] = '-',
+ ['f'] = 'o',
+ ['g'] = '+',
['i'] = '#',
- ['n'] = '+',
- ['y'] = '<',
- ['m'] = '+',
- ['j'] = '+',
- ['|'] = '!',
- ['g'] = '#',
- ['o'] = '~',
- ['p'] = '-',
- ['r'] = '-',
- ['s'] = '_',
- ['0'] = '#',
- ['w'] = '+',
- ['u'] = '+',
- ['t'] = '+',
- ['v'] = '+',
- ['l'] = '+',
- ['k'] = '+',
- ['x'] = '|',
[255] = 0,
};
+
+/* double-click timeout (in milliseconds) between clicks for selection */
+#define DOUBLECLICK_TIMEOUT 300
+#define TRIPLECLICK_TIMEOUT (2*DOUBLECLICK_TIMEOUT)