kostenloser Webspace werbefrei: lima-city


HTML-Editor: \r\n sowie whitespace entfernen

lima-cityForumDie eigene HomepageHTML, CSS & Javascript

  1. Autor dieses Themas

    schrotti12

    Moderator Kostenloser Webspace von schrotti12

    schrotti12 hat kostenlosen Webspace.

    Hallo,

    ich bin ja jetzt nicht unbewandert was Editoren und IDEs angeht (arbeite mit Eclipse, IntelliJ, Netbeans, Notepad++, vim, nano, etc. etc.), aber ich braucht grad eine Funktion, die mir keiner davon bietet und die ich auch sonst nirgends gefunden hätte:

    Ich will unformatierten html Quelltext (eine Zeile mit dem ganzen Quelltext) reinkopieren und der Editor soll mir daraus einen schön formatierten Quelltext erstellen. Sprich: Mit Einrückung, Newlines, etc. Okay, das können noch viele, aber ich brauch auch die Funktion, dass mir der Editor daraus auch wieder einen Einzeiler machen kann, nachdem ich mit der Arbeit fertig bin.

    Sprich:

    Unformatierter Quelltext > Formatierter Quelltext > [Here the magic happens] > Formatierter Quelltext > Unformatierter Quelltext.

    Wenn's das ganze noch für Windows und 64bit (nativ, wenn möglich) gibt, wärs a Gschicht. Kommandozeile wär auch kein Problem:
    Sprich sowas wie:

    tidy.exe --in unformated.html --out formated.html --format-html
    tidy.exe --in formated.html --out unformated.html --unformat-html

    Hat vlt. von euch schonmal jemand sowas verwendet bzw. kennt da jemand ein Tool/Plugin, etc.? Wär echt hilfreich.

    lg
    Andreas
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. Plugin für NP++: https://github.com/bruderstein/NppTidy2
    Je nachdem wie "geheim" der Quellcode ist tut's evtl. auch ein Online-Tool: http://infohound.net/tidy/
  4. Autor dieses Themas

    schrotti12

    Moderator Kostenloser Webspace von schrotti12

    schrotti12 hat kostenlosen Webspace.

    Hey, danke für den Link.
    Grundsätzlich genau was ich brauch, aber ich will mir dafür jetzt eig. nicht Visual Studio installieren nur um das Plugin zu bauen. Binaries hamn sie anscheinend keine auf der Seite. Und tidy-html5 hab ich als Commandline-Anwendung schon probiert. Leider entfernt dieser mir beim "unformat" die Zeilenumbrüche nicht mehr.

    Hm, ich schau mal, ob ich das irgendwo als Binary dll herbekomm. Danke erstmal. Vlt. gibt's ja noch was anderes.
  5. Im Plugin-Manager von Notepad++ ist Tidy2 zu finden.
  6. prinz-und-gloeckner

    prinz-und-gloeckner hat kostenlosen Webspace.

    Suchen und ersetzen sollte doch bei jedem Editor funktionieren.
    Allerdings nur bei jeder Datei einzeln, das kann nerven ;o)

    Auch mit einem simplen Skript sollte man solche Änderungen einfach von der Konsole hinbekommen.
    Weil ich bei mir sowieso PHP verfügbar habe, würde ich da ein kleines PHP-Skript basteln und das bei Bedarf auf ganze Listen von Text-Dateien loslassen.

    Hat man PHP nicht installiert, tun es doch auch sed, awk, tr oder dergleichen.

  7. Autor dieses Themas

    schrotti12

    Moderator Kostenloser Webspace von schrotti12

    schrotti12 hat kostenlosen Webspace.

    Ich verwende die 64bit-Version von NPP, die hat noch keinen Plugin-Manager :-) Aber vlt. find ich irgendwo das Repository. Dann kann ich's manuell installieren.

    Suchen und ersetzten wär nicht so das Problem, aber die Syntax:

    <p>
        <b>Text</b>
    </p>

    wird zu
    <p><b>Text</b></p>

    Wenn ich aber mehrzeiligen Text habe, muss ein Leerzeichen eingefügt werden:
    <p>
        Dies
        ist
        Text.
    </p>

    sollte zu
    <p>Dies ist Text.</p>

    werden. Und die Regex dafür sind nicht gerade einfach, hab ich gemerkt. Ich denke mal, dass Editoren das sowieso schon können.
  8. prinz-und-gloeckner

    prinz-und-gloeckner hat kostenlosen Webspace.

    Das Problem kannst du in mehreren Schritten lösen.

    a) Liste erstellen, hinter welchen Elementendmarkierungen Zeilenumbrüche sollen.
    b) Alle Zeilenumbrüche entfernen.
    c) Liste a) durchgehen und Elementendmarkierungen durch Elementendmarkierungen mit Zeilenumbruch dahinter ersetzen.
  9. Autor dieses Themas

    schrotti12

    Moderator Kostenloser Webspace von schrotti12

    schrotti12 hat kostenlosen Webspace.

    Hm, werd ich wohl so machen müssen.Hab mir nur gedacht, da das doch sicher schonmal jemand implementiert hat, dass ich das wiederverwenden kann. Schade.
    Trotzdem danke für die Antworten.
  10. schrotti12 schrieb:
    Hm, ich schau mal, ob ich das irgendwo als Binary dll herbekomm. Danke erstmal. Vlt. gibt's ja noch was anderes.

    Ich wollte eigentlich am WE mal schauen. Aber bin nicht dazu gekommen.
    War wohl Karma, denn grade gestern nacht hat jemand eine Binary (x86) verlinkt, evtl. kannst du ja für den spezifischen Fall die x86-Version von NP++ als Zeitinstallation nutzen.
    https://github.com/bruderstein/NppTidy2/issues/12

    Beitrag zuletzt geändert: 16.7.2018 16:26:30 von muellerlukas
  11. Ich weiß das Thema ist nicht mehr ganz frisch, aber ich will trotzdem noch meinen Senf dazu geben:

    schrotti12 schrieb:
    ich bin ja jetzt nicht unbewandert was Editoren und IDEs angeht (arbeite mit Eclipse, IntelliJ, Netbeans, Notepad++, vim, nano, etc. etc.), aber ich braucht grad eine Funktion, die mir keiner davon bietet

    [...]
    aber ich brauch auch die Funktion, dass mir der Editor daraus auch wieder einen Einzeiler machen kann, nachdem ich mit der Arbeit fertig bin.


    In vim:

    VGJ

    V -> Gehe in den Visual Mode
    G -> Springe (und markiere) bis ans Ende der Datei
    J -> füge Zeilen zusammen

    Wobei der Befehl nur funktioniert, wenn du in der ersten Zeile der Datei bist. Wenn du das nicht bist, solltest du vorher
    gg
    eingeben, um an den Anfang zu springen.

    Automatische Formatierung kann Vim ja.
  12. Autor dieses Themas

    schrotti12

    Moderator Kostenloser Webspace von schrotti12

    schrotti12 hat kostenlosen Webspace.

    So, jetzt meld ich mich nochmal zu Wort.
    In vim hat das so nicht geklappt, sorry. Visual Mode hat noch funktioniert, aber ich konnte G drücken wie ich wollte, da tat sich nix. Ich hab Vim vom tuxproject auf Windows, probiere es aber noch auf einer Linux-Maschine.

    Irgendwie wild, eigentlich will ich nur von diesem Code
    <!DOCTYPE html><html><body><h1>Heading</h1><p>Paragraph</p></body></html>
    zu diesem
    <!DOCTYPE html>
    <html>
       <body>
          <h1>Heading</h1>
          <p>Paragraph</p>
       </body>
    </html>
    und wieder zurück. Also quasi eine Format/Unformat Funktion ... Weird, dass das so schwer ist.

    Okay, noch ein kleiner Nachtrag (29.08.2018):
    Ich hab's jetzt noch mit jTidy und jsoup versucht. Auch diese entfernen keine Newlines und es kommt kein "Einzeiler" raus. Na ja. Ich mess dem ganzen jetzt keine Prio mehr zu und kümmere mich um andere Dinge. Vlt. lauf ich so einem Tool mal per Zufall über den Weg. Trotzdem: Danke an alle für die Hilfe.

    Beitrag zuletzt geändert: 29.8.2018 14:51:11 von schrotti12
  13. Also wenn es um einrücken geht, kann ich den Sublime Text Editor mit dem Package "HTMLBeautify" empfehlen, der rückt alles schön ein und entfernt auch die meisten ungewollten Zeilenumbrüche.

    Mit der Funktion Edit-> Wrap-> Wrap paragraph on ruler (120 characters) macht er da wieder einen Blocktext draus, falls da noch ein paar Spaces sind, die kann man mit Suchen/Ersetzen einfach los werden.

    Beitrag zuletzt geändert: 29.8.2018 18:12:23 von cayce
  14. schrotti12 schrieb:
    In vim hat das so nicht geklappt, sorry. Visual Mode hat noch funktioniert, aber ich konnte G drücken wie ich wollte, da tat sich nix.

    Ich glaube du hast mich falsch verstanden. Die Befehlsfolge ist dafür da, um von einem Mehrzeiler zu einem Einzeiler zu kommen.

    Die Andere Richtung ist leider etwas komplizierter (Einzeiler zu Mehrzeiler):

    :s/</\r</g
    =ggdd


    Die erste Zeile sorgt dafür, dass vor jedem < eine neue Zeile anfängt. Die zweite Zeile führt die Formatierung durch und das "dd" löscht die erste leere Zeile.

    Ich habe das mit deinem Beispiel ausprobiert und es funktioniert prima. Eventuell willst du noch zusätzlich
    :s/ </</g

    ausführen nachdem alles wieder in einer Zeile steht um unnötige Leerzeichen loszuwerden.

    Beitrag zuletzt geändert: 30.8.2018 7:30:45 von bladehunter
  15. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!