Я часто пересматриваю код C / C ++ / ... (особенно мой). То, что я нашел эффективным для понимания и проверки такого кода, - это закомментировать каждую строку исходного кода (например, в случае C ++, добавляя предположительно уникальный маркер комментария (например, «//!») К каждой строке). Затем я раскомментирую строки по частям, поняв, что автор имел в виду под определенным фрагментом кода, и если я думаю, что все в порядке. При этом я работаю через набор заданных файлов. Код (например, заголовочные файлы, функции, константы), который все еще закомментирован впоследствии, может быть затем удален.
Однако я часто хочу «поиграть» с некоторым кодом (например, переделать функцию и скомпилировать и запустить все). Для этого мне, очевидно, нужно удалить маркер комментария из строк, которые все еще закомментированы. После небольшого теста мне нужно «отменить» раскомментирование.
Теперь на мой вопрос:
Можно ли в Vim просто пометить строки файла, видимые каким-либо образом, но не изменить файл сам (так что компилятор, Make, ... не вижу никакой разницы, если файл не был действительно отредактирован). Такая метка должна оставаться прикрепленной к ее строке, если эта строка редактируется или перемещается в файле (например, если новый код был вставлен перед этой строкой или если код перед этой строкой был удален). Только если я решу так или если линия будет удалена, отметка исчезнет. Вновь добавленные строки должны быть помечены по умолчанию.