Технически, %s/-/=/g
делает работу, но для всего файла, в каждом -
.
Если строки, которые вы хотите заменить, начинаются с -
, я бы сделал это так:
g/^-/s/-/=/g
Или, если у вас есть место перед первым -
:
g/^\s*-/s/-/=/g
Оставшаяся проблема появляется в следующих строках:
----------- the-composite-word
Они превращаются в:
=========== the=composite=word
Чтобы решить это, есть много способов.Я не тот мастер, чтобы предлагать очень общий способ, но это может работать для тире между словами:
g/^-/s/\w\@<!-/g