@Lettermuck: My undertstanding is that you create your entries in TextMate or Scrivener and then save/drag them into Boswell. I guess you may also create some in Boswell itself? You talk above about not creating the files by hand, but exporting them out of Boswell and run a script to generate the files. Not sure what you mean here - sorry. I know that you backup out of Boswell to a backup file. This file also contains links to any media that is cross-referenced to the Boswell files.
Well, Boswell lets you export an entire notebook into a file (just drag an opened notebook to the Finder). The text of that file will have all of the entries in that notebook, separated with some divider patterns. I simply search for those divider patterns with my script, and then process each internal entry as a single file. So Boswell creates a single notebook file; I run a script; script spits out 75 files (or whatever), one for each Boswell entry in the export file[1].
I very rarely create stuff in Boswell, mainly because of MMD meta-data entry. For a while I experimented with creating some template notes with which I could duplicate off of in Boswell and then “fill in the blanks”, but all of that clicking in the right spot and such is less efficient than a system that lets you tab in between “fields”, which is how snippets work.
Well, I take that back, I do sometimes create entries in Boswell, but they are only stubs. If I have an idea for something, I’ll just quickly Cmd-E and type out a sentence or two—often not even bothering with Boswell meta-data at all. I can get the ID later from the creation time stamp. This is one area Boswell really hits the mark on that few other programs like this do. You can bang out a thought immediately since the cursor goes straight to the content area. No need to name it, no need to mess around with where it should go, just get the idea out and sort it all out later when you get a chance. So for that I do use Boswell—but once I do start really working on it, it’s TextMate.
Of course, I rename the e-mail. Sometimes I don’t even preserve the subject line, because quite often (in my experience anyway) the subject line has nothing to do with the content any longer. If a conversation merges out of its original intention, or if the original subject line was simply not very informative, I’ll rename it. This isn’t a problem for me in terms of threading, because of my use of back-referencing. Since I back-reference the e-mail that it is in response to, it doesn’t really matter if the subject line changes. This whole process is made much easier for me by TextMate and a script add-on that I wrote for it. I simply paste the original e-mail into TM, hit Ctrl-R, and it examines the meta-data, adjusts everything accordingly, and then quotes all of the existing text. So the back-ref is made automatically from the old e-mail’s ID, a new ID is created, and the To/From fields are swapped, basically.
Consequently e-mail looks like any other item in my archive with the numeric date ID in front and the title (but not the single-letter tag! More on that below).
The saved Boswell email is plain text, so you cannot reply to emails from within Boswell. Do you cross reference to your email archive, in a similar way as you do for media?
Well, I could if I wanted. I view all incoming e-mail as plain text, and every e-mail I send out is plain text. Frankly I have no use for formatting in e-mails.
However, I much prefer to compose e-mails in TextMate because of the above, and because I like writing in a full-feature text editor over Boswell or an e-mail client. It also means I can compose an e-mail over several days without using Drafts in the e-mail client—separation of data from the central pool!
You mention that you enter your token in the Bosell tag field. What are the benefits of this? Is it because you plan to edit tokens in future - even when in the archive?
In an earlier post you mentioned that you might place a code 4 in your token, to highlight entries that are unfinished. This sounded a great idea, although I could not figure how you removed this code, when you eventually do finish the WIP. Is an ability to edit the token the answer?
Sounds like I was a little unclear with this. Actually when I’m done with edits, I put the whole token in there, {I3.1.Article}
or whatever. I have all kinds of Boswell filters set up to analyse things like {I
and .Article}
and even just {
(to catch everything into a daily review notebook that I clear out once reviewed) and put them into appropriate notebooks of varying specificity.
But that would happen even if I didn’t use the Tag field, obviously, since that token is also in the text. The reason for putting it in the Tag field is for reference in cases of mixed types in a single notebook. A .Scrivener}
filtered notebook might have all manner of things in it from forum posts, to wiki articles, to e-mails, to documentation, etc. So it’s nice to have that Tag field available to sort by, if I want to cluster by type instead of date, or just to see what the resource is.
I don’t use the single-letter 4Tag in the title because of that pesky OS 9 size limitation (that’s three wasted character including the hyphens). However the exported files do get that.
Okay now regarding the editable nature of this Tag field in Boswell, it’s a little tricky. Keep in mind that when you archive something in Boswell, it goes into a “null space”, the greater Archive which is beneath everything you see in the interface. Entries can actually end up being in no notebooks at all, and effectively invisible to the interface unless you search for it. Searching merely populates a special notebook called “*Results”. Everything in Boswell is notebooks, and thus once you search for something it is effectively in at least one notebook. How this comes into play with the Tag field is this: when the entry is archived, the tag that it is archived with is permanent. At the subterranean “Archive” level, it will always have the Tag it was assigned with from the Journal. Tag editing is a per-notebook feature. The same item can have 50 different tags in 50 different notebooks. When you search for it, it will come up with the original tag from the Archive, not any of these 50 variants. So that final tag is important when archiving[2].
This per-notebook aspect is very useful for this system. For me, whenever something is added to a notebook, it will have that special token to identify it. In some notebooks, this may not be useful. For example in my Reviews notebook, the token is a little vague. A hundred {R1.4.Film}
tokens. That’s a fine token when mixed in with stuff like diary entries, but amongst a bunch of other film reviews, a little more specificity would be nice. So in that notebook I’ll change the tag to “Film-Drama” or something to that effect. I keep the Film in there because this notebook also contains reviews for coffee blends, MP3 players, well you get the idea. Since you can sort by tag, it’s easy to lump up review types in a tighter specificity than the broad token supplies.
Okay stepping back to WIP progress. Here is what I do in Boswell to take advantage of its sorting method. I sort my journal by Tag ascending and Created descending. You can set up complex sorts like this out of the Notebook menu. A nice thing is that these sort preferences are per-notebook and will be saved. So once you set up a notebook to be sorted in a certain way, it will always be that way. I choose this particular sorting because I use the tag for WIP progress, and then Created is a nice reminder of which items are the oldest (the ones at the bottom of each tag grouping). For progress, here is my tag progression:
*
**
***
They’ll get sorted in that fashion, with all of my bracketed tokens at the very bottom. One star means it’s basically a stub file, or just not even remotely finished. Two stars means I’m mostly done with it, but I have a few other things in mind I wish to do with it. Three stars means I’ve finished, but I’m not quite ready to archive it yet. A common example is a film review. I might finish writing the review shortly after watching the film, but I don’t want to archive it immediately because over the coming days my opinions might change as the film’s material settles into my mind.
In between I also have two other tags:
<--
-->
They simply mean Imported and Output, respectively. The former I’ve set up in the Library/Settings
as a default tag for imported material. I use ***
for new items I’ve created in Boswell[3]. Imported is simple. I just use a special tag to show that’s stuff that needs to be sorted or processed, so it’s nice to have it all in one sort cluster. Output is what I use for stuff that is ready to export somewhere. E-mail that needs to be sent; an article I’ve finished that needs to be posted, etc. I don’t use this one terribly often any longer. I used it more when I didn’t have an Internet connexion at home, and would send everything out from the office where I worked.
So that is how I use tags in the journal. None of these WIP tags survive archival. Even if the entry in question is a WIP, I don’t deviate from putting a final token on it. In my mind, even if something isn’t finished, it is still something and should get a token to represent what it is. I put the WIP in the MMD Keywords field and that is enough for a Boswell filter to stuff it into my WIP notebook for future use. When I’m ready to attack it again, I’ll just clone it out of that notebook into a new copy in the Journal, give it a new ID, back-ref it (easy to do without jumping around, because when you duplicate the entry you duplicated from is stored in the Source field in Boswell; just double-click the ID and paste it), increment the version number in my MMD meta-data, and off I go.
Using notebooks for workflow is very viable and useful. They don’t need to just be storage bins.
I have recently purchased a copy of Boswell and I am working my way through it.
Two bits of advice:
- Use the starter database for your first db. There is a lot of great advice that is stored in it. In fact most of the application is documented right in Boswell.
- Work in parallel for a bit. If you are anything like me, as you get used to Boswell, you’ll change your mind about a fundamental workflow and want to fix everything you’ve done thus far. Boswell’s immutability makes this difficult. The immutability is fantastic once you are comfortable in the application, but when learning it, it can be a huge pain because suddenly you have 1,000 mistakes in the
__Ignore
notebook.
So consider that first one your “practice” library. Once you get comfortable, create a new empty library without the starter documents and go from there. You’ve got the benefit of all these great systems we’ve honed over the years, so that initial break-in period might not be quite as big as mine was. I had literally no system back then, and was inventing a bunch of this as I learned Boswell.
Oh one quick tip if you are running Boswell through Rosetta: always let it finish loading before switching around to other applications. There is a Rosetta bug that causes it to crash if you start loading it and then wander off to web browse.
Further pointers on how Boswell and Scrivener fit together would be appreciated.
Quite simply, everything I do in Scrivener is MMD. So archival into Boswell is merely a matter of compiling to a plain MMD file (not a final format), and then dumping that into Boswell. I create a “Source:” MMD meta-data field that points back to the original Scrivener project (now zip archived and stored in an area of my drive I never alter).
I’m not sure what else to add here, because the process is so deadly simple. Scrivener produces the end-format I need in one shot… copy & paste or import handle the rest in Boswell.
Printing out into presentable formats should be straightforward, although I need to learn how to edit the format (without picking up LaTex skills).
Try LyX. It’s a word processor-ish front end to LaTeX that will definitely feel a little quirky for a Mac user (it has a UNIX background), but completely removes the LaTeX learning process for editing these formatted files. In fact, it’s probably the single best Scrivener->WP workflow out there. It’s the only one that has a 100% retention rate for semantics. Titles stay titles, block quotes stay blockquotes, etc. Everyone working with Word or other RTF based workflows has to use formatting searches and such to coerce the RTF into a semantic document if they want to use stylesheets at all. Scrivener+MMD->LaTeX->LyX->PDF is fairly painless (I won’t pretend it is easier than Nisus Writer Pro, it’s definitely more advanced, though in other ways—once you do get it, reduces how much you have to do).
I may take a look at TextMate, but have little experience of snippets. What are the major benefits over standard Text Edit, in terms of your workflow?
You could, in TextEdit, augment it with something like TextExpander or Typinator and get boilerplates. But none of these solutions provide programmatic entry or field tabbing. They’ll just plop down a huge chunk of text that you can fill out. Not a bad solution though.
One could probably get efficient at either method, it’s a matter of taste. You could also just, like I mentioned, use boilerplate stationary entries in Boswell and write them out in there. There wouldn’t be a huge advantage to using TextEdit over Boswell, frankly. Typing lag is probably the biggest disadvantage. Since it is running through Rosetta, it’s a bit more sluggish than writing in TextEdit.
I like TextMate because I can program the snippets. But I’m not the typical person in that regard. I also like it because it considers MMD a syntax and makes using it much easier. You can drag an image into a text file and it will build the MMD image syntax for you, for example, or when you type in header hashes it will complete the other side; it uses syntax colouring—little things like that. Not to mention it also will render the MMD file out to an HTML preview right in TM with one keystroke.
You can select a bunch of entries and drag them to the Finder too, to create files, but they will still need post-processing because for some reason it still injects the divider sequences into the file. ↩︎
A side note on this: When you export a Notebook from Boswell with custom tags, it will place those custom tags into the exported file, not the “root” tag. Since Results recovers the “root” tag, it can be useful to search for and then export that notebook if you want to save the original tag, but since I put that into the text area already, this is rarely important. ↩︎
I have it set up to jump straight to a level three incomplete because most often I’m creating the new entry to immediately paste in something that is already mostly complete. If I used Boswell to start more stuff from scratch, then a default of
*
would probably be better. ↩︎