vim isn't really something you use in pipelines though, it's a standalone tool.
is not a defensible argument (regardless of what you use), see the relevant comment here¹
the bigger point is to get more precise and utilitarian control over text which I already discussed here in this thread², piping in and out of your editor buffers sometimes comes very handy.
___
or, assuming vim is your $EDITOR, you can use vipe:
`command_a | vipe | command_b`