.................. ---------------------------------------------------------------------- Ran 18 tests in 0.004s OK --- echo \" \\ hi` --- (token id:Backtick_Other val:'echo ' span_id:0) (token id:Backtick_Quoted val:'\\"' span_id:1) (token id:Backtick_Other val:' ' span_id:2) (token id:Backtick_Quoted val:'\\\\' span_id:3) (token id:Backtick_Other val:' hi' span_id:4) (token id:Backtick_Right val:'`' span_id:5) (token id:Eof_Real val:'' span_id:6) --- ` --- (token id:Backtick_Right val:'`' span_id:0) (token id:Eof_Real val:'' span_id:1) --- --- (token id:Eof_Real val:'' span_id:0) (token id:Char_Literals val:'foo bar' span_id:0) (token id:Char_OneChar val:'\\n' span_id:1) (token id:Left_SingleQuote val:"'" span_id:0) [(Char_Literals, 'newline '), (Char_OneChar, '\\n'), (Char_Literals, ' NUL '), (Char_OneChar, '\\0'), (Char_Literals, ' octal '), (Char_Octal4, '\\0377'), (Char_Literals, ' hex '), (Char_Hex, '\\x00')] [(Char_Literals, 'unicode '), (Char_Unicode4, '\\u0065'), (Char_Literals, ' '), (Char_Unicode8, '\\U00000065')] [(Char_BadBackslash, '\\'), (Char_Literals, 'd '), (Char_OneChar, '\\e'), (Char_Literals, ' '), (Char_OneChar, '\\f'), (Char_Literals, ' '), (Char_BadBackslash, '\\'), (Char_Literals, 'g')] [(History_Other, 'echo hi')] [(History_Other, 'echo '), (History_Op, '!!'), (History_Other, ' '), (History_Op, '!*'), (History_Other, ' '), (History_Op, '!^'), (History_Other, ' '), (History_Op, '!$')] [(History_Other, 'echo '), (History_Other, '\\!'), (History_Other, '!')] [(History_Other, 'echo '), (History_Num, '!3'), (History_Other, '...')] [(History_Other, 'echo '), (History_Num, '!-5'), (History_Other, '...')] [(History_Other, 'echo '), (History_Search, '!x/foo.py'), (History_Other, ' bar')] --- [(History_Other, 'echo '), (History_Other, "'!!'"), (History_Other, ' $'), (History_Other, "'!!'"), (History_Other, ' ')] [(History_Other, 'echo '), (History_Other, "'!! ")] [(History_Other, 'echo '), (History_Other, "\\'"), (History_Other, ' '), (History_Op, '!!'), (History_Other, ' ')] [(PS_Literals, 'foo')] [(PS_Subst, '\\h'), (PS_Literals, ' '), (PS_Subst, '\\w'), (PS_Literals, ' '), (PS_Subst, '\\$')] P '[^\\\\\\0]+'