It depends of what you want to do. I am almost sure that SableCC is not going to generate the AST until EOL is found (ie, when you call Parser#parse, the call is not going to return until the stream that the lexer is reading returns the EOL character). So if you want to parse infinitely, you can not use SableCC (maybe you can use Ratz! Parser but its documentation is poor).
If you want to parse something from the terminal but you want to stop in some specific character, maybe you can do it playing with the reader interface that SableCC uses. But I am talking on air and it can be complicated. In this case, you can also use another technique, you can use a trivial parser that simulates a StringTokenizer but with streams and parse each "line" (the string between two special characters) with SableCC