this post was submitted on 21 May 2024
100 points (94.6% liked)
Asklemmy
43796 readers
741 users here now
A loosely moderated place to ask open-ended questions
Search asklemmy ๐
If your post meets the following criteria, it's welcome here!
- Open-ended question
- Not offensive: at this point, we do not have the bandwidth to moderate overtly political discussions. Assume best intent and be excellent to each other.
- Not regarding using or support for Lemmy: context, see the list of support communities and tools for finding communities below
- Not ad nauseam inducing: please make sure it is a question that would be new to most members
- An actual topic of discussion
Looking for support?
Looking for a community?
- Lemmyverse: community search
- sub.rehab: maps old subreddits to fediverse options, marks official as such
- !lemmy411@lemmy.ca: a community for finding communities
~Icon~ ~by~ ~@Double_A@discuss.tchncs.de~
founded 5 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
Spaces are kinda better, because tabs are not consistent across editors/platforms. Just please use the tab key to indent, don't press the spacebar x times like a monkey
I prefer tabs because they aren't consistent
I personally find 2-space indented code harder to read than 4-space. If I'm working on someone else's codebase which is indented with 2-spaces then I have to cope. But if it's tab-indented then I can just edit the setting in my editor to display a tab char as 4 whitespace chars
The problem is that when you then want to align stuff, you have to use spaces. So you need to use tabs for indentation and use spaces for alignment. This is actually the perfect, objectively best way to do it, but because it requires a deliberate mix of tabs and spaces, it's too complicated to use for a large project with lots of maintainers. You just need a single maintainer doing it wrong to ruin it.
There is also the issue that you'll often see the code in a place where you can't control the tab length, i.e. printed in your terminal by some program that doesn't have an option for that, or viewed on the web, like GitHub.