Peter's Blog

Redefining the Impossible

Items filed under bonsai


bonsai is an outliner application for palm computers.


Filed under: bonsai


I like the concept of outliners, previously I used Bonsai but today I've been giving The Vim Outliner a try. It works as a very simple markup language and then adds syntax highlighting to make headers more visible. For example:

This is a Heading.
   This is a Subheading.
        | This is some text within the subheading.
        | Blah Blah Blah Blah
   This is another subheading
        | More plain text.
        | Blah Blah Blah

gets displayed like this:

This is a Heading.
    This is a Subheading.
        | This is some text within the subheading.
        | Blah Blah Blah Blah
    This is another subheading
        | More plain text.
        | Blah Blah Blah

(notice how I can use Vim's built-in syntax highlighting to html conversion to generate this).

This makes outlining in VIM very easy and the syntax highlighting helps readability a great deal. TVL defines some useful shortcut keys such as - and + to fold and unfold sections easily. The outline text is stored in .otl files and Vim's file type system automatically applies the outlining features to these files when they are opened.

I find it interesting to compare what is effectively a new markup language with other markup languages I have encountered such as reStructuredText and indeed I am writing this using my Wilki Module which is another markup language. These have all used markup on the headers and plain body text but in TVO the body text is both marked with a '|' character and the headers are plain text. This would make TVO files tedious to type except Vim has been set up to automatically insert the indents and the '|' character so it is easy to type away as normal.

Markup languages are most useful when they can be easily converted into other formats. The Vim Outliner comes with an otl to html converter written in Ruby (python ripoff programming language named after a Kenny Rogers song about a prostitute). It is not hard to do simplistic conversion in python:

   1  #
   2  # otl2html.py: convert .otl files to html
   3  #
   4  import re
   5  
   6  oREIndent = re.compile( '^(\s*)(\|\s)?(.*)')
   7  
   8  nHeaderStack = [ 0]
   9  nTextIndent = None
  10  
  11  for strLine in open( r'c:\tmp\try2.otl').readlines():
  12    oMatch = oREIndent.match( strLine)
  13    if oMatch:
  14      strIndent = oMatch.group(1)
  15      strTextLeader = oMatch.group(2)
  16      strText = oMatch.group(3)
  17    else:
  18      strIndent = ''
  19      strTextLeader = ''
  20      strText = strLine
  21    if strTextLeader != None:
  22      #
  23      # This is a text block
  24      #
  25      if nTextIndent == None:
  26        nTextIndent = len( strTextLeader.expandtabs(4))
  27        print "<p>"
  28      else:
  29        strText = (strTextLeader + strText)[nTextIndent:]
  30      print strText
  31    else:
  32      #
  33      # Dealing with header
  34      #
  35  
  36      #
  37      # Terminate text block.
  38      #
  39      if nTextIndent != None:
  40        print "</p>"
  41        nTextIndent = None
  42  
  43      #
  44      # Lets assume it's me and a tab = 4 spaces
  45      #
  46      nIndent = len( strIndent.expandtabs(4))
  47      while nHeaderStack[-1] > nIndent:
  48        nHeaderStack.pop()
  49      if nHeaderStack[0] < nIndent:
  50        nHeaderStack.append( nIndent)
  51      print '<h%d>%s</h%d>' % (len(nHeaderStack), strText, len(nHeaderStack))
Toggle Line Numbers


Been playing with Radio Userland. It is a mixed bag of things:

  • a local web server, driving the main application through a web browser

  • a blogging tool. Type a post in a box and publish. It gets uploaded to Userland's servers and there it is.

  • a news aggregator, it aggregates RSS feeds for perusal through the browser

  • Content Management System: put files in directorys and they get rendered and uploaded automatically.

  • Scripting tool

  • Outliner

Good points:

  • Easy blogging for newbies

  • Can email it to post blogs

  • Easy to knock up a web site

  • The outliner has neat features like linking to web pages or other outlines which can be opened in place.

  • It is heavily scripte.

Bad points:

  • I had to reinstall it because the upload got broke

  • The scripting language is clean but it's no Python

  • The outliner is not nice to use. It is a fairly crude app by modern windows standards. Bonsai is far nicer to write in.

  • The outliner is used to edit the system scripts: no syntax highlighting and all nodes collapsed by default. I find this hard to read. I miss Vim.

  • Their web servers can be very slow: uploads can time out.

  • Uploading is all done automatically in the background so you have to keep looking at an events page to see if it has worked.

My head says dump it but something in my heart wants me to keep it. If it ran on linux I probably would.



Installed all palm stuff on laptop. Seems like an easier way to do daily syncs and blog updates than firing up the desktop pc. All palm stuff means:

  • Palm Desktop

  • Bluetooth dongle

  • DayNotez

  • DayNotes Desktop beta

  • Bonsai

  • ISoloX

  • Turic ISolo links

I killed the install of documents-to-go and I deleted all the stuff from the install folder that palm was going to install for the umpteenth time. It still took ages to get the HotSync to calm down, to get it so that it only did what was necessary. The first two syncs took a long tme because bluetooth hotsyncs are slow anyway and because it had to backup 12M or so of stuff from the palm.

When it came to downloading Bonsai I found it was a new point release. Haven't looked to see if there are any new goodies yet.

Got an email to say there was a new version of BackupBuddyVFS out but the changes appear to be for palms with big rotating screens.



Must copy BackupBudddyVFS backups to PC. I have a lot of licence keys I don't want to lose:

  • Zlauncher

  • TomeRaider

  • DayNotez

  • Bonsai

  • DateBk5

  • BackupBuddyVFS

  • ISilo


Filed under: bonsai daynotez


Mozilla still won't boot. Installed FireFox (was FireBird) and it seems ok. I miss the Mozilla download manager. I was fiddling with FireFox's equivalent during a download and managed to break it hard. FireFox would not boot, just sat in task manager. I fixed it by creating a new profile.

I did some hacks to do things like highlight the active tab better. There are some nice possibilities in the online tips.

Reinstalled Palm, Bonsai, DayNotez on main PC.


Filed under: bonsai daynotez firefox palm


New point release of Bonsai is out, 3.0.2. Installing now.

My palm charge/sync cable is refusing to work today. It is very poor quality but I need something like it.


Filed under: bonsai palm


Must add, I gave Bonsai 3 a workout, taking meeting notes and I had no problems. I was careful, only editing on PC or HandHeld between syncs, backing up before sync etc but there were no problems.

Also, I registered DateBk5 and BackupBuddyVFS today. I cannot imagine life without DateBk5.


Filed under: bonsai


Tried my method of breaking Bonsai and it passed. I'll trust it again.


Filed under: bonsai


It transpired that a new version of bonsai has been released, not a beta. I've installed it and it's gone well but I haven't tried my test on it yet. The new desktop app looks good.


Filed under: bonsai


Got a reply to my email:

Peter,

Sorry to hear you are having problems with Bonsai synchronization.

I had not heard of any problems with Bonsai deleting any items in

outlines. There were some reports of branches being mixed up when the

order was changed on both the handheld and the desktop.

The new release has an improved algorithm that should handle changes to

both sides better. I would encourage you to upgrade to the new version.

I'll have our system kick out a new registration code for you.

Regards,

George Wayland

Natara Software


Filed under: bonsai


Email to natara support:

 Hello, 

I have had a few problems where my Bonsai outlines have become corrupted. I think this is because I have been editing both the Desktop and the palm copies between hotsyncs.

I am using: Bonsai version 2.8.1 Palm O/S 5.2.1 (Tungsten T2) Hotsync Manager 4.1.0 Windows 2000 SP1

I have found a way to reproduce a problem:

1) Create an outline on the desktop::

- Line 1 - Child 1 of Line 1 - Line 2 - Child 1 of Line 2 - Line 3 - Child 1 of Line 3 - Line 4 - Child 1 of Line 4

2) Save and Hotsync to copy to palm

3) On the desktop move line 4 and it's child up so that it becomes:

- Line 1 - Child 1 of Line 1 - Line 4 - Child 1 of Line 4 - Line 2 - Child 1 of Line 2 - Line 3 - Child 1 of Line 3

4) On the Palm add line 5 so that it becomes:

- Line 1 - Child 1 of Line 1 - Line 2 - Child 1 of Line 2 - Line 3 - Child 1 of Line 3 - Line 4 - Child 1 of Line 4 - Line 5

5) Hotsync

The result is this: - Line 1 - Child 1 of Line 1 - Line 4 - Child 1 of Line 4 - Line 2 - Child 1 of Line 2 - Line 3 - Line 5 - Child 1 of Line 3

My main problem is that I have been losing entries on complex outlines, including irreplacable meeting notes. This has dented my faith in Bonsai yet I have paid money for it and I like it as a product and I wish to continue using it. Can you assure me that if I only edit on the desktop OR palm between hotsyncs then I will not lose any data ? Or is this problem caused by moving things around ? Any advice or workarounds that you can give me would be appreciated.

I avoided trying the new beta in case it corrupted my data...

-- Regards, Peter Wilkinson


Filed under: bonsai palm windows


I am so disillusioned with bonsai that I am investigating alternatives. First is palm-db, an open source flat file database. It supports memo fields up to 3k. However, the palm-db tools that are a seperate but bundled sourceforge project do not support anything beyond string, integer and boolean types. They come with a pdb2csv program to generate a csv file but this bombs out with a corrupted database error if the database contains a memo field. It also comes with an Excel spreadsheet that won't work, possibly because I am (still) using Excel 97 and it may be a later version.

Without Bonsai, I would like to concentrate on using DayNotez. However, I need a way of indexing the notez so that I can find stuff.

Could this be done with headers in the DayNotez entries ???

Bonsai is a loss to me but I just cannot trust it. Given that hotsync is screwed, I cannot just bypass the bonsai conduit unless I want to try to reverse engineer the bonsai pdb file to get at the data therein.


Filed under: bonsai daynotez palm


Playing PictureLogic puzzles are fun but I have an odd problem where I tap on a square and the square next to it is selected. Annoying and makes me worry about my digitiser.

Bonsai woes make me want to bin it.

I have to make many corrections when using Graffiti. Especially small i's which come out as .. If I am not careful.

Palm is not in my good books.


Filed under: bonsai palm


Went to meeting, took lots of notes in bonsai, returned to desk, synced and its lost most of the new notes. A few days back I noticed it had lost entries in some other notes.

Bang, there goes my faith in it.


Filed under: bonsai


Registered DayNotez and Bonsai as DayNotes is such a good diary program and Bonsai is a good way of making notes on the palm.

Still can't get PC to allow laptop or palm to connect to the router. It worked for a few seconds then stopped working. I don't want to type any rude words but it really is tempting sometimes.

Also PC has started randomly locking up. I've pulled the USB 2 card as plug and play saw it today and hastled me for drivers.


Filed under: bonsai daynotez palm


Updating password when I got a network error. Rebooted pc and account was locked out. Have to look at Bonsai SCR database for guidance smile.


Filed under: bonsai


Rushed out and bought 'Origo' broadband router, a DLink ethernet card and a network cable. Router is some cheapie taiwanese thing, they didn't have any 'name' brands.

Installed card and got blue screens so I ripped it out, put the old one back in, reconfigured it for RJ45 and it just worked.

Fiddled with router for a while and eventually things sprang into life. I think the secret with this lot is to wait patiently for the DHCP and stuff to automatically get IP addresses and suchlike.

Connection seems very fast, faster than at work. downloaded 18M jpluck setup while typing this, 100k/s sustained.

Also downloaded Bonsai and Daynotez to get the desktop version working here at home. Typing this on home pc.


Filed under: bonsai daynotez


Natara Bonsai Outliner, 1st Impressions: I like it. Far slicker than Progect & ShadowPlan. Very good import & export, desktop tool is less hacky than SP & the licence allows me to use it at work & at home.


Filed under: bonsai outliners


Argh, I've got this unnatural love for my palm, bonsai, daynotez and all things pornographic. Can't stop myself from fiddling around with it all (except the pornography).


Filed under: bonsai daynotez palm


Installing Python 2.3 to get access to the CSV library in the new version. This should make fiddling with Bonsai/Daynotez easy.


Filed under: bonsai daynotez python