Vim nie konwertuje formatu pliku, jeśli widzi niespójne zakończenia linii. Jak mogę je znaleźć?Jak wyszukać " n" bez poprzedzającego " r" w vim?
Odpowiedz
Zero-szerokość look-za twierdzenie
"Jak mam szukać«\ n»bez poprzedzającego«\ r»w vim?"
/\r\@<!\n
Jak wyszukiwać i zastępować te wystąpienia za pomocą "\ r \ n"?
:%s/\r\@<!\n/\r\n/gc
Pozbądź się ostatecznego "c", jeśli chcesz zaakceptować każdy mecz bez potwierdzenia.
Edycja: Jeśli jednak chcesz uzyskać odpowiedź, którą możesz zapamiętać bez użycia miliardów spojrzeń przed i za miliardem, zobacz odpowiedź Jacksona Millera. Czasami lepiej jest uprościć swój problem i korzystać z narzędzi, które nie wymagają ciągłego czytania instrukcji :)
Co powiedzie się na zamianę \ r \ n na \ n, a na koniec \ n na \ r \ n.
Powinno być coś takiego:
:%s/\r\n/\n
:%s/\n/\r\n
Aby zmienić wszystkie zakończeń linii, które są \ r \ n \ n, użyj
:%s/\r$//
Spowoduje to wyszukanie wszystkich znaków \ r następnie nową linią i zastąp go po prostu nową linią:
Użyj narzędzia, takiego jak dos2unix lub unix2dos, aby przekonwertować zakończenia linii na żądany format. Istnieją natywne implementacje tych narzędzi dla systemów unix i windows.
Wyszukiwanie mi pomogło. BTW, końcówki linii można zmienić za pomocą: e ++ ff = dos, a następnie: w –
wow Nie wiedziałem, że vim jest obsługiwany z tyłu, fajnie! – calid
Hej, podoba mi się twoja droga, Merlyn. Po prostu staram się zrobić to, co wiem, jak to zrobić. –