axelson
September 1, 2019, 4:34pm
1
Is it possible to configure the formatter to exclude some files?
I’m currently using this as the default .formatter.exs
:
[
inputs: ["{mix,.formatter}.exs", "{config,lib,test}/**/*.{ex,exs}"]
]
However there are some files in test/support that intentionally have compilation errors and I would like to ignore those. Is there any way beside “manually” ignoring the specific file by adding an entry for every file in the offending directory except for that single file?
IIRC you can do
[
inputs: ["{mix,.formatter}.exs", "{config,lib,test}/**/*.{ex,exs}"] -- ["lib/foo/bar.ex"]
]
Not tested though, I just remember seeing it mentioned somewhere in the past.
EDIT:
Having played around I think it’s actually something like this:
[
inputs: Enum.flat_map(["{mix,.formatter}.exs", "{config,lib,test}/**/*.{ex,exs}"], & Path.wildcard(&1, match_dot: true)) -- ["lib/foo/bar.ex"]
]
So you handle the wildcard expansion yourself.
2 Likes
axelson
September 1, 2019, 5:14pm
3
That didn’t work for me and as written I wouldn’t expect it to since the --
runs before inputs is expanded by Path.wildcard
Yeah sorry, just edited my reply
axelson
September 1, 2019, 7:48pm
5
Oh, okay. I’ll give that a try later
The edited version of this works!