Usage:Yamar

From Geoqo
(Difference between revisions)
Jump to: navigation, search
(Second, my export process)
(The script)
Line 99: Line 99:
 
   (set:import:near me||set:import:fairfield)
 
   (set:import:near me||set:import:fairfield)
 
     &&mem:findable
 
     &&mem:findable
 
+
 
 
   %display
 
   %display
 
   count:Findable Geocaches    :
 
   count:Findable Geocaches    :
 
+
 
 
   #
 
   #
 
   # export it to a garmin compatible file (.loc)
 
   # export it to a garmin compatible file (.loc)
Line 108: Line 108:
 
   %export
 
   %export
 
   mem:garmin,prefix=nearme
 
   mem:garmin,prefix=nearme
 
+
 
 
   #################### geoniche ##################
 
   #################### geoniche ##################
 
   #
 
   #
Line 115: Line 115:
 
   %export
 
   %export
 
   mem:geoniche,prefix=nearme
 
   mem:geoniche,prefix=nearme
 
+
 
 
   ##################### tomtom ####################
 
   ##################### tomtom ####################
 
   #
 
   #
 
   # find all stuff in recent PQs and is findable
 
   # find all stuff in recent PQs and is findable
 
   #
 
   #
 
+
 
 
   # geocaches
 
   # geocaches
 
   %search
 
   %search
 
   (set:import:near me||set:import:fairfield)
 
   (set:import:near me||set:import:fairfield)
 
     &&mem:findable
 
     &&mem:findable
 
+
 
 
   %export
 
   %export
 
   mem:palm-geocaches
 
   mem:palm-geocaches
 
+
 
 
   # all extra waypoints in the extra wayspoints set
 
   # all extra waypoints in the extra wayspoints set
 
   %search
 
   %search
 
   (set:import:near me:waypoints||set:import:fairfield:waypoints)
 
   (set:import:near me:waypoints||set:import:fairfield:waypoints)
 
+
 
 
   %export
 
   %export
 
   mem:palm-extra-points
 
   mem:palm-extra-points
 
+
 
 
   %display
 
   %display
 
   count:Extra Waypoints      :
 
   count:Extra Waypoints      :
 
+
 
 
+
 
 
   # all waymarks (I don't have that many loaded)
 
   # all waymarks (I don't have that many loaded)
 
   %search
 
   %search
 
   waypoint:type==Waymark
 
   waypoint:type==Waymark
 
+
 
 
   %export
 
   %export
 
   mem:waymarking
 
   mem:waymarking
 
+
 
 
   %display
 
   %display
 
   count:Waymarks              :
 
   count:Waymarks              :
 
+
 
 
+
 
 
   #################### cachemate ##################
 
   #################### cachemate ##################
 
   #
 
   #
Line 159: Line 159:
 
   (set:import:near me||set:import:fairfield)
 
   (set:import:near me||set:import:fairfield)
 
     ||waypoint:type=Waymark
 
     ||waypoint:type=Waymark
 
+
 
 
   %export
 
   %export
 
   mem:cachemate
 
   mem:cachemate
 
+
 
 
   %display
 
   %display
 
   count:Total Cachemate      :
 
   count:Total Cachemate      :

Revision as of 17:49, 6 January 2007

I am, as you will see, truly insane. Warning: I'm not sure if this condition is contagious. It may be. We'll find out together.

Contents

My requirements (or: why I do this)

Much of what I need was actually the reason I started creating geoqo in the first place. I wanted to do things I doubt anything could handle (and if it did, I'm sure it didn't run natively on linux which I use the most).

Output Needs: Where my data ends up

One of the issues is that I have multiple places where my caching data goes to:

  • My Garmin Etrex Vista (B/W)
    • limit of 1000 waypoints (ARG!!!)
    • I don't want anything in it but geocaches because of the limited memory size
  • My TomTom Palm Application
    • this requires each Point of Interest to be in individual files
    • I have a lot of memory in this, so I want everything in it (including waymarking data points)
  • My CacheMate database
    • This needs everything but I separate out different regions into different files
  • My GeoNiche program
    • I rarely use it, but when I'm with people without a GPS I do.
    • Also can take everything on my palm card, but I do it in different regions to keep the "current" memory footprint small.

All of the above requirements makes me do some insane things.

Input Sources

  • geocaches
  • extra waypoints for geocaches (parking, trail heads, multi-steps)
  • waymarking (wifi hot spots alone is worth it)
  • geodining? (soon)
  • my own data points (home, etc)

My description breakdown

First, my search criteria

My pocket queries are already named, so I use those names to search by using geoqo's Sets that are automatically given to you when you import a gpx file. The extra waypoint data (E.G. parking) are also in a set.

But, I don't want puzzles I haven't solved.

So first, I have a mem: definition for standard search criteria I use when about to export stuff to all my devices:

 (
 # only
 #   anything that isn't a geocache
 #   or the subtype is not "Unknown"  (IE, exclude puzzles)
 #   or the puzn (north puzzle answer) attribute is set:
 #   or unless the "infield" attribute is set
 # or anything that isn't a geocache
 (waypoint:type<>Geocache
  ||cache:subtype<>Unknown
  ||attr:puzn<=>0
  ||attr:infield=1)
  
 # but restrict the above results to exclude events
 #   XXX: need to fix this actually; I do want them in my palm
 &&(waypoint:type<>Geocache||cache:subtype<>Event)
  
 # exclude things that I've found (marked with the found attribute)
 #  found=- means the attribute doesn't exist
 #  found=0 means it exists, but is 0 (so I've explicitly marked it not found)
 &&(attr:found=-||attr:found==0)
 )

That file is placed in $HOME/.geoqo/mem/search/stdfilter.

Then I can use that when doing more specific types of searches. For example, I have a "set1" mem: definition as well that calls the above definition:

 (set:import:%[set1/near me]
 ||set:import:%[set1/near me]:waypoints
 ||set:import:%[set1/near me]:waymark1
 ||set:import:%[set1/near me]:waymark2
 ||set:import:%[set1/near me]:waymark3
 )
 &&mem:stdfilter

(when I import a waymarking .loc, I specifically set the name to a normal set name but with :waymark1 (...) on the end)

Finally with all of the above in place, I can do this:

 geoqo -s mem:set1,set1=hawaii

to get all the caches (and waymarks) in hawaii matching my search requirements into my search results.

My export process

To get everything out in the list I have at the start of this page, I use a script. The script does various different types of searches followed by various different types of output to different files, etc.

The script

It's big. It's long. But it has comments.

 ##################### garmin ####################
 #
 # first search to include recent PQs but limit by my "findable"
 # criteria
 #
 %search
 (set:import:near me||set:import:fairfield)
   &&mem:findable
 
 %display
 count:Findable Geocaches    :
 
 #
 # export it to a garmin compatible file (.loc)
 #
 %export
 mem:garmin,prefix=nearme
 
 #################### geoniche ##################
 #
 # export to geoniche...  similar to that of garmin
 #
 %export
 mem:geoniche,prefix=nearme
 
 ##################### tomtom ####################
 #
 # find all stuff in recent PQs and is findable
 #
 
 # geocaches
 %search
 (set:import:near me||set:import:fairfield)
   &&mem:findable
 
 %export
 mem:palm-geocaches
 
 # all extra waypoints in the extra wayspoints set
 %search
 (set:import:near me:waypoints||set:import:fairfield:waypoints)
 
 %export
 mem:palm-extra-points
 
 %display
 count:Extra Waypoints       :
 
 
 # all waymarks (I don't have that many loaded)
 %search
 waypoint:type==Waymark
 
 %export
 mem:waymarking
 
 %display
 count:Waymarks              :
 
 
 #################### cachemate ##################
 #
 # cachemate is similar, but I also want:
 #  - all caches (including unsolved)
 #  - waymarks
 %search
 (set:import:near me||set:import:fairfield)
   ||waypoint:type=Waymark
 
 %export
 mem:cachemate
 
 %display
 count:Total Cachemate       :

I can then call this script like:

 geoqo -x all

The scripts callable sub-pieces

As you can see, the above script calls a number of mem: modules in order to achieve it's goal. I do this rather than putting the data in the script directly so that I can do pieces of the script by hand on the command line instead if I need it. (ie, if I want just my garmin data for some reason I can run:

 geoqo -s "set:import:near me&&mem:findable" -e mem:garmin

Without having to run the rest of the script.

Below are the breakdown of the other mem components in the above script.

Personal tools