Al usar cualquier editor de flujo (o vim), existe una forma rápida, eficiente pero simple de hacer una sustitución, pero solo dentro de un patrón ya coincidente. por ejemplo :
Reemplace todos los parámetros "foo" con "bar" pero solo para la función "func":
test(foo, baz) func(foo) truc(foo) func(test, foo)
->
test(foo, baz) func(bar) truc(foo) func(test, bar)
se haría buscando primero: /func\((.*)\)/
... Y luego, dentro del grupo capturado (o al menos la partida completa), haz s/foo/bar/g
NOTA: He leído usando sed para reemplazar dos patrones dentro de un patrón más grande
Pero estoy buscando una manera más simple, no necesariamente usando sed