How to achieve same formatting on Linux and Windows with mix format

Hi there,
me and my friend are working on the same project and we use the mix format command to format our code. The problem is that he is working on Linux and im working on Windows and so the formatting differs. Windows uses another LineEnding than Linux.
Our pipeline uses Linux so when it checks for the formatting it only fails when I commit with my windows formatted code.
We both use VSCode.

Is there a way to have the same formatting over different operating systems?
Diogo L

Hi Diogo,

make sure friend and you both use the same line ending setting in VSCode. You can see and change it in the bottom right corner usually (that LF). Or use the “Change End of Line Sequence” command from the Command Pallete (Shift + Command + P (Mac) / Ctrl + Shift + P (Windows/Linux)).

More info: How to Get Consistent Line Breaks in vs Code (LF vs CRLF) | Boot.dev

Screenshot 2023-08-08 at 12.46.17

2 Likes

Hi @stefanluptak,

thank you for the information. I now changed all files to LF and applied the setting, to create new files with LF, in the json file in VSCode.

But the problem persists. Now the mix format --check-formatted command fails because of empty lines added by my mix format command. It is only complaining about empty lines in multiline comments using the """ notation.

When my friend uses mix format it removes those empty lines and so the mix format --check-formatted command does not fail.

image

You can also look at defining a .gitattributes and/or editorconfig.

1 Like