Есть ли способ заставить vim автоматически обернуть строки python в 79 символов? - PullRequest
35 голосов
/ 22 августа 2009

Я нашел этот ответ об обёртывании строк с помощью паренов очень полезным, но есть ли способ в Vim сделать это автоматически? Я хочу быть в пределах строки, печатать, и Вим просто наделает вокруг меня строку и оборачивает ее по мере необходимости. Для меня это будет гигантская экономия времени, так как я трачу так много времени, просто оборачивая длинные строки вручную. Заранее спасибо.

Пример:

  1. Я набираю следующий текст:

    <code>mylongervarname = "my really long string here so please wrap and quote
    automatically"
    
  2. Vim автоматически делает это, когда я нажимаю на столбец 80 со строкой:

    <code>mylongervarname = ("my really long string here so please wrap and "
                       "quote automatically")
    

1 Ответ

12 голосов
/ 22 августа 2009

Больше направления, чем решение.

Используйте 'formatexpr' или 'formatprg'. Когда линия превышает 'textwidth' и соответствует критериям, установленным 'formatoptions', они используются (если установлены) для разрыва строки. Единственная реальная разница в том, что 'formatexpr' является выражением vimscript, а 'formatprg' фильтрует строку через внешнюю программу.

Так что, если вы знаете о форматере, который может выполнить это преобразование в строки кода Python, или готовы написать его, это даст вам возможность выполнить его. А поскольку vim поддерживает python (см. :help python), вы даже можете написать свой форматировщик python на python.

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