[Vimoutliner] VO Junior

Scott Scriven vimoutliner at toykeeper.net
Sat Jun 7 18:05:04 EDT 2008


* Steve Litt <slitt at troubleshooters.com> wrote:
> Only a person knowing Vim or a very motivated person can be 
> taught VO.

Vim definitely focuses more on power than ease of learning.  It's 
not hard to learn, but people don't tend to "get it" right away.  
The issue, I think, is that it's different than the mainstream, 
and anything different is automatically "hard".

> So I'm going to make VO Junior.

I think Bill's idea is a good one -- make vim run entirely in 
insert mode.  This is probably the least amount of effort to get 
something usable, and it offers a huge feature set.

As for starting something from scratch, I'd recommend against 
using C at first.  Prototype something in a higher-level language 
until you have a good design, then rewrite in C if necessary.

Also, if you want to make the learning curve as gentle as 
possible, take a look through the GNOME human interface 
guidelines.  It has good tips on designing for average users.

  http://developer.gnome.org/projects/gup/hig/

You might even want to consider implementing VO junior as a 
plugin for an existing GUI editor such as Gedit.  I don't use it, 
but an initial search shows it might at least be possible.  
Someone did a code outliner plugin for it:

  http://live.gnome.org/Gedit/PythonOutlinePlugin

And there are, of course, a variety of Qt-based editors which 
might work.

> It will work with VO native files

Good.  VO has a pretty decent format.  :)

> It will run on Linux and BSD, and via Cygwin or MinGW on 
> Windows.  At least at first, it will probably be a CLI app

I made a CLI-based outliner / tree editor a few years ago, called 
"woody".  It has been dead for a long time, and the code is 
embarrassing, but feel free to browse and use anything you find 
in it:

  http://toykeeper.net/programs/woody/gfx/interfaces.png
  http://sf.net/projects/woody

That reminds me...  I highly recommend using launchpad.net to 
manage your development on new projects like this.  Using 
bzr+launchpad makes it much easier to collaborate.

> for simplicty, unless I can find a robust, memory-respecting 
> tool like a tk interface or whatever (or maybe a Java app???).

Heh, I doubt Java will provide simplicity, robustness, or memory 
efficiency.  :)

> I'll need limited help from some of you:
>
> * Get next character routine capable of reading arrow keys, 
> pageup etc.

This really depends on which UI toolkit you use, or which editor 
is used for a base.  I like curses and GTK, though Qt is also 
pretty popular.

> * Encouragement

Go, Steve, go!  :)

> This will probably benefit a lot of us. Many of us have wives, 
> children, brothers, sisters, parents ...

I see two potential user groups:

  - Regular desktop users like those you mentioned.

  - PDA users.  Vim is not very usable on a touchscreen.

Both groups are sorely lacking a good outliner.


-- Scott


More information about the VimOutliner mailing list