2 contains color/monchrome schemes for tty-mines.
7 #define SGR(color, string) "\033[" color "m" string "\033[0m"
52 char* emoticons
[NUM_EMOT
];
62 struct minescheme symbols_mono
= {
63 .number
= {" ", "1", "2", "3", "4", "5", "6", "7", "8"},
65 .field_flagged
= "▕▀",
66 .field_question
= "?",
72 .emoticons
= {":)", ":(", ":D", ":o"},
74 .border
= {{"╔═","══","═╗"},
84 struct minescheme symbols_col1
= {
95 .field_flagged
= SGR(GREY
,"▕\033["BRED
"m▀"),
96 .field_question
= "?",
98 .mine_death
= SGR(RED
,"*"),
102 .emoticons
= {":)", ":(", ":D", ":o"},
104 .border
= {{"╔═","══","═╗"},
114 struct minescheme symbols_doublewidth
= {
116 DEC Special Graphics Character Set:
117 http://vt100.net/docs/vt220-rm/table2-4.html
118 Dynamically Redefinable Character Set:
119 https://vt100.net/docs/vt220-rm/chapter4.html#S4.16 */
129 .field_closed
= "\x61",
130 .field_flagged
= SGR(BOLD
,"\033O!"),
131 .field_question
= SGR(BOLD
,"?"),
132 .mine_normal
= SGR(BOLD
,"*"),
133 .mine_death
= SGR(BOLD
,"#"),
134 .mine_wrongf
= SGR(BOLD
,"/"),
135 .mine_wrongq
= SGR(BOLD
,"\\"),
137 .emoticons
= {":)", ":(", ":D", ":\033No"},
139 .border
= {{"\033#6\x6c","\x71","\x6b"},
140 {"\033#6\x78"," ","\x78"},
141 {"\033[?25l\033#6\x74","\x71","\x75"},
142 {"\033#6\x78"," ","\x78"},
143 {"\033#6\x6d","\x71","\x6a"}},
147 /* NOTE: sending the DRCS makes the VT220 hang for a few seconds. Then
148 the input buffer will not be cleared to read the minefield afterwards */
149 .init_seq
= "\033P0;1;0;4;1;1{P" /*config for DRCS "P": 7x10,erase-all*/
150 "??~^^^^/??N????\033\\" /* flag at '!' resembling ▕▀ */
151 "\033(0\033*B\033+P" /* G0=Graphics,G2=ASCII,G3="P" */
152 "\x0f" /* invoke G0 (locking shift) */
153 "\033[?3l", /* disable 132 column mode (DECCOLM) */
154 .reset_seq
= "\033(B" /* reset to DEC Multinational Character Set */
155 "\033[?3h", /* reenable DECCOLM (WARN: unconditionally!) */