Я сам задавался вопросом о таких вещах, и в конце концов мне просто пришлось попробовать несколько разных подходов, чтобы увидеть, что работает. Одна вещь, которой я определенно не доволен, это тяжелые перерывы (которые могут быть достигнуты set textwidth=80
) по нескольким причинам:
- Всякий раз, когда я возвращаюсь, чтобы отредактировать предыдущий текст, жесткий разрыв строки будет в неправильном месте. Он либо превысит мой предел в 80 символов, либо будет слишком далеко от моего ограничения в 80 символов. Конечно, я могу исправить это в Vim, используя различные варианты оператора
gq
(например, gqip
, gqap
, визуальный режим и затем gq
), но это утомительно, и я часто скучаю по своей целевой области с gq
. Это для меня самый большой недостаток с тяжелыми перерывами. (Если вы используете gq
для исправления абзацев, вы можете использовать set nojoinspace
, чтобы избежать раздражающих двойных пробелов после каждого периода.)
- У меня часто Vim и PDF открываются бок о бок. Всякий раз, когда я хочу что-то отредактировать в определенном месте моего PDF-файла, я просто ищу фрагменты текста. Вы будете удивлены тем, как мало мест в тексте вы используете два довольно общих слова в определенном порядке, так что это действительно работает очень хорошо. Если у вас нет серьезных разрывов в середине предложения, которое разрывается между словами, которые вы ищете. Это довольно часто задерживает мой рабочий процесс при использовании жестких перерывов.
- Я часто ориентируюсь в предложениях, используя
f
, F
, t
или T
. Это работает только в пределах одной строки.
- Существует также проблема, упомянутая в OP, что Git не очень хорошо справляется со сложными параграфами. Конечно, вы можете сделать DIFF выглядеть хорошо, тем не менее, это не является большой проблемой.
Для меня использование мягких разрывов (и наличие, например, одного предложения или абзаца в строке) не является «странной политикой редактирования», которую я принимаю, чтобы удовлетворить Git. Это (возможно, странная) политика редактирования, которую я использую для удобства и эффективности при редактировании. В частности, мягкие разрывы строк, возникающие в середине слов, я согласен, выглядит некрасиво, но это можно отключить, используя set linebreak
.
Если, кроме того, вы используете один абзац на строку, вы должны получить примерно тот же «вид», что и с жесткими перерывами (что правильно поддерживается с помощью gq
), и вы можете перемещаться от предложения к предложению с помощью (
и )
. С одним предложением на строку вы получите более рваный правый край, но с преимуществами, которые предлагает Git и Vim, имея одно предложение на строку. Попробуйте оба варианта и посмотрите, что вы предпочитаете (я сам еще не решил).