shell tokenizer -- support extended characters.

This commit is contained in:
Kelvin Sherlock 2016-07-23 15:20:56 -04:00
parent 5c333cbedd
commit fac76f1b54
1 changed files with 15 additions and 5 deletions

View File

@ -68,15 +68,25 @@
'<' %push_token => { tokens.emplace_back("<", '<'); };
# these should be eval-only too...
'||' %push_token => { tokens.emplace_back("||", '||'); };
'|' %push_token => { tokens.emplace_back("|", '|'); };
# macroman ∑, ∑∑
0xb7 0xb7 %push_token => { tokens.emplace_back("\xb7\xb7", 0xb7b7); };
0xb7 %push_token => { tokens.emplace_back("\xb7", 0xb7); };
'&&'
%push_token => { tokens.emplace_back("&&", '&&'); };
# macroman ≥, ≥≥
0xb3 0xb3 %push_token => { tokens.emplace_back("\xb3\xb3", 0xb3b3); };
0xb3 %push_token => { tokens.emplace_back("\xb3", 0xb3); };
# eval-only.
'||' when eval
%push_token => { tokens.emplace_back("||", '||'); };
'|' when eval
%push_token => { tokens.emplace_back("|", '|'); };
'&&' when eval
%push_token => { tokens.emplace_back("&&", '&&'); };
'(' when eval
%push_token => { tokens.emplace_back("(", '('); };