[Allegro] problem mit #8e: der Unterstrich _ in web/intranet-adressen wird in der cat.api durch %5F ersetzt

Thomas Berger ThB at Gymel.com
Die Sep 27 14:53:07 CEST 2011


Hallo Herr Lehmann,

> wo müsste man was drehen?
> =========================
> 1. cat.api.
> man suche nach:
> #upV +U i5,8 i6,e e0            #8e : _ ersetzen!
> gehe zu #-U
> dort heisst es jetzt:
> #upV ,",_,%5F," ,"_ _%20_" M
> #t{ "-" }
> #+#
> damit wird bei der eingabe von _ und LEER ein %5F bwz %20 eingetragen.
> damit vermeide ich, das das originaldokument verändert wird.
> 
> 2. gleichzeitig in der d-wrtf.apr sollte das eingetragen werden:
> #(8
> #t{ C }
>   Kommt kein Punkt vor, aber vorn ein Laufwerksbuchstabe?
> #cc +#8eZ i5,: c"^." e0   dann ist es ein Datenbanksatz
>   sonst ist es ein Dateiname oder eine URL
>       #cc e"▼" ,"_\_/_" p'x var "' P'"\ins #ucc\exec winstart.flx' =Z~
> #cc e"▼" ,"_\_/_" ,",%5F,_," ,"_%20_ _" p'x var "' P'"\ins #ucc\exec winstart.flx' =Z~
> usw usw.
> 
> 
> zusammemfassend:
> ================
> 1. macht die eingabe von _ bzw einem LEER zu soetwas: %5F bzw %20.
> ok, das ist brauchbar und sinnvoll, denke ich.

Wenn es ein Dateiname ist, dann ist " " durchaus erlaubt, wenn es aber
eine file-URI ist, dann kann es " " nicht geben und sollte auch nie
so erfasst werden (da ist " " also fundamental anders als das im Prinzip legale,
und nur beim Speichern im Datensatz problematische "_": " " ist fuer
allegro unproblematisch aber manchmal inhaltlich Murks).

Man muss sich halt entscheiden, ob man einen Dateinamen oder eine file-URI
erfasst, so wie es in #8e drin steht, kann man es auch nutzen, adhoc
"andersrum" geht schief (das gilt auch fuer die Umlaute). Und dass unklug
gewaehlte Windows-Pfade (Spatien, Umlaute) stets Interoperabilitaetsprobleme
geben, sollte seit 1995 bekannt sein, und dass die Umformulierung als
URI nicht besonders schoen aussieht, ist eben so.

Uebrigens besteht #8e normalerweise aus bannig vielen Unterfeldern und man muss
aufpassen,  solche Operationen nur im richtigen vorzunehmen ($u).

viele Gruesse
Thomas Berger