Split source into line-by-line and then token-by-token