Tree structured shopping lists

One thing that would be handy for shopping lists would be a tree structure, so you could put "milk", "cheese", and "eggs" under the "Dairy" node, and "lettuce", "carrots", and "apples" in the "Produce" node. (For book shoppers, author names would be nodes and then lists of books to look for would be leaves under it-- or names of series in a subnode.) Closed nodes would just show their name; open ones would show their contents. If all children of a node are checked off, then the node would show as checked off.

What we plan to do here is to include tags (similar to OI Notepad tags). You could then add the tag "dairy" to milk, cheese, and eggs. Later (once it is coded) you may sort or group items according to tags. We could probably even add features to open or close a group, so that the behavior would be similar to the one you described.

Would you be able to AND tags, so you can view "grocery list" + "dairy"?

You would still have your separate lists, and within each list you can assign tags. I don't know whether it would make too much sense to allow for different modes (AND, OR) for combining several tags for a shopping list. Both seems possible at this point. Either the simpler solution is hard-coded, or it could also be a setting according to user preference.

Note that at some point we were also thinking of creating a "tag browser" that can collect tags of different applications and present them in a single place. For such an application, it would make more sense to be able to organize and filter tags in various ways (AND, OR, NOT).