Abs | Returns an absolute value of a number |
AddNew | Add a new record to a table |
AddStr | Optimized/fast string concatenation |
Alltrim | Remove spaces before and after a string |
Appendfile   | Append data to an existing file |
ArcCos | Calculates the inverse cosine of a given number |
ArcCosh | Calculates the inverse hyperbolic cosine of a given number |
ArcSin | Calculates the inverse sine of a given number |
ArcSinh | Calculates the inverse hyperbolic sine of a given number |
ArcTan | Calculates the arctangent of a given number |
ArcTan2 | Calculates the arctangent angle and quadrant of a given number |
ArcTanh | Calculates the inverse hyperbolic tangent of a given number |
Array | Array function for array support |
Asc | Return the ascii value of a character |
At | Get the position of string found in another string |
AtStart | Get the position of a string found in another string, from a specified start position |
Backup | Backup GSAK databases(s) and settings |
BBcode | Convert BBcode to HTML |
BeginCase | Begin a group of CASE statements |
BeginSub | Begin a subroutine |
BoolToStr | Convert Boolean value to a string |
Break | Exit out of the current WHILE loop |
BreakRepeat | Exit out of the current Repeat loop |
CacheMate | Load CacheMate logs and finds from a CM2GPX generated file |
CacheType | Return 1 letter, expanded, and lists of cache type names |
Cancel | Cancel the macro and return to the GSAK GUI |
CancelFilter | Cancel the current filter |
Case | CASE statements |
Centre | Set the current centre point |
ChildType | Return a list of child waypoint types |
Choose | Select from a list of choices |
Chr | Convert a decimal value to its ASCII equivalent |
Clip | Copy information to the windows clipboard |
CodeMatch | Optimized database code matching |
Cos | Calculates the cosine of an angle |
Cosh | Calculates the hyperbolic cosine of an angle |
Cotan | Calculates the cotangent of an angle |
CustomConfig | Configure custom fields in the database |
CustomFormat | Create custom HTML formats |
CustomGet | Get the contents of any custom field |
CustomPut | Update the contents of any custom field |
CsvGet | Extract CSV data from a string |
Database | Select, create, delete a database |
DatabaseExists | Test to see if a GSAK database exists |
DataRestore | Restore saved database fields |
DataSave | Save database fields |
DateDiff | Find the number of days between two dates |
DateFormat | Convert a date to string using current system date settings |
DateToSQL | Convert a date to SQL date format |
DateToString | Reverse of the StringToDate function |
DBToSQL | |
DBToSQLite | |
Debug | Debug a macro script |
Declare | Declare a variable |
DegToRad | Convert angles expressed in degrees to the corresponding value in radians |
Delay | Delay the running of a macro by milli seconds |
Delete | Delete waypoint(s) from the current database |
Deprecated | Remove deprecated warning message |
Dir | Directory/Folder listing |
DriveExists | Test if a drive is exists and is ready for use |
Dualscreen | Turn on/off the dual screen display |
Editform | Edit a GSAK form |
Elevation | Automatic conversion of elevation as per user's settings |
Else | Execute statements for the false condition of an IF command |
EndRead | See the FileRead command |
EndSub | End a subroutine |
EntityDecode | Decode XML entities to a single character |
Equal | Test two strings to see if they are equal |
Eval | Evaluate/convert a string with special tags |
Exit | Exit GSAK (not just the macro but the whole program) |
ExitSub | Exit a subroutine |
Exp | Exp returns the value of e raised to the power of X |
Export | Export any of the GSAK supported file types |
Extract | Extract part of a string from another given a delimiter |
FileCopy | Copy a file |
FileErase | Erase file(s) |
FileExists | Test if file exists in fully qualified path |
FileOpen | Open a file |
FileRead | Read a text file line by line |
Filter | Select a saved filter |
FolderExists | Test if a folder/directory exists |
Form | Show a GSAK form |
Frac | Get the fractional part of a number |
GarminApi | Get data from Garmin Opencaching.com using API |
GCalc | Calculations using longitude and latitude |
GcApi | Groundspeak live API |
GcBalance | Get api cache balance |
GcFavPoints | Macro equivalent of Geocaching.com access=>Favorite points |
GcGetCaches | Macro equivalent of Geocaching.com access=>Get caches |
GcGetLogs | Macro equivalent of Geocaching.com access=>Get logs |
GcGetNewToken | Macro equivalent of Geocaching.com access=>Get another access token |
GcGetPQ | Macro equivalent of Geocaching.com access=>Download pocket queries |
GcPublishFetch | Macro command to fetch logs for publishing |
GcRefresh | Macro equivalent of Geocaching.com access=>Refresh cache data |
GcStatusCheck | Macro equivalent of Geocaching.com access=>Status check |
GcSwapToken | Swap Geocaching.com api accounts via a macro |
GcUpdateUserInfo | Macro equivalent of Geocaching.com access=>Update user information |
GeoCalc | |
GetClipText | Get the current clipboard text |
GetSil | Translation master access |
GetCountry | Get the country name of a waypoint |
GetCounty | Get the county name of a waypoint |
GetEnvV | Get value of a system environment variable |
GetFile | Read the contents of a disk file |
GetMail | Allows you to download attachments from a POP3 mail account |
GetNear | Get a list of the nearest waypoints to a given coordinate |
GetPolygon | Determine if a waypoint lies inside a polygon |
GetSpecial | |
GetState | Get the state name of a waypoint |
GetUrl | Get the contents of a URL |
GlobalReplace | Global replace of data fields |
GoSub | Call a subroutine |
GoTo | Position the current waypoint in the grid |
GPSInfo | Get GPS information |
GPSReceive | Receive waypoints from your GPSr |
Grab | Grab coordinates adding waypoints to current database |
GrabImages | Grab images from online links in cache description |
GsCodeToNum | Get the ID number of a GCXXXXX code |
HttpEncode | HttpEncode a string |
HTML | |
If | Run macro commands only if a certain condition exists |
Include | Insert a code file into a macro |
Input | Prompt user for data and assign to a variable |
ImageInfo | Get information about an image file |
Int | Get the integer portion of a number |
InTransaction | See if Sqlite transaction is already running |
IsEmpty | Test if a string is empty |
IsOwner | Ownership of the current cache or log |
Keep | Convert a string by keeping only required characters or data in a string |
Left | Get the left most characters of a string |
Len | Get the length of a string |
List | Manipulate lists (Array like support) |
Ln | Get the natural logarithm of a number (Ln(e) = 1) |
Load | Load a GPX/loc/zip file into the database (or folder of these files) |
Log | Get log base n of a number |
Lower | Convert a string to all lower case |
MacHeader | Retrieve the contents of the header parts of a macro |
Macro | Run another macro |
MacroDelete | Delete records from Caches, Waypoints, or Logs |
MacroFlag | Set/Clear macro flags |
MacroSet | Update dialog settings from within a macro |
MakeGGZ | Create a Garmin format GGZ file from one or more GPX files |
MakeTranslation | Create a translation master for use in macros that support multiple languages |
MacSettings | Save/Restore macro settings |
MFilter | "On the fly" macro filter |
MimeDecode | Mime decode a string |
MimeEncode | Mime encode a string |
MoveCopy | Move or Copy waypoints from one database to another |
MsgOK | Simple message box with single OK button |
NoError | Allow code to run under multiple versions of GSAK |
Not | Negate a boolean expression |
NumToGsCode | Get the GCXXXX code from an ID number |
NumToStr | Convert a number value to a string value |
Option | Request explicit declaration of variables or not |
Pause | Pause the macro (with message) |
PlayWav | Play a WAV sound file |
PostUrl | Fetch a URL and submit "post" data |
PreProcess | |
PurgeLogs | Purge out required log records from a database |
PurgeNote | Purge/delete out details from user notes |
PutFile | Write a file to disk |
Quote | Enclose a string in double quotes |
Random | Generate a random number |
RadToDeg | Convert angles measured in radians to degrees |
RefreshCustomHtml | Refresh custom HTML formats list |
RegEx | Use a regular expression to find a string in another string |
RegExCount | Count the number of times a regular expression is found in a string |
RegExData | Return the matching data of a regular expression |
RegExEscape | Escape data so can search as plain text |
RegExPos | Find the matching position of a regular expression in a string |
RegExReplace | Replace matching regular expression with a string |
RegExSub | Retrieve the matching sub expression |
Remove | Convert a string by removing required characters or data |
RemoveVar | Remove a macro variable from memory |
Repeat | Repeat macro statements until a certain condition exists (looping) |
Replace | Replace one string with another |
Restore | Restore GSAK databases(s) and settings |
RestoreFilter | Restore filters settings saved by SaveFilter |
ReSync | Resynchronize database after direct Sqlite update |
ReSyncLogs | Resynchronize your logs with the GSAK database |
Return | Exit the current macro file only |
RGBColor | Convert RGB color values to a number to use in SetColor command |
Right | Get the right most characters of a string |
Round | Round a number to N decimal places |
ROT13 | ROT13 encode/decode a string |
RunPgm | Run any external program |
SaveFilter | Save filter settings to restore later with RestoreFilter function |
Seek | Quickly position or find a code |
Set | |
SetColor | Set colors for rows or columns |
ShowForm | |
ShowStatus | Show the status of a macro command |
ShowStop | Show a stop dialog when running a macro so you can cancel the macro at any time |
Sin | Calculates the sine of the angle in radians |
Sinh | Returns the hyperbolic sine of an angle |
SlashAdd | Make a folder path end with a back slash |
SmartName | Calculate a "smart name" for any string |
Sort | |
SpeedMode | Turns macro speed mode on or off |
SplitScreen | Turn on/off split screen display |
SQL | |
SQLGet | Optimized fetch of data from Sqlite tables |
SQLGetClose | Manually close a table opened for reading by SqlGet() |
SQLQuote | Prepare SQL strings with escaped quotes |
SQLite | Portal to the feature rich SQLite SQL database engine |
SQLiteCaches | |
SQLNext | Read the next row for SqlGet() |
SQLSort | Sort grid using SQL OrderBy |
SQLToDate | Convert a SQL date string to a macro date |
SqlToHtml | A quick and easy way to view SQL data |
Sqr | Returns the square of a number |
Sqrt | Returns the square root of a number |
StopRead | Terminate FILEREAD |
Str | Converts a number into a right justified string with decimals digits following the decimal point |
StrToBool | Convert a string value to Boolean |
StringToDate | Convert a string literal to a date type variable |
SubStr | Get a sub string from a string |
SysInfo | Retrieve system information |
SysVarPath | Convert an asolute path to a GSAK system variable |
Table | Select the active table (Caches, Logs, Waypoints) |
Tan | Calculates the tangent |
Tanh | Calculates the hyperbolic tangent |
TextOut | Generate CSV and tab delimited text files |
Time | Returns the system time as a string in the form HH:MM:SS |
Timer | Macro stopwatch |
TotChild | Get the total number of child waypoints |
Transaction | Speed up Database variable updates) |
Translate | Translate English strings to user's current language |
Trim | Removes trailing spaces from a string expression |
UpdateCheck | Macro version check |
UpdateElevation | Update elevation |
Upper | Convert a string to all uppercase |
UserFlag | Set/Clear user flags |
UserSort | Get or set user sort config values |
UTF8 | UTF8 encode/decode a string |
UTF16 | UTF16 encode/decode a string |
Val | Convert a string to a number |
ValidDate | Test if valid date |
VarExists | Test for existence of a variable |
VerCheck | Check GSAK version macro can run under |
View | Select a GSAK grid view |
Vsub | Toggle variable substitution on and off |
Web | Run any URL and show in current browser |
While | Run macro commands while a certain condition exists (looping) |
XmlToSqlite | XML reader - by converting a XML file to a Sqlite table |
YesNo | Quick display of a Yes/No dialog |
ZipFile | Zip File zip/unzip support |
<Data> | Static allocation of large text to a variable |