Какой Линукс выбрать?
ЛУЧШЕЕ ИЗ ЛУЧШЕГО
ДЛЯ НАЧАЛА: ЖИВЫЕ
- Knoppix - Линукс за пять минут
- Puppy Linux - Хороший друг
ДЛЯ ДЕЛА: ПРОФИ
- Debian - Он такой один
- CentOS - Копейка рубль бережёт!
- Fedora - По следам Red Hat
- Ubuntu Linux - Мы одной крови!
- ASP Linux - Тотально русский
- Mandriva Linux - Красота и удобства
- openSUSE - Настоящее немецкое качество
- Slackware - Линукс из кубиков
ДЛЯ ДЕЛА: РОЛЛЫ
- ArchLinux - Гениальное - просто!
- PCLinuxOS - Просто линукс
- Aptosid - Почувствуй силу!
ДЛЯ ДЕЛА: СОБЕРИ САМ
- Gentoo - Каждому своё
- LinuxFromScratch - Линукс с нуля
ДЛЯ ДЕЛА: ЛЁГКИЕ
- MeeGo - Повелитель нетбуков
- TinyMe - Размер имеет значение!
- gOS - Хороша Маша!
- Deli Linux - Старость в радость!
ЗАЩИТА
- Openwall - Не стучите, закрыто!
- BackTrack/WHAX - Вам, хакеры!
МУЛЬТИМЕДИЯ
- 64 Studio - Скорость не проблема!
- Planet CCRMA - Работа со звуком
ПРИЛОЖЕНИЯ
- OpenDisc - Для несвободных
- Свободный офис - 100% свободный офис
ДЛЯ ЗАБАВЫ
- Линукс Геймер - Boot & Play!
- VegaStrike - Каждому по планете!
ЭКСПЕРИМЕНТ
- коЛинуксы - Не выходя из Виндоус
- GoboLinux - Очевидно и вероятно
- ReactOS - Освободите Виндоус!
РОДНЯ
- BSD-семейство - На плечах гигантов
УСТАРЕВШИЕ
- OpenSolaris - + Belenix До звёзд рукой подать
- Блин - Живой русский Линукс
- MOPS Linux - Русская борзая
- Freespire - Огонь, вода и медные трубы
ДЕКАБРЬ
|
06 |
13 |
20 |
27 |
|
07 |
14 |
21 |
28 |
| 01 |
08 |
15 |
22 |
29 |
| 02 |
09 |
16 |
23 |
30 |
| 03 |
10 |
17 |
24 |
31 |
| 04 |
11 |
18 |
25 |
|
| 05 |
12 |
19 |
26 |
|
АРХИВ (2003 - 2011)

НАШИ ПРОЕКТЫ
ПИНГВИН В КАРМАНЕ
MATRIX GL
ПОЛЕЗНЫЕ СОВЕТЫ
ЗАКЛАДКИ
ЧаВО
КОНТАКТЫ
RSS
RR
|
indent - программа для автоматического форматирования C-исходников
У каждого программиста есть свой стиль оформления исходников, включающий в себя размеры отступов их наличие или отсутствие в определенных конструкциях, расположение фигурных скобок, наличие/отсутствие пробелов после запятых, возле скобок и т.д. Программа indent преобразовывает файлы между такими стилями, позволяя регулировать огромное количество параметров, включая вышеперечисленные. После составления файла профиля в соответствии со своими предпочтениями, программист может пропустить любой исходный текст через indent и получить его на выходе оформленным так, как он предпочитает (это, например, можно сделать для большей удобочитаемости, ну или чтобы приспособить кусок чужого кода для своей программы icon_wink.gif).
У indent есть множество ключей, контролирующих различные параметры стиля. Все они имеют длинную и короткую форму записи. Большинство параметров имеют значение "да" или "нет", но некоторые (ширина текста или отступ, например) имеют числовое значение. Здесь невозможно описать все параметры, так что читайте man indent или info indent, где для многих параметров даже приведены примеры оформления кода в соответствии с тем или иным значением параметра. Но все же рассмотрим 1 пример. Выражение if {} можно оформить так:
if (a) {
b();
}
можно так:
if (a)
{
b();
}
а можно даже так:
if (a)
{
b();
}
При этом размеры отступов тоже могут быть различными. Так вот, ключ -br (--braces-on-if-line) включает расположение открывающей скобки на одной строке с if (как в 1-м варианте), а -bl (--braces-after-if-line) - на следующей строке. -bli (--brace-indent) определяет отступ между if и фигурными скобками (во 2-м примере используется -bli0, а в 3-м -bli2).
Интересной возможностью indent является выборочное отключение обработки отдельных блоков файла. Для этого надо заключить необрабатываемый блок в комментарии /* *INDENT-OFF* */ и /* *INDENT-ON* */.
Несмотря на то, что indent, как правило, не меняет сам код, меняя лишь оформление, целостность кода все же не гарантируется, так что он может (что, впрочем, маловероятно) и перестать компилироваться. И еще, indent "не знает" C++, так что специфичные для С++ конструкции в лучшем случае останутся такими же, как были в исходном файле (а в худшем испортится их форматирование ).
Конечно, все опции indent можно вводить в командной строке, но лучше после изучения их всех и определения набора подходящих под Ваш любимый стиль записать их (по 1 на строчку) в файл ~/.indent.pro и запускать indent в дальнейшем без опций. Для тех, кому интересно, приведу свой профиль:
--blank-lines-after-declarations
--blank-lines-after-procedures
--braces-after-struct-decl-line
--blank-lines-before-block-comments
--brace-indent0
--braces-after-if-line
--case-brace-indentation0
--cuddle-do-while
--continuation-indentation4
--case-indentation2
--space-after-cast
--indent-level2
--continue-at-parentheses
--no-tabs
--no-space-after-function-call-names
--dont-cuddle-else
--no-space-after-parentheses
--space-after-for
--space-after-if
--space-after-while
--space-special-semicolon
--verbose
--dont-break-procedure-type
Вернуться к оглавлению
|