Sepp

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.

WikiDbImage see_inline.jpg WikiDbImage htext_ppc.jpg

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.

WikiDbImage encoview.jpg WikiDbImage registrar.jpg

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

WikiDbImage icons_sepp.jpg WikiDbImage colorview.jpg

Wiki pages for existing components:

WikiDbImage e2.jpg WikiDbImage fontview.jpg

WikiDbImage imgview.jpg WikiDbImage doodle.jpg

WikiDbImage mypie.jpg

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