LINUX.ORG.RU

Форматирование кода. Tab || whitespace?


0

0

По мотивам http://sotakone.habrahabr.ru/blog/77155

* Никаких табов в исходниках, одни только пробелы.
* Никаких лишних пробелов в конце строки. Никогда. Ни при каких обстоятельствах.

Если второе это обычное правило хорошего тона, то второе есть хороший вопрос и давний холивор.
С некоторых пор я привык всегда во всех редакторах включаю подсветку пробелов и табов.
Последнее время, программирую на C и Python. Если на С и в некоторых самописных скриптах часто встречаются табы, то в больших проектах везде стоят пробелы.
Вопрос: Почему пробелы лучше табов? Чем?
В старом cpp@c.j.r было обсуждение Tabs vs WSs и пришли к выводу что у табов есть такие плюсы:
1) Размер таба можно менять в редакторе, что позволяет корректировать отображение кода(а точнее отступы) под себя/свой монитор.
2) 1 таб легче ввести нажав один раз нужную кнопку.
3) 1 таб легче удалить нажав один раз Backspace.

А у WS..

В общем, хотелось бы услышать мнение ЛОР'овцев.


4 пробела. Так написано в PEP-8, для других языков так же оказалось удобно.

gedit умеет вставлять 4 пробела при нажатии на таб и стирать их на бекспейс.

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

>В нормальной IDE по нажатию табуляции вставляется 4 пробела, это первое.

В нормальной ИДЕ это настраивается.

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

> Это как? У вас в IDE шрифт не моноширный?

Это так, что где-то в соседском коде будет таб, а где-то - таки четыре пробела.

плюс мне удобно отступ в 2 симлова, соседу в 5.

Да какая в жопу разница??? Важнее, чтобы код был выровнен, а уж как он там выровнен - дело глубоко десятое.

Настрой редактор. Даже вижуалстудия умеет заменять табы на пробелы при вводе.

Нахрена?

Гм. Чтобы заменять табы на пробелы при вводе.

Так нефиг эти пробелы в начале строки дражать - для этого достаточно делать отступы табуляцией

Ещё раз, для тупых. Код. Пишет. Не. Один. Человек. Ферштейн?

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

> Но писать такое, имхо, неудобно и error-prone, если можно так выразиться.

Неудобно - это вкусовщина. А вот error-prone - это таки да.

Miguel ★★★★★
()

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

ну уж нет, если форматировать имея в виду, что таб, скажем, 8 символов, то при изменении таба на 4 символа форматирование в общем случае полетит в тартарары. Без пробелов то все равно не обойтись, так? А пробелы как занимали 1 один символ, так и будут занимать 1 символ.

2) 1 таб легче ввести нажав один раз нужную кнопку.

3) 1 таб легче удалить нажав один раз Backspace.

справедливо для блокнота, да.

Итог: если можно, то лучше без табов. Но если досталось в наследство, то куда деваться - пусть безобразно, зато однообразно.

SilentBob
()

Табы и ничего кроме табов.

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

>В больших проектах исходные тексты форматируют разные люди, у которых не совпадает размер шага табуляции (2, 4, 6 или 8 символов).

Шаг табуляции это ОДИН символ. Всегда. Описанные тобой проблемы могут быть только иззы замены таба несколькоми пробелами.

качаем архив с kernel.org :))

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