Советы по созданию пробелов работают как вкладки в Visual Studio

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

Примечание. Я не намерен начинать обсуждение пробелов с вкладками здесь.

Я скорректировал мои настройки Visual Studio, чтобы заменить вкладки на 4 пробела, но у меня есть некоторые проблемы, связанные с использованием пробелов.

Например:

  • Как я могу легко отступать от кода? с tab chararaters, я только необходимо использовать backspace один раз, с пробелами мне нужно использовать backspace 4 раза.

  • Как я могу убедиться, что всегда есть правильное количество пробелов (не три или пять)?

  • Как я могу перемещаться по моему коду так быстро, как мог, с вкладками? (стрелка влево или вправо) к следующему отступу с вкладками, но перемещает только одну позицию с пробелами)

  • Как я могу игнорировать изменения пробелов при сравнении файлов?

Idealy, я бы хотел, чтобы эти 4-пространства для отступа работали одинаково для символов табуляции.

Я работаю в основном с файлами С# и XML.

Любые советы приветствуются!

Ответ 1

Чтобы отменить отступ, выделите строку и нажмите Shift + Tab. Или просто поместите в начало строки и нажмите Shift + Tab.

Кроме того, нажатие Tab будет вводить правильное количество пробелов для выравнивания на следующей 4-пространственной границе.

Чтобы убедиться, что отступ правилен, вы можете выделить область кода и выбрать "Редактировать" → "Дополнительно" - "Выбор формата", или вы можете просто перейти в конец блока, удалить конечную фигуру и добавить ее обратно. IDE переформатирует ваш код.

Итак, если у вас есть это:

void foo()
{
  f();
     int q = 32;
   for (; q > 0; --q)
     {
    // really messed up indentation
   }
  }

Затем удаление и повторное добавление окончательного '}' приведет к переформатированию всего метода.

Ответ 2

Такой позор, что Visual Studio не реализует интеллектуальный unindent. Вы можете найти эту функцию даже в самых простых бесплатных редакторах, похожих на блокноты.

К счастью, для упрощения автосогласования с помощью Backspace и Delete существует удивительный плагин, TabSanity от jedmao (Jed Hunsaker).

Этот пакет заставляет текстовый редактор Visual Studio обрабатывать tabs-as-spaces, как если бы они были фактически вкладками. То есть, backspace и удаление клавиш, перемещение курсора и выбор текста курсора мыши (в скором времени) не позволит каретке приземлиться в пространствах, которые сформировать вкладку.

Обратите внимание, что для него требуется, чтобы в качестве другого плавного плагина, EditorConfig.

Оба рекомендуется для текстовых маньяков "tabs-as-spaces".

Счастливое кодирование!