Dá se nejak nastavit, aby body ve vygenerovaném gpx měly v názvu jen waypoint a žádné ID?
Doteď jsem si vše stahoval v loc a rovnou posílal programem EasyGPS do GPS, mám tam tedy všechny keše pojmenované tímto stylem - ocenil bych tedy, aby se v okamžiku poslání finálovky vygenerováním přes GeoGet do GPS přemazal bod s výchozími souřadnicemi, což jde jenom v okamžiku, kdy mají oba body stejný název.
Kdyz vydrzis tak… dejme tomu pet minut, budes si moci v nove verzi nejen upravit stavajici exportni format dle libosti, budes mi moc nadefinova libovolne mnozstvi vlastnich exportnich formatu.
Vida, na webu uz dokonce tato nova verze je, jdu psat annonce.
Možná něco nechápu, ale jak a kde lze nadefinovat ten export? Zatímco minulá verze mi umožnovala export do GPX a PQ-GPX, teď mi to nabídne prázdnou tabulku exportních formátů a ani ty původní tam nejsou
V tomto adresari C:\Documents and Settings\user\Application Data\geoget
najdes soubory jako napr gpxpq.gge.pas. Jejich editaci dle vlastnich pozadavku si je muzes nastavit. Pokud je tam nemas, tak bych doporucil preinstalovat posledni verzi.
Už jsem to vyřešil - když mám směrovanej GeoGet do jiného adresáře, tak on ty skripty nevidí, protože se instalujou do default adresáře. Takže je stačí zkopírovat na správné místo.
Možná je chyba na mé straně - ale když se pokusím v exportním skriptu provést nahrazení přehlasovaného u nepřehlasovaným u, dostanu jako výstup příkazu ReplaceString(‘u’,‘ü’,ss) (proměnná ss obsahuje název keše) jen samotné písmeno u a nikoli název s nahrazeným jediným písmenem. Nemůže být v ipmlementaci těch skritpů nějaká potíž s těmito méně obvyklými znaky?
Doplněno o dest minut pozdeji:
Tak jsem už odkoukal, že syntaxe toho příkazu je jiná, moje chyba, jsem pako, omlouvám se. Ale ani ve spávné syntaxi (ReplaceString(ss,‘ü’,‘u’) se mi to nahrazení neprovede, stále tam zůstává ü místo u.
Jedná se o keš Zelena kaple / Grüne Kapelle
A ještě jedna otázka, jak se zapisuje do řetězce apostrof? Jako v Céčku - tj \’ ?
Jde mi o to, abych při exportu do pqgpx měl místo ID název keše. Některé znaky tam ale nesmějí být (na odstranění diakritiky je funkce, přehlásky a apostrofy ale samozřejmě neodstraní) proto se je snažím nahradit takříkajíc svépomocí.
Data by se mela zadavat v UTF-8 kodu! Pokud jsi tam napsal ‘ü’, pak se bojim, ze jsi to tam napsal v CP-1250… Proto to ten znak v UTF-8 kodovanych datech nemohlo najit…
Dela se to jako v pascalu.. tedy apostrof uvnitr dat zdvojis.
fakt je, že tomu houbeles rozumím, ještě to budu raději zkoumat a otázky prozatím omezím, ať neplácám blbosti. Předpokládal jsem totiž, že když vezmu vyexportovaný soubor, otevřu ho, do schránky naberu to inkriminované přehlasované u a z té schránky ho vložím do dokumentu s exportním filtrem, bude se tam vkládat to správné přehlasované u, protože pokud by bylo v jiném kódování, zobrazilo by se něco jiného. Hm, takhle to tedy asi nefunguje, jak vidím. Nečekám výklad, jen vysvětluju… Nějak se s tím poperu.
OK, díky za tip, fakt je, že z popisu pouziva se na zakodovani dat pro XML element jsem moudrý nebyl. Zagooglím a budu tedy experimentovat.
Mám takový hloupý dotaz, a protože neumím Pascal tak trochu tápu.
Skript jsem si stvořil a funguje tak jak chci až na jeden problém. Když je v některém řetězci znak & nebo tagy <br> nebo <p> tak mi to POIloader a i kontrola XML to vyhodí jako chybu. Když to ošetřím jako cdata, tak už kontola XML neřve, ale POIloader se na tom vyhryzne. Takže to budu muset z těch stringů vykostit nějak ručně a tady narážím. Nevím jak deklarovat v tom skriptu funkci, jak se jí předává parametr a jak ho vrací. Zbytek asi už zvládnu, ale na tomhle jsem si vylámal zuby. Můžeš mě nakopnout správným směrem? Díky
To mne dost prekvapuje, ze by zrovna POILoader nezvladal standardni XML CDATA konstrukci. Jak konkretne to ‘vyhryzne’?
Jinak priklad na udelani funkce je ten skript sam o sobe… mas tam minimalne ctyri priklady na deklaraci funkce. V gccz.gge.pas mas i jako posledni funkci, ktera dostava retezec na vstupu a dava na vystup dalsi retezec. Obleshni to podle ni.
jinak jeden vyexportovanej záznam s CDATA vypadá takto:
<wpt lat="50.842567" lon="14.123433">
<name>TR-<![CDATA[Fimfarum]]></name>
<desc>
GC1006K by <![CDATA[Pumpa & Zumpa]]>
- Traditional Cache - Small - T3/D2
- <![CDATA[[CZ] Pod velkym kamenem<br>[EN] Under big rock]]>
</desc>
</wpt>
Ale zkoušel jsem to na velké skupině, na jednom jsem to nezkoušel.
**) pro stouraly - data jsou fiktivni a nepochazeji z jinych zdroju
Rozhodne bych zkusil misto nekolika CDATA uvnitr jednoho tagu vzdy cely obsah zabalit do jednoho CDATA. Zkus to udelat takhle:
<wpt lat="50.842567" lon="14.123433">
<name><![CDATA[TR-Fimfarum]]></name>
<desc><![CDATA[GC1006K by Pumpa & Zumpa
- Traditional Cache - Small - T3/D2
- [CZ] Pod velkym kamenem<br>[EN] Under big rock]]>
</desc>
</wpt>
Vnořit několik CDATA do jednoho tagu je chyba a Microsoftí XML parser (který používá většina programů pod Windows, včetně POI loaderu) zahlásí chybu. Viz dokumentace:
Content within CDATA sections must be within the range of characters permitted for XML content; control characters and compatibility characters cannot be escaped this way. In addition, the sequence ]]> cannot appear within a CDATA section because this sequence signals the end of the section. This means that CDATA sections cannot be nested. The sequence also appears in some scripts. Within scripts, it is usually possible to substitute] ]> for ]]>.
Nejjednodužší jak ověřit správnost XML pro Microsoftí parser (který jak sem psal bohužel používá většina programů ve Windows) je přejmenovat soubor na *.xml a otevřít ho v IE. SAX jsem nezkoušel.
Tak jsem zkusil podle rady použít CDATA a teď už mi to POIloader teda sežere, ale GPS mi nezobrazí text v poli DESC
<wpt lat="50.842567" lon="14.123433">
<name>TR-<![CDATA[Fimfarum]]></name>
<desc>
<![CDATA[GC11111 by Pumpa & Zumpa - Traditional Cache - Small - T3/D2 - [CZ] Pod velkym kamenem<br>[EN] Under big rock]]>
</desc>
</wpt>
Takže jdu studovat packal a napsat si svojí rutinu, která mě zachrání abych nemusel CDATA vůbec použít a zbavil se těch paznaků. Ale čím víc jazyků člověk umí,…B)