3

Автоопределение не работает на Notepad++ правильно. Я не могу найти эквивалентный файл SciTE . Настройки меню -> Настройки -> MISC -> Авто-отступ отмечен. Я не могу найти другие настройки отступа Python, кроме меню « Настройки» -> « Настройки» -> « Настройки языка / вкладки» -> «Настройки вкладки по умолчанию» -> «Python» -> размер 4, заменить пробелом.

if True:
pass

Но он продолжает отступ, если отступ вручную:

if True:
    #foo
    pass

В SciTE это работает как задумано. Я нашел переменную, которая контролирует это:

# python.properties
statement.indent.$(file.patterns.py)=5 class def elif else except finally for if try while with

SciTE:

if True:
    pass

2 ответа2

3

Этот вопрос заслуживает обновленного ответа: теперь существует плагин Python Indent, который при включении (Главное меню> Расширение> Python Indent> Enable) автоматически отступает при вводе Python. Новые строки после двоеточия : как в def foo(): отступ следующей строки, в результате чего:

def foo():
    """ works """
    pass

В текущих версиях Notepad++ поставляется диспетчер плагинов (Главное меню> Расширения> Диспетчер плагинов), что делает установку плагина очень простой.

2

Большинство разработчиков программ для редактирования текста неправильно используют имя авто-отступа, как и Notepad++, который имеет только "поддерживать отступ".

Вы можете использовать плагин NppAutoIndent.

В описании плагинов Directory for Notepad++ говорится:

Плагин NppAutoIndent имеет «умные» отступы для языков стиля C, таких как C/C++, PHP, Java и тому подобное.

Это первый релиз, поэтому не ожидайте, что он будет безупречным, и, конечно, он может не полностью соответствовать вашим предпочтениям;)

НЕТ поддержки HTML/XML, и, возможно, позже сопоставление тегов будет намного сложнее реализовать.

Другой индентор - UniversalIndentGUI, который явно заявляет о поддержке Python в своем списке функций и доступен как плагин Notepad++.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .