## CoffeeScript
* Fix bug: #394365: https://bugs.kde.org/show_bug.cgi?id=394365
**Bug:** Member objects are not highlighted. For example, when writing `timelineEvent.class`, `class` is highlighted as a Keyword, which sends a new context (in the example image, `tl` is highlighted as the class name and all the code after `-overdue"` is string). `class` should be highlighted as an Identifier, not as a keyword.
{F5978648}
**Solution:** Add a rule to detect identifiers of the type: `iden1.iden2.iden3`. The first word after a "." is highlighted as an identifier. However, the first word before a "." can be a keyword (like the keyword list: "globals"). (As a comparison, in Brackets & VS Code, the text after "." is highlighted differently).
## JavaScript
* Fix bug #366797: https://bugs.kde.org/show_bug.cgi?id=366797
**Bug:** When writing member objects (`iten1.iden2.iden3`), all identifiers and spaces after "." are highlighted with the "Object Member" attribute. For example, then `property`, `instanceof` & `Number` are highlighted as "Object Member".
{F5978710}
**Solution:** Only the first word after `.` is highlighted as `Object member`.
* Fix small bug: Multiple lines are highlighted as Shebang, which is an error, since only the first line is considered Shebang.
Example:
{F5978723}
## Others:
* CoffeeScript: Add mimetype `application/vnd.coffeescript`: http://dcjtech.info/topic/coffeescript-mimetype/
* JavaScript: Add extension `*.ts` of TypeScript. TypeScript is a superset of JavaScript, therefore, the syntax highlighting is the same, except for some features that aren't in the JavaScript highlighter. Therefore, this may be temporary as long as there isn't a TypeScript highlighting file.
* https://bugs.kde.org/show_bug.cgi?id=384716
I also added a test file for CoffeeScript.