У меня в настройках sublime написано "tab_size: 2". Всё нормально, уже tab это 2 пробела, но почему когда я заливаю всё это на github, то у меня показывает, что у меня там 4 пробела, а не 2? У меня в настройках sublime поставлено "tab_size: 2", в чём может быть проблема?
Вообще, пробелы вместо табов - плохая практика. Любой адекватный человек, который потом будет работать с вашим кодом, будет ругаться. Из известных мне Coding Standards - tab является рекоммендацией и best practice.
Pavel Denisov: Ну да, часть JS-мира все еще живет в 20м веке, используя 2 spaces. Хотя тот же jQuery CS требует табы, как и много других проектов (а вот нода благодаря ретрограду Райану настаивает на 2х пробелах). Python изначально уперся в 4 spaces, сейчас уже не против табов, главное не смешивать. А в большинстве других языков, а также разнообразных библиотек и крупных проектов, над которыми работает чуть больше чем 1 человек, со временем стандарты пришли к табуляции. Хотя да, это холивар.
Sublime меняет только отображение, tab'ы остаются при этом. Гитхаб же показывает установленный у него размер tab'а.
Опция:
"translate_tabs_to_spaces": true
сделает, чтоб при нажатии tab автоматом ставились пробелы указанной длины. При вашей настройки будет 2 пробела и будет при этом автоматическая подгонка, как при tab'ах.