• Willkommen im Geoclub - dem größten deutschsprachigen Geocaching-Forum. Registriere dich kostenlos, um alle Inhalte zu sehen und neue Beiträge zu erstellen.

%Smartname selbst berechnen für Gamin GPS

Axel Kuehn

Geonewbie
Ich hoffe die Frage ist nicht schon zu oft gestellt worden:

Ich möchte einen eigenen Smartname berechnen, maximale Länge 14

Am Anfang %drop2 (4-6Zeichen)
Am Ende %c_name( die letzten 2 Zeichen)
In der Mitte %c_name( 6-8Zeichen, jenachdem, was am Amfang gebraucht wird )

Notfalls auch feste Längen

Am Anfang %code (die letzten 3 zeichen)
In der Mitte %c_name( 9 Zeichen fest)
Am Ende %c_name( die letzten 2 Zeichen)

Gibt es dafür inline-Formattierer?
Falls nicht, kann man das Ergebnis als Userdata speichern und dann später %user1 verwenden?
 

8812

Geoguru
Smartname ist der vorgegebene Name einer GSAK-Variablen. Was Du willst, nennt sich "Custom Name". So ist das auch in den jeweiligen Exportdialogen vorgegeben.
Für das Editieren gibt es ein Makro.

GSAK_Name-Editor.png


Frohes Editieren
 
OP
A

Axel Kuehn

Geonewbie
Ich habe das Makro installiert.
Dann habe ich einen Wegpunkt in der Liste selektiert und dann bei Waypoint->Custom Data einen neuen Customdata namens "CustomName" erzeugt, Typ String.
Den kann ich mir auch in der Tabelle als Spalte anzeigen lassen, er liefert eine leer Spalte mit der Überschrift "CustomName"

Nun gilt es, die Spalte zu füllen, also habe ich im Makro (Macro->Run/Manage->CustomNameEditor) angegeben:

%CustomName=x_%name_x

In der Vorschau macht auch brav vor und hinter den Namen ein X_ bzw _X
Wenn ich jetzt auf OK klicke geht der Dialog zu, sonst nichts.

Ich hätte erwartet, dass er zumindest für die markierte Zeile etwas in die Spalte "CustomName" schreibt.

Was mache ich falsch?
 

8812

Geoguru
Das Makro ist lediglich zum Testen und Editieren gemacht. Es wird nicht einfach etwas in ein anderes Makro oder ein GSAK-Feld eingetragen.
Den erzeugten String von Hand zu kopieren und dann in die verwendete Funktion/das Makro einzusetzen ist zu schwierig?

Hans
 

8812

Geoguru
Axel Kuehn schrieb:
[...] und dann bei Waypoint->Custom Data einen neuen Customdata namens "CustomName" erzeugt, Typ String.[...]
Das ist völlig überflüssig. "Custom Name" ist lediglich ein feststehender Begriff für den vom User (also dir) erzeugten String, der beim Export automatisch zum Namen auf dem Gerät / der Karte wird.

Hans
 

8812

Geoguru
Axel Kuehn schrieb:
[...]
Am Anfang %drop2 (4-6Zeichen)
Am Ende %c_name( die letzten 2 Zeichen)
In der Mitte %c_name( 6-8Zeichen, jenachdem, was am Amfang gebraucht wird )
[...]
%drop2 erzeugt höchstens 5 Zeichen (GC-Codes haben max 7 Zeichen)
%c_name steht für den vom Cacheowner vergebenen Namen des Childs. Was willst Du mit den beiden letzten Buchstaben anfangen?
Du solltest mal in der GSAK-Hilfe (F1) nach Special Tags suchen und dir die entsprechenden Codes für Additional Waypoints ansehen.

Hans
 

8812

Geoguru
Mit Klicken des OK-Buttons im Editor wird der erstellte String automatisch in die Zwischenablage kopiert.*

Hans

* Das steht auch im Release-Thread des Makros. Man muß es nur mal lesen. Zur Not auch mehrmals, wenn man es nicht gleich versteht.
Ich bin jetzt hier raus. _Draheim, übernehmen Sie. :D
 

8812

Geoguru
BriToGi schrieb:
Wofür benutzt man sowas?
Was jetzt? Den vom TO gewünschten speziellen Smartname oder das zuletzt genannte Makro?
Eigentlich egal, denn deine Frage ist OT. Sie beantwortet nicht die Fragen des TO.

Hans
 

BriToGi

Geowizard
Den Namen meinte ich, was macht man damit genau?

Btw: Keine direkte Antwort auf die Ursprungsfrage bedeutet mitnichten OT :)
 

8812

Geoguru
BriToGi schrieb:
Den Namen meinte ich, was macht man damit genau?

Btw: Keine direkte Antwort auf die Ursprungsfrage bedeutet mitnichten OT :)
Stimmt, aber Sinnfragen und die damit einhergehenden Überzeugungsthreads. Und danach hörte sich deine Frage an.
OK, hier scheint es wirklich angebracht, deine Frage zu stellen. Auch mir ist völlig unklar was man mit einem selbst gedengelten Smartname in einem Custom Data Field will. Custom Names werden in der Regel on the fly beim Export erzeugt.
Ansonsten gilt: Custom Names sind auf dem Gerät und auf Karten ungemein hilfreich, schon bestimmte Daten im Namen zu führen. Bei den 60ern war das zum Beispiel %Drop2 %Smart. Heutzutage ist zum Beispiel der Tag %usort hilfreich bei Cachetouren, kann man mit ihm doch sehr elegant die laufende Nummer der Tour vor den Cachenamen setzen. Usw. Und so fort.
Ende OT.

Hans
 

UF aus LD

Geowizard
BriToGi schrieb:
Den Namen meinte ich, was macht man damit genau?
...
Ich nutze einen selbst zusammengestellten Namen, damit ich z.B
- am Namen erkennen kann, ob der Cache "Corrected coordinates" hat;
- dem Namen meine "usersort"-Angaben vorangestellt werden, dann kann ich eine Reihenfolge schneller erkennen;
- die ersten 2 Buchstaben des Codes meist nicht benötigt werden ("GC12345" wird "12345");
- aus z.B. "Bürstenbinder Power Trail" wird im GPS "BBPT"
- andere eigene Vorlieben/Bedürfnisse erfüllt
- ......


edit: Hans war schneller
 
OP
A

Axel Kuehn

Geonewbie
Ich bitte um Vergebung, ich meinte %name und nicht %c_name. Das sollte aber den Sinn der Frage nicht soweit verfälschen, dass keine Antwort mehr möglich ist.

Ich habe ein altes Garmin GPSMap60Csx, und das kann eben nur 14 Buchstaben (oder sogar nur 11?) als Wegpunkname. ich verwende zur Zeit beim Übertagen der Wegpunkte:
"%drop2 %smart"

Wenn ein Owner eine Tradi-Runde legt und diese recht zügig veröffentlicht, fangen die Werte von %drop2 auch meistens mit den gleichen Zahlen/Buchstaben an. Mir würde es reichen, die letzten zwei oder drei Zeichen von %drop2 als Präfix zu bekommen.

Leider versagt %smart bei besonders langen Cachenamen, genauer gesagt, aus "Meine kleine Geburtsagtsrunde für meinen allerliebsten Schuckiputz Station #11" wird dann schon mal zu "MnklGrtstsrsS1". Mit dem Buchstabenklumpen vorne kann ich leben, dass hinten aus 11 eine 1 wird, ist nicht so prickelnd. Deshalb hätte ich gerne die letzten zwei oder drei Zeichen des Cachenamens als Suffix.

Der verbleibende Platz in der Mitte kann gerne mit des Cachenamens aufgefüllt werden.
 

UF aus LD

Geowizard
Du kannst den "smartname" beeinflussen:

Tools - Options - unten rechts "edit"
7295b5c73ad38c361761fcd63cef4314.png


Dort gibst du jetzt den gewünschten "smartname" ein
0ca0deefbb2164a47c6853011534e92d.png

und bestätigst alle eingaben.
Der lange Teil des Namens wird dann durch "GEB" ersetzt. eventuell noch die "Station" mit einbeziehen ....

Aus "Bürstenbinder Power Trail=BBPT" wird

a962c86b35e2d48234d71b23f42a2fc7.png
 

8812

Geoguru
Es gibt ein Makro, das schreibt die Nummern aus Cachenamen in ein CustomDataField namens "Identifier".
Das Makro: CacheNameNumbertoCustom.gsk

Ein passender Custom Name für den Cache "Sieben Dörfer Moor 7" könnte dann so aussehen (der %name sollte natürlich auf 6 gekürzt werden, oder Du läßt die Leerzeichen weg):

6c27e17672d3c389012c1db66214eeeb.png


Frohes Tüfteln
Hans
 
OP
A

Axel Kuehn

Geonewbie
Entschuldigung, ich meinte natürlich %name, nicht %c_name.

Ich habe einen alten GPSMap60Csx, der kann bei der Anzeige der Wegpunktnamen nur eine begrenzte Länge, 14 (oder sogar nur 11, sollte aber für die Frage egal sein)
Zur Zeit verwende ich als Wegpunktname beim Übertragen an das Gerät "%drop2 %smart".
Dabei kommt es gelegentlich vor, dass der Smartname irreführend ist, wenn er in seiner Liste z.B. erst "<langer Text> Station 10" und dann "<langer Text> Station 1" findet.
Ich meine sogar gesehen zu haben, dass vorne der %drop2 verstümmelt ist.
Wahrscheinlich wird erst in GSAK der String aus den Platzhaltern zusammengebaut und dann werden beim Übertragen solange Buchstaben rausgeschmissen, bis die erforderliche Länge erreicht wird.
Letzteres macht der Garmin wahrscheinlich selbst.

Das kann man umgehen, indem man ihm einen Text gebt, den erst gar nicht kürzen muss. Deshalb hätte ich gerne:

Am Anfang des Textes, die letzten zwei oder drei Zeichen von %drop2 oder %code, da die ersten Zeichen in einem Gebiet meistens gleich oder ähnlich sind.

Am Ende des Textes hätte ich gerne die letzten zwei oder drei Zeichen von %name, damit auf jeden Fall die Nummer hinten erfasst wird.


Für der verbleibend Rest in der Mitte würde ich den Anfang von %name nehmen.

In der Onlinehilfe habe ich keine Formatierer gefunden, z.B. Right(%name,2), die ich direkt in das Feld eintragen könnte.
Ich vermute aber, dass es entsprechende Befehle in der Makrosprache gibt.
Mit Hilfe eiens solchen Makros könnte ich dann %user (oder eine eigene Variable) mit dem gewünschten Text füllen.

Das oben angebotene Makro "Custom Name Editor" zeigt eine Vorschau für eine Zeile an, vielen Dank dafür.
Es löst das Problem aber nur teilweise, ich brauche ein Makro, dass für alle Zeilen den Wert wie oben beschrieben berechnet und in eine Hilfsvariable packt.
 

8812

Geoguru
Axel Kuehn schrieb:
[...] Das oben angebotene Makro "Custom Name Editor" zeigt eine Vorschau für eine Zeile an, vielen Dank dafür.
Es löst das Problem aber nur teilweise, ich brauche ein Makro, dass für alle Zeilen den Wert wie oben beschrieben berechnet und in eine Hilfsvariable packt.
Wie schon mehrfach erwähnt: Der Editor ist NUR zum TESTEN und EDITIEREN.
Und die Custom Names werden ON THE FLY beim EXPORTIEREN für jeden Cache temporär erzeugt. Es gibt überhaupt keine Notwendigkeit sie in ein Custom Data Field zu speichern.
Das Einzige was Du sichern mußt, ist der Name-String in deinen Exporteinstellungen.



Hans
 
OP
A

Axel Kuehn

Geonewbie
Sorry, hatte zweimal geposted.

CacheNameNumbertoCustom tut in etwas das, was ich will.
Der Rest sollte in der Hilfe zur Makrosprache stehen.

Danke
 

BriToGi

Geowizard
:klugscheisser: Achtung, kein OT :D

Ach so, hatte das irgendwie nicht so rausgelesen, wenn es um viel Info auf wenig Raum geht, hier noch ein paar Beispiele zum Gedankenanregen :roll:

https://forum.geoclub.de/viewtopic.php?p=906104#p906104
 

8812

Geoguru
BriToGi: wie soll das auf dem 60er Garmin funtionieren?
Merke: Erst denken - dann posten.
Du scheinst das ja oft umzukeheren, und dann auch noch den zweiten Teil zu vergessen.
Keine Antwort nötig. Du stehst aus gutem Grund schon länger auf meiner Board-Ignoreliste.

Hans
 
Oben