Acredito que o que o OP estava realmente perguntando é chamado de Caret Notation .
Caret notation is a notation for unprintable control characters in ASCII encoding. The notation consists of a caret (^) followed by a capital letter; this digraph stands for the ASCII code that has the numerical value equivalent to the letter's numerical value. For example the EOT character with a value of 4 is represented as ^D because D is the 4th letter in the alphabet. The NUL character with a value of 0 is represented as ^@ (@ is the ASCII character before A). The DEL character with the value 127 is usually represented as ^?, because the ASCII '?' is before '@' and -1 is the same as 127 if masked to 7 bits. An alternative formulation of the translation is that the printed character is found by inverting the 7th bit of the ASCII code
A lista completa de caracteres de controle ASCII junto com a notação de circunflexo pode ser encontrada aqui
Em relação ao vim e a outros editores de texto: Você normalmente só verá ^ M se abrir um arquivo de texto formatado pelo Windows (CRLF) em um editor que espera terminações de linha do Linux (LF). O 0x0A é processado como uma quebra de linha, o 0x0D antes de ser impresso como ^ M. Na maioria das vezes, as configurações padrão do editor incluem "reconhecer automaticamente os términos de linha".