1
0
mirror of https://github.com/jbranchaud/til synced 2026-01-03 15:18:01 +00:00
Files
til/vim/swap-occurrences-of-two-words.md
2015-06-12 16:08:38 -05:00

21 lines
729 B
Markdown

# Swap Occurrences Of Two Words
Imagine I have a file with `foo` and `bar` all over the place. The tables
have turned and now I want all occurrences of `foo` to be `bar` and all
occurrences of `bar` to be `foo`.
Reaching for a simple substitution won't work because after flipping all the
occurrences of `foo` to `bar`. I will no longer be able to distinguish
between the new `bar`s and the `bar`s that need to be flipped.
[Abolish.vim](https://github.com/tpope/vim-abolish) enhances Vim's
substitution capabilities making it easy to flip these strings in one
relatively simple command.
```
:%S/{foo,bar}/{bar,foo}/g
```
Notice the uppercase `S` as well as the ordering of `foo` and `bar` in the before
and after sequences.