Description, because “alt text” can’t show it well:
{
emit differentFiles (ckFile.absoluteFilePath(),
otherFile.absoluteFilePath(),
FileCompareWorker::FileComparisonParams{FileComparisonParams::FileNameMatch,
(ckFile.size() > otherFile.size()) ? FileComparisonParams::File1IsLarger
: FileComparisonParams::File2IsLarger});
}
After Alignment
{
emit differentFiles (ckFile.absoluteFilePath(),
otherFile.absoluteFilePath(),
FileCompareWorker::FileComparisonParams{FileComparisonParams::FileNameMatch,
(ckFile.size() > otherFile.size()) ? FileComparisonParams::File1IsLarger
: FileComparisonParams::File2IsLarger});
}
I find both horrifying.
This is how I’d want to read it:
{ emit differentFiles( ckFile.absoluteFilePath(), otherFile.absoluteFilePath(), FileCompareWorker::FileComparisonParams{ FileComparisonParams::FileNameMatch, (ckFile.size() > otherFile.size()) ? FileComparisonParams::File1IsLarger : FileComparisonParams::File2IsLarger } ); }
That looks nice and easy to understand.
I would go one step further and according to my preferences:
(starting from line5)FileCompareWorker::FileComparisonParams { FileComparisonParams::FileNameMatch, (ckFile.size() > otherFile.size()) ? FileComparisonParams::File1IsLarger : FileComparisonParams::File2IsLarger }
Break before the curly as I do for most.
Not random. This is a pretty common standard for most style guides that if you split a ternary operator across lines you align the option colon to the ternary itself. Your alt text formatting is way different from the pic by the way
Your alt text formatting is way different from the pic by the way
Hmm.
I really just copied the stuff directly. Let me try again.pretty common standard
I get it. But I set all available “Align” flags to false and am still getting this.
I just want a simple thing that only does continuation indents.If there is athough not even that, because all spaces before the first character in the line are to be removed.space
added, it should be something according to the coder (Is what I mean by indents only).
Not random
Well, I guess I’ll go put a better word in there
is it my lack of go skills, or they’re both really awful to read? It takes me multiple seconds to match the first parenthesis opened and it seems the code could really use a refactoring, but both formatting options suck.
Honestly, I’d prefer all curly’s in a new line, indented according to the previous one and in some cases, even parentheses in new lines.
But if I had a problem with that, I would just go ahead and break the line down (that’s a single statement, I consider it 1 line of code) into multiple, with the arguments put into variables.
The “after” version looks better to my eyes…
I am noone to say no to your preferences. and you can set your config that way.
I want the “before” in my project.
Also, consider the case where the thing after the
:
were longer and it would be using another line.
You shouldn’t use tabs for alignment. It breaks for everyone with a different tab size.
You shouldn’t align code anyway.
If it’s important to have stuff on the same column, make it an indentation level and add a line break where it starts.
- I am using tabs for INDENTATION. I don’t want alignment.
- I have tried my best to remove all alignment operations of clang-format
- What do you use tabs for?
if you don’t want alignment don’t be surprised when your code doesn’t align 🤷
If that’s supposed to be a pun, I didn’t get it.
Like the other commented said, this isn’t random, but also I’d add that your first ternary option, the
?
, should be on the next line; it would make the alignment make more sense to you then, and it would make the block more legible.I think I’d rather go with the
?
being on the same line as the ‘condition’ and the rest can go on the other line.Otherwise, I’d be looking one line downwards and then coming back up after realising that it is a
(cond)?ex:ex
operator.
And I get that it’s not random, just that I asked for it at as many places as possible to not do alignment.
And from what I can recall, I had managed to make stuff work with the older clang-formats…
Or maybe not. Maybe this kind of code never went through it.
BTW, I changed my code to avoid the formatting:
{ if (ckFile.size() > otherFile.size()) { emit differentFiles (ckFile.absoluteFilePath(), otherFile.absoluteFilePath(), FileCompareWorker::FileComparisonParams{ FileComparisonParams::FileNameMatch, FileComparisonParams::File1IsLarger}); } else { emit differentFiles (ckFile.absoluteFilePath(), otherFile.absoluteFilePath(), FileCompareWorker::FileComparisonParams{ FileComparisonParams::FileNameMatch, FileComparisonParams::File2IsLarger}); } }
BTW, here is my .clang-format in case you are interested
Seems like a lot of work, when the font I use will mess it up. And compiler/interpreter won’t care.
But if it makes you happy, go for it.
are you not using a monospace font?
They are using the Declaration of Independence font.