Sublime Text 3 - спорадические ошибки отступов в файлах Python

655
JL Peyret

Возвышенный текст, сборка 3175, Macos

Время от времени я случайно получаю IndentationError: unexpected indentсообщение о ранее работающем файле Python.

Проверка файла в редакторе не показывает проблему с отступом, и я подозреваю, что вкладка каким-то образом проникла.

Нажав в правом нижнем углу окна, Spacesрядом с Pythonкоторым указывается исходный язык, я могу выбрать Convert indentation to spaces. Это «изменяет файл», который теперь отображается как измененный и будет запрашивать сохранение в случае закрытия. И моя проблема решена.

Это происходило только с прошлых 2 или 3 месяцев, и у меня никогда не было этой проблемы раньше, поэтому я предполагаю, что это было недавнее изменение в Sublime, которое иногда искажает или отступ табуляции или пробел.

Это очень раздражает, так как а) нет признаков того, что вызвало проблему, и б) он может быть счастлив в любое время в любом файле, который был отредактирован в определенный момент. И тем более, когда он попадает в конец долгого процесса сборки.

Как мне избежать этого? Я попытался создать Packages/User/Python.sublime-settingsфайл со следующим, но это не помогло.

// These settings override both User and Default settings for the Python syntax { "translate_tabs_to_spaces" : 1 } 
0

1 ответ на вопрос

2
idleberg

Насколько я знаю, translate_tabs_to_spacesединственное принимает булевы значения, поэтому вам нужно написать свои настройки следующим образом:

{ "translate_tabs_to_spaces": true } 

Я также рекомендую установить draw_white_spaceна all. Это выделяет все пробелы, что облегчает отличать пробелы от вкладок:

enter image description here

так как это была перемежающаяся проблема, я немного подождал, но это помогло JL Peyret 5 лет назад 0