## Language modes

This is a list of every mode in the distribution. Each mode lives in a subdirectory of the `mode/` directory, and typically defines a single JavaScript file that implements the mode. Loading such file will make the language available to CodeMirror, through the `mode` option.

- APL
- ASN.1
- Asterisk dialplan
- Brainfuck
- C, C++, C#
- Ceylon
- Clojure
- Closure Stylesheets (GSS)
- CMake
- COBOL
- CoffeeScript
- Common Lisp
- CSS
- Cypher
- Cython
- D
- Dart
- Django (templating language)
- Dockerfile
- diff
- DTD
- Dylan
- EBNF
- ECL
- Eiffel
- Elm
- Erlang
- Factor
- Forth
- Fortran
- F#
- Gas (AT&T-style assembly)
- Gherkin
- Go
- Groovy
- HAML
- Handlebars
- Haskell
- Haxe
- HTML embedded (JSP, ASP.NET)
- HTML mixed-mode
- HTTP
- IDL
- Java
- Jade
- JavaScript
- Jinja2
- Julia
- Kotlin
- LESS
- LiveScript
- Lua
- Markdown (GitHub-flavour)
- Mathematica
- mIRC
- Modelica
- MUMPS
- Nginx
- NSIS
- NTriples
- Objective C
- OCaml
- Octave (MATLAB)
- Oz
- Pascal
- PEG.js
- Perl
- PGP (ASCII armor)
- PHP
- Pig Latin
- Properties files
- Puppet
- Python
- Q
- R
- RPM
- reStructuredText
- Ruby
- Rust
- Sass
- Spreadsheet
- Scala
- Scheme
- SCSS
- Shell
- Sieve
- Slim
- Smalltalk
- Smarty
- Solr
- Soy
- Stylus
- SQL (several dialects)
- SPARQL
- Squirrel
- Swift
- sTeX, LaTeX
- Tcl
- Textile
- Tiddlywiki
- Tiki wiki
- TOML
- Tornado (templating language)
- troff (for manpages)
- TTCN
- TTCN Configuration
- Turtle
- Twig
- VB.NET
- VBScript
- Velocity
- Verilog/SystemVerilog
- VHDL
- Vue.js app
- XML/HTML
- XQuery
- YAML
- Z80