Linux software for an electronic journal
January 5, 2009 3:38 PM   Subscribe

What are some good Linux programs for keeping an electronic research journal?

I write a lot when I am thinking about a problem. Writing helps me organize my thoughts. Now that I'm starting a PhD I want to move away from the pen-and-paper method I used in my master's, mainly because organization and information retrieval became very difficult after a year or two.

I'm using Ubuntu Linux (though I could try Windows programs under WINE, I guess). I tried a few programs so far, recently TomBoy, but I wasn't sold on it. I don't like the TomBoy interface where little notes fly up in new windows; I'd prefer something closer to a tabbed text-editor with indexing and timestamps. My style is not so much creating structured information like a database or wiki, but rather dumping bursts of text into the screen every now and then. I don't want to spend a lot of time thinking about organizing information; instead, I want to able to open the program, start typing, and then click somewhere to have it filed away. Any ideas?
posted by PercussivePaul to Education (16 answers total) 4 users marked this as a favorite
 
Could you use Ubuntu's default text editor (Gedit), manually type a timestamp, and rely on Ubuntu's default indexer (Tracker) for searching?
posted by PueExMachina at 4:03 PM on January 5, 2009


I store my "lab notebook" as one big HTML file per year. I use emacs for editing the html. I use emacs org-mode to keep my todo list. This combination works much better than anything I have tried before, which includes wikis and paper notes.
posted by grouse at 4:12 PM on January 5, 2009


(I haven't found a good solution to this, so I'll be watching this thread with interest)

Things to check out:
hnb - a text-based hierarchical notebook
BasKet - kind of like OneNote for KDE
OneNote under Wine - I have no idea if this will work
freemind - "Mind mapping" software. I haven't tried it

I just use a big text file, managed with subversion. This is obviously not ideal. I think if I were to start over, I'd put everything in a private wiki.
posted by qxntpqbbbqxl at 4:18 PM on January 5, 2009


Any wiki will probably have changes available as timestamped diffs, so you might be able to use a wiki in the way that you talk about. That would allow you to structure it as

Otherwise a twitter-like bit of software might work for you (and there are lots of Linux clients for twitter itself). Try Sweetter for example.
posted by holloway at 4:51 PM on January 5, 2009


Response by poster: timestamped diffs are a bit of a pain, as is manual timestamps and searching. The more effort this thing requires to use, the more likely I am to simply stick with pen and paper. Twitter is actually much closer to the work model I would use, but I expect twitter clients aren't really designed for what I want to do, namely dump in relatively large amounts of text, and quickly page through lots of previous entries. Thanks, though, I'll look into it. More ideas are welcome...
posted by PercussivePaul at 5:13 PM on January 5, 2009


How about a Backpack? It accepts text entry via email, so you can essentially dash of an email to youself whenever you want to capture a thought. Plus, being web software, it understands hyperlinks etc if you save links. You can also sync it with Tomboyvia the Conduit application to give yourself a local backup.
posted by COD at 5:30 PM on January 5, 2009


Man, this question keeps coming up again and again. You'd think one of these grad students would just write the program and call it good. I guess the problem is few generally expect to need such a thing more than once.
posted by pwnguin at 6:22 PM on January 5, 2009


Emacs is a pretty big program, in that learning it for any specific task is probably overkill. Still, if you are going to be working with text a great deal (especially structured text of any kind at all), it will absolutely pay off in the long run.

"...but rather dumping bursts of text into the screen every now and then..." sounds exactly like remember-mode. I use it with the built-in outline-mode: I hit Control-c and then n (mnemonic: "note") to open a blank buffer with some context inserted at the bottom (a timestamp and what I had been editing). I type whatever fleeting idea just hit me, then hit Control-C twice to close it. It's automatically added as another bullet point (under " * unfiled ") in my outline.

I could move away from the "plain text file collapsible into an outline" format and put it in a dedicated database or something, but Emacs's searching commands have been fast enough, and everything understands plaintext. (It's also under version control and thus automatically backed up, FWIW.)

Chances are, 1) Emacs can be extended to suit exactly your needs, and 2) somebody has already done it.
posted by silentbicycle at 6:39 PM on January 5, 2009


As with Emacs, it might be more of a learning curve than you want for something like this, but I think Vim would also be a reasonable choice, inasmuch as it's a powerful text editor and it's probably what I'd use for this sort of task. (There are probably some plugins that would help - maybe NERDTree and some files in directories?)

Well, that or a wiki. There are a bunch of lightweight wikis that would be cake to set up on localhost, or maybe TiddlyWiki, which is purely browser-based, would be worth investigating.

I use a minimal wiki to dump random links, quotes, and chunks of underdeveloped text. I only really edit a couple of pages very heavily, but (despite how much it can suck to edit text in a browser) it works pretty well for shuffling stuff around, and there's no requirement that it be structured.
posted by brennen at 7:13 PM on January 5, 2009


I'd prefer something closer to a tabbed text-editor with indexing and timestamps. My style is not so much creating structured information like a database or wiki, but rather dumping bursts of text into the screen every now and then. I don't want to spend a lot of time thinking about organizing information; instead, I want to able to open the program, start typing, and then click somewhere to have it filed away. Any ideas?

You say not-a-wiki, but this sounds like maybe you want tiddlywiki and just not to use most of the features. It lives in the browser, stores everything in one place, is text searchable and timestamped. Plus, if you ever want to you could use all those pesky features.

Although, you could also do with with plain text dumped in a folder. Search it with "find" and "grep".
posted by a robot made out of meat at 7:17 PM on January 5, 2009


I forgot about TiddlyWiki. That may be a good fit for you, too. Not my style, but it works.

On second thought, about Emacs:

Remember is probably *perfect* if you were already using Emacs, but for your purposes it would be easy enough to write a <10-line script (called "note" or "r" or whatever) that opens $EDITOR on a file named after a datestamp (e.g. 2009-01-05_22:24.txt so they sort alphabetically) in a directory like "~/notes".

Something like this:
----
#!/bin/sh
$EDITOR ~/docs/`date "+%Y-%m-%d_%H:%M"`.txt

----
would be a good start. Set $EDITOR to vim or nano or mg or jed or whatever in your profile (or just write it in), good to go. If you want to search for stuff, use grep in the directory. If you want to limit to a date range, "grep [pattern] 2008-11-13_*.txt" or whatever. Grep won't index, but it will find things fast enough, until you have several MB of notes.

FWIW, I'm not convinced that the learning curve for vi(m) is necessarily better than Emacs. I've used both for several years each, and they both have interfaces designed to help experienced users to be efficient, rather than making things convenient for new users. (my comparison)
posted by silentbicycle at 7:43 PM on January 5, 2009


I'll also vote for emacs, but using the org-mode package (remember-mode can work with org-mode). Definitely use some sort of version control. emacs makes this easy as well. Learning emacs is a big investment, but despite not really having a good text editor, the sheer amount of useful code that has been written for it make it worth it.
posted by devilsbrigade at 8:06 PM on January 5, 2009


How about Zim? It's a personal wiki application.
posted by cdmwebs at 10:09 PM on January 5, 2009


I'd be inclined to try to shoehorn Zotero to meet my needs. It deals with collections of stuff very well, and so long as you've got a reasonably fast computer the search is pretty good too.
posted by singingfish at 1:28 AM on January 6, 2009



FWIW, I'm not convinced that the learning curve for vi(m) is necessarily better than Emacs.

I used Emacs for a year or so before switching to vi(m) for the last 7 or 8, and I'm reasonably certain that Emacs is friendlier up-front, at least. The modeless input model is a lot closer to what most people expect out of a screen full of text, after all.

Anyway, I generally just advise people to learn some serious text editor. It's one of those software decisions that's life-changing out of all proportion to the apparent triviality of putting words on a screen...

posted by brennen at 10:39 AM on January 6, 2009


Best answer: I have found it! ladies and gentlemen, I give you... Takenote. I've already tried it out and it is exactly what I have been looking for.

I can't even remember where I found this... somebody somewhere suggested it on a forum that I found in a google search. Anyway, thanks for all the suggestions.
posted by PercussivePaul at 8:24 PM on January 7, 2009 [1 favorite]


« Older Have You Heard of this Thai Pop Music Band?   |   We won't be needing your banana stickers! We have... Newer »
This thread is closed to new comments.