Vim plugin for asynchronous Elixir code formatting using mix format.
vim-mix-format is a Vim plugin that integrates Elixir's mix format command directly into Vim 8 and Neovim. It allows developers to format Elixir code asynchronously from within their editor, ensuring code consistency without interrupting workflow. The plugin supports features like automatic formatting on save and a diff preview for reviewing changes.
Elixir developers who use Vim or Neovim as their primary editor and want seamless, non-blocking code formatting integrated into their development environment.
Developers choose vim-mix-format for its lightweight, asynchronous integration of Elixir's official formatter, offering customization options and diff previews without the overhead of external tools or manual formatting processes.
Vim integration for the Elixir formatter.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Runs mix format in the background without blocking the editor, allowing continuous work as demonstrated in the demo GIF, improving workflow efficiency.
Can be configured with `let g:mix_format_on_save = 1` to format files automatically on save, ensuring consistent code style with minimal effort.
Provides `:MixFormatDiff` to open a diff window for previewing changes, with commands like `dp` to apply selectively, enhancing user control over formatting.
Supports custom formatter options via `g:mix_format_options` and error handling with `g:mix_format_silent_errors`, allowing tailored integration for different projects.
Limited to Vim 8 and Neovim, excluding users of other editors or older Vim versions, which restricts its applicability in diverse development environments.
Requires Elixir 1.6+; for older versions, users must manually specify an alternative path with `g:mix_format_elixir_bin_path`, adding setup complexity.
The diff preview relies on Vim's native diff mode, which may be unfamiliar to some users, as hinted by the README linking to external resources for guidance.