Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?


EditorConfig plugin for Neovim written in Lua Fennel.

editorconfig.nvim is tested against editorconfig-plugin-tests.

Project Status

Neovim 0.9 has EditorConfig integration builtin, so this plugin is no longer necessary. Bug fixes will continue to be addressed when reported to support older versions of Neovim, but no further features will be added.

Supported properties

  • charset
  • end_of_line
  • indent_size
  • indent_style
  • insert_final_newline
  • max_line_length
  • tab_width
  • trim_trailing_whitespace

Adding custom properties

Custom properties can be added through the properties table:

require('editorconfig') = function(bufnr, val)
  vim.b[bufnr].foo = val


Install using your favorite package manager, or install manually using Nvim's builtin package support:

git clone ~/.config/nvim/pack/gpanders/start/editorconfig.nvim

This plugin requires no setup and will "just work" when installed.


Q: Why use this instead of editorconfig-vim?

A: This plugin aims for simplicity and performance: editorconfig-vim contains over 1000 SLOC, while this plugin has just under 200.

Q: Why does it only work for Neovim?

A: Vim does not have the same level of support for Lua, and this plugin uses many Neovim-specific APIs. Vim users should continue to use editorconfig-vim.


File issues in the GitHub issue tracker. Changes can be sent as git-send-email patches to ~gpanders/ or as a GitHub pull request.



See Also