[tomboy-list] Looking at notebook support in Tomboy...

Boyd Timothy btimothy at gmail.com
Fri Dec 21 07:16:24 PST 2007


Thanks for the feedback!  Inline replies follow...

On Dec 21, 2007 7:16 AM, Sandy Armstrong <sanfordarmstrong at gmail.com> wrote:
> On Dec 19, 2007 10:09 AM, Boyd Timothy <btimothy at gmail.com> wrote:
> >
> > On Dec 18, 2007 5:21 PM, Boyd Timothy <btimothy at gmail.com> wrote:
> > > While I wait for sontek to commit his tasks code, I started looking
> > > into adding notebook support into Tomboy.
> > >
> > > What is notebook support?  Conceptually, it's just like a normal
> > > physical notebook; a collection of notes.  In Tomboy, this could
> > > easily be implemented by a group of notes tagged with the same tag.
> > >
> > > Notebooking has always sounded like a decent idea, but it wasn't until
> > > today that it made more sense to me.  I went across the hall and asked
> > > one of my colleages if I could look at how he uses tomboy (I was
> > > hoping to gain information about how to do tagging better).  It turns
> > > out that he's clearly got certain types of notes.  He uses tomboy to
> > > write up bugzilla entries before submitting them, keep track of some
> > > linux command-line commands, and write down notes about his
> > > photography.
> > >
> > > What came out of our discussion is a combination of notebooks and note
> > > templates.  As an example, suppose you had a meetings template note
> > > where you've filled out an empty meeting agenda.  Now you tie that
> > > with your "Meetings" notebook.  When you create a new note in the
> > > meetings notebook, the new note would contain the text you specified
> > > in your meetings template note.  No more wasting time creating the
> > > same types of notes over and over!
> > >
> > > I'm not exactly  sure how to expose it all in the UI, but I've started
> > > tinkering with building the needed system built on top of tags.
> > > Attached is my progress so far.
> >
> > Update...
> >
> > The attached patch now includes the following:
> >
> > - New notebooks can be created in the preferences dialog
> > - A template note for each new notebook is created when the notebook is created
> > - User can optionally delete the template note when they delete the notebook
> >
> > As per Sandy & my irc discussion this morning
> > (http://live.gnome.org/Tomboy/Notebooks), I'm going to now add in some
> > controls for creating new "notebook" notes and also add a control to
> > add existing notes into a notebook.
> >
> > I'm not entirely sure how the Search All Notes window ought to expose
> > notebooks, so if you have an idea, please let me know quick!  :)
> Okay, so I tried this out a bit.  I think this is going to make more
> sense for us than exposing a tagging UI.
> Here some thoughts I had:
> * The new menu entries are all messed up if Tomboy is on the top of the screen.

Yeah, figured it would be.  It's messed up when it's at the bottom of
the screen as well.

> * There are some weird situations where you delete all notes in a
> notebook, and the template note is recreated either instantly or after
> you restart Tomboy (presumably if all notebook notes are deleted, the
> notebook should be considered deleted?).

Not sure what changed, but for some reason, when you delete a note
that has a tag in it, something is triggering the QueueSave again and
after it's deleted from disk, it's being saved again.  If you delete
it a second time (when it doesn't have any tags) it goes away.
Strange.  It's a bug, so I haven't spent that much time yet ... have
to get the features in before feature freeze first.  ;)

> * I feel like the new preferences tab hides away notebook
> functionality.  With notebooks integrated into the search UI, I find
> myself wanting to manipulate them directly from there.  I'd like to be
> able to double-click a notebook in the search UI and have its template
> come up, or delete the entire notebook right there, or create a new
> one.  If I could do that, I know that I would never use the new
> preferences tab.  Potentially access to editing notebook templates
> could be somehow slipped into the template section of the Editing tab?

+1!  I think some simple add/remove buttons could be added to the
Search All Notes dialog.  You could right-click or double-click to
bring up the template note.  Should be pretty simple to do.  I'll
remove the Notebooks from the preferences tab.  I just hadn't gotten
around to adding any controls to the Search All Notes dialog yet.
This is the risk you take when you show off a feature too early ;).

> * Although it would clutter up the menu, I find myself wishing there
> was an additional menu entry that said "Create New Note in 'Work'",
> where 'Work' is replaced with whatever the "active" notebook is.
> "Active" might be defined as the last notebook for which a note was
> created, or it could be defined as the notebook of the currently
> viewed note?  I don't know, I just feel like it's too complicated to
> make a bunch of notes in the same notebook rapidly.  This is also
> something I should be able to do graphically in the search UI (maybe
> by double-clicking or accessing a right-click menu on the notebook?).

Good thought.  This is a good candidate for doing once everything else
is working well.

> * I think it's interesting that the default option is "No Notebook" as
> opposed to something like "Default Notebook".  I'm still pondering
> that.

I'm on the fence on this one, though I'm leaning towards "No
Notebook".  Conceptually, these notes are either posted all over the
edge of my computer screen (this is literally what my father-in-law
does) or just scattered all over my desk.  :)

> * I'd really like to see some sort of indication about the notebook
> containing my note without having to go to the Search UI or the Tools
> menu.  On IRC I mentioned color, which I think would be super dope.
> But also things as simple as adding the notebook name to the window
> title would be very helpful.

Perhaps place a "Notebook" icon in the Note Window toolbar with an
ellipsized notebook name underneath it indicating which notebook it's
currently in.  Move the "Place in notebook" submenu to be this toolbar
icon's drop-down menu?

> * I also kind of wish that there was an easy way for me to get from my
> note that's in the 'Work' notebook to a view of all 'Work' notes.
> This option could exist in the tools menu, or maybe inline as an
> uneditable link on the same line as the title ("New note 5 (in
> notebook 'Work')"?  I'm just tossing out ideas here without really
> thinking them through.  :-)

Could be interesting.  Another good "icing on the cake" candidate.

> * I think a lot of users will be confused when they create a new
> notebook and a template note pops up.  We shouldn't force them to
> think about templates.  My guess is a user would see that note and
> think it was just a new note in the new notebook and start editing the
> hell out of it.  But making a new note might not be what the user
> wants.  I think creating a new notebook outside of the context of
> creating/editing notes doesn't make much sense.  Here's what I
> suggest:
>    - Get rid of "New Notebook..." option in notes menu.  Replace with
> "Create note in new notebook..." option that prompts user for new
> notebook name.
>    - In note window, add option in Tools "Place in notebook -> New
> Notebook..." that works similarly.

Yeah, this definitely needs some work.

> * The Export to HTML plugin should probably be able to act on a
> specific notebook.


> * Notebooks-specific sync would be cool, but could be crazy for the
> same reasons as tag-based sync (discussed in last dev meeting).

Seeing how Google Notebooks uses Notebooks, this could potentially
help us sync more easily there?  Exercise for the reader.

> So those are my half-baked thoughts on this after playing with the new
> feature for not too long.  Some simple stuff, some complicated stuff,
> but I'm interested in and excited about this feature.  I think people
> are going to like it a lot.  :-D

Thanks again for the excellent feedback!  Time to start hacking at it
again.  I'll hopefully mail an update at the end of the day.

Oh, and yes (for everyone else), all this work is in SVN Trunk.  If
you'd like to tinker/help with it, just `svn up`.



More information about the Tomboy-list mailing list