palmtcl - Tcl tool for reading palm data files


palmtcl {options} Tcl_Script_File [args ...]


-V print Version information.
-v be Verbose.
-e expression evaluate expression before executiong script.


palmtcl is a Tcl interpreter integrated with a palm data file reader library. It can be used to easily script tools which dump palm files into whatever format you need.

In the command definitions below, *_id always refers to a TCL identifier of the users choosing, rather than a fixed keyword.

module commands

palm build_datereturn build date of module
palm revision_datereturn last edit date of module
palm verbosereturn verbosity level
palm verbose Nset verbosity level
palm open datafile file_idopen datafile as file_id. file_id is bound to an object which responds to the file commands below.

file commands

file_id next entry_id get next entry as entry_id entry_id is bound to an object which responds to the entry commands below.
file_id categoryCountreturn # of categories
file_id custheadercustom header
file_id fieldCount# of field types in schema
file_id fieldsPerRow# of fields per record
file_id filenamename embedded within the file
file_id nextFreeCategoryindex of next free category
file_id numEntries# of records in file
file_id placementPosfield index where placement is stored
file_id recorddIDPosfield index where record ID is stored
file_id recorddStatusPosfield index where rec. status is stored
file_id resourceIDresource ID
file_id signaturefile signature
file_id category N name of Nth category
file_id fieldType N type of Nth field

entry commands

entry_id type record type {address, date, memo, todo}
entry_id  FIELD retrieve FIELD from the record. Available fields depend on the type of the data file.
all:      id, position, status, categoryIndex
address:  firstname, lastname, company, title,
          address, city, state, zip, country,
          note, displayIndex
date:     alarm alarmWarn alarmWarnType duration,
          endTime, name, note, startTime, untimed
memo:     memo
todo:     completed, description, due, priority, note

address commands

address_id phone N {index label} retrieve phone #N. Optionally get index or type of number
address_id custom N retrieve custom field N


Author: Tony Aiuto

Hints about the data file format came from Scott Leighton's web site, which you can find at


The definitive source is located at If you use this package, please drop us a line at and we'll notify you about future updates.

This manual page describes palmtools 1.0.0 - as of 26-Nov-2002

gzipped source - palmtools-1.0.0.tar.gz
zipped source -


palmtcl is released under a BSD style license. You can use it in commercial products without a problem. Just keep the copyright notices intact. I do ask, as a favor, that if you use palmtcl, that you add a link back to from some web site which you control.

If palmtcl saves you money at work, I would think it a nice gesture if you sent me a check for 5% of the amount you thought it saved you. It really would help convince my wife that all the time I spend writing code at nights really has a productive side. If you are inclined to do that, send email to and I will be delighted to provide a snail mail address. I am also happy to add specific features for a fee.