Изменение settings.txt на вкладки с 4 пробелами, как автоформатировать существующий код?

Заголовок говорит сам за себя, но для уточнения в файле preferences.txt я изменил переменную editor.tabs.size на 4. , который прекрасно работает и теперь создает вкладки с четырьмя пробелами, как и другие мои IDE для всех языков, на которых я пишу.

Однако мне сказали, что использование функции Инструменты->Автоформат обновит все строки в моих ранее написанных скетчах, которые имели стандартные вкладки с двумя пробелами, с новой компоновкой вкладок с четырьмя пробелами. .

Это не так. Независимо от того, CTRL-a я выбираю все и запускаю функцию автоматического форматирования, или оставляю все невыбранным, ничего не происходит.

Должен ли автоматический формат «исправлять» «неправильный» отступ в соответствии с новым стилем? Если да, то что я упускаю?

Сейчас я использую Arduino IDE 1.8.5 на Linux Mint, если это имеет значение.

, 👍1


1 ответ


Лучший ответ:

3

Автоматическое форматирование (astyle) использует отдельную конфигурацию для редактора (я знаю, безумие, но для вас это менталитет Arduino...).

Он использует отдельную конфигурацию, которая находится в папке lib вашей программы Arduino и называется formatter.conf.

  • Скопируйте этот файл в то же место, что и preferences.txt, чтобы он не был перезаписан при обновлении IDE.
  • Отредактируйте файл и измените indent=spaces=2 на indent=spaces=4

Автоматический формат теперь должен совпадать с форматом редактора.

,

Печаль во благо. Я скоро проверю это здесь @Majenko. Спасибо, @stevieb

Ух ты. Какой дотошно нелепый способ делать вещи. Ответ принят, поскольку он работал. Мне нужно будет сделать заметки для этого и обновить свои процедуры автоматизации, так как я вижу, что в будущем это пойдет на спад на новых настройках., @stevieb

*Автоформатер (астиль) использует отдельную конфигурацию для редактора* - с каким возможным обоснованием?, @Nick Gammon

@NickGammon Хотел бы я знать. Когда я внедрил astyle в UECIDE, он просто прочитал те же настройки форматирования (плюс дополнительные функции, которые не применяются) для редактора..., @Majenko