feat(st): 添加dracula主题

Dracula is a color scheme made by Zeno Rocha based on Solarized. This
patch make the Dracula color scheme available for st.
This commit is contained in:
augety 2024-07-20 20:23:13 +08:00
parent d82014aa4b
commit 2c8e6d42fd
2 changed files with 108 additions and 25 deletions

View File

@ -99,26 +99,28 @@ float alpha = 0.8, alphaUnfocused = 0.6;
/* Terminal colors (16 first used in escape sequence) */
static const char *colorname[] = {
/* 8 normal colors */
"black",
"red3",
"green3",
"yellow3",
"blue2",
"magenta3",
"cyan3",
"gray90",
[0] = "#000000", /* black */
[1] = "#ff5555", /* red */
[2] = "#50fa7b", /* green */
[3] = "#f1fa8c", /* yellow */
[4] = "#bd93f9", /* blue */
[5] = "#ff79c6", /* magenta */
[6] = "#8be9fd", /* cyan */
[7] = "#bbbbbb", /* white */
/* 8 bright colors */
"gray50",
"red",
"green",
"yellow",
"#5c5cff",
"magenta",
"cyan",
"white",
[8] = "#44475a", /* black */
[9] = "#ff5555", /* red */
[10] = "#50fa7b", /* green */
[11] = "#f1fa8c", /* yellow */
[12] = "#bd93f9", /* blue */
[13] = "#ff79c6", /* magenta */
[14] = "#8be9fd", /* cyan */
[15] = "#ffffff", /* white */
[255] = 0,
/* special colors */
[256] = "#282a36", /* background */
[257] = "#f8f8f2", /* foreground */
/* more colors can be added after 255 to use with DefaultXX */
"#cccccc",
@ -132,11 +134,11 @@ static const char *colorname[] = {
* Default colors (colorname index)
* foreground, background, cursor, reverse cursor
*/
unsigned int defaultfg = 258;
unsigned int defaultfg = 257;
unsigned int defaultbg = 0;
unsigned int defaultcs = 256;
static unsigned int defaultrcs = 257;
unsigned int bg = 1, bgUnfocused = 16;
unsigned int defaultcs = 257;
unsigned int defaultrcs = 257;
unsigned int bg = 256, bgUnfocused = 16;
/*
* Default shape of cursor

View File

@ -0,0 +1,81 @@
diff '--color=auto' -up ../st/config.def.h ./config.def.h
--- ../st/config.def.h 2022-03-09 08:28:40.186246176 -0300
+++ ./config.def.h 2022-03-09 08:26:03.194323581 -0300
@@ -95,27 +95,29 @@ unsigned int tabspaces = 8;
/* Terminal colors (16 first used in escape sequence) */
static const char *colorname[] = {
- /* 8 normal colors */
- "black",
- "red3",
- "green3",
- "yellow3",
- "blue2",
- "magenta3",
- "cyan3",
- "gray90",
-
- /* 8 bright colors */
- "gray50",
- "red",
- "green",
- "yellow",
- "#5c5cff",
- "magenta",
- "cyan",
- "white",
-
- [255] = 0,
+ /* 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 */
+
+ /* 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 */
/* more colors can be added after 255 to use with DefaultXX */
"#cccccc",
@@ -127,14 +129,22 @@ static const char *colorname[] = {
/*
* Default colors (colorname index)
- * foreground, background, cursor, reverse cursor
+ * foreground, background, cursor
*/
-unsigned int defaultfg = 258;
-unsigned int defaultbg = 259;
-unsigned int defaultcs = 256;
+unsigned int defaultfg = 257;
+unsigned int defaultbg = 256;
+unsigned int defaultcs = 257;
static unsigned int defaultrcs = 257;
/*
+ * Colors used, when the specific fg == defaultfg. So in reverse mode this
+ * will reverse too. Another logic would only make the simple feature too
+ * complex.
+ */
+unsigned int defaultitalic = 7;
+unsigned int defaultunderline = 7;
+
+/*
* Default shape of cursor
* 2: Block ("█")
* 4: Underline ("_")