Skip to content
This repository has been archived by the owner on May 20, 2021. It is now read-only.
/ vim-mix-fformat Public archive
forked from mhinz/vim-mix-format

Vim integration for the Elixir Freedom Formatter.

License

Notifications You must be signed in to change notification settings

ntenczar/vim-mix-fformat

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

82 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

vim-mix-fformat

Deprecated: please don't use this

Use something sensible like coc-elixir to get vim to autoformat your elixir

Old README

Instead of using the built in Elixir formatter (mix format), this calls the Elixir Freedom Formatter.

Otherwise operates exactly the same (and has the same :MixFormat interface) as the project this is forked off of vim-mix-format.

demo

Installation

Use your favorite plugin manager, e.g. vim-plug:

Plug 'ntenczar/vim-mix-fformat'

Commands

  • To format the current file, use :MixFormat. Use :verb MixFormat to see the exact shell command used.

  • The formatter is not perfect yet, so :MixFormatDiff will open a diff window that can be used for previewing the changes or picking only those that seem reasonable.

    dp pushes changes from the diff window to the source file. q closes the diff window. ]c and [c jump between the changes.

    If you're not used to Vim's diff mode, watch this screencast.

Options

  • Automatically format on saving.

    let g:mix_format_on_save = 1
  • Set options for the formatter. See mix help format in the shell.

    let g:mix_format_options = '--check-equivalent'
  • By default this plugin opens a window containing the stacktrace on errors. With this option enabled, there will be just a short message in the command-line bar. The stacktrace can still be looked up via :messages.

    let g:mix_format_silent_errors = 1
  • If you're not using Elixir 1.6 in your project, but want to use the formatter anyway, you can specify the bin directory of an alternative Elixir installation:

    let g:mix_format_elixir_bin_path = '~/repo/elixir/bin'

Customization

When using :MixFormatDiff, a new diff window will be opened and an user event is emitted. It can be used to set different settings or switch back to the source window:

autocmd User MixFormatDiff wincmd p

Feedback

If you like this plugin, star it! It helps me deciding which projects to spend more time on.

About

Vim integration for the Elixir Freedom Formatter.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Vim Script 100.0%