LINUX.ORG.RU

Как предпочитаете ставить отступы в программном коде?


0

1
  1. Одной табуляцией 633 (49%)

    ********************************************************************************************************************************************************************************************************************************************************************************************************************************

  2. Несколькими пробелами 370 (29%)

    *******************************************************************************************************************************************************************************************

  3. Несколькими табуляциями 119 (9%)

    ************************************************************

  4. В жизни не написал и строчки кода 103 (8%)

    ****************************************************

  5. Одним пробелом 46 (4%)

    ***********************

  6. Отступы для отступников! (т.е. не ставите вообще) 20 (2%)

    **********

Всего голосов: 1291

★★★★★

Проверено: post-factum ()

Высоко «интеллектуальны» опрос? Табами вообще не пользуюсь.

Bang
()
Ответ на: комментарий от r

совершенно разные ситуации. офисные документы пробелами не следует форматировать, т.к. при смене шрифта всё летит (т.е. центр оказывается не в центре, колонки становятся не колонками и т.п.), а в коде применяются моноширинные шрифты, да и стандартизированной конвенции задания отступов и центрирования, как в текстовых процессорах, не существует.

olegsov
()
Ответ на: комментарий от olegsov

>офисные документы пробелами не следует форматировать, т.к. при смене шрифта всё летит

Не при «смене шрифта», а при смене форматирующих элементов. И пробелами не следует форматировать не потому что «при смене шрифта», а потому что «при смене параметров форматирования» - отсутупа абзаца, межстрочного интервала, размера полей и прочего.

а в коде применяются моноширинные шрифты


Но форматируюющие элементы присутствуют. Потому «при смене параметров форматированимя» - отступа «абзаца»....

Это вообще на самом деле поразительный изгиб сознания - для отсутпа на таб применяется специальная кнопка на клавиатуре, небойсь и забой отсутпов бакспейсом происходит со всякими «смарт-табс» элементами который забивает их по N-пробелов - то есть по факту то что там пробелы или табы известно только файлу, а при редактировании там во всю табы или псевдо-табы (нажал таб - появилось 4 пробела, нажал бакспейс - 4 пробела убралось) - то есть сначала табы заменили на пробелы и тут же изорбрели новый таб для бедных который эмулирует редактор. НАФИГА!?

Хотите пробелов - будьте последовательными - читыре нажатия пробела и вперед. А то с одной стороны не хотят табов с другой стороны сидят на эмуляции табов.

r ★★★★★
()
Ответ на: комментарий от annulen

>А вообще делать надо как полиси проекта предписывает, почти везде используют пробелы

Почти везде это не аргументировано а потому что человек писавший полиси так привык.

r ★★★★★
()
Ответ на: комментарий от r

> а потому что человек писавший полиси так привык.

И тем не менее, это лучше, чем когда в одном проекте идёт вавилонская смесь разных стилей. Особенно когда один модуль в разное время редактировали разные люди... бр-р...

hobbit ★★★★★
()
Ответ на: комментарий от annulen

> В результате получим ацкую смесь табов и пробелов - НЕНАВИСТЬ!

Предлагаю сходить в монастырь. Это `ацкая' смесь — единственный верный способ отбивать код табами.

tensai_cirno ★★★★★
()
Ответ на: комментарий от tensai_cirno

>единственный верный способ отбивать код табами.

значит, верного способа отбивать табами просто не существует

annulen ★★★★★
()
Ответ на: комментарий от r

> Это вообще на самом деле поразительный изгиб сознания - для отсутпа на таб применяется специальная кнопка на клавиатуре, небойсь и забой отсутпов бакспейсом происходит со всякими «смарт-табс»

Ну я использую для отступов 4 пробела, клавиша TAB в редакторе привязана к действию «завершить слово» (а-ля bash), а для увеличения и уменьшения отступа — Alt+Стрелка Вправо/Alt+Стрелка Влево :)

guitarist ★★
()
Ответ на: комментарий от DRVTiny

>А чем кстати таб лучше одного пробела?
Тем что можно настроить редактор - какой ширины показывать таб

grim ★☆☆☆
()
Ответ на: комментарий от grim

>>А чем кстати таб лучше одного пробела?

Тем что можно настроить редактор - какой ширины показывать таб

Вот из-за того, что некоторые считают, что таб может быть разной ширины, и есть весь сыр-бор.

guitarist ★★
()

Ставлю таб, а редактор его преобразует в 4 пробела в соответствии с PEP-8.

amix ★★★
()

В C/C++ и Java — одна табуляция (которая где-то == 4 пробелам, а где-то == 8 пробелам, ну да ладно).

В шеллскриптах — два пробела на уровень. Т.е.:

if [ -d /usr/bin ]; then
<два пробела>if [ -d /usr/local/bin ]; then
<четыре пробела>echo "У тебя есть /usr/local/bin! Ты собираешь программы!"
<два пробела>else
<четыре пробела>echo "Ты жалкий раб пакетного менеджера или конфигурируешь с --prefix=/usr"
<два пробела>fi
fi

В макросах на StarBasic'е обычно тоже делаю два пробела на уровень. Такие дела.

powerpc
()
Ответ на: комментарий от hobbit

>И тем не менее, это лучше, чем когда в одном проекте идёт вавилонская смесь разных стилей.

Когда все пользуются табами - нет никаких разных стилей. Стиль - таб.

r ★★★★★
()
Ответ на: комментарий от eirik

>4 пробела ибо PEP 8

А если принести в жертву четырех девствениц шаману - урожай лучше будет, ибо ШТК - 17.

r ★★★★★
()
Ответ на: комментарий от annulen

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

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

geekless ★★
()
Ответ на: комментарий от r

[quote]Это вообще на самом деле поразительный изгиб сознания - для отсутпа на таб применяется специальная кнопка на клавиатуре, небойсь и забой отсутпов бакспейсом происходит со всякими «смарт-табс» элементами который забивает их по N-пробелов - то есть по факту то что там пробелы или табы известно только файлу, а при редактировании там во всю табы или псевдо-табы (нажал таб - появилось 4 пробела, нажал бакспейс - 4 пробела убралось) - то есть сначала табы заменили на пробелы и тут же изорбрели новый таб для бедных который эмулирует редактор. НАФИГА!?

Хотите пробелов - будьте последовательными - читыре нажатия пробела и вперед. А то с одной стороны не хотят табов с другой стороны сидят на эмуляции табов.[/quote]

Поддерживаю.

geekless ★★
()

Несколькими пробелами

buddhist ★★★★★
()
Ответ на: комментарий от r

бэкспейс просто переходит на предыдущий отступ вверх по тексту - логично и удобно

на клавиатуре есть еще кнопка «виндус», может запретим ее применять везде кроме винды? а то там же их сначек нарисован, неположено для чего-то еще использовать...

olegsov
()

Для отсупа использую клавишу табуляции, затем vim заменяет ее двумя пробелами

Deleted
()

Сторонников табов в 1.8 раза больше чем сторонников пробелов. Уверен, если бы табы приносили больше проблем чем пользы, то ситуация была совершенно иной.

I-Love-Microsoft ★★★★★
()

еще со школы табуляцией привык

Genuine ★★★
()
Ответ на: комментарий от DRVTiny

>Так чем же плох ОДИН, всего один единственный пробел?

2-3-4 отступа с блоками по пол-экрана и ты уже не сыщешь концов, какой блок где логически выделен. С таким же успехом можно вообще без отступов писать.

KRoN73 ★★★★★
()
Ответ на: комментарий от KRoN73

Ну не знаю, честно, никогда проблем не было.
А вот с чужими смешанными отступами (изврат навроде tab+1 пробел) были - я так начинаю путаться.

DRVTiny ★★★★★
() автор топика
Ответ на: комментарий от powerpc

>В макросах на StarBasic'е обычно тоже делаю два пробела на уровень. Такие дела.

Оба, очень приятно, шо вы таки есть :)
Но вот два пробела в shell-скриптах... А зачем? Почему не один всё же?

DRVTiny ★★★★★
() автор топика

> Несколькими табуляциями

ИМХО удобнее, позволяет отделять вложенные циклы)

papay ★★★
()

твою ж мать! больше половины лора можно смело пустить под нож...

Rastafarra ★★★★
()
Ответ на: комментарий от r

> Почти везде это не аргументировано а потому что человек писавший полиси так привык.

пробелы — это generic, в отличии от, а этого уже достаточно. привет от ML-like языков, где табы сливают.

Rastafarra ★★★★
()
Ответ на: комментарий от Rastafarra

>пробелы — это generic, в отличии от, а этого уже достаточно.

А космос это круто - и этого уже достаточно для дополнительного налога на зарплату в 20%.

r ★★★★★
()

В жизни не написал и строчки кода

Вариант-мечта.

buddhist ★★★★★
()
Ответ на: комментарий от tensai_cirno

Пробелы не нужны

g_object_class_install_property(
	gobject_class, PROP_SUPPRESS_V,
	g_param_spec_boolean(
		"suppress-v", "Suppress-V",
		"Whether the V component should be suppressed",
		FALSE, G_PARAM_READWRITE
	)
);

Для не боящихся количества строк можно и каждый параметр на отдельной строчке :}

Deleted
()

4 пробелами, которые ввожу кнопкой tab.

waker ★★★★★
()
Ответ на: комментарий от tensai_cirno

Угу, только такое выглядит хуже, как по мне.

Deleted
()
Ответ на: комментарий от DRVTiny

Всё просто. Один вообще-то не видно. Совершенно. Ну не выделяет он ничего, один пробел.

powerpc
()
Ответ на: комментарий от Rastafarra
type t1 = { 
        f1 : string;
        f2 : int
}

type _t_2_ = { 
        _f_1  : string;
        _f_2_ : int
}

type t = T1 of t1 | T2 of _t_2_

let v1 = { f1 = "tratata"; f2 = 18 }

let f v =
        match v with
                T1 t -> print_endline t.f1
                | T2 t -> print_endline t._f_1

let _ = f (T1 v1)

И что?

r ★★★★★
()

Одной табуляцией шириной в два пробела.

SpeedyWizard
()
Ответ на: комментарий от Rastafarra

>и некрасиво, что. особенно мач уродский вышел. где твое чувство прекрасного?

Чувство прекрасного в _настройке размера таба в редакторе_. А не в невидимых символах хранящихся в файлах. Настрой для ml в 2 вайтспейса - и сразу ощутишь чувство прекрасного. И что самое важное - в исходниках ничего менять не надо.

r ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.