Линус Торвальдс повторяет свою позицию по поводу табуляции вместо пробелов с помощью ловушки ядра

Линус Торвальдс повторяет свою позицию по поводу табуляции вместо пробелов с помощью ловушки ядра


Линус Торвальдс повторяет свою позицию по поводу табуляции вместо пробелов с помощью ловушки ядра

Ядро Linux приветствует вклад каждого. Однако среди этих участников именно Линус Торвальдс, чьи предложения по коммитам могут привести к тому, что основная и знаковая ветка ядра будет носить его имя. Известный своим резким поведением, Торвальдс с 2018 года прилагает усилия, чтобы быть более вежливым. Эта эволюция была недавно продемонстрирована в его ответе на спорное заявление, касающееся использования табуляции.

На прошлой неделе коммит изменил только одну вещь в одной строке, заменив символ табуляции пробелом. Данная настройка была направлена ​​на улучшение чтения парсера Kconfig без возникновения ошибок. Однако Линус Торвальдс отреагировал другим коммитом, как сообщает The Register, намеренно добавив скрытые вкладки. Пытаясь разрешить продолжающиеся споры о табуляции и пробелах, Торвальдс осознал важность того, чтобы сбои парсера, связанные с табуляцией, стали более заметными. Хотя первоначально он воздерживался от внесения дополнительных изменений, он признал, что это может быть необходимо, если аналогичные проблемы сохранятся.

Дошли до этого места в тексте и обнаружили, что концепция неясна? Позвольте мне попытаться прояснить: дебаты по поводу использования табуляции или пробелов в кодировании, вероятно, никогда не приведут к окончательному решению, и коллективные усилия, приложенные к этому, потенциально могут принести достаточную силу для нескольких стран. Однако ядро ​​Linux придерживается своего уникального стиля кодирования, основанного на «K&R», отсылке к Кернигану и Ритчи, авторам влиятельной книги «Язык программирования C». Следовательно, если вы собираетесь добавить код в ядро ​​Linux, убедитесь, что вы используете табуляции, особенно восьмисимвольные — практика, уходящая корнями в историю телетайпов и построчных принтеров.

Прасад Пандит непреднамеренно вызвал бурную реакцию, попытавшись внести небольшую корректировку в ядро ​​для облегчения интерпретации инструментом синтаксического анализа, заменив один символ на пробел.

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

Чтобы было яснее и проще понять, как насчет этого:

да, это прискорбно, но в системах Unix часто возникают дебаты по поводу использования табуляции вместо пробелов, и инструмент автоматизации сборки make известен тем, что подвержен этой проблеме. Однако тот факт, что это давняя проблема, еще не делает ее приемлемой.

В четвертом кандидате ядра Linux 6.9 Торвальдс внес некоторые скрытые изменения вкладок, которые стали заметны. В объявлении о выпуске этой версии он упомянул, что в то время не произошло ничего особенного.

Раскрытие информации: автор является вкладчиком, поскольку он имеет какое-либо представление о том, что он делает.

Это сообщение было обновлено в 18:33 по восточному времени, чтобы исправить некоторые проблемы с переносом строк в цитате Торвальдса. Ирония была должным образом отмечена. Лучшая ссылка на Tabs Vs. Также были включены дебаты о космосе.

Смотрите также

2024-04-17 02:25