[О блоге] [наверх] [пред] [2018-07-24 22:29:51+03:00] [3c50207ce99bd7075045aa82d40836b72a873669]
Темы: [tip][vim]

Vim ViewPort плагин

https://www.vim.org/scripts/script.php?script_id=4296
Тесты должны быть очень простой штукой, без наворотов. Это означает что
нередко приходится делать очень много copy-paste, ради простоты. Когда
редактируется огромный файл с кучей очень похожего кода, то любое лишнее
нажатие "n"/"N" (поиска) или просто перемещения может передвинуть тебя в
другой тест, визуально не сильно отличимый. Это может привести к тому,
что не понимаешь что происходит -- редактируешь не то, что запускаешь.

В Emacs, насколько мне известно (я не его пользователь) есть такая штука
как narrowing -- возможность какой-то участок файла редактировать в
отдельном окне/буфере, не видя ничего вокруг него. Это очень крутая идея
обезопасить и изолировать себя от ошибки! По хорошему эта
функциональность должна быть встроена в сам редактор и в Vim её нет. Не
уверен можно ли плагинами в принципе её полностью осуществить как в
Emacs.

Плагинов на эту тему полно, но я вот решил использовать сабжевый. Суть
работы безумно проста: он ставит две метки вокруг текста для которого
делается, так называемый, ViewPort и копирует текст в отдельный буфер.
Когда он сохраняется, то содержимое помещается между метками
оригинального файла. Сегодня был первый день когда начал его
использовать. Значительно лучше чем ничего, но, безусловно, неудобство
от двойного сохранения имеется. Плагин имеет много проверок в коде для
безопасности: предупредит если оригинальный текст изменился например,
чтобы его не потерять.

Другой use-case приходящий с ним в голову: редактировать например
вставленный SQL внутри кода Python или Go -- тогда в отдельном буфере
можно будет включить ft=sql и иметь полноценный SQL редактор в одном
месте, и полноценный Python/Go редактор в другом.

    [оставить комментарий]