A collection of language packs for Vim.
One to rule them all, one to find them, one to bring them all and in the darkness bind them.
- It won't affect your startup time, as scripts are loaded only on demand*.
- It installs and updates 70+ times faster than 70+ packages it consist of.
- Solid syntax and indentation support. Only the best language packs.
- All unnecessary files are ignored (like enormous documentation from php support).
- No support for esoteric languages, only most popular ones (modern too, like
slim
). - Each build is tested by automated vimrunner script on CI. See
spec
directory.
*To be completely honest, concatenated ftdetect
script takes around 3ms
to load.
- Install Pathogen, Vundle, NeoBundle, or Plug package manager for Vim.
- Use this repository as submodule or package.
Optionally download one of the releases and unpack it directly under ~/.vim
directory.
- ansible (syntax, indent, ftplugin)
- apiblueprint (syntax, plugin)
- applescript (syntax)
- arduino (syntax, indent)
- asciidoc (syntax)
- blade (syntax, indent, ftplugin)
- c++11 (syntax)
- c/c++ (syntax)
- caddyfile (syntax, indent, ftplugin)
- cjsx (syntax, ftplugin)
- clojure (syntax, indent, autoload, ftplugin)
- coffee-script (syntax, indent, compiler, autoload, ftplugin)
- cql (syntax)
- cryptol (syntax, compiler, ftplugin)
- crystal (syntax, indent, autoload, ftplugin, syntax_checkers)
- css (syntax)
- csv (syntax, ftplugin)
- cucumber (syntax, indent, compiler, ftplugin)
- dart (syntax, indent, autoload, ftplugin)
- dockerfile (syntax)
- elixir (syntax, indent, compiler, autoload, ftplugin)
- elm (syntax, indent, autoload, ftplugin)
- emberscript (syntax, indent, ftplugin)
- emblem (syntax, indent, ftplugin)
- erlang (syntax, indent)
- fish (syntax, indent, compiler, autoload, ftplugin, syntax_checkers)
- flatbuffers (syntax, indent, ftplugin)
- git (syntax, indent, ftplugin)
- glsl (syntax, indent)
- gnuplot (syntax)
- graphql (syntax, indent, ftplugin)
- groovy (syntax)
- haml (syntax, indent, compiler, ftplugin)
- handlebars (syntax, indent, ftplugin)
- haskell (syntax, indent, ftplugin)
- haxe (syntax)
- html5 (syntax, indent, autoload, ftplugin)
- i3 (syntax, ftplugin)
- jasmine (syntax)
- javascript (syntax, indent, compiler, ftplugin, extras)
- jinja (syntax, indent)
- jslib (autoload, syntax)
- json (syntax, indent, ftplugin)
- jst (syntax, indent)
- jsx (after)
- julia (syntax, indent, autoload, ftplugin)
- kotlin (syntax, indent, syntax_checkers)
- latex (syntax, indent, ftplugin)
- less (syntax, indent, ftplugin)
- liquid (syntax, indent, ftplugin)
- livescript (syntax, indent, compiler, ftplugin)
- lua (syntax, indent)
- mako (syntax, indent, ftplugin)
- markdown (syntax, ftplugin, indent)
- mathematica (syntax, ftplugin)
- nginx (syntax, indent, ftplugin)
- nim (syntax, compiler, indent)
- nix (syntax, ftplugin)
- objc (ftplugin, syntax, indent)
- ocaml (syntax, indent, ftplugin)
- octave (syntax)
- opencl (syntax, indent, ftplugin, syntax_checkers)
- perl (syntax, indent, ftplugin)
- pgsql (syntax)
- php (syntax)
- plantuml (syntax, indent, ftplugin)
- powershell (syntax, indent, ftplugin)
- protobuf (syntax, indent)
- pug (syntax, indent, ftplugin)
- puppet (syntax, indent, ftplugin)
- purescript (syntax, indent, ftplugin)
- python-compiler (compiler, autoload, plugin)
- python (syntax, indent)
- qml (syntax, indent, ftplugin)
- r-lang (syntax, ftplugin)
- racket (syntax, indent, autoload, ftplugin)
- ragel (syntax)
- raml (syntax, ftplugin)
- rspec (syntax)
- ruby (syntax, indent, compiler, autoload, ftplugin)
- rust (syntax, indent, compiler, autoload, ftplugin, syntax_checkers)
- sbt (syntax)
- scala (syntax, indent, compiler, ftplugin)
- slim (syntax, indent, ftplugin)
- solidity (syntax, indent)
- stylus (syntax, indent, ftplugin)
- swift (syntax, indent, ftplugin, syntax_checkers)
- sxhkd (syntax)
- systemd (syntax)
- terraform (syntax, indent, ftplugin)
- textile (syntax, ftplugin)
- thrift (syntax)
- tmux (syntax, ftplugin)
- tomdoc (syntax)
- toml (syntax, ftplugin)
- twig (syntax, indent, ftplugin)
- typescript (syntax, indent, compiler, ftplugin)
- vala (syntax, indent, plugin, syntax_checkers)
- vbnet (syntax)
- vcl (syntax)
- vm (syntax, indent)
- vue (syntax, indent, ftplugin, syntax_checkers)
- xls (syntax)
- yaml (syntax, ftplugin)
- yard (syntax)
Individual language packs can be disabled by setting g:polyglot_disabled
.
" ~/.vimrc
let g:polyglot_disabled = ['css']
Note that disabiling languages won't make in general your vim startup any faster / slower (only for specific file type). Vim-polyglot is selection of language plugins that are loaded only on demand.
You can either wait for new patch release with updates or run the ./build
script by yourself.
Language packs are periodically updated using automated build
script.
Feel free to add your language, and send pull-request.
See linked repositories for detailed license information.