JavaScript scanner: Highlight multi-line comments in diff correctly

This introduces `:keep_state` for the JavaScript scanner. It also helps with multi-line strings in diffs.