…r refinement of language definitions.
Setting a CodeMirror mode is now optional.
Also, in alignment with the rest of the Brackets API, there is no explicit mention of CodeMirror anymore since we directly refer to modes as such.
This also allows overriding the language used in a document. Furthermore, that language is used to disambiguate the language that belongs to a submode.
Finally, the status bar entry that displays the language name now uses the Language API.
Let Languages.js return the default language, not Document.getLanguage
Define the default languages in Languages.js instead of languages.json so its always available right away
Move loadBuiltinMode from ExtensionUtils.js to Languages.js
Added top-level documentation
Moved all mode-loading code to _setMode
Added promise modeReady
Added documentation for the mode parameter
Added a check to make sure that only MIME modes defined by the given mode are used
Changed the mode parameter to either take a string or an array of two strings - i.e. "mode" or ["mode", "mimeMode"]
Removed the require.js "mode" alias to the CodeMirror mode directory - it's enough that LanguageManager loads these modes and it might cause conflicts if a language extension decides to add a mode.js
Renamed cs to csharp