it:software:vim

VIM

Stává se mi, že najdu soubor, kde v Linuxu schází zalomení řádků. Všechno je na jednom řádku a místo zalomení vidím ve VIMu pouze ^M. Soubor vypadá takto:

<?php^M^Madd_action( 'wp_enqueue_scripts', 'theme_enqueue_styles' );^Mfunction theme_enqueue_styles() {^M    wp_enqueue_style( 'parent-style', get_template_directory_uri() . '/style.css' );}^M        ^M^M//=====
=================================================================^M// CUSTOM DASHBOARD^M//======================================================================^M// ADMIN FOOTER TEXT^Mfunction remove_footer_admi
n () {^M    echo "Divi Child Theme";^M} ^M^Madd_filter('admin_footer_text', 'remove_footer_admin');

Zdá se, že máte soubor s odlišným kódováním zalomení řádků, pravděpodobně z Windows, kde se používá kombinace znaků CR+LF (\r\n) pro zalomení řádků. V UNIX systémech se používá pouze LF (\n), takže znak CR (\r) je zobrazen jako ^M v editoru Vim.

Chcete-li odstranit znaky ^M a provést konverzi na unixové zalomení řádků, můžete postupovat následovně:

Oprava je následující:

  1. Otevřete soubor v editoru Vim.
  2. Stiskněte : pro přístup k příkazovému řádku.
  3. Zadejte následující příkaz:
:%s/\r/\r/g

Pokud se při vkládání textu text rozhodí, upravím nastavení na vkládání.

:set paste
  • it/software/vim.txt
  • Poslední úprava: 2023/08/19 19:38
  • autor: Petr Nosek