Відповідь полягає в тому, що не може бути єдиного належного символу відступу для кожної ситуації. Форматування за допомогою символів є негнучким і може спричинити конфлікт, коли в команді використовуються різні стилі.
Єдиний спосіб відформатувати код бездоганно та гнучко у різних стилях форматування - це зробити це практично, тобто без жодних символів відступу. Єдиний редактор коду, який я знаю, але це підтримує, - це той, який використовується у наведеному нижче прикладі:
Для демонстрації віртуального форматування , нижче скріншот з XSLT редактора * , який використовує цей метод вдавлювання (є також коротке відео тут ). Кожен символ у XSLT був виділений жовтим кольором для ілюстративних цілей, що дозволяє чітко бачити лише символи вкладки або пробілу у вмісті. Відступ коду обробляється системою відтворення редактора, регулюючи лівий край (який має білий фон).
Єдині провідні символи пробілу передують рядкам Книги , оскільки це буквальний текстовий зміст, а не код, ці символи простору повинні бути збережені.
За допомогою віртуального форматування ви вибираєте ширину відступу відповідно до середовища та стилю відступу, не зачіпаючи жодних символів у вихідному файлі. Ви навіть можете встановити ширину відступу на 0, якщо вам потрібен сплющений вид коду, як показано нижче:
Щоб порівняти це з форматуванням символів простору, той самий XSLT, відкритий у редакторі без віртуального форматування, перетворюється автоформатором цього редактора в такий:
Більш великі порожні жовті блоки на скріншоті вище чітко показують пробіли символів, додані форматором звичайного редактора. На жаль, їх зараз не можна відрізнити від реального контенту, тому XSLT доведеться змінити, щоб виправити цю проблему.
Підсумок
XSLT - це, мабуть, крайній випадок, але цей принцип справедливий для багатьох мов програмування: символи повинні використовуватися для контенту та шукати альтернативний метод, коли справа стосується форматування.
** Розкриття інформації: Редактор XSLT з віртуальним форматуванням був розроблений моєю власною компанією *