Mercurial > vim
comparison src/libvterm/src/parser.c @ 13770:2449b6ce1456 v8.0.1757
patch 8.0.1757: unnecessary changes in libvterm
commit https://github.com/vim/vim/commit/b691de05f69905fe417f583083d7e3cc16eb865e
Author: Bram Moolenaar <Bram@vim.org>
Date: Tue Apr 24 18:39:14 2018 +0200
patch 8.0.1757: unnecessary changes in libvterm
Problem: Unnecessary changes in libvterm.
Solution: Bring back // comments and trailing comma in enums.
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Tue, 24 Apr 2018 18:45:07 +0200 |
parents | 5a3146ceb318 |
children | 811a12a78164 |
comparison
equal
deleted
inserted
replaced
13769:804c3b21ce59 | 13770:2449b6ce1456 |
---|---|
146 #define ENTER_NORMAL_STATE() ENTER_STATE(NORMAL) | 146 #define ENTER_NORMAL_STATE() ENTER_STATE(NORMAL) |
147 | 147 |
148 for( ; pos < len; pos++) { | 148 for( ; pos < len; pos++) { |
149 unsigned char c = bytes[pos]; | 149 unsigned char c = bytes[pos]; |
150 | 150 |
151 if(c == 0x00 || c == 0x7f) { /* NUL, DEL */ | 151 if(c == 0x00 || c == 0x7f) { // NUL, DEL |
152 if(vt->parser.state >= STRING) { | 152 if(vt->parser.state >= STRING) { |
153 more_string(vt, string_start, bytes + pos - string_start); | 153 more_string(vt, string_start, bytes + pos - string_start); |
154 string_start = bytes + pos + 1; | 154 string_start = bytes + pos + 1; |
155 } | 155 } |
156 continue; | 156 continue; |
157 } | 157 } |
158 if(c == 0x18 || c == 0x1a) { /* CAN, SUB */ | 158 if(c == 0x18 || c == 0x1a) { // CAN, SUB |
159 ENTER_NORMAL_STATE(); | 159 ENTER_NORMAL_STATE(); |
160 continue; | 160 continue; |
161 } | 161 } |
162 else if(c == 0x1b) { /* ESC */ | 162 else if(c == 0x1b) { // ESC |
163 vt->parser.intermedlen = 0; | 163 vt->parser.intermedlen = 0; |
164 if(vt->parser.state == STRING) | 164 if(vt->parser.state == STRING) |
165 vt->parser.state = ESC_IN_STRING; | 165 vt->parser.state = ESC_IN_STRING; |
166 else | 166 else |
167 ENTER_STATE(ESC); | 167 ENTER_STATE(ESC); |
168 continue; | 168 continue; |
169 } | 169 } |
170 else if(c == 0x07 && /* BEL, can stand for ST in OSC or DCS state */ | 170 else if(c == 0x07 && // BEL, can stand for ST in OSC or DCS state |
171 vt->parser.state == STRING) { | 171 vt->parser.state == STRING) { |
172 /* fallthrough */ | 172 // fallthrough |
173 } | 173 } |
174 else if(c < 0x20) { /* other C0 */ | 174 else if(c < 0x20) { // other C0 |
175 if(vt->parser.state >= STRING) | 175 if(vt->parser.state >= STRING) |
176 more_string(vt, string_start, bytes + pos - string_start); | 176 more_string(vt, string_start, bytes + pos - string_start); |
177 do_control(vt, c); | 177 do_control(vt, c); |
178 if(vt->parser.state >= STRING) | 178 if(vt->parser.state >= STRING) |
179 string_start = bytes + pos + 1; | 179 string_start = bytes + pos + 1; |
180 continue; | 180 continue; |
181 } | 181 } |
182 /* else fallthrough */ | 182 // else fallthrough |
183 | 183 |
184 switch(vt->parser.state) { | 184 switch(vt->parser.state) { |
185 case ESC_IN_STRING: | 185 case ESC_IN_STRING: |
186 if(c == 0x5c) { /* ST */ | 186 if(c == 0x5c) { // ST |
187 vt->parser.state = STRING; | 187 vt->parser.state = STRING; |
188 done_string(vt, string_start, bytes + pos - string_start - 1); | 188 done_string(vt, string_start, bytes + pos - string_start - 1); |
189 ENTER_NORMAL_STATE(); | 189 ENTER_NORMAL_STATE(); |
190 break; | 190 break; |
191 } | 191 } |
192 vt->parser.state = ESC; | 192 vt->parser.state = ESC; |
193 /* else fallthrough */ | 193 // else fallthrough |
194 | 194 |
195 case ESC: | 195 case ESC: |
196 switch(c) { | 196 switch(c) { |
197 case 0x50: /* DCS */ | 197 case 0x50: // DCS |
198 start_string(vt, VTERM_PARSER_DCS); | 198 start_string(vt, VTERM_PARSER_DCS); |
199 ENTER_STRING_STATE(); | 199 ENTER_STRING_STATE(); |
200 break; | 200 break; |
201 case 0x5b: /* CSI */ | 201 case 0x5b: // CSI |
202 vt->parser.csi_leaderlen = 0; | 202 vt->parser.csi_leaderlen = 0; |
203 ENTER_STATE(CSI_LEADER); | 203 ENTER_STATE(CSI_LEADER); |
204 break; | 204 break; |
205 case 0x5d: /* OSC */ | 205 case 0x5d: // OSC |
206 start_string(vt, VTERM_PARSER_OSC); | 206 start_string(vt, VTERM_PARSER_OSC); |
207 ENTER_STRING_STATE(); | 207 ENTER_STRING_STATE(); |
208 break; | 208 break; |
209 default: | 209 default: |
210 if(is_intermed(c)) { | 210 if(is_intermed(c)) { |
296 break; | 296 break; |
297 | 297 |
298 case NORMAL: | 298 case NORMAL: |
299 if(c >= 0x80 && c < 0xa0 && !vt->mode.utf8) { | 299 if(c >= 0x80 && c < 0xa0 && !vt->mode.utf8) { |
300 switch(c) { | 300 switch(c) { |
301 case 0x90: /* DCS */ | 301 case 0x90: // DCS |
302 start_string(vt, VTERM_PARSER_DCS); | 302 start_string(vt, VTERM_PARSER_DCS); |
303 ENTER_STRING_STATE(); | 303 ENTER_STRING_STATE(); |
304 break; | 304 break; |
305 case 0x9b: /* CSI */ | 305 case 0x9b: // CSI |
306 ENTER_STATE(CSI_LEADER); | 306 ENTER_STATE(CSI_LEADER); |
307 break; | 307 break; |
308 case 0x9d: /* OSC */ | 308 case 0x9d: // OSC |
309 start_string(vt, VTERM_PARSER_OSC); | 309 start_string(vt, VTERM_PARSER_OSC); |
310 ENTER_STRING_STATE(); | 310 ENTER_STRING_STATE(); |
311 break; | 311 break; |
312 default: | 312 default: |
313 do_control(vt, c); | 313 do_control(vt, c); |
323 DEBUG_LOG("libvterm: Text callback did not consume any input\n"); | 323 DEBUG_LOG("libvterm: Text callback did not consume any input\n"); |
324 /* force it to make progress */ | 324 /* force it to make progress */ |
325 eaten = 1; | 325 eaten = 1; |
326 } | 326 } |
327 | 327 |
328 pos += (eaten - 1); /* we'll ++ it again in a moment */ | 328 pos += (eaten - 1); // we'll ++ it again in a moment |
329 } | 329 } |
330 break; | 330 break; |
331 } | 331 } |
332 } | 332 } |
333 | 333 |