浏览代码

[fix] `input` can start with `$`: `$input`

Stephan Fuchs 3 月之前
父节点
当前提交
001f43c344

+ 1 - 1
qsrc2tw/README.md

@@ -8,4 +8,4 @@ Navigate to `.\tools\QSRC2TW` and run `npm i` there. Do this in the current fold
 
 If you change the grammar of the parser, you have to recompile it. If you change the lexer, you have to recompile the lexer and then the parser. The commands to do so are present in the respective files.
 
-You also need to recompile `QSPPARSER.js` by running `rpm run build` and update the version in `recources`.
+You also need to recompile `QSPPARSER.js` by running `npm run build` and update the version in `recources`.

文件差异内容过多而无法显示
+ 0 - 0
qsrc2tw/tools/QSRC2TW/dist/QSPPARSER.js


文件差异内容过多而无法显示
+ 0 - 0
qsrc2tw/tools/QSRC2TW/resources/QSPPARSER.js


+ 9 - 9
qsrc2tw/tools/QSRC2TW/src/antlr/qsrcLexer.g4

@@ -16,17 +16,17 @@ Done:
 	*P
 	PL
 	*PL
-TODO:	
+TODO:
 	ADDLIB
 	ADDOBJ
 	ADDQST
-	
+
 	ARRCOMP
 	ARRPOS
 	ARRSIZE
 	$BACKIMAGE
 	BCOLOR
-	
+
 	CMDCLEAR
 	CMDCLR
 	COPYARR
@@ -95,8 +95,8 @@ TODO:
 	$ONOBJSEL
 	OPENGAME
 	OPENQST
-	
-	
+
+
 	PLAY
 	QSPVER
 	RAND
@@ -130,7 +130,7 @@ TODO:
 	VIEW
 	WAIT
 	XGOTO
-	XGT 
+	XGT
  */
 
 lexer grammar qsrcLexer;
@@ -160,7 +160,7 @@ GOSUB: (G S) | (G O S U B);
 GOTO: (G T) | (G O T O);
 XGOTO: X GOTO;
 
-INPUT: I N P U T;
+INPUT: '$'? I N P U T;
 
 JUMP: J U M P;
 
@@ -265,7 +265,7 @@ EXCLAMATIONMARK: '!';
 CommentStart: '!!' -> pushMode (COMMENT);
 AttachedComment: '&' ' '* '!' -> pushMode(COMMENT);
 Multilinecomment: '!!' WHITESPACE? '{' .*? '}';
-	
+
 ARRAYBRACKOPEN: '[';
 ARRAYBRACKCLOSE: ']';
 BRACK_OPEN: '{' -> pushMode(MultiLine);
@@ -318,4 +318,4 @@ AnythingElseInMultiLine: .;
 
 mode COMMENT;
 COMMENNEWLINE: ('\r'? '\n' | '\r')+ -> type(NEWLINE), popMode;
-InComment: .;
+InComment: .;

部分文件因为文件数量过多而无法显示