web-dev-qa-db-fra.com

comment faire vim show ^ M et le remplacer

mon onglet d'affichage vim comme --->, mais n'affiche pas le caractère windows ^ M.

Et, comment le remplacer dans vim.

renouveler ============

Je vérifie mon vimrc, il est défini fileformat = unix mais lorsque j'ouvre un fichier dos, le jeu ff est dos

43
guilin 桂林

Vim affiche ^ M sauf dans un cas: si le fileformat = dos alors il n'affichera pas de crlf de fin.

Vous pouvez savoir quel format (unix ou dos) vous avez en tapant :set et vous pouvez vous débarrasser du ^ M dans le crlf en changeant simplement le format (:set fileformat=unix) puis en écrivant le fichier.

Si vous avez un ^ M au milieu de la ligne, vous devriez pouvoir le voir, même dans un fileformat=dos fichier, et vous pouvez le faire correspondre avec \r. (Curieusement, la syntaxe de substitution d'une nouvelle ligne est un \r dans la partie de remplacement du sous-marin, donc la façon dont on change ^ M en ^ N est par le pas du tout un noop :s/\r/\r/.)

62
DigitalRoss

Afficher CRLF comme ^ M:

: e ++ ff = unix

Remplacer CRLF pour LF:

: setlocal ff = unix
: w
: e

68
NoToR

vim détecte automatiquement le format de fichier et les modes de commutation correspondants (jetez un œil à set ff)

Si vous souhaitez le forcer à s'ouvrir dans un mode particulier, lancez un +ff=unix (pour afficher le ^ M) ou +ff=dos dans votre ligne de commande pour l'ouvrir dans ce mode. Si vous êtes sur une boîte Windows, essayez simplement :e ++ff=unix après ouverture du fichier.

Si vous essayez de supprimer ces caractères, vous pouvez l'ouvrir dans un mode, définir le ff sur ce que vous voulez, puis enregistrer le fichier. Check-out :h ff pour plus de détails.

7
jkerian

Vous pouvez afficher tous les sauts de ligne et retours chariot en activant la fonction de liste: :set list.

vous pouvez les taper littéralement dans des commandes de correspondance et de substitution avec ^V: par exemple. pour convertir tous les ^Ms à CR, vous pouvez faire: :%s/^V^M/CR/g (tapez un littéral ^V suivi d'un littéral ^M).

4
Ether