Maybe a point of interest...
The Atmel Studio and Visual Micro solution does ensure that projects remain fully compatibility with the Arduino Ide.
Your projects will continue to work without modification should you find a non-windows Arduino tool in the future that you prefer.
Something people forget about is the great changes happening with the Arduino Ide. It does however mean that we have projects that were created using different Arduino versions. The Atmel and Visual Studio plugins allow switching between Arduino versions without ide-restart. The selected Arduino version is retained against the project along with the board and port. So the next time we open a project it just works!