Raik: Syntax-Highlighting von editierbarem text möglich?

ich frage mich, ob es nicht möglich ist, per xsl oder ähnlichem den quelltext z.b. eines php-scriptes in einem textfeld farbig darzustellen.
sozusagen eine textbox zum online-editieren meiner scripte mit syntax-highlighting.
falls jemand dazu eine idee hat, oder infos, die mir weiterhelfen könnten, würde ich mich freuen.

  1. Hi,

    ich frage mich, ob es nicht möglich ist, per xsl oder ähnlichem den quelltext z.b. eines php-scriptes in einem textfeld farbig darzustellen.
    sozusagen eine textbox zum online-editieren meiner scripte mit syntax-highlighting.
    falls jemand dazu eine idee hat, oder infos, die mir weiterhelfen könnten, würde ich mich freuen.

    textbox = textarea?
    Dann geht genausoviel wie wenn Du das HTML-Dokument per Texteditor erstellst.
    XSL macht ja nichts anderes als eine Umsetzung von XML in eine andere Sprache - also steht nicht mehr zur Verfügung als in eben dieser Zielsprache.

    Wenn die Ausgabe von XSL etwas anderes als HTML sein sollte, müßtest Du schon näher spezifizieren, was Du erzeugst.

    cu,
    Andreas

    --
    Der Optimist: Das Glas  ist halbvoll.  - Der Pessimist: Das Glas ist halbleer. - Der Ingenieur: Das Glas ist doppelt so groß wie nötig.
    http://mud-guard.de/? http://www.andreas-waechter.de/ http://www.helpers.de/
    1. ja, mehrzeiliges textfeld, auch textarea genannt. :-)
      muss sich die formatierung immer auf <tags> beziehen, oder wäre es auch möglich, bestimmte strings (echo, if, while) fett und schwarz zu formatieren, ohne das sie nochmal in tags eingeschlossen sein müssen?
      oder text, der zwischen "anführungszeichen" steht, oder ein $dollarzeichen am anfang hat, farbig zu definieren?
      oder muss sowas immer in einen <tag> eingeschlossen sein?
      ich weis, das es viel arbeit wäre, die kompletten regeln für syntax-highlighting von php oder javascript auf diese weise nachzubauen.

      1. Hi,

        ja, mehrzeiliges textfeld, auch textarea genannt. :-)
        muss sich die formatierung immer auf <tags> beziehen, oder wäre es auch möglich, bestimmte strings (echo, if, while) fett und schwarz zu formatieren, ohne das sie nochmal in tags eingeschlossen sein müssen?

        In HTML? Nein, da kann man nicht Einzelteile von Texten in einer Textarea anders als den Rest formatieren.

        Und außerhalb einer Textarea geht es auch nur, wenn sie durch entsprechende Elemente gekennzeichnet sind.

        Da ändert sich NICHTS dran, egal wie das HTML-Dokument erzeugt wird...

        cu,
        Andreas

        --
        Der Optimist: Das Glas  ist halbvoll.  - Der Pessimist: Das Glas ist halbleer. - Der Ingenieur: Das Glas ist doppelt so groß wie nötig.
        http://mud-guard.de/? http://www.andreas-waechter.de/ http://www.helpers.de/
        1. Da ändert sich NICHTS dran, egal wie das HTML-Dokument erzeugt wird...

          schade, ich hatte das so verstanden, das moderne browser auch direkt xml-dokumente darstellen können, wenn den tags per dtd ne formatierung und per xsl styles zugewiesen werden.

          bin da noch nicht so firm, ich hoffe, ich hab jetzt nix falsches zusammengewürfelt.

          1. Hallo,

            schade, ich hatte das so verstanden, das moderne browser auch direkt xml-dokumente darstellen können, wenn den tags per dtd ne formatierung und per xsl styles zugewiesen werden.

            bin da noch nicht so firm, ich hoffe, ich hab jetzt nix falsches zusammengewürfelt.

            Doch ein wenig schon.
            Eine DTD hat keinen Einfluss darauf, wie das XML-Dokument dargestellt wird und du kannst per DTD auch keine Formatierungen den Elementen zuweisen. (In einer DTD gibt es so oder so keine Tags).
            Formatierungen werden auch nicht per XSLT zugewiesen, sondern mit CSS, mit XSLT transformiert du deine XML-Elemente z.B. zu HTML-Elementen.
            Und wenn du als Ausgabeformat HTML gewählt hast, stehen dir für Formatierungen genau nur die Möglichkeiten zur Verfügung, die dir auch sonst bei HTML mit CSS zur Verfügung stehen.

            Grüße
            Thomas