Log in

No account? Create an account
LogJam Development's Journal
[Most Recent Entries] [Calendar View] [Friends]

Below are the 20 most recent journal entries recorded in LogJam Development's LiveJournal:

[ << Previous 20 ]
Monday, November 29th, 2010
4:03 pm
LogJam 4.6.0 OPTIONAL patch: Alternate menu structure


Here's the third of my patches.  This one should probably be optional, which is why I've posted it separately from the other two.  It adds no functionality as such to LogJam, aside from adding two accelerators (Ctl-I for Insert Image and Ctl-D for Open Draft); it's primarily a usability patch that rearranges the top-level menus into an order I find more intuitive.  I always found the out-of-the-box top-level menu order in LogJam awkward and clumsy.  I was constantly having to hunt back and forth on the bar for the menu I wanted, because they were placed with no apparent rhyme or reason, and after a couple of weeks of using it (about eight years ago now) I gave up, went into the code, and patched it to rearrange the menus in an order I found more usable.

This patch leaves the LogJam and Edit menus first, where they belong as standard menus that are always first in every application that has them.  It then arranges the remaining menus in order of increasingly fine detail from left to right: View (application-global UI settings), Journal (selection of journals and operations on specific journals), Entry (actions on the current entry within a journal), Insert (insert high-level objects into the active entry), and last of all HTML (insert individual HTML formatting tags into the active entry).

Not every user will want this patch, but I find LogJam much easier to use with this modification, and wanted to put it out there in the event that other users want to try it.

11:29 am
LogJam 4.6.0 patches: Comment screening, HTML tags


Here is a patch (in gzipped Unix unified diff format) which adds a comment-screening control to LogJam 4.6.0.  This first one should be a completely straightforward issue.

This second patch adds a large number of additional HTML tags to the HTML menu, in support of which it modifies the html_mark_tag() function to properly handle the <span> tag.

(This could technically be extended to handle any other tag with arguments, such as <div style=...>, but that would quickly get ridiculous.  <span> itself is necessary because <span style=...> is the only reasonable way to do small-caps formatting.)

Wednesday, March 17th, 2010
12:47 am
current patchset (pending2)
It's just an announcement about work which was done on top of last logjam sources.
To download patches use following link: http://github.com/andy-shev/LogJam/commits/pending2/

Andy Shevchenko (17):
Adds titles to links and images and link to images
Add context menu support in the dock (v2)
Allow start logjam in system tray (no main window)
No quit in docked mode
Close main window just after send
Tags support
Enable threading where we really need it only
Add 'Location' support to the logjam
Show login history
Add MPRIS support to detect current music (v2)
Enable "keep drafts" functionality
Add possibility to insert link by nickname
Add automake-1.11 to autogen.sh
Add support of the User-Agent header
Explicit requirement of libX11 to be linked with
Fix MusicSource enum and corresponding logic
Add helper to detect music for Banshee player
Wednesday, January 20th, 2010
1:59 am
audacious2 vs. mpris
Apparently Audacious2 works fine with MPRIS nowadays.
However my last patch to support MPRIS doesn't know about that improvement.
So, I fixed the issue in new version of patch.

P.S. You could also apply many useful patches from pending2 branch.
Monday, May 18th, 2009
12:15 pm

After a week and a half or so banging on hardware, I got back to my LogJam updates.  Since auto-crosspost is not available to standalone clients and doesn’t sound likely to be so any time soon, I’ve removed the code for that.  About the one thing I still need to do is find a good, clean way to be able to extract the site hostname (which turns out to be surprisingly difficult to get at in the LogJam data structures) so that LogJam knows whether to use and submit the adult_content_reason property (Dreamwidth only), whether to ask for a site field (Dreamwidth only) in <lj user=“”> tags, and whether to use <lj-cut text=“”> (on LiveJournal, InsaneJournal, GreatestJournal etc) or <cut text=“”> (on Dreamwidth).

As previously noted, I may also need to revisit the issue of templating; template storage probably needs to be moved up at least one level, from specific LiveJournal sites to the level of all-LiveJournal-compatible servers.  That’s a separate issue from getting LogJam working properly on Dreamwidth though.

I’ve occasionally run into a problem in which trying to re-open a post for editing results in a failed request with unrecognized headers from the server.  I haven’t fully diagnosed this yet.

Wednesday, May 13th, 2009
12:52 pm
Templates not so solved

I’ve discovered that there’s a functional problem with my “keep drafts” workaround for implementing templates.  In short, the problem is that drafts are server-specific, while templates really should be global.

I’m clearly going to have to revisit this.

Sunday, May 3rd, 2009
1:23 pm
Logjam and Dreamwidth

This question is primarily for Evan, but anyone else feel free to jump in ...

I’ve just begun the process of extending LogJam to work on Dreamwidth by adding the additional fields to support the auto-crossposting feature of Dreamwidth.  This of course requires that I modify liblivejournal to add the additional fields, during which I noticed that the liblivejournal code I currently have does not support the adult-content field of Livejournal.  So livejournal needs support added for the adult-content selector, while dreamwidth needs support added for auto-crossport, age-restrict (Dreamwidth’s version of LJ’s “adult content”), and restriction reason.  (It may also be necessary to have support for the list of crosspost sites, or that may have to be left — for now — to whatever default is set in your Dreamwidth journal.)

Here’s the key question:

Is it intended that the correct way to do this is to create a liblivejournal/dreamwidth directory under protocol, copy the liblivejournal/livejournal code to it, and make the dreamwidth-specific changes there?  Or should I keep it all in one place and make the code conditional on which server is being accessed?

Current Mood: technical
Friday, May 1st, 2009
10:03 am
logjam on git
I checked out the old tree, got it building again (the old autogen.sh script didn't work in the presence of automake 1.10!) and imported it into git. Kinda brings back memories -- I spent so much time on this project back in college and I haven't looked at the code in years!

The canonical repo is now:
I've updated the website.

Ideally someone who cares about LogJam will fork that and start applying patches to it. Once that happens, please announce it here.

Otherwise, you can send me some pull requests via github or mail patches to evan@livejournal.com. I'm sorry I haven't had time to look through all the patches on this community already -- I literally haven't thought about this code in years.
Sunday, April 26th, 2009
3:41 pm
fix inconveniences with tags
If you are using logjam from Fedora distribution or you have applied tags patch, you probably observe few inconveniences with it, like when you push the '...' button in tags bar the early typed tags are just cleaned up. So, proposed patch fixes this behaviour: tags are added to the tree view and marked by red color if you have no such tag saved under your account in network.
Saturday, April 25th, 2009
3:43 pm
MPRIS support
There is a patch which implements first step to support MPRIS (detecting current music and so on).
I have tested it on Fedora 10.
Disadvantages are:
- somehow randomly choosed player (if you have more then one playing)
- still needs manual refreshing for current song
So, enjoy!
Sunday, April 12th, 2009
12:57 pm
 Using Ubuntu downloaded and installed LogJam from the Repository yesterday. Used LJ to post one blog entry and liked what I saw of the app. However, when I went back later and tried to open the program I received "Autsaved Draft Found" system message. At this point it doesn't matter whether I choose "Yes" or "No" at the prompt, LogJam immediately crashes to the desktop? This now happens everytime I attempt to open LogJam, thus, I can no longer access the software at all? Any ideas how I can correct this issue would be appreciated.

Thanks in advance.
Wednesday, April 1st, 2009
7:16 pm
Templating patch for LogJam 4.5.3

A while back I mentioned that I was considering modifying LogJam to add persistent templates for posts.  It since occurred to me that there’s a very much simpler way to achieve the same result:  Add a preference option to keep saved drafts after posting, which suppresses the “Delete this draft from disk?” prompt and action.  Enabling “Keep saved drafts after posting” de facto turns the drafts list into a list of saved persistent templates.  (They can still be deleted if desired from the ‘Open Draft’ dialog, so no functionality is lost by turning this preference on.)

A patch against Logjam 4.5.3 to implement this feature can be found here.

(Crossposted to logjam)

Friday, March 13th, 2009
10:34 am
RFC: LogJam templates

I'm thinking about making a modification to LogJam that would add a major new piece of functionality, but mostly using existing code to do it.  I intend to adapt the existing draft-handling code to add a template feature.  Templates would mostly be handled and treated the same as drafts, except for the following:

  • Templates will be stored in a separate directory from drafts.
  • Templates will be listed in alphabetical order in the "Open Template" dialog, which will otherwise be just like the "Open Draft" dialog.
  • The subject line of a template will always be cleared on load.
  • LogJam will never prompt to delete a template after posting.  It will assume you wish to keep the template.  Templates must be manually deleted using the Open Template dialog.

Before I get started on this, is there anything else I should be taking into account?

Friday, October 17th, 2008
6:26 am
implementation of mood and moodid
Hey. Long time snR monitor, first time poster.

One of my major grievances with logjam is that it provides either moodid specification or mood (moodstring) specification - not both.

I’ll note that upload.bml allows both to be specified, with moodid determining the emote used, and moodstring (if defined) determining the mood text displayed (see here for an example, string “sxemacsmood” moodid “creative” done with the web interface...)

Does anyone have details of how this could be implemented in an LJ client, and if it is a planned feature for logjam at some point?

Current Mood: confused
Sunday, May 18th, 2008
12:20 pm
Patches for logjam
Update: sorry, but unfortunately site is down. Please, use this link or Google's cache.


FileDescriptionSize, Kb
1 logjam-4.4.1-ru.po.asp.patch Small fix in russian translation 5.42
2 logjam-4.5.3-close_when_send.patch Close main window after submit changes 2.84
3 logjam-4.5.3-no_quit_when_docked.patch Don't exit from main window when dock is used 0.47
4 logjam-4.5.3-start_in_dock.patch Allow start logjam in system tray only 2.49
5 logjam-4.5.3-uk.po.patch Small fix in ukrainian translation 0.47

Sunday, May 11th, 2008
4:05 pm
start in the system tray

I like to start programs with the system tray support only in system tray (without main window open at beginning).
I wrote simple patch to make it possible with logjam.

The patch.
Tuesday, April 1st, 2008
10:07 am
two patches for russian users
the first one changes «smartquotes» autoreplacing (see quotes in this post), and the second one adds an ability to insert tags for LJR users and communities (LJR is a russian lj server).

WARNING! the first patch will change logjam behavior unconditionally (there's no option to return to the previous quote autoreplacing style).
now you can select old or new behavior in preferences.

P.S. i didn't found a community for russian logjam developers, and those patches are pretty much useless for non-russians, so please excuse me for noising.

upd: new single-file patch
copy it in base logjam directory and execute "patch -p1 <smartquotes_ru.patch"
Read more...Collapse )
Monday, November 5th, 2007
5:28 am
development status
As others have observed, I've more or less abandoned LogJam. Writing it has been fun -- I started when I was a teenager and now I'm into my second half of my twenties (has it really been almost two years since the last release?) -- but with more experience I've found the LiveJournal website more or less sufficient for my needs, that writing GUI code in C is a big pain, and that I'm not a huge fan of the direction LiveJournal's headed in general so I'd be better off investing my efforts elsewhere.

With that said, I'd love it if others hacked on LogJam, with an unfortunate caveat: I've been burned a couple times in the past with just giving maintainership over to someone else I don't know; people will often either write bad code or disappear after a few weeks. There's the additional trust problem -- I remember when one of the volunteer maintainers of the win32 claimed he had backdoored it to allow him access to other people's entries... :(

So here are some options:
- If you want, I can review patches and commit them to my existing repo, update the website when you're ready to release, etc. I have most of this automated through scripts so it's not hard to make new releases.
- Another option is for you to fork. You're welcome to use the LogJam communities, etc. for announcements, and have my blessing, but I'd prefer for you to use a different name for the project for the reasons outlined in the previous paragraph. (This also may be a pain in areas like getting distributions to pick up your new project.)
- A final option that maybe meets halfway is to move the code to an intermediate place (like repo.or.cz) to allow external committers but still let me be involved in review and release. In general I think a move to a system like git is a good idea, as a lot of software in LogJam's space has already. (Back when I was picking a VCS for LogJam, git wasn't really an option, but now I think it's a good choice for reasons outlined here.)

Finally, most user contributions I've had to this and similar projects has been (unfortunately) of low quality; I'd prefer not to accept patches that are buggy, clunky, or are generally of bad code style.
8:43 am
Development Status
I started using Logjam a few months ago. What it does it does well, but, there are some obvious extra things that it could do. For example, it can insert LJ-user tags and it maintains a list of your friends, so why can't it put the two together and allow you to insert a LJ-user tag for one of your friends by selecting it from the friends window?

Anyway, I went and looked at the site and the source repository and it looks like development has completely stopped. Is anyone working on Logjam? or has everyone moved on to something better?

Saturday, February 10th, 2007
4:00 pm
Pondering text autoreplacement in LogJam

I was pondering today making a patch to LogJam to add a text autoreplacement feature.  What I had in mind, at the most basic level, was simply scanning the article body before posting and replacing all instances of ' -- ' with ' &mdash; ', simply because I've gotten tired of typing '&mdash;'.  A more sophisticated approach would be to extend the preferences to add a user-editable list of find-and-replace operations which would be automatically performed on the article body at posting time, possibly with a few predefined sample replacements (like the example above) and checkboxes to select which of them the user wanted to have applied.

The question is, I don't have a good feel for the overall architecture of LogJam; if I was to start out with the simplistic hard-coded replacement strategy first described above, where would be the best place to do it?  Or to approach the question a different way, where in the codebase does LogJam actually post articles (new or edited)?  I don't actually know enough about the LiveJournal API to know what I should be looking for.

Update, thirty seconds later:

Of course, thirty seconds after posting that, I just found it.  :)

I'd still appreciate feedback on the idea.  What does anyone else think of this as a feature?  I'm going to implement the simplistic approach as a proof-of-concept.  Does anyone have implementation suggestions as far as a more sophisticated and flexible approach, as described above?

[ << Previous 20 ]
LogJam Home   About LiveJournal.com