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
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/
.)
: e ++ ff = unix
: setlocal ff = unix
: w
: e
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.
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 ^M
s à CR
, vous pouvez faire: :%s/^V^M/CR/g
(tapez un littéral ^V suivi d'un littéral ^M).