Commit Diff


commit - 6bd2526b02d9c05391932097f2a8b71c1a1bdc59
commit + 14695b90acb1226ee1b137350e6dbbbc73c2f0e7
blob - 336b0b183077edb09e70c12f37a77fe1ec278800
blob + 7da0b81b359e869f3e8920876d820372c9cdbd2d
--- src/cmd/graph/graph.c
+++ src/cmd/graph/graph.c
@@ -67,16 +67,29 @@ struct z {
 struct {
 	char *name;
 	int next;
-} palette[] = {
-	['b']	{ "blue", 'b' },
-	['c']	{ "cyan", 'c' },
-	['g']	{ "green", 'g' },
-	['k']	{ "kblack", 'k' },
-	['m']	{ "magenta", 'm' },
-	['r']	{ "red", 'r' },
-	['w']	{ "white", 'w' },
-	['y']	{ "yellow", 'y' }
+} palette[256];
+
+static char* colors[] = {
+	"blue",
+	"cyan",
+	"green",
+	"kblack",
+	"magenta",
+	"red",
+	"white",
+	"yellow"
 };
+static void
+initpalette(void)
+{
+	int i;
+	
+	for(i=0; i<nelem(colors); i++){
+		palette[(uchar)colors[i][0]].name = colors[i];
+		palette[(uchar)colors[i][0]].next = colors[i][0];
+	}
+}
+
 int pencolor = 'k';
 
 void init(struct xy *);
@@ -106,6 +119,7 @@ void axlab(char, struct xy *, char *);
 
 int main(int argc,char *argv[]){
 
+	initpalette();
 	openpl();
 	range(0,0,4096,4096);
 	init(&xd);