June 14th, 2001

stacking signal handlers

I spent a good portion of my evening tracing down the fact that ljlib.pl's $SIG{'HUP'} was blowing away BML's HUP handler. It shouldn't have taken so long to find, but I was thinking BML's namespace cleanup code was doing it.

So ... I need a good way to allow multiple signal handlers.

Collapse )

  • evan

Journal Backup

I wrote a Windows utility to backup your journal.


It's pretty incomplete, but it should do the job.
From the ReadMe:
Known limitations:
- Security information isn't saved.
- No alternate server / proxy support.
- Error reporting may not be complete.
- The status message doesn't quite correspond to status.
- The browse for path button (...) isn't implemented.
- Not tested too well.

My current considerations:
  • If everyone backs up at once, there might be a server hit... but I think the word-of-mouth nature of LiveJournal should keep this from happening.
  • More interestingly, because this exports to a set of XML files (one per entry), you end up with a directory full of a few thousand (in my case) journal entries. Is this bad? Will we hit some file system limits?
    I could do some sort of hashing using subdirectories, but grouping by date seems unweildy, and grouping by least significant digit splits stuff up too much.

This client will be extended to support syncing your journal: effectively staying up-to-date with the latest changes. (Yeah, this is from the MyLJ project.)

Anyway, it's juggling night, so I'm gonna run. Hope this works for you!

Update (08 March 2002):
Just to answer some questions I've been having:
- No, I haven't released any new versions.
- I'd be happy to give away the source but I think I've since lost it. It wasn't that hard to write and I may write something similar this summer.
- This program no longer works, due to some architectural changes on LiveJournal.
  • Current Music
    UNKLE - Lonely Soul
face flex

Idea for LiveJournal over email (calling it LJ-eGate)

For a long time now, I've wondered what I could do to help contribute to the LJ community, and finally I think I have come up with an idea...

I recently started a new job, and they are kind of strict about your web usage and like to monitor it, so I can't really get on LJ much. But they are really loose on email, since it is used so much. So why not write a program to let you access/use LJ through email? :)

I'm really kind of surprised that nobody has done this already, since I think many people would find it useful. I've already mentioned it to Brad, and he was interested in it, so if you all like the idea, I'll program it to use the LJ code and be run off LJ.

Collapse )
Hair Cut

(no subject)

I've just uncovered an issue when embedding tables in Journal posts.

If you put your table elements like this...

<td>This is the content of the cell</td>

... the HTML parser will return this...

<table><br><tr><br><td>This is the content of the cell</td><br></tr><br></table>

As a result, there will be 4 blank lines directly above the table - because the browser cannot display printable characters within a table unless it is enclose in TD or TH (or a couple of other) tag pairs.

Any suggestions on this one?

Can the parser be made to *not* insert <br> tags whilst within a table structure unless inside the correct tag pairs?

I hope this makes sense! :-)
  • Current Music
    Moby - Natural Blues
  • stipe

Java LJ Client Stuff

Couple things -

At some point could someone update http://www.livejournal.com/download/ to point at one or all of

The first is the development community. The second is the SwingUI (applet) which works with the Java Plug-in, and the third is the AWT UI (applet) which should work with any browser supporting Java (so if only one is linked, the last one is probably the best).

Everything is still under development, but seems to be pretty stable, and offers at least as many features as many of the other clients listed (at least from what the feature matrix thing says) and (yay Applets) doesn't require a download.

Also, I finally got around to making a release of the back-end source (no UI source at the moment). More info can be found in pepys_dev.