Накидайте про табуляцию
От: Marty Пират https://www.youtube.com/channel/UChp5PpQ6T4-93HbNF-8vSYg
Дата: 20.04.24 20:06
Оценка: +1
Здравствуйте!

Пришел тут на проект. В сорцах — то пробелы, то табуляция.

Как-то напрягает.

Раньше во всех конторах было правило, что табуляция — абсолютное зло, и её никто не использовал. А тут такое. А я даже не знаю, чем парировать.

Накидайте железных аргументов плс
Маньяк Робокряк колесит по городу
Re: Накидайте про табуляцию
От: о_О
Дата: 20.04.24 20:15
Оценка: +4 -1 :)))
Здравствуйте, Marty, Вы писали:

Принято и так, и сяк.
У табуляции есть железобетонный аргумент — возможность выставить свой отступ в пикселях. Причем давно, легально и кому как нравится.
Сейчас любители пробелов прибегут и расскажут, что можно и пробелы выставить... Да, но это костыль, имхо.
А мешать — зло
Re: Накидайте про табуляцию
От: kov_serg Россия  
Дата: 20.04.24 20:15
Оценка: +1
Здравствуйте, Marty, Вы писали:

M>Как-то напрягает.

Нормальные текстовые редакторы умеют заменять табуляции пробелами и наоборот (при у табуляции можно менять ширину)
В чём проблема-то?
Re: Накидайте про табуляцию
От: bnk СССР http://unmanagedvisio.com/
Дата: 20.04.24 20:24
Оценка: +6 -1
Здравствуйте, Marty, Вы писали:

M>Пришел тут на проект. В сорцах — то пробелы, то табуляция.

M>Раньше во всех конторах было правило, что табуляция — абсолютное зло, и её никто не использовал. А тут такое. А я даже не знаю, чем парировать.

Табуляция не зло, мешанина — зло.

Если не хочешь устраивать революций,
достаточно выставить в редакторе "правильный" размер табов и смириться (продолжать плодить зло, то есть).
Re: Накидайте про табуляцию
От: cppguard  
Дата: 20.04.24 20:26
Оценка: +6 -2
Здравствуйте, Marty, Вы писали:

M>Накидайте железных аргументов плс


Табуляция в общем случае лучше, потому что позволяет каждому выставить своё расстояние. НО! Табуляция ломается, когда нужно "крассиво" отформатировать многострочное выжение с парными скобками. В 99.9% проектах есть такие куски кода. Поэтому, как правило, в таких случаях форматирование подбивают до размера табуляции "по-умолчанию", что сводит на нет изначальный эффект. Со временем приходит понимание, что адекватный размер в пробелах лучше мнимой универстальности табов.
Re: Накидайте про табуляцию
От: Эйнсток Файр Мухосранск Странный реагент
Дата: 20.04.24 20:54
Оценка: 4 (2) +1 :))) :))) :)
M> Накидайте железных аргументов

В проекте всегда много разных проблем. Мешанина с табуляциями позволяет быстро выделить склочных никчемных сотрудников, неспособных сосредоточится на принесении профита, и убрать их (выявленных перфекционистов) с проекта.
Отредактировано 20.04.2024 20:55 Эйнсток Файр . Предыдущая версия .
Re[2]: Накидайте про табуляцию
От: andrey.desman  
Дата: 20.04.24 21:07
Оценка: +4 -1
Здравствуйте, cppguard, Вы писали:

C>Табуляция в общем случае лучше, потому что позволяет каждому выставить своё расстояние. НО! Табуляция ломается, когда нужно "крассиво" отформатировать многострочное выжение с парными скобками. В 99.9% проектах есть такие куски кода. Поэтому, как правило, в таких случаях форматирование подбивают до размера табуляции "по-умолчанию", что сводит на нет изначальный эффект. Со временем приходит понимание, что адекватный размер в пробелах лучше мнимой универстальности табов.


Это табуляцию неправильно готовят. Табуляцией делается отступ, а рисование пробелами. Рисовальщики табами повинны в том, что табуляция считается злом, и они будут гореть в аду.

Правильно, но говно:
void foo() {
   >someFunctionWithManyArguments(a,
   >                              b);
}


Неправильно:
void foo() {
   >someFunctionWithManyArguments(a,
   >   >   >   >   >   >   >   >  b);
}


У здорового человека:
void foo() {
   >someFunctionWithManyArguments(a,
   >   >b);
}
Re[2]: Накидайте про табуляцию
От: Osaka  
Дата: 20.04.24 21:07
Оценка:
ЭФ>В проекте всегда много разных проблем. Мешанина с табуляциями позволяет быстро выделить склочных никчемных сотрудников, неспособных сосредоточится на принесении профита, и убрать их (выявленных перфекционистов) с проекта.
Совершенно верно, нечего им делать в проекте, где на приёмке работ никто не смотрит дифференс с предыдущей версией. (Или вообще приёмка работ отсутствует).
Re[2]: Накидайте про табуляцию
От: Marty Пират https://www.youtube.com/channel/UChp5PpQ6T4-93HbNF-8vSYg
Дата: 20.04.24 21:28
Оценка:
Здравствуйте, kov_serg, Вы писали:

M>>Как-то напрягает.

_>Нормальные текстовые редакторы умеют заменять табуляции пробелами и наоборот (при у табуляции можно менять ширину)
_>В чём проблема-то?

Большая скотобаза, с пробелами и табуляциями, как бог на душу приложит

А так-то да, проблем нет

Простой пример — я копирую кусок кода в одном редакторе, вставляю в другом, и понеслось
Маньяк Робокряк колесит по городу
Re[2]: Накидайте про табуляцию
От: Marty Пират https://www.youtube.com/channel/UChp5PpQ6T4-93HbNF-8vSYg
Дата: 20.04.24 21:30
Оценка: :)
Здравствуйте, bnk, Вы писали:

M>>Пришел тут на проект. В сорцах — то пробелы, то табуляция.

M>>Раньше во всех конторах было правило, что табуляция — абсолютное зло, и её никто не использовал. А тут такое. А я даже не знаю, чем парировать.

bnk>Табуляция не зло, мешанина — зло.


Да, мешанина есть. Спасибо, хороший аргумент


bnk>Если не хочешь устраивать революций,

bnk>достаточно выставить в редакторе "правильный" размер табов и смириться (продолжать плодить зло, то есть).

Я не хочу устраивать революции. Просто сожгу табуляторов на костре
Маньяк Робокряк колесит по городу
Отредактировано 20.04.2024 21:32 Marty . Предыдущая версия .
Re[2]: Накидайте про табуляцию
От: Marty Пират https://www.youtube.com/channel/UChp5PpQ6T4-93HbNF-8vSYg
Дата: 20.04.24 21:45
Оценка: :)
Здравствуйте, Эйнсток Файр, Вы писали:

M>> Накидайте железных аргументов


ЭФ>В проекте всегда много разных проблем. Мешанина с табуляциями позволяет быстро выделить склочных никчемных сотрудников, неспособных сосредоточится на принесении профита, и убрать их (выявленных перфекционистов) с проекта.


Правда, есть нюансы.

Склочный никчемный сотрудник — чуть ли не вторая рука гендира, на его скотобазе пилятся все проекты. Но в целом — ты прав
Маньяк Робокряк колесит по городу
Re[3]: Накидайте про табуляцию
От: bnk СССР http://unmanagedvisio.com/
Дата: 20.04.24 21:46
Оценка: 2 (1) +5
Здравствуйте, Marty, Вы писали:

M>Я не хочу устраивать революции. Просто сожгу табуляторов на костре


Ну из очевидных преимуществ — пробелы всегда нормально отображаются, их испортить настройками невозможно.

А табы это как неустойчивое равновесие.
Пока у тебя одни табы — все хорошо, но как только появляются еще и проблеы — все, туши свет.

Обязательно найдется какая-нибудь система, в которой размер табов не такой какой ожидается.
Это может быть мержилка, онлайн-просмотрщик коммитов в браузере, IDE, notepad, да все что угодно.
Отредактировано 20.04.2024 22:05 bnk . Предыдущая версия .
Re: Накидайте про табуляцию
От: opfor  
Дата: 20.04.24 21:53
Оценка:
Здравствуйте, Marty, Вы писали:

M>Раньше во всех конторах было правило, что табуляция — абсолютное зло, и её никто не использовал. А тут такое. А я даже не знаю, чем парировать.


M>Накидайте железных аргументов плс


каждый пишет, кто как хочет, потом прогоняете через clang-format, чтобы привести к единому стандарту. Форматтер можно прикрутить в качестве precommit hook, чтобы не вызывать вручную.
Отредактировано 20.04.2024 21:55 opfor . Предыдущая версия .
Re[2]: Накидайте про табуляцию
От: Marty Пират https://www.youtube.com/channel/UChp5PpQ6T4-93HbNF-8vSYg
Дата: 20.04.24 22:07
Оценка: -1
Здравствуйте, opfor, Вы писали:

O>каждый пишет, кто как хочет, потом прогоняете через clang-format, чтобы привести к единому стандарту. Форматтер можно прикрутить в качестве precommit hook, чтобы не вызывать вручную.


Капитан, капитан, улыбнитесь, ведь улыбка — это флаг корабля

ЗЫ Чего бы ждать ка мо россиянину от хо украинца? Либо капинанства, либо диверсии типа запусти такое
Маньяк Робокряк колесит по городу
Re: Накидайте про табуляцию
От: velkin Удмуртия https://kisa.biz
Дата: 20.04.24 22:11
Оценка:
Здравствуйте, Marty, Вы писали:

M>Пришел тут на проект. В сорцах — то пробелы, то табуляция.

M>Как-то напрягает.
M>Раньше во всех конторах было правило, что табуляция — абсолютное зло, и её никто не использовал. А тут такое. А я даже не знаю, чем парировать.

Для форматирования кода есть специальные программы.
ТОП лучших инструментов C++ (04.04.2014)

Artistic Style

Тип: Автоматическое форматирование кода
Платформа: кросс-платформенное
Лицензия: LGPL
Вебсайт: http://astyle.sourceforge.net

В коллективном проекте код должен выглядеть так, как будь-то его написал один человек. Да и просто из банальной лени дотошно форматировать свой код попросту не охота. А так же чтобы обзоры кода не превращались в обзоры стиля кода, придуман этот инструмент. Возможности его форматирования превышают возможности редактора интегрированной среды разработки, и тем не менее он простой. Рекомендую так же установить universalindentgui, а уже через неё использовать эту или может быть даже другие подобные программы.

По хорошему надо ставить пробелы, если нужно чтобы во всех редакторах код отображался примерно одинаково. Но учитывай, что у людей могут быть корявые и/или не настроенные редакторы. Просто у них ставятся табуляции вместо пробелов, или даже пробелы заменяются табуляцией. А табуляция это значит у каждого код может выглядеть по-разному в зависимости от настроек редактора.

Но в принципе нужно.
1. Вводить правила по стилю кода.
2. Использовать программы для автоматического приведения стиля кода.
2.1. Заставить делать это людей перед коммитом.
2.2. Делать это самому, но чревато обратным обновлением.

Дело ведь не только в табуляции, а в принципе в том, что у разных людей разный опыт. Хочешь чтобы всё было гарантированно под одну гребёнку, используй второй вариант. Там даже самые корявые по твоему мнению фейлы будут исправлены с машинной точностью.
Re[3]: Накидайте про табуляцию
От: Эйнсток Файр Мухосранск Странный реагент
Дата: 20.04.24 23:15
Оценка:
M> Склочный никчемный сотрудник — чуть ли не вторая рука гендира

Первая рука директора — это продажемаркетолог, потому что отвечает за доходы. Вторая рука директора — бухгалтер, единственный способ контролировать расходы. Третья рука директора — юрист и безопасники, чтобы отбиваться от госорганов и прочих братков. А пробелы... Ну вероятно никчемный сотрудник переоценивает свою значимость и ценность своих инициатив.
Re: Накидайте про табуляцию
От: andyp  
Дата: 20.04.24 23:39
Оценка: +1
Здравствуйте, Marty, Вы писали:

M>Накидайте железных аргументов плс


Код под гитом? Забей тогда. Вони не оберешься при попытках править. Ну или устрой месячник борьбы с хернёй, если ты там командир.
Re[2]: Накидайте про табуляцию
От: Marty Пират https://www.youtube.com/channel/UChp5PpQ6T4-93HbNF-8vSYg
Дата: 20.04.24 23:49
Оценка:
Здравствуйте, velkin, Вы писали:

V>Для форматирования кода есть специальные программы.

V>ТОП лучших инструментов C++ (04.04.2014)
V>

V>

Artistic Style

V>Тип: Автоматическое форматирование кода
V>Платформа: кросс-платформенное
V>Лицензия: LGPL
V>Вебсайт: http://astyle.sourceforge.net
V>В коллективном проекте код должен выглядеть так, как будь-то его написал один человек. Да и просто из банальной лени дотошно форматировать свой код попросту не охота. А так же чтобы обзоры кода не превращались в обзоры стиля кода, придуман этот инструмент. Возможности его форматирования превышают возможности редактора интегрированной среды разработки, и тем не менее он простой. Рекомендую так же установить universalindentgui, а уже через неё использовать эту или может быть даже другие подобные программы.


Я — автор плагина для Far — ttp/TextTp/TextTemplates. Тебе ссылку дать, или сам найдёшь на Far плагринге?

И да, у меня в плагине есть возможность запускать внешние проги над фрагментами теста, и да, про "Artistic Style" я в курсе, он у меня там в базе должен быть. Это год 2008, может 2009ый, не позже


V>Но в принципе нужно.

V>1. Вводить правила по стилю кода.

https://www.youtube.com/watch?v=awha5xiC9H8

Я этим и занимаюсь сейчас


V>2. Использовать программы для автоматического приведения стиля кода.


Капитан, капитан...


V>2.1. Заставить делать это людей перед коммитом.


дас ис фантастишь, я-я


V>2.2. Делать это самому, но чревато обратным обновлением.


V>Дело ведь не только в табуляции, а в принципе в том, что у разных людей разный опыт. Хочешь чтобы всё было гарантированно под одну гребёнку, используй второй вариант. Там даже самые корявые по твоему мнению фейлы будут исправлены с машинной точностью.


ты velkin как и везде и всегда velkin
Маньяк Робокряк колесит по городу
Re[4]: Накидайте про табуляцию
От: Marty Пират https://www.youtube.com/channel/UChp5PpQ6T4-93HbNF-8vSYg
Дата: 21.04.24 00:00
Оценка:
Здравствуйте, Эйнсток Файр, Вы писали:

M>> Склочный никчемный сотрудник — чуть ли не вторая рука гендира


ЭФ>Первая рука директора — это продажемаркетолог, потому что отвечает за доходы. Вторая рука директора — бухгалтер, единственный способ контролировать расходы. Третья рука директора — юрист и безопасники, чтобы отбиваться от госорганов и прочих братков. А пробелы... Ну вероятно никчемный сотрудник переоценивает свою значимость и ценность своих инициатив.


Или ты просто переоцениваешь себя. Что-то не припомню от тебя ничего полезного, один мусор, уже сколько лет. Сменил бы хоть ник, и то бы верили больше
Маньяк Робокряк колесит по городу
Re[3]: Накидайте про табуляцию
От: cppguard  
Дата: 21.04.24 00:01
Оценка:
Здравствуйте, andrey.desman, Вы писали:

AD>У здорового человека:

AD>
AD>void foo() {
   >>someFunctionWithManyArguments(a,
   >>   >b);
AD>}
AD>


Как это будет работать, если я выставлю размера табуляции в рекдакторе в 1?
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.