Как мне исправить vim на правильные отступы, содержащие строки комментариев Python? - PullRequest
10 голосов
/ 25 января 2012

Я установил метод фолдирования vim на indent, который очень хорошо работает при написании Python, за исключением случаев, когда у меня есть строка комментария.Например, если у меня есть этот бит кода:

def myFunction():
    # here is my comment
    myString = "hello"
    myInt = 2

Если у меня есть курсор на строке комментария и набираю «za», я получаю сообщение об ошибке «E490: Сгиб не найден».Если у меня есть курсор на строке, начинающейся с «myString =», я получу фолд следующим образом:

def myFunction():
    # here is my comment
+--- 2 lines: myString = "hello" -------------------------

В обоих случаях я хотел бы получить этот фолд:

def myFunction():
+--- 3 lines: # here is my comment -------------------------

По сути, строка комментария должна рассматриваться как все остальное.Я не нашел ответа от поиска в Интернете.Есть идеи?Спасибо!

Ответы [ 2 ]

16 голосов
/ 25 января 2012

Вы должны установить значение foldignore в ничто.

:set foldignore=

С :help foldignore:

'foldignore' 'fdi'  string (default: "#")

    Used only when 'foldmethod' is "indent".  Lines starting with
    characters in 'foldignore' will get their fold level from surrounding
    lines.  White space is skipped before checking for this character.
    The default "#" works well for C programs.  See |fold-indent|.
3 голосов
/ 25 января 2012

С :help fold-indent:

Некоторые линии игнорируются и получают уровень сгиба линии выше или ниже, какой бы ни была самая низкая.Это пустые или белые строки и строки, начинающиеся с символа 'foldignore'.Пробел пропускается перед проверкой на наличие символов в 'foldignore'.Для C используйте «#», чтобы игнорировать строки препроцессора.

По крайней мере, в моем vim foldignore установлен на символ «#».Установите его пустым, с помощью команды типа

:set foldignore=

, чтобы эти строки были включены в сгиб.

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