La sustitución global de texto es una operación en la que se indican tres parámetros:
Tras ello se procederá a automáticamente sustituir cada aparición de la primera cadena con la segunda, en todo el rango indicado; pudiendo ser el rango todo el documento o una parte de él.
El comando para hacer eso en Vim es 0 0«:substitute0 0» que además de esa forma admite las formas 0 0«:s0 0» y 0 0«:su0 0». Su formato general es el siguiente:
0 0«[rango]substitute/original/reemplazo/[indicadores]0 0»
Donde
Normalmente para distinguir entre el comando, la cadena original, la de reemplazo y los indicadores se usa una barra, pero también se pueden usar otros caracteres que no sean letras y en este punto Vim considera letras no solo a las letras propiamente dichas y a los dígitos, sino también a los espacios en blanco. Por lo tanto como delimitadores se pueden usar los signos de puntuación y símbolos adicionales. Esto es útil, sobre todo, si deseamos buscar una expresión que contiene una barra: para evitar confusiones basta con usar como delimitador algún otro carácter; por ejemplo: el guión.
Así para reemplazar el texto ``prueba/original'' por ``prueba/secundaria'' podríamos usar el comando
0 0«:%s-prueba/original-prueba/secundaria-g0 0»