Aqui está uma maneira:
:g/pattern/s/^/\=@a/
irá inserir o conteúdo do registro a no início de cada linha contendo pattern . Veja
:help sub-replace-expression
:help expr-register
Existe uma maneira de dizer (g) o Vim para inserir a partir do registro no início de uma linha? Eu sei que posso usar s / ^ / [texto] / mas eu estava pensando mais nos moldes de: g / [texto] / "+ p exceto que isso não funciona. Eu acho que o problema é que não tem como Vim para decidir onde colocar o conteúdo do registro.
Você pode usar P para colar o cursor antes (e p para colar depois).
Então, se você chegou no começo de uma linha com 0 ou ^ , você pode usar "+P .
Tags vim