Updated 2007-06-25 17:34:05 by LV

Richard Suchenwirth 2006-01-29 - Sepp (in the usual Titlecase capitalization) stands for "Simple experimenting platform, pocket edition". (In southern Germany, Austria, Switzerland it is also a nickname for Josef). I've been coding on Sepp for some weeks now without having a name for it - now Sepp shall be it.

See IDE: from cathedral to patchwork bazaar for some historical notes. Sepp shall be my patchwork bazaar (and as usual, I'll be glad to share it here on the Wiki). A set of little components, just as I need them, that can be tested on a desktop, too, but designed for best usability on a PocketPC running eTcl - the reason is that this distribution first allows good toplevel alternation, and wide menus. Most of the code should run on other PocketPC distros, or wherever.

Design principles (under construction :^):

  • Some components provide Tcl procs without UI, for use in the console, or in other components
  • Others will do their job in a toplevel, either transient (destroyed on FocusOut) or longer-lived. None shall occupy the standard "." toplevel.
  • Components offer their services via tclIndex. "Exported" services come as procs in ::, while internals are slightly hidden in a namespace
  • Services are made available by adding them to the console menu
  • procs shall be no longer than 20 lines, lines no longer than ~40 characters, for convenient editing on the little thing itself

Wiki pages for existing components:

Here's a snapshot of the Sepp script on 2006-02-06 - basically just plugging in plug-ins:
 # Sepp -- simple experimenting platform (Pocket)
 #-- Richard Suchenwirth, Konstanz 2006

 set tcl_interactive 1
 catch {source [file dir [info na]]/etclrc.tcl}
 lappend auto_path [file dir [info script]]

 console eval {.console config -wrap word}
 wm withdraw .
 console eval {wm deiconify .}
 unix

 menu+ file  Restart {exec [info na] $topscript &; exit}
 set topscript [info script]

 set docu(File/Backup) {Copy current Tcl fileset to SD card.}
 menu+ file Backup {eval file copy -force [glob ~/*] /Speicherkarte/Programme/rs}

 set docu(Edit/proc) {Select one of the defined procs to inspect or modify. Use File/Eval for modifying.}
 menu+ edit proc     {e [lb'select [lsort [info procs]]]}
 menu+ edit Resource {e $tcl_rcFileName}

 menu+ options auto_mkindex {auto_mkindex .}
 menu+ options Calculator   calc
 menu+ options Icons        iconview
 menu+ options Registrar    registrar
 menu+ options Tree         {lemontree dir}
 menu+ help    Colors       colorview
 menu+ help    Help         {htext::htext .h}
 menu+ help    Encoding     encoview

 WinSel'update
 home.button

Category Development - Category Mobile