Z jakiegoś powodu, kiedy otwieram pliki z serwera uniksowego na moim komputerze z systemem Windows, czasami mają one konwersję Macintosh EOL, a kiedy je ponownie edytuję / zapisuję, nie działają poprawnie na serwerze unix. Używam tylko Notatnika ++ do edycji plików z tego serwera uniksowego, więc czy istnieje sposób na utworzenie makra, które automatycznie konwertuje EOL do formatu Unix za każdym razem, gdy otwieram plik?
113
Binary
, aby zachować zakończenia linii. Możesz więc zmienić konfigurację programu FTP / SCP / etc, aby przesyłać pliki w inny sposób.Odpowiedzi:
Ta funkcja jest już wbudowana w Notepad ++. Z menu „Edycja” wybierz „Konwersja EOL” -> „Format UNIX / OSX”.
zrzut ekranu z możliwością jeszcze szybszego wyszukiwania (lub różnych wersji językowych)
Możesz także ustawić domyślny EOL w notatniku ++ poprzez "Ustawienia" -> "Preferencje" -> "Nowy dokument / Katalog domyślny", a następnie wybierz "Unix / OSX" w polu Format.
źródło
W Notepad ++ użyj zamień wszystko na wyrażenie regularne. Ma to przewagę nad poleceniem konwersji w menu, że możesz operować na całym folderze bez konieczności otwierania każdego pliku lub przeciągania i upuszczania (na kilkuset plikach będzie to zauważalnie wolniejsze), a ponadto możesz ustawić filtr wieloznaczny.
do
To dopasuje każdy możliwy wzorzec końca linii (pojedynczy \ r, \ n lub \ r \ n) z powrotem do \ n. (Lub \ r \ n, jeśli konwertujesz na styl Windows)
Aby operować na wielu plikach:
źródło
Otwieram pliki „bezpośrednio” z WinSCP, który otwiera pliki w Notepad ++ Miałem pliki php na moim serwerze linux, które zawsze otwierały się w formacie Mac, bez względu na to, co zrobiłem :-(
Jeśli pobrałem plik, a następnie otworzyłem go z lokalnego (Windows), był on otwarty jako Dos / Windows .... hmmm
Rozwiązaniem było przekonwertowanie EOL pliku lokalnego do „formatu UNIX / OSX”, zapisanie go, a następnie załadowanie.
Teraz, kiedy otwieram plik bezpośrednio z serwera, jest on otwarty jako „Dos / Windows” :-)
źródło
W zależności od projektu możesz rozważyć użycie EditorConfig ( https://editorconfig.org/ ). Istnieje wtyczka Notepad ++, która załaduje plik .editorconfig, w którym możesz określić „lf” jako obowiązkowe zakończenie linii.
Dopiero zacząłem go używać, ale do tej pory jest fajny, a projekty open source, nad którymi pracowałem, zawierały pliki .editorconfig od lat. Ustawienie „Konwersja EOL” nie jest zmieniane, więc może być nieco mylące, ale jeśli wybierzesz „Widok> Pokaż symbol> Pokaż koniec wiersza”, zobaczysz, że dodaje LF zamiast CRLF, nawet jeśli „Konwersja EOL ”, a dolny dolny róg pokazuje coś innego (np. Windows (CR LF)).
źródło