commit d295326

ohmu  ·  2026-09-23 22:35:25 +0300 MSK
parent 36480ba
config: rename cool* toggles to string style keys, fix col/win button swap naming, fixed man
23 files changed,  +186, -135
M acme.1
M acme.c
M scrl.c
M acme.1
+90, -44
  1@@ -106,82 +106,96 @@ For each listed color, acme blends it with the
  2 .B mix
  3 color before use; colors not listed are used as-is.
  4 Default:
  5-.IR "tagbg txtbg" .
  6+.IR "tagbg txtbg scrlfg" .
  7 .TP
  8 .B mix
  9-Color mixed into pastel backgrounds, in RGBA hex.  Default: 0xFFFFFFFF.
 10+Color mixed into pastel backgrounds, in RGBA hex.  Default: FFFFFF.
 11 .TP
 12 .B root
 13-Root background color.  Default: 0xFFFFFFFF.
 14+Root background color.  Default: FFFFFF.
 15 .TP
 16 .B border
 17-Border color.  Default: 0x000000FF.
 18+Border color.  Default: 000000.
 19 .TP
 20 .B tagbg
 21-Tag background.  Default: 0xAAFFFFFF.
 22+Tag background.  Default: AAFFFF.
 23 .TP
 24 .B tagfg
 25-Tag foreground.  Default: 0x000000FF.
 26+Tag foreground.  Default: 000000.
 27 .TP
 28 .B htagbg
 29-Highlighted tag background.  Default: 0x9EEEEEFF.
 30+Highlighted tag background.  Default: 9EEEEE.
 31 .TP
 32 .B htagfg
 33-Highlighted tag foreground.  Default: 0x000000FF.
 34+Highlighted tag foreground.  Default: 000000.
 35 .TP
 36 .B txtbg
 37-Text background.  Default: 0xFFFFAAFF.
 38+Text background.  Default: FFFFAA.
 39 .TP
 40 .B txtfg
 41-Text foreground.  Default: 0x000000FF.
 42+Text foreground.  Default: 000000.
 43 .TP
 44 .B htxtbg
 45-Highlighted text background.  Default: 0xEEEE9EFF.
 46+Highlighted text background.  Default: EEEE9E.
 47 .TP
 48 .B htxtfg
 49-Highlighted text foreground.  Default: 0x000000FF.
 50+Highlighted text foreground.  Default: 000000.
 51 .TP
 52 .B winbtn
 53-Window button color.  Default: 0x8888CCFF.
 54+Window button color.  Default: 8888CC.
 55+.TP
 56 .B winbtnbord
 57-Top border(which under win button) color. Default 0x8888CCFF
 58+Top border (drawn under the window button) color.  Default: 8888CC.
 59 .TP
 60 .B colbtn
 61-Column button color.  Default: 0x8888CCFF.
 62+Column button color.  Default: 8888CC.
 63 .TP
 64 .B tmpbtn
 65-Temp button color.  Default: 0x000099FF.
 66+Temp button color.  Default: 000099.
 67 .TP
 68 .B scrlbg
 69-Scrollbar background.  Default: 0x99994CFF.
 70+Scrollbar background.  Default: 99994C.
 71 .TP
 72 .B scrlfg
 73-Scrollbar foreground.  Default: 0xFFFFAAFF.
 74+Scrollbar foreground.  Default: FFFFAA.
 75 .TP
 76 .B scrlbord
 77-Scrollbar border.  Default: 0x99994CFF.
 78+Scrollbar border.  Default: 99994C.
 79 .TP
 80 .B btn2hl
 81-Button 2 highlight.  Default: 0xAA0000FF.
 82+Button 2 highlight.  Default: AA0000.
 83 .TP
 84 .B btn3hl
 85-Button 3 highlight.  Default: 0x006600FF.
 86-.TP
 87-.B coolscrlfg
 88-Foreground (dot) color of the coolscrollbg 1 and 2 tile pattern.
 89-Default: 0x000000FF.
 90-.TP
 91-.B coolscrlbg
 92-Background color of the coolscrollbg 1 and 2 tile pattern.
 93-Default: 0xFFFFFFFF.
 94+Button 3 highlight.  Default: 006600.
 95+.TP
 96+.B scrolltilefg
 97+Foreground (dot) color of the
 98+.B xxiivv
 99+and
100+.B p9-2e
101+scrollstyle tile pattern.
102+Default: 000000.
103+.TP
104+.B scrolltilebg
105+Background color of the
106+.B xxiivv
107+and
108+.B p9-2e
109+scrollstyle tile pattern.
110+Default: FFFFFF.
111+.TP
112+.B colbtntilefg
113+Foreground (dot) color of the
114+.B p9-2e
115+colbtnstyle tile pattern.
116+Default: FFFFFF.
117+.TP
118+.B colbtntilebg
119+Background color of the
120+.B p9-2e
121+colbtnstyle tile pattern.
122+Default: 000000.
123 .TP
124-.B coolwinfg
125-Foreground (dot) color of the coolwinbtn tile pattern.
126-Default: 0xFFFFFFFF.
127-.TP
128-.B coolwinbg
129-Background color of the coolwinbtn tile pattern.
130-Default: 0x000000FF.
131 .B mainfont
132 Main font path.  Default:
133 .IR /lib/font/bit/lucsans/euro.8.font .
134@@ -209,14 +223,46 @@ Number of initial columns.  Default: 2.
135 .B openarg
136 Boolean.  Open files given on the command line.  Default: 1.
137 .TP
138-.B coolcolbtn
139-Boolean.  Cool column buttons. 1 is square, 2 is ellipse, 3 is from old acme. Default: 0.
140-.TP
141-.B coolwinbtn
142-Boolean. Cool win btn from old acme(1). Default: 0.
143-.TP
144-.B coolscrollbg
145-Boolean.  Cool scrollbar background. From xxiivv(1) or from old acme(2). Default: 0.
146+.B winbtnstyle
147+Style of the per-window tag button (the small square at the top left of
148+each window's own tag).
149+.B def
150+is the plain framed button,
151+.B square
152+draws a filled square,
153+.B ellipse
154+draws a filled circle,
155+.B p9-2e
156+draws the Plan 9 2nd-edition hollow framed look.
157+Default:
158+.IR def .
159+.TP
160+.B colbtnstyle
161+Style of the column tag button (the small square at the top left of a
162+column's tag).
163+.B def
164+is the plain button,
165+.B p9-2e
166+draws the Plan 9 2nd-edition tiled look, colored by
167+.B colbtntilefg
168+and
169+.BR colbtntilebg .
170+Default:
171+.IR def .
172+.TP
173+.B scrollstyle
174+Scrollbar style.
175+.B def
176+is the plain scrollbar,
177+.B xxiivv
178+draws a tiled trough (see
179+.B scrolltilefg
180+and
181+.BR scrolltilebg ),
182+.B p9-2e
183+draws the Plan 9 2nd-edition framed scrollbar with the same tile.
184+Default:
185+.IR def .
186 .TP
187 .B showdotfiles
188 Boolean.  Show dotfiles in directory windows.  Default: 1.
M acme.c
+9, -9
 1@@ -1032,13 +1032,13 @@ iconinit(void)
 2 		else
 3 			textcols[HIGH] 	= allocimage(display, Rect(0,0,1,1), RGBA32, 1, C_TXTHLBG);
 4 		
 5-        if(coolscrollbg == 1) {
 6-			if(ispastel("coolscrlfg"))
 7+        if(strcmp(scrollstyle, "xxiivv") == 0){
 8+			if(ispastel("scrolltilefg"))
 9 				tmp = allocimagemix(display, C_SCROLLTILEFG, C_MIX);
10 			else
11 				tmp = allocimage(display, Rect(0,0,1,1), RGBA32, 1, C_SCROLLTILEFG);
12 		
13-			if(ispastel("coolscrlbg"))
14+			if(ispastel("scrolltilebg"))
15 				textcols[BORD] = allocimagemix(display, C_SCROLLTILEBG, C_MIX);
16 			else
17 				textcols[BORD] = allocimage(display, Rect(0,0,2,2), RGBA32, 1, C_SCROLLTILEBG);
18@@ -1046,7 +1046,7 @@ iconinit(void)
19 			draw(textcols[BORD], Rect(1,1,2,2), tmp, nil, ZP);
20 			draw(textcols[BORD], Rect(0,0,1,1), tmp, nil, ZP);
21 			freeimage(tmp);
22-		}else if(coolscrollbg == 0){
23+		}else if(strcmp(scrollstyle, "def") == 0){
24         	if(ispastel("scrlbg"))
25         		textcols[BORD] 	= allocimagemix(display, C_SCROLLBG, C_MIX);
26         	else
27@@ -1075,7 +1075,7 @@ iconinit(void)
28 	}
29  
30 
31-	if(coolcolbtn == 1){
32+	if(strcmp(winbtnstyle, "square") == 0){
33 	    r = Rect(0, 0, Scrollwid, font->height+1);
34 	    button = allocimage(display, r, screen->chan, 0, DNofill);
35 	    draw(button, r, tagcols[BORD], nil, r.min);
36@@ -1090,7 +1090,7 @@ iconinit(void)
37 	    else
38 	        tmp = allocimage(display, Rect(0,0,1,1), RGBA32, 1, C_TMPBUTTON);
39 	    draw(modbutton, Rect(r.min.x, r.min.y + 2, r.min.x + 6, r.min.y + 8), tmp, nil, ZP);
40-	}else if(coolcolbtn == 2){
41+	}else if(strcmp(winbtnstyle, "ellipse") == 0){
42         r = Rect(0, 0, Scrollwid, font->height+1);
43         button = allocimage(display, r, screen->chan, 0, DNofill);
44         draw(button, r, tagcols[BORD], nil, r.min);
45@@ -1105,7 +1105,7 @@ iconinit(void)
46 	    else
47     		tmp = allocimage(display, Rect(0,0,1,1), RGBA32, 1, C_TMPBUTTON);
48         fillellipse(modbutton, (Point){r.min.x + 3, r.min.y + 5}, 3, 3, tmp, ZP);
49-	}else if(coolcolbtn == 3){
50+	}else if(strcmp(winbtnstyle, "p9-2e") == 0){
51 		rr = r;
52 		rr.max.y--;
53 		rr.max.x--;
54@@ -1149,7 +1149,7 @@ iconinit(void)
55 
56 	r = button->r;
57 
58-	if(coolwinbtn){
59+	if(strcmp(colbtnstyle, "p9-2e") == 0){
60 		r = Rect(0, 0, Scrollwid, button->r.max.y);
61 		colbutton = allocimage(display, r, screen->chan, 0, DNofill);
62 		draw(colbutton, r, tagcols[BACK], nil, ZP);
63@@ -1157,7 +1157,7 @@ iconinit(void)
64 		rr.max.y--;
65 		rr.max.x++;
66 		draw(colbutton, insetrect(rr, 1), tagcols[BORD], nil, ZP);
67-		tmp = tilebit(C_WINBTNTILEBG, "coolwinbg", C_WINBTNTILEFG, "coolwinfg");
68+		tmp = tilebit(C_COLBTNTILEBG, "colbtntilebg", C_COLBTNTILEFG, "colbtntilefg");
69 		draw(colbutton, insetrect(rr, 2), tmp, nil, ZP);
70 		freeimage(tmp);
71 	}else if(ispastel("winbtn"))
+3, -3
 1@@ -1,9 +1,9 @@
 2 mainfont       /lib/font/bit/lucsans/euro.8.font
 3 monofont       /lib/font/bit/lucm/unicode.9.font
 4 
 5-coolcolbtn    3
 6-coolscrollbg  2
 7-coolwinbtn    1
 8+winbtnstyle    p9-2e
 9+scrollstyle  p9-2e
10+colbtnstyle    p9-2e
11 
12 pastels        0
13 mix            ffffff
+3, -3
 1@@ -4,9 +4,9 @@
 2 mainfont       /tmp/fonts/Iosevka-Oui/16a/font
 3 monofont       /tmp/fonts/Iosevka-Oui/16a/font
 4 
 5-coolcolbtn    1
 6-coolscrollbg  0
 7-coolwinbtn    0
 8+winbtnstyle    square
 9+scrollstyle  def
10+colbtnstyle    def
11 
12 pastels        0
13 mix            ffffff
+3, -3
 1@@ -1,9 +1,9 @@
 2 mainfont       /tmp/fonts/gallant12x22/16/font
 3 monofont       /tmp/fonts/gallant12x22/16/font
 4 
 5-coolcolbtn    2
 6-coolscrollbg  0
 7-coolwinbtn    0
 8+winbtnstyle    ellipse
 9+scrollstyle  def
10+colbtnstyle    def
11 
12 pastels        0
13 mix            ffffff
+3, -3
 1@@ -3,9 +3,9 @@ monofont       /tmp/fonts/Iosevka-Oui/13a/font
 2 #mainfont /tmp/fonts/XonyFixed12x24rk/13a/font
 3 #monofont /tmp/fonts/XonyFixed12x24rk/13a/font
 4 
 5-coolcolbtn    0
 6-coolscrollbg  0
 7-coolwinbtn    0
 8+winbtnstyle    def
 9+scrollstyle  def
10+colbtnstyle    def
11 
12 pastels        0
13 mix            ffffff
+5, -3
 1@@ -1,9 +1,11 @@
 2 mainfont       /tmp/fonts/gallant12x22/16/font
 3 monofont       /tmp/fonts/gallant12x22/16/font
 4 
 5-coolcolbtn    1
 6-coolscrollbg  1
 7-coolwinbtn    0
 8+winbtnstyle    square
 9+scrollstyle  xxiivv
10+scrolltilefg     8c7a64
11+scrolltilebg     fcf5ec
12+colbtnstyle    def
13 
14 pastels        0
15 mix            ffffff
+3, -3
 1@@ -1,9 +1,9 @@
 2 mainfont       /tmp/fonts/XanhMono-Regular/15a/font
 3 monofont       /tmp/fonts/XanhMono-Regular/15a/font
 4 
 5-coolcolbtn    1
 6-coolscrollbg  0
 7-coolwinbtn    0
 8+winbtnstyle    square
 9+scrollstyle  def
10+colbtnstyle    def
11 
12 pastels        0
13 mix            eaddd0
+3, -3
 1@@ -1,9 +1,9 @@
 2 mainfont       /tmp/fonts/gallant12x22/16/font
 3 monofont       /tmp/fonts/gallant12x22/16/font
 4 
 5-coolcolbtn    1
 6-coolscrollbg  0
 7-coolwinbtn    0
 8+winbtnstyle    square
 9+scrollstyle  def
10+colbtnstyle    def
11 
12 pastels        0
13 mix            ffffff
+3, -3
 1@@ -1,9 +1,9 @@
 2 mainfont       /tmp/fonts/Iosevka-Oui/12a/font
 3 monofont       /tmp/fonts/Iosevka-Oui/12a/font
 4 
 5-coolcolbtn    0
 6-coolscrollbg  0
 7-coolwinbtn    0
 8+winbtnstyle    def
 9+scrollstyle  def
10+colbtnstyle    def
11 
12 pastels        txtbg htagbg htxtbg
13 mix            000044
+3, -3
 1@@ -1,9 +1,9 @@
 2 mainfont       /tmp/fonts/Iosevka-Oui/13a/font
 3 monofont       /tmp/fonts/Iosevka-Oui/13a/font
 4 
 5-coolcolbtn    1
 6-coolscrollbg  0
 7-coolwinbtn    0
 8+winbtnstyle    square
 9+scrollstyle  def
10+colbtnstyle    def
11 
12 pastels        0
13 mix            ffffff
+3, -3
 1@@ -2,9 +2,9 @@
 2 mainfont       /lib/font/bit/lucsans/euro.8.font
 3 monofont       /lib/font/bit/lucm/unicode.9.font
 4 
 5-coolcolbtn    0
 6-coolscrollbg  0
 7-coolwinbtn    0
 8+winbtnstyle    def
 9+scrollstyle  def
10+colbtnstyle    def
11 
12 # пастели выключены: тёмные цвета не надо разбавлять
13 pastels        0
+3, -3
 1@@ -1,9 +1,9 @@
 2 mainfont       /tmp/fonts/GoMonoNF/16a/font
 3 monofont       /tmp/fonts/GoMonoNF/16a/font
 4 
 5-coolcolbtn    1
 6-coolscrollbg  0
 7-coolwinbtn    0
 8+winbtnstyle    square
 9+scrollstyle  def
10+colbtnstyle    def
11 
12 pastels        0
13 mix            ffffff
+3, -3
 1@@ -1,9 +1,9 @@
 2 mainfont       /tmp/fonts/gallant12x22/16/font
 3 monofont       /tmp/fonts/gallant12x22/16/font
 4 
 5-coolcolbtn    1
 6-coolscrollbg  0
 7-coolwinbtn    0
 8+winbtnstyle    square
 9+scrollstyle  def
10+colbtnstyle    def
11 
12 pastels        0
13 mix            ffffff
+3, -3
 1@@ -1,9 +1,9 @@
 2 mainfont       /tmp/fonts/Iosevka-Oui/12a/font
 3 monofont       /tmp/fonts/Iosevka-Oui/12a/font
 4 
 5-coolcolbtn    0
 6-coolscrollbg  0
 7-coolwinbtn    0
 8+winbtnstyle    def
 9+scrollstyle  def
10+colbtnstyle    def
11 
12 pastels        txtbg
13 mix            ffffff
+3, -3
 1@@ -1,9 +1,9 @@
 2 mainfont       /tmp/fonts/Iosevka-Oui/13a/font
 3 monofont       /tmp/fonts/Iosevka-Oui/13a/font
 4 
 5-coolcolbtn    1
 6-coolscrollbg  0
 7-coolwinbtn    0
 8+winbtnstyle    square
 9+scrollstyle  def
10+colbtnstyle    def
11 
12 pastels        htagbg htxtbg winbtn colbtn
13 mix            ffffff
+8, -8
 1@@ -1,14 +1,14 @@
 2 mainfont       /tmp/fonts/gallant12x22/16/font
 3 monofont       /tmp/fonts/gallant12x22/16/font
 4 
 5-coolcolbtn    3
 6-coolscrollbg  2
 7-coolwinbtn    1
 8-
 9-coolscrlfg     7C5557
10-coolscrlbg     0F0202
11-coolwinfg      7C5557
12-coolwinbg      0F0202
13+winbtnstyle    p9-2e
14+scrollstyle    p9-2e
15+colbtnstyle    p9-2e
16+
17+scrolltilefg     7C5557
18+scrolltilebg     0F0202
19+colbtntilefg      7C5557
20+colbtntilebg      0F0202
21 
22 pastels        0
23 mix            ffffff
+3, -3
 1@@ -1,9 +1,9 @@
 2 mainfont       /tmp/fonts/Iosevka-Oui/13a/font
 3 monofont       /tmp/fonts/Iosevka-Oui/13a/font
 4 
 5-coolcolbtn    0
 6-coolscrollbg  0
 7-coolwinbtn    0
 8+winbtnstyle    def
 9+scrollstyle  def
10+colbtnstyle    def
11 
12 pastels        0
13 mix            ffffff
+3, -3
 1@@ -1,9 +1,9 @@
 2 mainfont       /tmp/fonts/Iosevka-Oui/12a/font
 3 monofont       /tmp/fonts/Iosevka-Oui/12a/font
 4 
 5-coolcolbtn    0
 6-coolscrollbg  0
 7-coolwinbtn    0
 8+winbtnstyle    def
 9+scrollstyle  def
10+colbtnstyle    def
11 
12 pastels        0
13 mix            ffffff
+5, -3
 1@@ -1,9 +1,11 @@
 2 mainfont       /tmp/fonts/Iosevka-Oui/13a/font
 3 monofont       /tmp/fonts/Iosevka-Oui/13a/font
 4 
 5-coolcolbtn    0
 6-coolscrollbg  1
 7-coolwinbtn    0
 8+winbtnstyle    def
 9+scrollstyle  xxiivv
10+scrolltilefg     000000
11+scrolltilebg     FFFFFF
12+colbtnstyle    def
13 
14 pastels        tagbg txtbg
15 mix            ffffff
+13, -12
 1@@ -15,7 +15,7 @@ char *home;
 2 void
 3 defconfig(FILE *f)
 4 {
 5-    fprintf(f, "shell       /bin/sh\n");
 6+    fprintf(f, "shell       /usr/local/plan9/bin/rc\n");
 7     fprintf(f, "mainfont    /lib/font/bit/lucsans/euro.8.font\n");
 8     fprintf(f, "monofont    /lib/font/bit/lucm/unicode.9.font\n");
 9     fprintf(f, "dumppath    /tmp/acme.dump\n");
10@@ -47,9 +47,9 @@ defconfig(FILE *f)
11     fprintf(f, "clicktofocus  1\n");
12     fprintf(f, "colcount      2\n");
13     fprintf(f, "openarg       1\n");
14-    fprintf(f, "coolcolbtn    0\n");
15-    fprintf(f, "coolwinbtn	  0\n");
16-    fprintf(f, "coolscrollbg  0\n");
17+    fprintf(f, "winbtnstyle    def\n");
18+    fprintf(f, "colbtnstyle	  def\n");
19+    fprintf(f, "scrollstyle  def\n");
20     fprintf(f, "showdotfiles  1\n");
21     fprintf(f, "newcolnewrow  1\n");
22 }
23@@ -158,6 +158,10 @@ initconfig(char *custom_config)
24     
25     free(pastels_str);
26     
27+    winbtnstyle = parsekeyvalue(f, "winbtnstyle", "def");
28+    colbtnstyle = parsekeyvalue(f, "colbtnstyle", "def");
29+    scrollstyle = parsekeyvalue(f, "scrollstyle", "def");
30+    
31     C_MIX = getcolor(f, "mix", 0xFFFFFFFF);
32     C_ROOTBG = getcolor(f, "root", 0xFFFFFFFF);
33     C_BORDER = getcolor(f, "border", 0x000000FF);
34@@ -178,15 +182,15 @@ initconfig(char *custom_config)
35     C_SCROLLBORDER = getcolor(f, "scrlbord", 0x99994CFF);
36     C_BUTTON2HL = getcolor(f, "btn2hl", 0xAA0000FF);
37     C_BUTTON3HL = getcolor(f, "btn3hl", 0x006600FF);
38-    C_SCROLLTILEFG = getcolor(f, "coolscrlfg", 0x000000FF);
39-    C_SCROLLTILEBG = getcolor(f, "coolscrlbg", 0xFFFFFFFF);
40-    C_WINBTNTILEFG = getcolor(f, "coolwinfg", 0xFFFFFFFF);
41-    C_WINBTNTILEBG = getcolor(f, "coolwinbg", 0x000000FF);
42+    C_SCROLLTILEFG = getcolor(f, "scrolltilefg", 0x000000FF);
43+    C_SCROLLTILEBG = getcolor(f, "scrolltilebg", 0xFFFFFFFF);
44+    C_COLBTNTILEFG = getcolor(f, "colbtntilefg", 0xFFFFFFFF);
45+    C_COLBTNTILEBG = getcolor(f, "colbtntilebg", 0x000000FF);
46 
47     mainfont = parsekeyvalue(f, "mainfont", "/lib/font/bit/lucsans/euro.8.font");
48     monofont = parsekeyvalue(f, "monofont", "/lib/font/bit/lucm/unicode.9.font");
49     dumppath = parsekeyvalue(f, "dumppath", "/tmp/acme.dump");
50-    acmeshell = parsekeyvalue(f, "shell", "/bin/sh");
51+    acmeshell = parsekeyvalue(f, "shell", "/usr/local/plan9/bin/rc");
52 
53     free(fontnames[0]);
54     free(fontnames[1]);
55@@ -198,9 +202,6 @@ initconfig(char *custom_config)
56     bartflag = getintvalue(f, "clicktofocus", 1);
57     ncol = getintvalue(f, "colcount", 2);
58     openarg = getintvalue(f, "openarg", 1);
59-    coolcolbtn = getintvalue(f, "coolcolbtn", 0);
60-    coolwinbtn = getintvalue(f, "coolwinbtn", 0);
61-    coolscrollbg = getintvalue(f, "coolscrollbg", 0);
62     showdotfiles = getintvalue(f, "showdotfiles", 1);
63     ncolnrow = getintvalue(f, "newcolnewrow", 1);
64 
+5, -5
 1@@ -29,8 +29,8 @@ uint32_t C_BUTTON2HL;
 2 uint32_t C_BUTTON3HL;
 3 uint32_t C_SCROLLTILEFG;
 4 uint32_t C_SCROLLTILEBG;
 5-uint32_t C_WINBTNTILEFG;
 6-uint32_t C_WINBTNTILEBG;
 7+uint32_t C_COLBTNTILEFG;
 8+uint32_t C_COLBTNTILEBG;
 9 
10 char *mainfont;
11 char *monofont;
12@@ -47,9 +47,9 @@ int bartflag;
13 int swapscrollbuttons;
14 int ncol;
15 int openarg;
16-int coolcolbtn;
17-int coolwinbtn;
18-int coolscrollbg;
19 int showdotfiles;
20 int ncolnrow;
21 
22+char *winbtnstyle;
23+char *colbtnstyle;
24+char *scrollstyle;
M scrl.c
+6, -6
 1@@ -62,22 +62,22 @@ textscrdraw(Text *t)
 2 {
 3 	Rectangle r, r1, r2, r3;
 4 	Image *b, *tile;
 5-	int customscrl;
 6+	int p92escrl;
 7 
 8-	customscrl = (coolscrollbg == 2);
 9+	p92escrl = (strcmp(scrollstyle, "p9-2e") == 0);
10 
11 	if(t->w==nil || t!=&t->w->body)
12 		return;
13 	if(scrtmp == nil)
14 		scrlresize();
15 	r = t->scrollr;
16-	if(customscrl)
17+	if(p92escrl)
18 		r.min.x += 1;	/* border between margin and bar */
19 	b = scrtmp;
20 	r1 = r;
21 	r1.min.x = 0;
22 	r1.max.x = Dx(r);
23-	r2 = scrpos(r1, t->org, t->org+t->fr.nchars, t->file->b.nc, customscrl);
24+	r2 = scrpos(r1, t->org, t->org+t->fr.nchars, t->file->b.nc, p92escrl);
25 	if(!eqrect(r2, t->lastsr)){
26 		t->lastsr = r2;
27 		if(scrollborder == nil){
28@@ -86,9 +86,9 @@ textscrdraw(Text *t)
29 			else
30 				scrollborder = allocimage(display, Rect(0,0,1,1), RGBA32, 1, C_SCROLLBORDER);
31 		}
32-		if(customscrl){
33+		if(p92escrl){
34 			/* frame, light grey trough, white thumb capped by scrollborder lines */
35-			tile = tilebit(C_SCROLLTILEBG, "coolscrlbg", C_SCROLLTILEFG, "coolscrlfg");
36+			tile = tilebit(C_SCROLLTILEBG, "scrolltilebg", C_SCROLLTILEFG, "scrolltilefg");
37 			draw(b, r1, scrollborder, nil, ZP);
38 			draw(b, insetrect(r1, 1), tile, nil, ZP);
39 			freeimage(tile);