Опрос
Вопрос:
Какой размер и тип табуляции вы предпочитаете (можно выбрать 1 вариант или 2)
Вариант 1: 0
голосов: 1
Вариант 2: 1 (пробел)
голосов: 0
Вариант 3: 1 (табуляция)
голосов: 1
Вариант 4: 2 (пробелы)
голосов: 3
Вариант 5: 2 (табуляция)
голосов: 1
Вариант 6: 3 (пробелы)
голосов: 0
Вариант 7: 3 (табуляция)
голосов: 1
Вариант 8: 4 (пробелы)
голосов: 4
Вариант 9: 4 (табуляция)
голосов: 6
Вариант 10: 5 (пробелы)
голосов: 0
Вариант 11: 5 (табуляция)
голосов: 0
Вариант 12: 6 (пробелы)
голосов: 0
Вариант 13: 6 (табуляция)
голосов: 0
Вариант 14: 7 (пробелы)
голосов: 0
Вариант 15: 7 (табуляция)
голосов: 0
Вариант 16: 8 (пробелы)
голосов: 0
Вариант 17: 8 (табуляция)
голосов: 3
Вариант 18: больше (пробелы)
голосов: 0
Вариант 19: больше (табуляция)
голосов: 0
Вариант 20: разная, по контексту (пробелы)
голосов: 1
Вариант 21: разная, по контексту (табуляция(?))
голосов: 2
Речь о языках программирования, разметки и т. п., в которых используются многоуровневые отступы.
Цитировать4 (табуляция)
К этому, собственно, и привык. Наверное потому, что это стандарт такой.
А ещё бесит, когда отступы делают пробелами. :donno:
Либо 4, либо 8, одним символом (делать отступы серией пробелов (вместо одной табуляции), а потом отсчитывать обратно (вместо одного нажатия бекспейса) довольно неудобно, правильное же увеличение/снижение отступа на один уровень доступно не во всех редакторах). Плохо, что консенсуса в вопросе длины табуляции нет, из-за чего в разных редакторах размер отступов может меняться (и если при этом текст после отступов выравнивался под соседнюю строку с другим уровнем отступа, вся красота поплывет). 4 лучше подходит для кода с высоким уровнем вложенности, хотя 8 — более древний стандарт и часто воспринимается как «значение табуляции по умолчанию».
Цитата: Timiriliev от сентября 11, 2013, 16:26
А ещё бесит, когда отступы делают пробелами. :donno:
+100500. А Гринь тут когда-то говорил, что чоткие поцаны только пробелами пользуются.
В программном коде табуляторы не нужны.
Как раз там они больше всего и нужны.
Цитата: Hellerick от сентября 11, 2013, 16:44
В программном коде табуляторы не нужны.
Перловщикам и переносы строк и пробелы не нужны, а в Питоне так не попрыгаешь.
Теоретически, в правильном коде должны быть только пробелы. Но набирать такой код можно либо в избыточном IDE со всеми удобствами, либо в простеньком редакторе, рискуя сбиться на пробел-другой.
Цитата: maristo от сентября 11, 2013, 16:57
а в Питоне так не попрыгаешь
Это одна из причин, почему я так и не собрался учить этот язык, несмотря на его распространённость, нужность и полезность. Потому что я привык: если уж писать код, то оформлять его красиво (хотя бы для того, чтобы самому потом было удобнее читать и ориентироваться), в т.ч. теми же отступами. А для этого требуется, чтобы отступы не имели синтаксического значения. А когда кто-то додумался отступам дать синтаксическое значение, и тем самым отменить саму возможность оформить отступами красиво... Изврат это какой-то и неудобство. Примерно так же, как неудобно пойти гулять, шагая непременно и строго в ногу.
А что по-вашему является красивым оформлением отступами?
По мне так чтобы оформление отступами было красивым, оно должно в первую очередь совпадать с синтаксическим.
Цитата: Toman от сентября 11, 2013, 17:56
Это одна из причин, почему я так и не собрался учить этот язык, несмотря на его распространённость, нужность и полезность. Потому что я привык: если уж писать код, то оформлять его красиво (хотя бы для того, чтобы самому потом было удобнее читать и ориентироваться), в т.ч. теми же отступами. А для этого требуется, чтобы отступы не имели синтаксического значения.
А по мне так питон-код как раз весьма красив.
Синтаксизация отступов привела к единообразию оформления, никак не ухудшив его.
Ааааа, как меня бесят те, у кого 4. Особенно, когда это таб.
Цитата: amdf от сентября 11, 2013, 20:45
Ааааа, как меня бесят те, у кого 4. Особенно, когда это таб.
Срач? Поехали.
На мой взгляд, четыре — самое оптимальное расстояние, потому что если взять два, то отступы малозаметны, а если восемь, то пара вложеных конструкций убивают всю читаемость. Ну а некрасивые некруглые числа вряд ли есть смысл рассматривать.
1- и 2-пробельные табуляции действительно кто-то использует? :o
Цитата: amdf от сентября 11, 2013, 20:45Ааааа, как меня бесят те, у кого 4. Особенно, когда это таб.
:donno:
Ну извините.
Цитата: Python от сентября 11, 2013, 22:361- и 2-пробельные табуляции действительно кто-то использует? :o
Как вспомогательные.
Когда что-то уже отступленное надо ещё во что-то завернуть.
Цитата: amdf от сентября 11, 2013, 20:45
Ааааа, как меня бесят те, у кого 4. Особенно, когда это таб.
Вообще-то это странно. Когда это таб, то вы видите такой размер табуляции, который выставлен у вас, а не у тех, кто вас бесит. Или вас бесит сидеть за чужим редактором, где выставлен такой размер табуляции?
А сколько вы предпочитаете?
Цитата: amdf от сентября 11, 2013, 20:45
Ааааа, как меня бесят те, у кого 4. Особенно, когда это таб.
A iescio ia storonnic velicogo latinscogo alfavita.
Вообще, тут, видимо, надо разделять:
собственно indentation, которая превращает код из линейного списка строк в дерево в соответствии с семантикой программы,
и aligning, используемый для того, чтобы однотипные рядомстоящие строки кода выглядели как таблица:
const int One = 1;
const int Three = 3;
const int Thirteen = 14;
const int TwentySeven = 27;
const int Nine = 9;
Ясно, что для этого годятся только пробелы, т. к., во-превых, нужна посимвольная точность, а во-вторых, если туда вставлять табы, то код будет при всех других размерах таба расползаться до безобразия.
Редактировать такие псевдотаблицы неудобно — приходится выравнивать её после каждого редактирования. Конечно, если бы табуляция могла выставляться на произвольные позиции для отдельно взятых строк, как в «Уэрде», было бы гораздо удобнее, но такого в редакторах для кода не бывает, и сохранение информации о позициях табуляции в файле с кодом невозможно. Поэтому — пробелы.
А вот для индентации, наоборот, посимвольная точность вредна, и нужна именно поблочная, которую даёт таб. Текст с табами проще редактировать. К тому же, использование таба для индентов позволяет каждому читателю видеть его такого размера, какой ему нравится.
Некоторые смешивают indentation и aligning:
bool isGay = IsMale &&
HasLover &&
Lover.IsMale;
На мой взгляд, это отвратительно, т. к. такое форматирование приносит все «прелести» редактирования псевдотаблиц:
Меняем что-нибудь — всё съезжает:
bool isHomosexualMale = IsMale &&
HasLover &&
Lover.IsMale;
или оказывается где-то в правом конце экрана с огро-о-омным отступом слева:
private static readonly SomeWrapper<System.Nullable<bool>> IsHomosexualMale = IsMale &&
HasLover &&
Lover.IsMale;
Я всегда пишу так:
bool isGay =
IsMale &&
HasLover &&
Lover.IsMale;
— табличность сохранена, проблем с редактированием нет, размеры всех отступов стандартные.
Так что, мне кажется, табы — для индентации, пробеды — для псевдотаблиц, и незачем их смешивать.
А размер таба мне нравится 2 или в крайнем случае 3. 4 уже кажется большеватым. 8 — ужасно огромным.
Если бы я делал табуляцию пробелами, все бы плевались и переформатировали на 4. Зачем делать людям лишние сложности?
Цитировать1 (табуляция)
- 1 (6.3%)
Интересный выбор! Кто за него проголосовал?
.
А почему слово «Начальные» в строке подчёркнуто редактором?
Потому что среда разработки ненавидит кириллицу.
Цитата: amdf от сентября 12, 2013, 09:41(http://lingvoforum.net/index.php?action=dlattach;topic=61421.0;attach=42822;image)
Это C?
Хорошо, что точки-с-запятой автоматически в конце строк не проставляются...
Цитата: Bhudh от сентября 12, 2013, 12:16
Цитата: amdf от сентября 12, 2013, 09:41(http://lingvoforum.net/index.php?action=dlattach;topic=61421.0;attach=42822;image)
Это C?
Хорошо, что точки-с-запятой автоматически в конце строк не проставляются...
Да, это Си. Конечно хорошо, что не проставляются. Они и не должны автоматически проставляться. Где это видано.
Вот мои настройки для разных типов файлов:
HTM⌂IND=A⌂TS=Y⌂ES=L⌂TAB=0⌂PG=<H⌂PM=100⌂PAR=I⌂LW=240⌂LS=HTML⌂EV=internet^runtag⌂IN=internet^scharset⌂CMD=MExWin /O <FULL+>
HTML⌂IND=A⌂TS=Y⌂ES=L⌂TAB=0⌂PG=<H⌂PM=100⌂PAR=I⌂LW=240⌂LS=HTML⌂EV=internet^runtag⌂IN=internet^scharset⌂CMD=MExWin /O <FULL+>⌂TMPL=HTM
CSS⌂PAR=N⌂IND=A⌂TS=Y⌂TAB=4⌂LW=240⌂TMPL=HTM
ASM⌂RM=128⌂IL=9⌂IND=S⌂TS=Y⌂PAR=N⌂LS=Assembly⌂COMP=TASM⌂ST=ASM⌂CMD=assembly.bat <file>⌂CM=320⌂PG=PROC⌂PM=101
BAS⌂IND=A⌂PAR=N⌂LS=BASIC⌂TMPL=:BASIC^BASTEMP
BIN⌂TS=N⌂ES=B⌂TAB=0⌂RO=Y
CPP⌂RM=132⌂IND=S⌂TAB=2⌂TS=Y⌂PAR=N⌂LS=C⌂COMP=Turbo C⌂CMD=bcc.exe <file>⌂CM=200
C⌂RM=132⌂IND=S⌂TAB=2⌂TS=Y⌂PAR=N⌂LS=C⌂COMP=Turbo C
DAT⌂PG=•⌂PM=1⌂TS=N⌂TAB=0⌂PAR=N⌂ES=D
DEB⌂RM=88⌂IL=9⌂TS=Y⌂PAR=N⌂LS=Assembly⌂ST=DEB⌂TMPL=ASM⌂CMD=:ASM^DEBMAKE
DFL⌂PAR=N⌂TS=N⌂ES=B⌂TAB=0⌂LW=128
DGS⌂CMD=:StartFil <FULL+>⌂RM=72⌂TAB=0⌂TS=N⌂LS=HTML⌂ES=D
HEB⌂RM=80⌂WD=R⌂TAB=4⌂PAR=B
H⌂RM=132⌂IND=S⌂TAB=2⌂TS=Y⌂PAR=N⌂LS=C⌂COMP=Turbo C
INC⌂LS=Assembly⌂IL=5⌂RM=160⌂TAB=4⌂IND=S⌂PAR=N
INI⌂PG=[⌂PM=1⌂TAB=0⌂PAR=N⌂ES=D
LNK⌂PAR=N⌂TS=N⌂ES=B⌂TAB=0⌂RM=220
LST⌂PG=PROC⌂LS=Assembly⌂TS=Y⌂PAR=N
MAK⌂CMD=make -f<FILE>⌂RM=80⌂TAB=4⌂TS=Y
MCR⌂LS=Assembly⌂IL=5⌂RM=160⌂TAB=4⌂IND=S⌂PAR=N⌂PG=MACRO⌂PM=101
MNU⌂PG=[⌂PM=1⌂TAB=0⌂TS=Y⌂DOS=:UserMenu /F=<FILE>⌂ES=D
PAS⌂RM=128⌂IND=S⌂TAB=2⌂TS=Y⌂PAR=N⌂LS=Pascal⌂COMP=Turbo Pascal⌂CMD=C:\PASCAL\TURBO7\TPC.EXE /e<me_path> /b <file>⌂CM=160
PIF⌂PAR=N⌂TS=N⌂ES=B⌂TAB=0⌂RM=220
REP⌂PG=#⌂PM=1⌂PAR=N⌂ES=D⌂TAB=0
RSP⌂CMD=tlink /s /t /yx @<FULL>
SRC⌂IL=3⌂DOC=D⌂IND=S⌂TAB=2⌂TS=Y⌂PAR=N⌂PG=$MACRO ⌂PM=101⌂LS=Multi-Edit⌂COMP=Multi-Edit⌂CMD=<me_path>memac.com /p<me_path> <file>⌂CM=155⌂ES=D
S⌂DOC=D⌂IND=S⌂TAB=2⌂TS=Y⌂PAR=N⌂LS=C
TBL⌂PG=•⌂PM=1⌂TAB=4⌂IL=3⌂RM=76
TEM⌂RM=132⌂DOC=D⌂IND=A⌂TAB=4⌂TS=Y⌂PAR=N⌂PG=MACRO ⌂LS=TEML⌂COMP=Turbo C⌂CMD=temc.exe <file> <prog_path>tcconfig.tc⌂CM=120
TNK⌂PG= 1 ⌂WD=R⌂DOC=D⌂PAR=N⌂RO=Y
TXM⌂PG=•⌂PM=1⌂ST=Music^Play
TXT⌂TAB=4⌂RM=76
AHK⌂PG=::⌂LS=C⌂PAR=N⌂IND=S⌂TS=Y⌂TAB=0
AHK | ─ |
BIN | ─ |
DAT | ─ |
DFL | ─ |
DGS | ─ |
HTML | ─ |
HTM | ─ |
INI | ─ |
LNK | ─ |
MNU | ─ |
PIF | ─ |
REP | ─ |
CPP | 2 |
C | 2 |
H | 2 |
PAS | 2 |
SRC | 2 |
S | 2 |
CSS | 4 |
HEB | 4 |
INC | 4 |
MAK | 4 |
MCR | 4 |
TBL | 4 |
TEM | 4 |
TXT | 4 |
ASM | 8 |
Цитата: sasza от сентября 11, 2013, 16:37
Цитата: Timiriliev от сентября 11, 2013, 16:26А ещё бесит, когда отступы делают пробелами. :donno:
+100500
:+1:
Цитата: Bhudh от сентября 12, 2013, 01:27
Цитата: Python от сентября 11, 2013, 22:361- и 2-пробельные табуляции действительно кто-то использует? :o
Как вспомогательные.
Когда что-то уже отступленное надо ещё во что-то завернуть.
Т.е., речь об обычной 4-пробельной табуляции (которая после лишних пробеловавтоматически сокращается), а отступ, не кратный 4, реализовывается пробелами — это имелось в виду?
Именно.
Запомните, детки, отступ - 2 пробела.
Алсо, ваши джаваскрипты - это игрушки. Только Си, только хардкор.
Отметил «разная, по контексту (пробелы)» — обычно люблю 2, но в пѵѳоне рекомендуется 4, и свои начинания на нём оформляю как 4 пробела. Обычно пробелы генерируются из нажатия Tab в редакторе сами.
А не хотите обсудить sans/serif для шрифта кода? Создал опрос. (http://lingvoforum.net/index.php/topic,61446.0.html)
Цитата: amdf от сентября 12, 2013, 20:33
Запомните, детки, отступ - 2 пробела.
При более чем трех уровнях вложенности довольно неудобно — уровни путаются. Разве что в сочетании с (wiki/en) Indent_style#GNU_style (http://en.wikipedia.org/wiki/Indent_style#GNU_style) — тогда два пробела перед скобкой и еще два внутри. Но я предпочитаю (wiki/en) Indent_style#Whitesmiths_style (http://en.wikipedia.org/wiki/Indent_style#Whitesmiths_style)
Цитата: amdf от сентября 12, 2013, 20:33
Запомните, детки, отступ - 2 пробела.
+1
Цитата: Python от сентября 13, 2013, 00:55
При более чем трех уровнях вложенности довольно неудобно — уровни путаются.
Как раз при более чем трех уровнях вложенности довольно удобно — текст не отъезжает на пол-экрана вправо.
Цитата: amdf от сентября 12, 2013, 20:33
Запомните, детки, отступ - 2 пробела.
Алсо, ваши джаваскрипты - это игрушки. Только Си, только хардкор.
Manera pis'ma tipichnogo şcol'nica.
Цитата: Timiriliev от сентября 13, 2013, 05:53
Manera pis'ma tipichnogo şcol'nica.
Heto ge parodija na tacuju maneru pisjma.
Цитата: Тайльнемер от сентября 13, 2013, 06:19
Heto ge parodija na tacuju maneru pisjma.
Закон По работает везде.
Цитата: Тайльнемер от сентября 13, 2013, 04:45
Цитата: amdf от сентября 12, 2013, 20:33
Запомните, детки, отступ - 2 пробела.
+1
Цитата: Python от сентября 13, 2013, 00:55
При более чем трех уровнях вложенности довольно неудобно — уровни путаются.
Как раз при более чем трех уровнях вложенности довольно удобно — текст не отъезжает на пол-экрана вправо.
Лучше уж совсем без отступов, чем с недоотступами.