Replace the current ElmFormat with a more lightweight version #96
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
I was running into a lot of issues with the current implementation of
the ElmFormat command. Whenever I would format my source code it would
kick off builds on my webpack dev server. In addition, when you have a
NERDTree window open along with a Tagbar window, there is a lot of
loading/unloading happening and all of the windows jump around.
This version of ElmFormat doesn't use any temporary files or write to
the file system, it just replaces the current buffer with the output of
elm-format. The error messages are not displayed in a particularly fancy
way, but the buffer change is represented in the undo history and in
practice the workflow is pretty functional: attempt to format, see the
error, undo and fix it. Sort of a light weight syntax check without
needing to use elm-make, which requires that imports are actually
resolved and you're in a proper project, etc.