Здравствуйте, Qbit86, Вы писали:
Q>>>Я приводил ссылки также на некоторые гайды по стилю C++ и Питон. Конечно, они расходятся во многих аспектах с рекомендациями для C#, единогласия нет. Только в отношении неиспользования табов они единодушны, это о чём-то говорит.
Q>·>Вот, скажем https://www.kernel.org/doc/Documentation/CodingStyle — ширина 8 символов.
Q>«Addison-Wesley, Inc., 1999.» Подождите, а кто там наверху говорил про легаси? Что-нибудь из нашего века есть?
Некоторые проекты просто ссылаются на linux kernel style.
Copyright © 2005‒2014 The GNOME Project.
Q>>>Потому что исхожу из своего опыта, в котором количество встреченных XML-документов, свёрстанных с 8 пробелами, равно нулю.
Q>·>Т.е. опять confirmation bias вместо разумных доводов.
Q>Остаётся только предоставить читателям самим судить насчёт разумности доводов про теоретический 8-пробельный XML.
Кстати, о теории. В теории пробелы тоже критику не выдерживают.
Представь себе альтернативную вселенную, где пробелы запрещены для отступов законодательно, высшая мера наказания и кода с пробелами не существует. Ты видишь какие-нибудь проблемы в этой вселенной?
А теперь представь другую вселенную: табы запрещены, или их вообще не существовало, и кнопки такой нет. Будут ли проблемы — по-моему да. Как минимум будут войны на тему сколько пробелов должно быть в отступах — 2, 4 или 8 или 13. Притом, даже если законодательно закрепят какое-то число, например 4, то возникнет вопрос — а почему бы не заменить стандартные четыре символа на специальный символ со специальным кодом, и кнопку бы неплохо добавить... ведь нажимать четырежды сложнее? Придётся комбинацию клавиш добавлять или специальную кнопку в клавиатуры, текстовые редакторы должны будут поддерживать вставку/удаление четырех пробелов.
Q>·>Можно примеры? Особенно интересно услышать в свете confirmation bias — чем ты регулярно пользуешься лично что не позволяет настраивать размеры табов?
Q>Unity 3D,
Ок, никогда это не видел, но можно поверить, что одна такая прога есть. Патч уже постили? Разрабы наотрез отказались мержить?
Q>Total Commander (просмотр по F3),
"Tab width may be specified by parameter TabWidth in section [Lister] of wincmd.ini file." Или оно не работает?
Q>Google Chrome. Про GitHub выше привели хак, но ещё есть Bitbucket и просто бложеки, где приводят код в <pre>.
С бразуерами всё просто:
http://stackoverflow.com/questions/6686763/setting-pre-tab-width-in-different-web-browsers
Как сделать user style css думаю сам разберёшься.
Q>>>Я не хочу везде видеть четыре пробела. В XML иногда удобно два, в C# всегда четыре.
Q>·>Не понял, это вообще-то говорит в пользу табов.
Q>Подождите, вы же говорили, что достаточно всего один раз настроить инструментарий под себя?
Каждый настраивает под себя как и где ему удобно. Проблема с пробелами возникает когда разные люди с разными настройками начинают работать над одними и теми же файлами. С табами проблем нет, т.к. они учитывают "настойки под себя".
Q>·>Со сколькими пробелами XML набран — со столькими ты и будешь видеть. Если человек набирал XML на 26" мониторе с четырмя пробелами, а тебе с этим же кодом надо повозиться на 13" ноуте — что делать?
Q>Если исключить случай злонамеренности автора, то проблем с пробелами никогда не возникает. Даже при разных соглашениях, будь то XAML, или AndroidManifest.xml, или другие конфиги; часть из них удобнее с нормальными отступами, часть с компактными.
И кто как договаривается какие в данном файле в данном проекте отступы делать?
Q>·>А о чём? Можно ссылку о том, что в некой Unity 3D невозможно поменять размер таба?
Q>Unity 3D — это инструментарий для кроссплатформенной разработки игр; в его редакторе есть окошко Инспектора (обычно небольшое), которое показывает содержимое разных ассетов (модельки, текстурки, скрипты, etc). Он показывает текст как есть, без вычурных настроек; длинный текст обрывает и переносит. При использовании табов получается таже не куча пустого места, а просто месиво разорванных строк.
А при использовании восьми пробелов что происходит?