Spare me the blabber, get me to the script!!!
Reddit's cool. Well, programming.reddit, anyway.
So cool I visit it frequently. The trouble is, it's hard to tell the difference between comments you've already read and the new ones. A flat, date-ordered view is available, but I doubt it's much used considering it's not the default considering the huge context loss it represents.
To help a bit, I got in the habit of modding every comment as I read it (up by default, your karma's safe with me). As a result, coming back to a comments page is bearable, but not perfect yet: as pages accumulate comments, I've still got to look for them. Additionnally, modded comments stand out better than unmodded ones, but there's really not much I can do there.
Obviously having too much free time on my hands, I tried and made things better (for me).
I'd tried designing a Firefox extension a few years ago, but I quickly gave up; the processs wasn't fun enough to keep me going. Nowadays, we've got GreaseMonkey to help with such things, so that's what I used.
It started out with unread comment highlighting. And ugly it was indeed (hey, you're reading this page, you know what I'm capable of on that axis). Scrolling the page searching for bright green spots is bad for my RSI, so I converted the system to an [N]/[P] keymap. This way, no need to search for the comments, a simple keypress brought me to them directly.
In that state, the second visit to the page is convenient. But I'm actually discouraged from modding any more, since my hands are on the keyboard, not on the mouse. Here come [+] and [-]. It's starting to feel like net news reading. Why not go all the way through? All I'm still missing is navigation among the already read comments, and perhaps a few redundant keybindings.
It's pretty crude for now, but It Does Works Here®. Keymap:
The list of unread comments is built at page load time, and not further updated. A comment is considered unread if none of its arrows are highlighted. At page load time.
The whole thing tries to interfere with reddit internals as little as possible, but is still quite dependant on them. In-page movement is performed by scrolling, not hash link following (hash link following in one line or less fills in history). Active comments are highlighted by adding an HTML class to the element, and removing it when gone. Modding doesn't invoke any reddit function directly, it just simulates a click in the right area. Only parent comment tracking is still a little ugly by my standards: it decodes the base-36 hash link to decimal instead of just following the link.
It's right here.