Skip to content
Frank LENORMAND edited this page May 28, 2020 · 41 revisions

The programming languages listed on this page have built-in support in kakoune through the use of rc files.

This encompass such common operations as highlighting, indenting, tagging, building, debugging…

For a list of linters that may be used alongside the support languages, refer to the Lint page.

Columns in the following table:

  • Name: points to the source file of the related kak script.
  • Alt File: the script creates an alt command to switch between related buffers, for example switching between .c and .h files in C.
  • formatcmd: the language can be formatted through this external command, but you need to plug in explicitly in your kakrc. Example with rust using a hook:
hook global WinSetOption filetype=rust %{
  set window formatcmd 'rustfmt'
}
Name Alt File formatcmd
AsciiDoc
C astyle
GNU indent
C++ astyle
Clojure
CoffeeScript
CSS prettier
D dfmt
dfmt
elixir
elm elm-format
fish fish_indent
Go gofmt
HAML
HTML reshape
Handlebars
Haskell
INI
Java
JavaScript prettier
JSON jq
prettier
Julia
Latex
Lua
LISP
Makefile
Markdown
MoonScript
Nim
Ocaml ocp-indent
Perl perltidy
PHP
Python autopep8
black
Pony
Pug
Ragel
Ruby rubocop
rubocop -x -o /dev/null -s '${kak_buffile}' | sed -n '2,$p'
Rust rustfmt
rustfmt
SASS & SCSS prettier
Scala
Shell
Swift
TUP
YAML prettier
Zig zig fmt
zig fmt --stdin

Languages supported by the community:

Clone this wiki locally