Comment contains invalid byte: '\t'

Commenting out code is a terrible habit! use if (XXX) where const XXX = false;. Anyway…

I think the end game here (just from reading this issue and that) is one where zig fmt will replace tabs for you, but zig proper won’t compile them, and will tell you to use zig fmt to clean up your code. Tabs remaining valid whitespace is an unstable equilibrium and I wouldn’t expect it to last.

I’ve decided not to have an opinion about this, all I have an opinion about is “use zig fmt”. Whatever it does to my code is how it ends up, when that isn’t acceptable I turn it off for a region. That’s rare.

I cannot successfully put myself in the headspace of someone for whom tabs are so potent a source of self-identity that they would use them, and then do code transformation to get the tabbèd-upon code to compile. Just can’t. Cards on the table, I’m on team spaces, but, I’m also a go fmt enjoyer, even though it’s a dark servant of the Tab Empire, my sworn enemy or whatever.

What I do care about, and dislike, is that the multi-line literal rule means that go fmt-ed upon Go would need ruthless mangling to embed it in Zig. That’s a design flaw. Whatever the purpose of the spaces supremacy movement is supposed to be, it’s going too far there.

2 Likes