Montag, Mai 25, 2020

Carriage Return zeigt in notepad++, aber nicht textpad?

Ich habe etwas text kopiert Dateien aus einem server. Ich normalerweise verwenden, und lieber notepad++ anschauen, text-Dateien, sondern auf diesem server, nur textpad installiert ist. Das ist wirklich seltsam Verhalten, aber ich habe bemerkt, dass wenn ich eine EOL-Zeichen in notepad++ kann ich ganz klar sehen und suchen Sie nach dem CRLF (also \r\n). Aber wenn ich die gleichen Dateien in textpad, ich bin in der Lage, um die Suche nur auf den LF (\n) und nicht jeder trifft auf die CR (\r). Bin ich etwas fehlt, wie Textpad ist die Interpretation der EOL chars?

  • Danke für die Antwort Kyslik. Ich normalerweise nicht verwenden TextPad, aber das ist das, was ist installiert auf dem server. Wenn ich die Dateien in notepad++ auf meinem desktop kann ich sehen, das CRLF (\r\n), und ich nach Ihnen suchen können. Wenn ich die gleichen Dateien mit Textpad und Suche für CRLF(\r\n) erhalte ich nur Treffer auf LF(\n) und nicht CR(\r). Habe ich etwas falsch mit meinen Einstellungen oder ist Textpad nur wahrhaft interpretieren CRLF als (\n) anstelle von (\r\n)?
  • newline unterscheidet sich in allen 3 gängigsten Betriebssysteme (Windows, Linux und Mac OS) ich Wette, Sie wusste das. notepad++ soweit ich weiß, ist sehr robust und daher newlines werden „erkannt“ und ich Wette, Sie können sogar festlegen, wie das Programm „Anzeige“ (rendering) im text-Bereich. Wie es scheint ja TextPad interpretieren CRLF als \n auch auf windows-Rechner. Aber werfen Sie einen Blick in release notes von TextPad => In regular expressions in macros, [^...] is now changed to [^...\r\n] to constrain it to the end of line. Ich weiß nicht, Ob ich geholfen habe.

3 Kommentare

  1. 20

    Dies geschieht, wenn der EOL-control-Zeichen sind nicht korrekt. Windows stellt neue Zeilen mit carriage return + line feed.

    In Notepad++, Sie können überprüfen für diese Zeichen, indem Sie:

    Ansicht – > Symbole Anzeigen > [x] Show End-of-Line

    Carriage Return zeigt in notepad++, aber nicht textpad?

    Müssen Sie ändern Sie Ihr Skript, so dass Ihre Daten wie folgt formatiert:

    CRLF

  2. 2

    Ja im Idealfall ist es Wagenrücklauf, gefolgt von Zeilenvorschub,

    \r\n

    aber Sie können auch eine schnelle Kurzschrift zu Ort {lf} statt {cr}{lf}

    \n

  3. 0

    Ich weiß, das ist eine etwas alte Frage, aber ich kämpfte mit diesem genau das problem, und hier ist, wie ich fand einen workaround.

    Bei der Verwendung Save As im textpad Sie können das Dateiformat angeben, an der Unterseite ( PC , UNIX oder Mac). Wenn Sie UNIX in der Theorie dieser endet nur Linien mit der \n Charakter, jedoch müssen Sie diese option ändern zu jeder Zeit.

    Ändern Sie können die Einstellungen für bestimmte „Dokument-Klassen“ angeben, um die Ausgabe-Datei-format. Gehen Sie folgendermaßen vor:

    • Klicken Sie auf Configure
    • Gehen Preferences
    • Erweitern Sie die Document Classes Liste
    • Wählen Sie bash beinhalten sollte *.sh Dateien
    • Blättern Sie durch die Optionen auf der rechten Seite, bis Sie sehen Create new files as
    • Wählen Sie UNIX

    Diese sollte speichern jetzt alle *.sh Dateien, die Sie erstellen, wie das UNIX-format ohne Wagenrücklauf. Viel Glück

    Fand ich diese info hier:
    http://homes.ori.org/~keiths/Dateien/Tipps/Software_TextPad_Prefs.html#DocClasses

Kostenlose Online-Tests