add special character `\e`.

This commit is contained in:
ValKmjolnir 2022-02-18 01:58:49 +08:00
parent 05fc5db337
commit e77bb73a82
4 changed files with 27 additions and 1 deletions

View File

@ -117,6 +117,7 @@ std::string rawstr(const std::string& str)
{ {
case '\a': ret+="\\a";break; case '\a': ret+="\\a";break;
case '\b': ret+="\\b";break; case '\b': ret+="\\b";break;
case '\e': ret+="\\e";break;
case '\f': ret+="\\f";break; case '\f': ret+="\\f";break;
case '\n': ret+="\\n";break; case '\n': ret+="\\n";break;
case '\r': ret+="\\r";break; case '\r': ret+="\\r";break;

View File

@ -239,6 +239,7 @@ std::string nasal_lexer::str_gen()
case '0': str+='\0'; break; case '0': str+='\0'; break;
case 'a': str+='\a'; break; case 'a': str+='\a'; break;
case 'b': str+='\b'; break; case 'b': str+='\b'; break;
case 'e': str+='\e'; break;
case 't': str+='\t'; break; case 't': str+='\t'; break;
case 'n': str+='\n'; break; case 'n': str+='\n'; break;
case 'v': str+='\v'; break; case 'v': str+='\v'; break;

View File

@ -114,10 +114,33 @@ var curve4=func()
} }
return; return;
} }
var curve5=func(){
var a=[];
for(var i=0;i<10;i+=1)
append(a,"\e["~split(".",str(i))[0]~"mh \e[0m");
for(var i=30;i<38;i+=1)
append(a,"\e["~split(".",str(i))[0]~"mh \e[0m");
for(var i=40;i<48;i+=1)
append(a,"\e["~split(".",str(i))[0]~"mh \e[0m");
for(var i=90;i<98;i+=1)
append(a,"\e["~split(".",str(i))[0]~"mh \e[0m");
for(var i=100;i<108;i+=1)
append(a,"\e["~split(".",str(i))[0]~"mh \e[0m");
var s=0;
foreach(var i;a){
print(i,s==3?"\n":"");
if(s==3)
s=0;
else
s+=1;
}
print('\n');
}
trans_ttf("just for test"); trans_ttf("just for test");
trans_ttf(" ValKmjolnir "); trans_ttf(" ValKmjolnir ");
trans_ttf("just for fun"); trans_ttf("just for fun");
curve1(); curve1();
curve2(); curve2();
curve3(); curve3();
curve4(); curve4();
curve5();

View File

@ -43,6 +43,7 @@ var lexer=func(file)
var c=chr(s[ptr]); var c=chr(s[ptr]);
if (c=='a' ) str~='\a'; if (c=='a' ) str~='\a';
elsif(c=='b' ) str~='\b'; elsif(c=='b' ) str~='\b';
elsif(c=='e' ) str~='\e';
elsif(c=='f' ) str~='\f'; elsif(c=='f' ) str~='\f';
elsif(c=='n' ) str~='\n'; elsif(c=='n' ) str~='\n';
elsif(c=='r' ) str~='\r'; elsif(c=='r' ) str~='\r';