amiga-news DEUTSCHE VERSION
.
Links| Forums| Comments| Report news
.
Chat| Polls| Newsticker| Archive
.

amiga-news.de Forum > Programmierung > ISO-Entities in GoldED [ - Search - New posts - Register - Login - ]

-1- 2 [ - Post reply - ]

2004-10-25, 13:52 h

_PAB_
Posts: 3016
User
Hallo,

ich suche ein Makro, welches in GoldED Studio 6 das bisherige Webworld-Plugin ablösen könnte um die Umwandlung von Umlauten etc. in ISO-Entities vornimmt. Beispiel:
<FONT FACE="Helvetica, Arial">"> Hä ?" <A HREF="/cgi?act=answer&text=x">Antworten</a></font>
sollte umgewandelt werden in:
<FONT FACE=& quot;Helvetica, Arial& quot;>& quot;& gt; H& auml; ?& quot; <A HREF=& quot;/cgi?act=answer& amp;text=x& quot;>Antworten</a></font>

Man beachte die Umwandlung von "&" in allen URLs, was der alte ISO-Entity-Konverter nicht macht.
Hat jemand dafür eine W3C-konforme Lösung anzubieten ?

Edit: Ich mußte Leerzeichen nach den "&"s einfügen, damit das Forum diese nicht umwandelt.

[ Dieser Beitrag wurde von _PAB_ am 25.10.2004 editiert. ]

[ - Answer - Quote - Direct link - ]

2004-10-25, 14:10 h

Robin
Posts: 1056
User
Wenn deine Seiten halbwegs einem HTML-Standard entsprechen
kannst du 'tidy' dafuer benutzen. Bin selbst gerade dabei
meine Homepage von "HTML 3.2/funktioniert,muss also richtig sein"
auf "HTML 4.0/validiert" umzustellen.

Tidy kann extrem viel rausreissen. Auch nicht geschlossene Tags
und sowas ...
--
Bild: http://my.morphosi.net/cgi-bin/mnet.pl?mode=forum&showsmilie=baby2 AMIGA-News Babysitter gesucht !

[ - Answer - Quote - Direct link - ]

2004-10-25, 15:56 h

Holger
Posts: 8116
User
Wozu eigentlich?
Es ist doch wesentlich einfacher, im Header das Encoding "iso-latin-1" zu spezifizieren und die Umlaute so zu lassen. Ansonsten ist Deine Frage nicht ganz verständlich. Du willst einen Konverter haben, der die URLs so, wie von Dir angegeben (also komplett falsch) konvertiert?

mfg
--
Good coders do not comment. What was hard to write should be hard to read too.

[ - Answer - Quote - Direct link - ]

2004-10-25, 16:47 h

Valwit
Posts: 750
User
Zitat:
Original von Holger:
Wozu eigentlich?
Es ist doch wesentlich einfacher, im Header das Encoding "iso-latin-1" zu spezifizieren und die Umlaute so zu lassen. Ansonsten ist Deine Frage



grundsätzlich sollte die kodiereung sowieso spezifiziert sein, PAB braucht aber ein makro um & in & umzuwandeln.
in ged5 kann man selber eines aufnefmen dass erst alle "&" in "& amp;" umwandelt (replace) und dann alle ev. "& amp;amp;" in "& amp;" umwandelt. golded6 scheint da komplizierter zu sein :>



--
Viele Grüsse
Valwit

[ Dieser Beitrag wurde von Valwit am 26.10.2004 editiert. ]

[ - Answer - Quote - Direct link - ]

2004-10-25, 22:11 h

_PAB_
Posts: 3016
User
@Valvit:
Das Problem bei Deinem Makro-Vorschlag ist, daß ein bereits vorhandenes & quot; zB. in ein & amp;quot; konvertiert würde.
Ich suche einen Ersatz für den GoldED ISO-Konverter, da ich keine Lust habe erst zwei verschiedene Befehle auszuführen (und auch kein externes Programm), bevor ich die Datei hochladen kann.
Auch möchte ich keinen Zeichensatz spezifizieren, da es generell auf jedem System laufen soll, auch mit einem HTML 3.2-only Browser sozusagen. Eine Zeichensatz-Angabe ist ja nicht zwingend erforderlich, soweit ich das bisher gesehen habe.

Ich hatte ja schonmal bei Dietmar Eilert nachgefragt, ob ich nicht den ISO-Konverter verbessern könnte, aber er hatte leider abgelehnt, da er mir dafür zu großen Einblick in seine Sourcen geben müßte.

[ - Answer - Quote - Direct link - ]

2004-10-25, 22:14 h

_PAB_
Posts: 3016
User
@Holger:
Ich werde es tunlichst unterlassen meine Seiten in irgendeinem Zeichensatz zu kodieren, da ich oft auf sehr verschiedenen Systemen mit ganz unterschiedlichen Zeichensätzen arbeite und die Seiten im Prinzip überall ohne Verlust der Sonderzeichen editieren können will.

[ - Answer - Quote - Direct link - ]

2004-10-26, 02:45 h

Valwit
Posts: 750
User
Zitat:
Original von _PAB_:
@Valvit:
Das Problem bei Deinem Makro-Vorschlag ist, daß ein bereits vorhandenes & quot; zB. in ein & amp;quot; konvertiert würde.


ein durchlauf der & amp;quot; in & quot; umawandelt ist natürlich zu viel. da hast du recht.



--
Viele Grüsse
Valwit

[ Dieser Beitrag wurde von Valwit am 26.10.2004 editiert. ]

[ Dieser Beitrag wurde von Valwit am 26.10.2004 editiert. ]

[ - Answer - Quote - Direct link - ]

2004-10-26, 02:46 h

Valwit
Posts: 750
User
Zitat:
Original von _PAB_:
Ich werde es tunlichst unterlassen meine Seiten in irgendeinem Zeichensatz zu kodieren, da ich oft auf sehr verschiedenen Systemen mit ganz unterschiedlichen Zeichensätzen arbeite und die Seiten im Prinzip überall ohne Verlust der Sonderzeichen editieren können will.



ROTFL!!!!! schade dass es zu lang ist für eine signatur :D
--
Viele Grüsse
Valwit

[ - Answer - Quote - Direct link - ]

2004-10-26, 08:45 h

Robin
Posts: 1056
User
Kein externes Programm ? Na ja, war nur ein Vorschlag ;)
Vielleicht kannst du ja auch Serverseitig die angeforderten
Dateien mit tidy ausliefern so wie ich das mache ;)

--
Bild: http://my.morphosi.net/cgi-bin/mnet.pl?mode=forum&showsmilie=baby2 AMIGA-News Babysitter gesucht !

[ - Answer - Quote - Direct link - ]

2004-10-26, 10:39 h

_PAB_
Posts: 3016
User
@Valvit:
Nur zu schade, daß mir ein zweiter Durchlauf die "echte" & amp; wieder rausschmeißt !
Jaja, mach Dich nur lustig. Versuche Du doch mal mit verschiedenen Zeichensätzen die gleiche Datei zu bearbeiten !

[ - Answer - Quote - Direct link - ]

2004-10-26, 11:46 h

whooha
Posts: 41
User
Zitat:
Man beachte die Umwandlung von "&" in allen URLs, was der alte ISO-Entity-Konverter nicht macht.
Hat jemand dafür eine W3C-konforme Lösung anzubieten ?

Warum schreibst Du in den URLs nicht gleich "& amp;" statt "&" ?






[ Dieser Beitrag wurde von whooha am 26.10.2004 editiert. ]

[ - Answer - Quote - Direct link - ]

2004-10-26, 12:09 h

Holger
Posts: 8116
User
Zitat:
Original von _PAB_:
@Valvit:
Nur zu schade, daß mir ein zweiter Durchlauf die "echte" & amp; wieder rausschmeißt !
Jaja, mach Dich nur lustig. Versuche Du doch mal mit verschiedenen Zeichensätzen die gleiche Datei zu bearbeiten !

Vielleicht hast Du es ja noch nicht bemerkt, aber so kann es einfach nicht funktionieren. Du willst eine Datei bearbeiten, dann konvertieren, dann wieder bearbeiten und dann wieder konvertieren. Woher soll ein Programm wissen, welche & Zeichen von Dir gewollt, welche ungewollt und welche das Ergebnis eines vorhergehenden Konvertierungsprozeß sind?
Es gibt keine Software, die hellsehen kann. Wenn Du auf dieser Ebene arbeiten willst, dann mußt Du eben Html-Entities von Hand eingeben. Allerdings kann ich nicht nachvollziehen, auf wieviel verschiedenen Systemen und welchen exotischen Zeichensätzen Du die Datei bearbeiten mußt. Da die Editoren auf diesen exotischen Systemen vermutlich auch kein entsprechendes PlugIn besitzen, wirst Du wohl oder übel die ¨-Sequenzen von Hand eingeben müssen. Und dann spielt es ja auch überhaupt keine Rolle mehr, welches Encoding dieses System hat, da Du nur ASCII-Zeichen eingibst, und die anderen Zeichen so abgespeichert werden, wie sie auch geladen wurden.

mfg
--
Good coders do not comment. What was hard to write should be hard to read too.

[ - Answer - Quote - Direct link - ]

2004-10-26, 15:36 h

Valwit
Posts: 750
User
Zitat:
Original von _PAB_:
Jaja, mach Dich nur lustig. Versuche Du doch mal mit verschiedenen Zeichensätzen die gleiche Datei zu bearbeiten !


ich benutze iso-8859-2 und 8859-15 bzw 8859-1, manchmal auch lustige sachen wie cp-1250 oder amiga-pl. das sind schon 4 kodierungssysteme.
bei jeder html-seite definiere ich die kodierung, entieties gebe ich von hand ein oder benutze die dinger di in ged drinn sind. aber ich habe den einfachen weg gewählt: ich halte mich an standards und versuche nicht eigene zu definieren.

--
Viele Grüsse
Valwit

[ - Answer - Quote - Direct link - ]

2004-10-27, 00:00 h

_PAB_
Posts: 3016
User
@Holger:
> Woher soll ein Programm wissen, welche & Zeichen von Dir gewollt, welche ungewollt (...)

Beim bisherigen ISO-Konverter von GoldED funktioniert das ganz gut.
Die "&"-Zeichen, die bereits Bestandteil einer gültigen ISO-Entity sind werden nicht nochmal konvertiert, alle anderen (außer in einem HTML-Tag!) werden in "& amp;" konvertiert.
Im Prinzip wäre es am einfachsten den alten ISO-Konverter zu ändern, nur wird Dietmar Eilert das wohl kaum machen und die Sourcen wird er auch nicht rausgeben fürchte ich.

*träum* GoldED Studio 6 unter APL oder LGPL ? *träum*

[ - Answer - Quote - Direct link - ]

2004-10-27, 10:52 h

Solar
Posts: 3680
User
Sag mal, sag mal... ?(

Weißt Du eigentlich, wofür ISO-Entities da sind, und wofür nicht?

Zunächst einmal: Alle Zeichensätze, die Dir auf quasi allen heute gebräuchlichen Maschinen begegnen können, behandeln den "Grundzeichensatz" identisch. Das umfaßt a-z, A-Z, 0-9, und auch Zeichen wie <, >, &, und ". Keine Konvertierung nötig.

< und > werden nach < und > maskiert, um Verwechselungen mit HTML-Tags zu vermeiden.

& wird nach & maskiert, um Verwechselungen mit maskierten Entities zu vermeiden.

" wird nach " maskiert, weil... ich vermute mal, die Anführungszeichen national unterschiedlich sein können. HTML- oder Zeichensatztechnisch gibt's keinen Grund.

Und dann sind da die Umlaute (z.B. "ä" -> ä, "ß" -> ß). Diese werden maskiert, weil sie nicht zum Grundzeichensatz gehören, die sie maskierenden Zeichen aber schon.

Ta-Daaaa... Deine Datei ist vom Zeichensatz unabhängig. Genau so, wie GoldED es macht.

Und jetzt erkläre mir noch einmal genau, warum Du z.B. die Anführungszeichen innerhalb eines HTML-Tags maskieren willst.

[ - Answer - Quote - Direct link - ]

2004-10-27, 10:55 h

Solar
Posts: 3680
User
Zitat:
Original von _PAB_:

Edit: Ich mußte Leerzeichen nach den "&"s einfügen, damit das Forum diese nicht umwandelt.


Ich dachte mir schon, daß Du die Sache mit der Maskierung nicht richtig verstanden hast. Wie Du vielleicht bemerkt hast, brauchte ich in meinem Posting keine Leerzeichen...

("&quot;" -> &quot;)

[ - Answer - Quote - Direct link - ]

2004-10-28, 00:43 h

_PAB_
Posts: 3016
User
@Solar:
Warum einfach, wenn es kompliziert geht ?
Mit "& quot;" gehts es im Forum auch und jeder versteht es.

> Und jetzt erkläre mir noch einmal genau, warum Du z.B. die
> Anführungszeichen innerhalb eines HTML-Tags maskieren willst

Will ich garnicht, es geht um "&" innerhalb einer URL, die GoldED nicht in "& amp;" konvertiert, weil sie (innerhalb eines HREF, also) innerhalb eines HTML-Tags liegen. Dieses Verhalten ist eigentlich gegen den Standard, auch wenn sich viele nicht wirklich darum kümmern.

Was die Zeichensätze angeht: ich tippe zB. auf Linux ein "ä" und kovertiere dann die Datei mit GoldED, wenn ich wieder zuhause bin. Resultat ist irgendein komischer "& #xxx;"-Code, der nur auf Systemen mit dem gleichen Zeichensatz korrekt dargestellt wird, weil das "ä" auf Linux nicht identisch mit dem "ä" auf dem Amiga ist.

[ - Answer - Quote - Direct link - ]

2004-10-28, 01:09 h

whooha
Posts: 41
User
Zitat:
Was die Zeichensätze angeht: ich tippe zB. auf Linux ein "ä" und kovertiere dann die Datei mit GoldED, wenn ich wieder zuhause bin. Resultat ist irgendein komischer "& #xxx;"-Code, der nur auf Systemen mit dem gleichen Zeichensatz korrekt dargestellt wird, weil das "ä" auf Linux nicht identisch mit dem "ä" auf dem Amiga ist.
Kann der Amiga kein iso-8859-1? Bei mir zeigen more und ed(wb3.1) auch die unter Linux in iso-8859-1 getipperten "ä"s an...

Und wenn Du auf Linux ein "ä" tippst, könntest Du die Datei vor dem Nachhausegehen auch gleich in das "richtige" Characterset umwandeln, da gibs Tools(z.B. konwert) für, und bestimmt auch das Characterset, daß Du für GoldEd brauchst.

[ Dieser Beitrag wurde von whooha am 28.10.2004 editiert. ]

[ - Answer - Quote - Direct link - ]

2004-10-28, 01:37 h

Valwit
Posts: 750
User
Zitat:
Original von _PAB_:
Resultat ist irgendein komischer "& #xxx;"-Code, der nur auf Systemen mit dem gleichen Zeichensatz korrekt dargestellt wird, weil das "ä" auf Linux nicht identisch mit dem "ä" auf dem Amiga ist.


weil es unicode ist. amiga kann das nicht. stelle die linuxshell auf iso 1 oder 15 um und das problem ist erledigt.


--
Viele Grüsse
Valwit

[ - Answer - Quote - Direct link - ]

2004-10-28, 10:24 h

Solar
Posts: 3680
User
Zitat:
Original von _PAB_:

Warum einfach, wenn es kompliziert geht ?
Mit "& quot;" gehts es im Forum auch und jeder versteht es.


Zeigt aber, daß Du bei den Details noch etwas konfus bist.

Zitat:
...es geht um "&" innerhalb einer URL, die GoldED nicht in "&" konvertiert, weil sie (innerhalb eines HREF, also) innerhalb eines HTML-Tags liegen. Dieses Verhalten ist eigentlich gegen den Standard, auch wenn sich viele nicht wirklich darum kümmern.

Aha... bei einem <a href="http://www.example.com/index.php?param1=X&param2=Y"> möchtest Du also das & in ein & verwandelt haben sehen, weil Du meinst, das wäre "Standard"? Dann schau' Dir den Standard besser noch einmal an...

Zitat:
Was die Zeichensätze angeht: ich tippe zB. auf Linux ein "ä" und kovertiere dann die Datei mit GoldED, wenn ich wieder zuhause bin.

Das diese Konvertierung ein bißchen spät kommt - nämlich nach dem Wechsel auf ein System mit anderem Zeichensatz - sollte eigentlich klar sein...?

Zitat:
Resultat ist irgendein komischer "&#xxx;"-Code, der nur auf Systemen mit dem gleichen Zeichensatz korrekt dargestellt wird, weil das "ä" auf Linux nicht identisch mit dem "ä" auf dem Amiga ist.

Ja, darum solltest Du es ja auch vor dem Übergang Linux -> Amiga konvertieren. Für GoldED ist es halt kein "ä", sondern irgendetwas komisches.

AmigaOS verwendet übrigens grundsätzlich ISO Latin 1.


[ Dieser Beitrag wurde von Solar am 28.10.2004 editiert. ]

[ - Answer - Quote - Direct link - ]

2004-10-28, 10:50 h

whooha
Posts: 41
User
Zitat:
Aha... bei einem <a href="http://www.example.com/index.php?param1=X¶m2=Y"> möchtest Du also das & in ein & verwandelt haben sehen, weil Du meinst, das wäre "Standard"? Dann schau' Dir den Standard besser noch einmal an...
Der W3C Validator meckert bei &s in URLs, ist auch besser so:
http://www.htmlhelp.com/tools/validator/problems.html#amp



[ Dieser Beitrag wurde von whooha am 28.10.2004 editiert. ]

[ - Answer - Quote - Direct link - ]

2004-10-28, 11:40 h

Solar
Posts: 3680
User
Humpf... "I stand corrected". I-)

Also verbleibt von _PAB_'s Problemen genau dieser Punkt, der dann schickerweise sogar ein Bug ist statt einem "Missing Feature". Noch dazu einer, den Dietmar wahrscheinlich in Nullkommanix korrigieren könnte, wenn ihn jemand darauf aufmerksam macht...

[ - Answer - Quote - Direct link - ]

2004-10-28, 18:54 h

Holger
Posts: 8116
User
Zitat:
Original von _PAB_:
Was die Zeichensätze angeht: ich tippe zB. auf Linux ein "ä" und kovertiere dann die Datei mit GoldED, wenn ich wieder zuhause bin. Resultat ist irgendein komischer "&#xxx;"-Code, der nur auf Systemen mit dem gleichen Zeichensatz korrekt dargestellt wird, weil das "ä" auf Linux nicht identisch mit dem "ä" auf dem Amiga ist.

Ich bin entsetzt. Die tippst unter Linux ein ä, liest die Datei unter AmigaOS ein, es ist immer noch ein ä, sonst wäre der nächste Schritt ja sinnlos, und konvertierst es dann zu ä und jetzt soll es falsch sein?
Beschäftige Dich doch erst einmal mit der Materie. Alle Entities sind im Standard eindeutig definiert, egal ob benannte oder bezifferte. Diese Zahlenwerte sind grundsätzlich Unicode-codiert und nichts anderes. Schließlich ist der Sinn und Zweck ja der, daß man Zeichen unabhängig vom lokalen Zeichensatz spezifieren kann. Da die ersten 256 Zeichen des Unicode-Zeichensatzes exakt mit dem iso-latin-1 übereinstimmen, der auch unter AmigaOS der Standard ist (Hack&Patch lassen wir mal außen vor), funktionieren die Zahlenwerte auch mit den Amiga-Browsern, die kein Unicode beherrschen. Es gibt also nur genau einen richtigen Zahlenwert in einer Entity, der dem ä entspricht, und das ist 228.

mfg
--
Good coders do not comment. What was hard to write should be hard to read too.

[ Dieser Beitrag wurde von Holger am 28.10.2004 editiert. ]

[ - Answer - Quote - Direct link - ]

2004-10-29, 00:05 h

_PAB_
Posts: 3016
User
Das mit dem Zeichensatz ist sowieso hinfällig, war ein Vorschlag von Valvit (in den Kommentaren, nicht hier im Forum), den ich sowie nicht umsetzen kann, da ich an unseren Rechner in der Uni keinesfalls den Zeichensatz umstellen werde.
Ich schreibe weiterhin nur in Dateien rein, die bereits ISO-Entities haben.

@whooha:
Danke für die Antwort an Solar.

@Solar:
Dietmar wird nichts mehr am ISO-Konverter von GoldED Studio 6 machen, den Fehler (und eineige andere Verbesserungsmöglichkeiten) habe ich ihm schon vor Jahren gemeldet... auch habe ich vorgeschlagen es selbst zu korrigieren, was er aber abgelehnt hat (wegen Einblick in die Sourcen).
Soweit ich das sehen kann, macht er nur noch Updates für GoldED Studio AIX.
Genau deshalb suche ich ja nach Ersatz.

Und jetzt sag bitte keiner ich soll mir halt den AIX kaufen, das geht nicht, denn meine ganzen selbstprogrammierten Syntaxparser die ich täglich brauche sind für die 6er-API programmiert und laufen auf dem AIX nicht mehr. Derzeit habe ich keine Zeit mich um eine Portierung auf die AIX-API zu kümmern.

[ - Answer - Quote - Direct link - ]

2004-10-29, 08:02 h

Solar
Posts: 3680
User
Zitat:
Original von _PAB_:
Das mit dem Zeichensatz ist sowieso hinfällig, war ein Vorschlag von Valvit (in den Kommentaren, nicht hier im Forum), den ich sowie nicht umsetzen kann, da ich an unseren Rechner in der Uni keinesfalls den Zeichensatz umstellen werde.


In einem guten Texteditor kannst Du den Zeichensatz der behandelten Datei einstellen, ohne an den globalen Systemeinstellungen herumbasteln zu müssen.

Zitat:
Ich schreibe weiterhin nur in Dateien rein, die bereits ISO-Entities haben.

Na viel Spaß, immerhin sind Entities ziemlich aus der Mode gekommen....

Zitat:
Und jetzt sag bitte keiner ich soll mir halt den AIX kaufen, das geht nicht, denn meine ganzen selbstprogrammierten Syntaxparser die ich täglich brauche sind für die 6er-API programmiert und laufen auf dem AIX nicht mehr. Derzeit habe ich keine Zeit mich um eine Portierung auf die AIX-API zu kümmern.

Tja. Dietmar hat nicht die Zeit sich um GoldED 6 zu kümmern, Du hast keine Zeit Dich um eine Portierung Deiner Syntaxparser zu kümmern...

[ - Answer - Quote - Direct link - ]

2004-10-29, 12:06 h

Holger
Posts: 8116
User
Zitat:
Original von Solar:
In einem guten Texteditor kannst Du den Zeichensatz der behandelten Datei einstellen, ohne an den globalen Systemeinstellungen herumbasteln zu müssen.

Gibt's so einen auf dem Amiga?

mfg
--
Good coders do not comment. What was hard to write should be hard to read too.

[ - Answer - Quote - Direct link - ]

2004-10-29, 12:28 h

Solar
Posts: 3680
User
_PAB_ sprach von den Rechnern in der Uni, an deren Zeichensatz-Einstellungen er nicht schrauben wolle.

Das es sich da um Amigas handelt, wage ich zu bezweifeln.

[ - Answer - Quote - Direct link - ]

2004-10-29, 15:34 h

_PAB_
Posts: 3016
User
@Solar:
Unter Linux ist mir kein solcher Editor bekannt.
Erstrecht keiner, der in der Shell funktionieren würde.

[ - Answer - Quote - Direct link - ]

2004-10-29, 22:26 h

whooha
Posts: 41
User
@_PAB_:
Emacs

[ - Answer - Quote - Direct link - ]

2004-10-30, 01:24 h

_PAB_
Posts: 3016
User
@whooha:
Schön, selbst wenn, es löst das eignetliche Problem nicht.

[ - Answer - Quote - Direct link - ]


-1- 2 [ - Post reply - ]


amiga-news.de Forum > Programmierung > ISO-Entities in GoldED [ - Search - New posts - Register - Login - ]


.
Masthead | Privacy policy | Netiquette | Advertising | Contact
Copyright © 1998-2024 by amiga-news.de - all rights reserved.
.