M@rtin: äöüß - heutzutage noch codieren?

Hallo Gruppe,

sollte man heutzutage noch äöüß in einem HTML-Dokument codieren?

Kann man z.B. darauf verzeichten, wenn man UTF-8 als Zeichenkodierung vorgibt?

danke für Eure Antworten
M@rtin

  1. Bei UTF-8 kann man darauf verzichten, aber ansonsten soll man es immer kodieren.

    1. Bei UTF-8 kann man darauf verzichten, aber ansonsten soll man es immer kodieren.

      Nein. Bei Zeichenenkodings, die durch das Charset abgedeckt sind, ist das vollkommen überflüssig (bei der HTML Ausgabe), oder kontraproduktiv (bei Konvertierung von Userinput).

      mfg Beat;

      --
      Woran ich arbeite:
      X-Torah
      ><o(((°>           ><o(((°>
         <°)))o><                     ><o(((°>o
      1. Bei UTF-8 kann man darauf verzichten, aber ansonsten soll man es immer kodieren.

        Nein. Bei Zeichenenkodings, die durch das Charset abgedeckt sind, ist das vollkommen überflüssig (bei der HTML Ausgabe), oder kontraproduktiv (bei Konvertierung von Userinput).

        mfg Beat;

        Ja, falls es von dem Server und in dem Header der Html-Datei richtig angegeben ist und auch richtig an den User ankommt, dann braucht man es nicht. Ich würde es immer kodieren, wenn es nicht im UTF-8 ist.

        1. Hi!

          Ja, falls es von dem Server und in dem Header der Html-Datei richtig angegeben ist und auch richtig an den User ankommt, dann braucht man es nicht. Ich würde es immer kodieren, wenn es nicht im UTF-8 ist.

          Komisches Argument.
          Wenn der Server im Content-Type-Header eine falsche charset-Angabe sendet oder bei fehlender Serverangabe im http-equiv ein falsches charset drinnen steht hilft dir auch utf-8 nichts!
          Also, wie schon Beat sagte: Die verwendeten Zeichen müssen im charset vorhanden sein, ...
          LG Ulysses

          1. Hi!

            Ja, falls es von dem Server und in dem Header der Html-Datei richtig angegeben ist und auch richtig an den User ankommt, dann braucht man es nicht. Ich würde es immer kodieren, wenn es nicht im UTF-8 ist.
            Komisches Argument.
            Wenn der Server im Content-Type-Header eine falsche charset-Angabe sendet oder bei fehlender Serverangabe im http-equiv ein falsches charset drinnen steht hilft dir auch utf-8 nichts!
            Also, wie schon Beat sagte: Die verwendeten Zeichen müssen im charset vorhanden sein, ...
            LG Ulysses

            naja von mir aus, du kannst es auch so sehen und sagen "ich werde programmieren wie es mir am bequemsten ist und alle anderen sollen es doch irgendwie schon lesen" und ich werde mir sicher sein und verantwortungsbewusst diese Umlaute(etc.) setzen. Und ich kann auch sicher sein, daß, egal was passiert, meine &auml;&Auml;&ouml;&Ouml;&uuml;&Uuml;&szlig;&euro; in jedem Zeichensatz und in jedem Browser auch richtig dargestellt werden!

            Und man muss es nicht jedes Mal daran denken, man kann es auch im nachhinein viel schneller tun!

            Übrigens, hier:
            http://de.selfhtml.org/html/allgemein/zeichen.htm#umlaute
            wird so was auch empfohlen.

            1. Moin!

              Übrigens, hier:
              http://de.selfhtml.org/html/allgemein/zeichen.htm#umlaute
              wird so was auch empfohlen.

              Nein, das hast du falsch verstanden.

              Zitat von der Seite:

              "Wenn Sie Kodierungen wie ISO 8859-1 oder UTF-8 verwenden, können Sie die deutschen Umlaute direkt in Ihrem Editor eintippen. Sofern Sie die besagte Angabe zur Zeichenkodierung im Kopf der HTML-Datei notieren, können Sie davon ausgehen, dass aktuelle und auch ältere Browser die Datei korrekt verarbeiten.

              Dennoch gibt es einige Sonderfälle, in denen es sinnvoll ist, sich auf die ASCII-Zeichen zu beschränken, um mögliche Probleme bei der Verarbeitung zu vermeiden. In diesem Fall können Sie deutsche Umlaute sowie das scharfe S durch benannte Zeichen umschreiben. Das gilt für den gesamten Inhalt einer HTML-Datei."

              Anders formuliert: Wenn nicht gerade ein Sonderfall vorliegt, liegt ein Normalfall vor, und der wird im ersten Absatz behandelt: Alle Umlaute nicht als Entities, sondern direkt in der gewählten Codierung zu verwenden.

              Ein möglicher Sonderfall wäre beispielsweise die Situation, dass eine HTML-Seite aus mehreren Datenquellen zusammengesetzt wird, und diese Datenquellen unterschiedliche Codierungen haben.

              Hat man keinen Einfluss auf die Inhalte der Datenquellen, ist man gezwungen, deren Codierung zu berücksichtigen und passend umzuwandeln.

              Hat man hingegen Einfluss, könnte man beispielsweise die Kombination "UTF-8-Datei in ISO-8859-1-Umfeld" oder "ISO-8859-1-Datei in UTF-8-Umfeld" dadurch entschärfen, dass man Entities in der jeweils anders codierten Datei verwendet. Als Resultat erhält man dann eine Mischung von z.B. UTF-8-Umlauten und Umlaut-Entities, die von jedem Browser korrekt dargestellt wird.

              - Sven Rautenberg

              --
              "Love your nation - respect the others."
              1. Hi,

                können Sie davon ausgehen, dass aktuelle und auch ältere Browser die Datei korrekt verarbeiten.

                Ältere sicherlich. Älteste Browser, also die ersten Browsergenerationen auf Non-Windows-Systemen, konnten das noch nicht.

                Gruß, Cybaer

                --
                Man muß viel gelernt haben, um über das, was man nicht weiß, fragen zu können.
                (Jean-Jacques Rousseau, Philosoph u. Schriftsteller)
                1. Älteste Browser, also die ersten Browsergenerationen auf Non-Windows-Systemen, konnten das noch nicht.

                  Zu der Zeit hatte ein Byte ohnehin nur sieben Bits. ;)

                  Mathias

            2. Hi!

              naja von mir aus, du kannst es auch so sehen und sagen "ich werde programmieren wie es mir am bequemsten ist und alle anderen sollen es doch irgendwie schon lesen" und ich werde mir sicher sein und verantwortungsbewusst diese Umlaute(etc.) setzen.

              Ich verstehe nicht, was du damit sagen willst.

              Und ich kann auch sicher sein, daß, egal was passiert, meine &auml;&Auml;&ouml;&Ouml;&uuml;&Uuml;&szlig;&euro; in jedem Zeichensatz und in jedem Browser auch richtig dargestellt werden!

              Häh?

              Und man muss es nicht jedes Mal daran denken, man kann es auch im nachhinein viel schneller tun!

              ???

              Übrigens, hier:
              http://de.selfhtml.org/html/allgemein/zeichen.htm#umlaute
              wird so was auch empfohlen.

              Und dazu hast du ja die Antwort von Sven Rautenberg bekommen

              LG Ulysses

            3. @@Alert:

              Und ich kann auch sicher sein, daß, egal was passiert, meine &auml;&Auml;&ouml;&Ouml;&uuml;&Uuml;&szlig;&euro; in jedem Zeichensatz […]

              ?? „in jedem“? Es gibt ja nur einen: _Alle_ HTML-Dokumente benutzen den _einunddenselben_ Zeichensatz: Unicode. [QA-DOC-CHARSET]

              […] und in jedem Browser auch richtig dargestellt werden!

              Nicht aber im Texteditor beim Bearbeiten der Dokumente. [QA-ESCAPES]

              Und auch nicht, wenn der Quellcode als XML verarbeitet wird und die Entity-Referenzen nicht aufgelöst werden. „Wenn in HTML-definierte Zeichen-Entity-Referenzen (wie &aacute;) verwendet werden, um Zeichen in XHTML zu repräsentieren, ist Vorsicht geboten, wenn der Inhalt von XML-Werkzeugen verarbeitet wird oder in XML transformiert wird.“ [ibid.]

              Live long and prosper,
              Gunnar

              --
              Erwebsregel 208: Manchmal ist das einzige, was gefährlicher als eine Frage ist, eine Antwort.
              1. Hi!

                Nicht aber im Texteditor beim Bearbeiten der Dokumente.

                Hast du übregens schon einen „brauchbaren Texteditor“ gefunden?

                LG Ulysses

                1. @@Ulysses:

                  Hast du übregens schon einen „brauchbaren Texteditor“ gefunden?

                  Ich hatte damals TextPad schlechter gemacht als er ist. Er kann zwar nur mit einer Palette mit 256 Zeichen abzüglich Steuerzeichen umgehen*, man kann diese aber wechseln, also z.B. auf mitteleuropäische Bedürfnisse (pl, cz, sk, …) einstellen.

                  Das reicht mir fürs erste, so dass ich die weitere Suche (vorläufig) aufgegeben habe.

                  Live long and prosper,
                  Gunnar

                  * TextPad – das GIF unter den Texteditoren ;-)

                  --
                  Erwebsregel 208: Manchmal ist das einzige, was gefährlicher als eine Frage ist, eine Antwort.
                  1. Hi!

                    Das reicht mir fürs erste, so dass ich die weitere Suche (vorläufig) aufgegeben habe.

                    Schade, ich hatte schon gehofft, dass du inzwischen die „eierlegende Woll-Milch-Sau“ gefunden hast ;-)
                    Ich verwende Notepad++ und wäre ansonsten sehr zufrieden - nur zeilenübergreifende Suche beherrscht es leider noch immer nicht...

                    LG Ulysses

          2. Also, wie schon Beat sagte: Die verwendeten Zeichen müssen im charset vorhanden sein, ...

            Übrigens, ich kann auch überhaupt nicht verstehen wieso dieser Beat bei der Seite, die von ihm angegeben wurde:
            http://www.elcappuccino.ch/cgi/tok.pl?lang=1
            in dem header iso-8859-1 zu stehen hat und doch fast überall Umlaute maskiert, wenn er doch sollche laute Ansagen macht! :-)

            1. Also, wie schon Beat sagte: Die verwendeten Zeichen müssen im charset vorhanden sein, ...

              Übrigens, ich kann auch überhaupt nicht verstehen wieso dieser Beat bei der Seite, die von ihm angegeben wurde:
              http://www.elcappuccino.ch/cgi/tok.pl?lang=1
              in dem header iso-8859-1 zu stehen hat und doch fast überall Umlaute maskiert, wenn er doch sollche laute Ansagen macht! :-)

              Ich mache keine laute Aussage. Meiner Aussage gemäss habe ich keinen Nachteil (bei der HTML-Ausgabe) und keinen Nachteil (bei der Verarbeitung von User-Eingaben). Letzterer Aspekt entzieht sich deiner Kontrolle.

              Spar dir solche Sprüche. Mit oder ohne Smiley.

              mfg Beat;

              --
              Woran ich arbeite:
              X-Torah
                 <°)))o><                     ><o(((°>o
    2. Bei UTF-8 kann man darauf verzichten, aber ansonsten soll man es immer kodieren.

      Man muss/soll sie auch z.B. in ISO-8859-1 _nicht_ maskieren, siehe hier: http://www.w3.org/International/questions/qa-escapes

      Alex

  2. Hello,

    Kann man z.B. darauf verzeichten, wenn man UTF-8 als Zeichenkodierung vorgibt?

    In diesem Zusammenhang möchte ich auf
    http://forum.de.selfhtml.org/archiv/2007/11/t161393/#m1050042
    verweisen ;-)

    ISO-8859-x ist eine 8-Bit-Codierung.
    HTTP basiert im Gegensatz zu SMTP auf 8-Bit-Codierung.
    Es sind also Zeichen darstellbar, die in einem 8-Bit-Zeichensatz, den der Browser kennt, codiert sind.

    Der Browser kennt ISO-8859-x
    ----------------------------------------
    Eine zusätzliche Codierung von HTML-fremden Zeichen ist nicht notwendig

    Oder ansders ausgedrückt: Nur die HTML-eigenen Zeichen müssen codiert werden.

    Liebe Grüße aus Syburg bei Dortmund

    Tom vom Berg

    --
    Nur selber lernen macht schlau
    http://bergpost.annerschbarrich.de