st-lesscases-customcursor-20250405-98610fc.diff - sites - public wiki contents … | |
git clone git://git.suckless.org/sites | |
Log | |
Files | |
Refs | |
--- | |
st-lesscases-customcursor-20250405-98610fc.diff (2188B) | |
--- | |
1 From 826f4841b27fba77b2fce753c2ec6b44c910afe5 Mon Sep 17 00:00:00 2001 | |
2 From: Mertoalex Ashley <[email protected]> | |
3 Date: Sat, 5 Apr 2025 00:33:59 +0300 | |
4 Subject: [PATCH] lesscases patch and customcursor together | |
5 | |
6 --- | |
7 config.def.h | 11 ++++++----- | |
8 x.c | 16 ++++++++-------- | |
9 2 files changed, 14 insertions(+), 13 deletions(-) | |
10 | |
11 diff --git a/config.def.h b/config.def.h | |
12 index 2cd740a..501523d 100644 | |
13 --- a/config.def.h | |
14 +++ b/config.def.h | |
15 @@ -136,12 +136,13 @@ static unsigned int defaultrcs = 257; | |
16 | |
17 /* | |
18 * Default shape of cursor | |
19 - * 2: Block ("█") | |
20 - * 4: Underline ("_") | |
21 - * 6: Bar ("|") | |
22 - * 7: Snowman ("☃") | |
23 + * 0: Block ("█") | |
24 + * 1: Underline ("_") | |
25 + * 2: Bar ("|") | |
26 + * 3: Custom (Default: "☃") | |
27 */ | |
28 -static unsigned int cursorshape = 2; | |
29 +static unsigned int cursorshape = 0; | |
30 +#define CUSTOM_BLOCK 0x2603 /* snowman (U+2603) */ | |
31 | |
32 /* | |
33 * Default columns and rows numbers | |
34 diff --git a/x.c b/x.c | |
35 index d73152b..bdd74a1 100644 | |
36 --- a/x.c | |
37 +++ b/x.c | |
38 @@ -1561,24 +1561,24 @@ xdrawcursor(int cx, int cy, Glyph g, int ox, int… | |
39 /* draw the new one */ | |
40 if (IS_SET(MODE_FOCUSED)) { | |
41 switch (win.cursor) { | |
42 - case 7: /* st extension */ | |
43 + case 3: /* st extension */ | |
44 + #ifdef CUSTOM_BLOCK | |
45 + g.u = CUSTOM_BLOCK; | |
46 + #else | |
47 g.u = 0x2603; /* snowman (U+2603) */ | |
48 + #endif | |
49 /* FALLTHROUGH */ | |
50 case 0: /* Blinking Block */ | |
51 - case 1: /* Blinking Block (Default) */ | |
52 - case 2: /* Steady Block */ | |
53 xdrawglyph(g, cx, cy); | |
54 break; | |
55 - case 3: /* Blinking Underline */ | |
56 - case 4: /* Steady Underline */ | |
57 + case 1: /* Blinking Underline */ | |
58 XftDrawRect(xw.draw, &drawcol, | |
59 borderpx + cx * win.cw, | |
60 borderpx + (cy + 1) * win.ch - \ | |
61 cursorthickness, | |
62 win.cw, cursorthickness); | |
63 break; | |
64 - case 5: /* Blinking bar */ | |
65 - case 6: /* Steady bar */ | |
66 + case 2: /* Blinking bar */ | |
67 XftDrawRect(xw.draw, &drawcol, | |
68 borderpx + cx * win.cw, | |
69 borderpx + cy * win.ch, | |
70 @@ -1746,7 +1746,7 @@ xsetmode(int set, unsigned int flags) | |
71 int | |
72 xsetcursor(int cursor) | |
73 { | |
74 - if (!BETWEEN(cursor, 0, 7)) /* 7: st extension */ | |
75 + if (!BETWEEN(cursor, 0, 3)) /* 3: st extension */ | |
76 return 1; | |
77 win.cursor = cursor; | |
78 return 0; | |
79 -- | |
80 2.48.1 | |
81 |