Изменить отступ VsCode в C - PullRequest
2 голосов
/ 11 апреля 2020

Доброе утро, сэр,

Я использую код VisualStudio для кодирования на C языке. Недавно я обнаружил расширение Преттиера для C, (и "C / C ++")

. Я увидел, что могу добавить автоматический c отступ, когда добавлю ";" или когда я сохранил с помощью Ctrl + S.

с добавлением строк;

"editor.formatOnSave": true,
"editor.formatOnType": true

в настройках Visual Studio. json файл.

Теперь, несмотря на почти идеальный отступ, я хотел внести некоторые коррективы, например, тот факт, что после инициализации типа переменной int

не пробел, а табуляция, как этот;

int     x;
//rather than;
int x;

, а также для типа функций

void    ft_function(int x);
//rather than ;
void ft_function(int x);

(Поскольку у меня есть стандарт, которому нужно соответствовать, и когда я сохраняю или что-то, все отступы этих инициализаций переменных больше не встречаются мой стандарт)

Я ничего не знаю о json, и я только что обнаружил функцию, поэтому мне было интересно, знают ли гении на форуме что-нибудь об этом, и если да, то как? По крайней мере, некоторые выводы ^^

Я нашел настройку "C_Cpp.clang_format_style": "{ BasedOnStyle: LLVM, AlignConsecutiveDeclarations: true }"

Она работает для выравнивания моих переменных, но не для функций. Таким образом, мои функции получили авто-отступ следующим образом:

int ft_strlen(char *str) {
  int i;

  i = 0;
  while (str[i])
    i++;
  return (i);
}

Я бы хотел что-то вроде:

int     ft_strlen(char *str) {
  int   i;

  i = 0;
  while (str[i])
    i++;
  return (i);
}

1 Ответ

0 голосов
/ 11 апреля 2020

Стиль, который вы реализуете sh для использования в некоторых известных французских школах программирования, таких как Epita , Epitech и 42 , не так широко распространен. реализовано в средах программирования. Исходное описание на французском языке: здесь .

Использование вкладок вместо пробелов вышло из моды, поскольку настройки вкладок различаются в разных средах, что нарушает выравнивание кода и комментариев, но для по какой-то причине они предписаны этим документом.

Выравнивание идентификаторов при их документировании - это просто произвольное ограничение, чтобы научить программистов уделять большое внимание деталям и учиться соблюдать местные правила. Например, на 42 они запускают программы учеников с помощью программы проверки стиля и терпят неудачу в программах, которые нарушают строгие правила представления.

Среди других удивительных правил , действующих там, программистов учат использовать while вместо for, что вызывает большие сомнения.

Точно так же я не могу придумать вескую причину заключить в скобки возвращаемое значение в операторах return.

Конфигурирование кода Visual Studio для переформатирования кода для этих правил не кажется простым без дополнительного кода: если вы найдете утилиту для переформатирования кода в соответствии с этими правилами, вы сможете зарегистрировать ее в качестве пользовательского фильтра. Ищите moulinette на github ... Но если вы не можете его найти, напишите его сами, это хорошее упражнение и будет очень полезно для ваших сокурсников. Вы могли бы даже исправить VS C.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...