Команда indent в Linux
Команда Linux indent используется для настройки форматирования файлов исходного кода C.
indent может распознавать файлы исходного кода C и форматировать их, чтобы программистам было легче читать.
Синтаксис
indent [参数][源文件] или indent [参数][源文件][-o 目标文件]
Parameters:
- -bad или --blank-lines-after-declarations Добавляет пустую строку после разделов объявлений.
- -bap или --blank-lines-after-procedures Добавляет пустую строку после процедур.
- -bbb или --blank-lines-after-block-comments Добавляет пустую строку после разделов блочных комментариев.
- -bc или --blank-lines-after-commas В разделах объявлений переносит на новую строку при появлении запятой.
- -bl или --braces-after-if-line "{" после if (или else, for и т. д.) находится на другой строке, чем блок выполнения, а "}" — на своей собственной строке.
- -bli<indent spaces> или --brace-indent<indent spaces> Задаёт количество пробелов для отступа { }.
- -br или --braces-on-if-line "{" после if (или else, for и т. д.) находится на той же строке, что и блок выполнения, а "}" — на отдельной строке.
- -bs или --blank-before-sizeof Добавлять пробел после sizeof.
- -c<column> или --comment-indentation<column> Размещать комментарии в указанном столбце справа от программного кода.
- -cd<column> или --declaration-comment-column<column> Размещать комментарии в указанном столбце справа от объявлений.
- -cdb или --comment-delimiters-on-blank-lines Помещать разделители комментариев на отдельную строку.
- -ce или --cuddle-else Размещать else после "}" (конца блока выполнения if).
- -ci<indent spaces> или --continuation-indentation<indent spaces> Если оператор слишком длинный и переносится, указывать количество пробелов для отступа после переноса строки.
- -cli<indent spaces> или --case-indentation<indent spaces> Количество пробелов для отступа switch при использовании case.
- -cp<column> или --else-endif-column<column> Размещать комментарии в указанном столбце справа от операторов else и else-if.
- -cs или --space-after-cast Добавлять пробел после приведения типа.
- -d<indent spaces> или --line-comments-indentation<indent spaces> Задавать отступ для комментариев, которые не размещены справа от программного кода.
- -di<column> или --declaration-indentation<column> Размещать переменные в разделах объявлений в указанном столбце.
- -fc1 or --format-first-column-comments Задать формат для комментариев, размещённых в самом начале каждой строки.
- -fca or --format-all-comments Задать формат для всех комментариев.
- -gnu or --gnu-style Указать использование стиля GNU; это значение по умолчанию.
- -i<spaces> or --indent-level<spaces> Задать количество пробелов для отступа.
- -ip<spaces> or --parameter-indentation<spaces> Задать количество пробелов отступа для параметров.
- -kr or --k-and-r-style Указать использование стиля Кернигана и Ритчи.
- -lp or --continue-at-parentheses Если оператор слишком длинный и переносится, и содержит круглые скобки, выравнивать по вертикали начальный столбец каждой строки внутри круглых скобок.
- -nbad or --no-blank-lines-after-declarations Не добавлять пустую строку после разделов объявлений.
- -nbap or --no-blank-lines-after-procedures Не добавлять пустую строку после процедур.
- -nbbb or --no-blank-lines-after-block-comments Не добавлять пустую строку после разделов блочных комментариев.
- -nbc or --no-blank-lines-after-commas В разделах объявлений не переносить на новую строку, даже если появляется запятая.
- -ncdb or --no-comment-delimiters-on-blank-lines Не размещать разделители комментариев на отдельной строке.
- -nce или --dont-cuddle-else Не размещайте else после "}".
- -ncs или --no-space-after-casts Не добавляйте пробел после приведения типа.
- -nfc1 или --dont-format-first-column-comments Не форматируйте комментарии, расположенные в самом начале каждой строки.
- -nfca или --dont-format-comments Не форматируйте никакие комментарии.
- -nip или --no-parameter-indentation Не делайте отступ для параметров.
- -nlp или --dont-line-up-parentheses Когда инструкция слишком длинная и переносится и содержит круглые скобки, не выравнивайте по вертикали начальный столбец каждой строки внутри круглых скобок.
- -npcs или --no-space-after-function-call-names Не добавляйте пробел после имён вызываемых функций.
- -npro или --ignore-profile Не читайте конфигурационный файл indent .indent.pro.
- -npsl или --dont-break-procedure-type Поместите тип процедуры и имя процедуры в одну строку.
- -nsc или --dont-star-comments Не добавляйте звёздочку (*) слева от комментариев.
- -nsob или --leave-optional-semicolon Не обрабатывайте дополнительные пустые строки.
- -nss или --dont-space-special-semicolon Если раздел for или while содержит только одну строку, не добавляйте пробел перед точкой с запятой.
- -nv или --no-verbosity Не отображать подробную информацию.
- -orig или --original Использовать стиль Berkeley.
- -pcs или --space-after-procedure-calls Добавлять пробел между именем вызываемой функции и "{".
- -psl или --procnames-start-lines Помещать тип процедуры в строку перед именем процедуры.
- -sc или --start-left-side-of-comments Добавлять звездочку (*) слева в каждой строке комментария.
- -sob или --swallow-optional-blank-lines Удалять лишние пустые строки.
- -ss или --space-special-semicolon Если раздел for или while состоит только из одной строки, добавлять пробел перед точкой с запятой.
- -st или --standard-output Отображать результат на стандартном устройстве вывода.
- -T Устанавливать отступ для имен типов данных.
- -ts<spaces> или --tab-size<spaces> Задать длину табуляции.
- -v или --verbose Отображать подробную информацию во время выполнения.
- -version Отображать информацию о версии.
Описание форматирования кода в indent
| используемые параметры indent | Значение | Значение |
|---|---|---|
| --blank-lines-after-declarations | bad | Добавлять пустую строку после объявлений переменных. |
| --blank-lines-after-procedures | bap | Добавлять пустую строку после конца функции. |
| --blank-lines-before-block-comments | bbb | Добавлять пустую строку перед блочными комментариями. |
| --break-before-boolean-operator | bbo | Для длинных строк переносите перед логическими операторами. |
| --blank-lines-after-commas | nbc | В объявлениях переменных не разрывайте строки на переменных, разделённых запятыми. |
| --braces-after-if-line | bl | Поместите "if" и "{" на две отдельные строки. |
| --brace-indent 0 | bli0 | Не делайте дополнительный отступ для "{". |
| --braces-after-struct-decl-line | bls | При определении структуры размещайте "struct" и "{" на отдельных строках. |
| --comment-indentationn | c33 | Комментарии после операторов начинаются с колонки 33. |
| --declaration-comment-columnn | cd33 | Комментарии после объявлений переменных начинаются с колонки 33. |
| --comment-delimiters-on-blank-lines | ncdb | Не преобразовывайте однострочные комментарии в блочные комментарии. |
| --cuddle-do-while | ncdw | Для "do --- while" поместите "while" и предшествующую "}" на новую строку. |
| --cuddle-else | nce | Поместите "else" и предшествующую "}" на новую строку. |
| --case-indentation 0 | cli0 | Операторы case в switch имеют отступ 0 пробелов. |
| --else-endif-columnn | cp33 | Комментарии после #else, #endif начинаются с колонки 33. |
| --space-after-cast | cs | Добавьте пробел после преобразования типа |
| --line-comments-indentation n | d0 | Однострочные комментарии (не начинающиеся с 1-го столбца) не имеют отступа слева |
| --break-function-decl-args | nbfda | Выкл.: параметры функции по одному в строке |
| --declaration-indentationn | di2 | Объявления переменных, переменные начинаются со строки 2, т. е. выравнивание не требуется |
| --format-first-column-comments | nfc1 | Не форматировать комментарии, начинающиеся с первой строки |
| --format-all-comments | nfca | Не включайте переключатель для форматирования всех комментариев |
| --honour-newlines | hnl | Предпочитать разрывать длинные строки в позициях переводов строк во входных данных. |
| --indent-leveln | i4 | Установите отступ равным числу символов; если он кратен размеру табуляции, используйте для отступа табуляцию, иначе используйте пробелы. |
| --parameter-indentationn | ip5 | В определениях функций старого стиля описания параметров имеют отступ в 5 пробелов |
| --line-length 75 | l75 | Самая длинная некомментарная строка — 75 |
| --continue-at-parentheses | lp | Строки продолжения начинаются с открывающей скобки, находящейся на предыдущей строке |
| --space-after-procedure-calls | pcs | Вставлять пробел между функцией и "(" |
| --space-after-parentheses | nprs | Не вставлять пробелы после "(" или перед ")" |
| --procnames-start-lines | psl | Определять имя функции и тип возвращаемого значения на двух строках |
| --space-after-for | saf | Пробел после for |
| --space-after-if | sai | Пробел после if |
| --space-after-while | saw | Пробел после while |
| --start-left-side-of-comments | nsc | Не добавлять * в генерируемых блочных комментариях |
| --swallow-optional-blank-lines | nsob | Не удалять пустые строки, которые могут быть добавлены |
| --space-special-semicolon | nss | Для однострочного оператора for или while не ставить пробел перед ";" |
| --tab-size | ts4 | Одна табуляция — это 4 пробела (должна без остатка делить "-in") |
| --use-tabs | ut | Использовать табуляцию для отступов |
Справочник команд Linux