Last modified 11 years ago Last modified on 12/15/08 20:54:12

Error: Macro BackLinksMenu(None) failed
compressed data is corrupt

Sophie Wishlist

(This is a list based on discussion with Bob Stein and the Institute for the Future of the Book's Sophie users as well as looking through Mantis feature requests.)

Steve Riggins sees this as a reference for us when we're analyzing tasks. Steve does not expect new features to get into Sophie 2.0, but it might color the way we look at implementing a feature, or be simple enough to correct a 1.0 behavior as we're implementing 2.0.

Steve would appreciate your ideas for how we should use this list.


  • Timelines really don't need their own tab on the left - this should work differently.
  • The way that timelines are related to the structure of a book - opening a Sophie 1.0 book, figuring out which pages a timeline is attached to can be tricky.
  • Would be nice to be able to clip audio/video through the timeline interface.
  • Locking events on timelines.
  • Grouping events on timelines. Right now you can command-click (on a Mac) to select multiple events or pages - but sometimes what you want to do is select pages 1 through 10 and move them all. Clicking 1, then shift-clicking 10 should select inclusively.
  • Just about everyone is confused by the slider in Sophie 1.0 - can we separate out the zooming functionality and the scrolling functionality?
  • Need a more comprehensible way to know whether an object on the timeline is visible/invisible


  • The metadata inspector only works on resources - it would be very nice if you could get metadata on a resource that's on a page, because sometimes you want to figure out which of the resources it is. (If you have a lot of audio, seeing an audio icon on a page doesn't give you a clue which audio it might be.) This is also something that could be used in conjunction with the page structure palette.
  • If a resource is added to Sophie when a resource of that name already exists, user should be asked if they want to replace
  • Human-style alphabetization of resources (rather than ASCII-style A-Z, a-z). (Case insensitive sorting - SWR)
  • User-created folders for resources.
  • Would be nice to be able to save objects with links (or groups of objects with links) in the resources for reuse - right now you can copy and paste these, what we're talking about is a library of copied objects/groups of objects.


  • Need a way to change the image for audio clips on a page.
  • Would be nice to have a background images for movies that would show when they're not playing.
  • Support for streaming video: we want to be able to start playing movie without caching the whole thing first if the server supports this. (We know that not all servers do allow this.)
  • Quicktime dependence: is there a way around this? This has been an enormous obstacle to PC uptake of Sophie. If we had some open source library that could be used instead, that would be preferable.


  • HUDs vs property inspectors - would it make sense putting at least some things (frame properties, for example) in a control bar.
  • Would be nice to be able to save object styles (frame backgrounds, borders, margins, etc)
  • People want a scrolling text field - I assume this is possible with the new flow reworking.
  • The problem of images that are larger than their frames: sometimes people have enormous images that they want to put in a tiny frame that the reader will scroll around in. I imagine this is something that might be handled differently in Sophie 2 just because frames work differently?


  • Would be nice to be able to save character styles.
  • The default next paragraph style should not be "default" but rather the same style as the paragraph itself, whether that's saved or not.
  • There's presently no way to delete paragraph styles.
  • Would be nice to have previews of paragraph styles and page templates rather than a generic icon.
  • Better font properties for styles (dropdown menu for font name, dropdown menu for font style - Mac-style rather than Windows-style).
  • We would really like to have hyphenation of text.
  • Spellcheck interface should be better - this should not be a palette but an inspector that could be brought up when needed. As-you-go spellchecking would be great.
  • Only a subset of Mac fonts is available in Sophie; of these, only some work properly on Windows machines when the book is published. Ideally, we'd be able to use all generally supported formats of fonts across platforms.
  • Everyone complains that we don't support tabs, which is true. I don't know that we need a full tabbing system, as that requires a lot of interface; if pressing TAB inserted 1 em of space (the height of line-spacing) most people would be happy.


  • Embedded book interface is terrible. Need better ways to embed one existing book in another; need a way to convert a linked book into an embedded book (on publishing, for example, where this becomes a problem). Embedded books need their own HUD/properties - controlling size when they're on a page, whether or not they get their own status bars, whether their windows are resizable, etc.
  • Would also be nice, especially if we're talking about presentation mode, to have a way of linking to another book that allows replacing the current book's window with the linked book (rather than showing the new book's window over the existing book). This could be a choice in the embedded book's HUD.
  • Would be nice to have book-level HUD that controls whether or not status bar is shown, lets you change page size of book.
  • Need way to delete embedded books.


  • Layering - would be nice to be able to drag things up and down in the page structure palette. Would be nice to be able to create layers - essentially a group of objects which could be moved up and down. Also would be nice to be able to interleaf regular objects and objects that are on the book template - right now all the objects on the book template move together which is not always what people want.
  • Hide/showing via page structure palette checkboxes is still very confusing to most people. Need to separate hiding/showing things while editing (because you want to get things out of the way to work on things underneath them) and hiding/showing states.
  • Selecting an event on the timeline should select it in the page structure palette and vice versa, just as objects on the page are selected when they're selected in the page structure palette.


  • Anchoring is basically unusable now - in part because it's still very buggy - and needs to works differently. Need to be able to move anchoring point, set objects to be anchored or not anchored. Objects should be anchored to existing flow by default.
  • Anchored frames need to be represented in the page structure palette: ideally this should identify the frame that they're anchored to.


  • Saving page templates with links.
  • Page-numbering field would be nice thing to have - there's support for things like this in the architecture, but no interface for it.
  • "Template content" frames need to be implemented differently - a HUD asking whether or not the content in the frame should be shared across pages that use the page templates would be a better way to do it. This could also be done through the page structure palette.
  • Would be very nice to be able to rename frames/layers in the page structure palette rather than having them be "non flow frame 1" "flow frame 2".
  • An easy way to add x number of pages using page template y would be nice.


  • Book templates need to be able to include links and timelines.
  • Link actions need to be more comprehensible - right now it's a long confusing list.
  • Link colors should be adaptive - I make a text link, color it. The next time I make a link, it uses the same colors as the defaults. This should be a general principle for the interface - I drag a page to the timeline, change its duration to 30 seconds, next page I drag to the timeline should be 30 seconds.
  • Flag/dropping thing on link interface is really confusing and inconsistent. Flag should not appear if you can't use it.
  • Need a better interface on selecting part of a book to link to - this would also be useful for commenting. In Sophie 1.0 it's only text, and this is only in Author, though it could theoretically work elsewhere.


  • Windows file format is basically unusable right now because people find the folder structure far too confusing. Needs to appear as a single file - this is important for online use as well.


  • Right now you can only turn empty frames into buttons - need to be able to change graphics into buttons as well.
  • Need a way to put links into comments. Comment fields should be more like regular text fields, not their own weird interface. Also would be nice to be able to include inline graphics/audio/video - with minimal interface.


  • Bob wants a way to hide/turn off text links in Reader. (minor)
  • Would be nice to have a highlighter tool rather than selecting text, going to the menu, choosing Highlight.
  • Tab interface for open books is obviously bad.
  • Would be better to have a multi-window interface for Reader that could be switched into presentation mode. Right now we have books that link to other books - we'd like the focus to be brought to the other book, but right now it hides the calling book.
  • Need way to hide status bar if desired.
  • Need a page view to select pages (like in Mac Preview etc.)


  • Searching: would be nice to have a way to select which books/embedded books/annotations you want to search through. Sophie 1 just searches the main book, I think.
  • Need to integrate search with search and replace - having them in two separate palettes is dumb. Also would make more sense to have this as a free-floating palette rather than in a tab.


  • The idea of an adaptive interface: having the settings for a new objects being the same as the last object used. (This is specifically mentioned above in the context of link colors.) The general idea of this is that if I drag out a frame, set its size, background fill, and border (for example), the next frame I drag out will have those settings because it's more likely that the user will want what they last used rather than any particular presets (as Sophie 1.0 defaults to). So if I drag a page to a timeline, change its duration to 30 seconds, the next page I drag out should also be 30 seconds; if I make a new paragraph, change its style, then add a second paragraph, the second paragraph should default to the first paragraph's style rather than "default".
  • Space around the page and inside the book window could be used to keep objects that are going to be used on the page but aren't yet being used (as Adobe apps and Quark allow).
  • Better keyboard shortcuts (zooming, for example)
  • Sophie all in one window? It would be nice to have a multiple-window interface, especially in Reader.
  • Need more PC-intuitive interface than drag-and-drop - Windows users always seem confused by this.
  • Much more balloon help than exists in Sophie 1.0.
  • Need hourglasses when there's going to be a delay.
  • Keeping all palettes stuck in a tab/flap is dumb - some things should be freefloating (most of the things in Tools, for example).
  • Sophie 1.0 doesn't handle saves well when the book has been moved to another location - this is something that people tend to do a lot (esp. on Macs, I think) and there have been a lot of crashed books because of this. This needs to be handled more gracefully.
  • The way the frames toggle and the test mode toggle are connected makes most people crazy - they should not be related to each other.
  • Some of the controls in the book window status bar - for example test mode & frames - operate across all books currently open in Sophie. It would make much more sense conceptually to have these controls in an application-wide status bar and limit the controls in the book status bar to those which affect only the book.
  • Grids/rulers: Bob has always wanted the ability to snap to grids (as can be done in the Adobe apps or how TK3's rulers worked).

  • Allow reader to export a file of clipping points (inpoint, outpoint, URI) that can be imported into Author as resources.

  • Determine features necessary to provide plug-in capability to add interfaces to external repositories, such as Internet Archive