slh
10 years agoDisplay album cover art in mpd.el's mpd-dock-frame
Steve Youngs [Wed, 14 Aug 2013 01:45:32 +0000 (11:45 +1000)]
Display album cover art in mpd.el's mpd-dock-frame

Note that embedded album art is not currently supported so this changeset
comes with some limitations, notably...

o You need `cover.jpg' files present in the same directory as the
  audio file(s) it applies to.  So you're probably screwed if you
  don't sort your music by album.

o For the albums you don't have a cover art for you will need a
  placeholder image `~/.mpd/nocover.jpg' (48x48).

o Only jpeg images are supported at this time.

The balloon-help for the cover art glyph extent contains the track info
(title, artist, album, year, genre, filename).

This changeset also removes all of the lyrics code.

* mpd.el (mpd-conf-file): New.

* mpd.el (mpd-music-directory): New.

* mpd.el (mpd-cover-glyph): New.

* mpd.el (mpd-update-cover): New.

* mpd.el (mpd-update-variables): Use `mpd-update-cover'.

* mpd.el (mpd-dock-frame-plist): Change dimensions of the frame to
accomodate the extra room needed for the cover art glyph.

* mpd.el (mpd-new-frame): Don't insert the "[Song Info]" text
extent. Do insert cover art.

* mpd.el (mpd-dock-face): Removed.

* mpd.el (mpd-lyrics-*): All removed.

* README: Mention mpd.el.

Signed-off-by: Steve Youngs <steve@sxemacs.org>
12 years agoEdit or delete old posts.
Steve Youngs [Thu, 30 Jun 2011 04:25:29 +0000 (14:25 +1000)]
Edit or delete old posts.

This patchset adds the ability to edit (including delete) Livejournal
entries that have already been posted to Livejournal.

There are three caveats to this:

  1) For it to work, `lj-archive-posts' must be t (now the default).

  2) You can't edit/delete a post that wasn't originally posted from
     SXEmacs/LJ (that has the editing/deletion features)

  3) Post date/time cannot be altered.  You either get it right when
     you post the entry the first time, or you edit the date from the
     Livejournal site.

Yes, I know that is a little sucky, but hopefully that won't be the
case for long.  I am working on ways to eliminate at least the 2nd
caveat.

* lj.el (lj-post-proc-parser): Save the itemid as well.

* lj.el (lj-item-id): New.  Stores the itemid from the just posted
journal entry.

* lj.el (lj-archive-post): Put the itemid and permalink at the top
of the achived post.

* lj.el (lj-stringify-id): New.  Turns an itemid into a string.

* lj.el (lj-delete-post-internal): New.

* lj.el (lj-delete-post-proc-parser): New.

* lj.el (lj-header-regexp): Add X-LJ-URL, X-LJ-ItemID

* lj.el (lj-header-itemid): New face.

* lj.el (lj-header-url): New face.

* lj.el (lj-font-lock-keywords): Add X-LJ-URL and X-LJ-ItemID
headers.

* lj.el (lj-goto-x-lj-url): New.

* lj.el (lj-goto-x-lj-itemid): New.

* lj.el (lj-edit-old-post): New.

* lj.el (lj-construct-url): Update to allow for editing old posts.

* lj.el (lj-archive-post): Handle editing old posts.

* lj.el (lj-generate-new-buffer): Lose some whitespace being
injected into the created buffer.

* lj.el (lj-delete-old-post): New.

* lj.el (lj-archive-posts): Change default to t.

* lj.el (lj-version): Bump.

Signed-off-by: Steve Youngs <steve@sxemacs.org>
12 years agoIncrease the limit on subject length.
Steve Youngs [Mon, 27 Jun 2011 05:44:20 +0000 (15:44 +1000)]
Increase the limit on subject length.

Turns out that the limit on the maximum length of a subject header is 255
characters, not 100 as I first thought.

* lj.el (lj-check-limits): Subject limit is 255 chars, not 100

Signed-off-by: Steve Youngs <steve@sxemacs.org>
12 years agoWriter's Block fixes -- allow for signature.
Steve Youngs [Sun, 26 Jun 2011 04:19:42 +0000 (14:19 +1000)]
Writer's Block fixes -- allow for signature.

* lj.el (lj-qotd-subject): Don't go to point-max in the post body
as there might be a signature that we should leave at the bottom.

* lj.el (lj-narrow-to-qotd): Recenter the qotd buffer after
selecting a qotd so #'shrink-window-if-larger-than-buffer will
work properly.
Also, insert qotd template at top of post body, not the bottom.

* lj.el (lj-qotd-quit): The lj-goto-* commands set point, so no
need to set it explicitly.

* lj.el (lj-writers-block): Ditto.
Also, allow for a signature being present and don't delete it if
it is.

* lj.el (lj-version): Bump.

Signed-off-by: Steve Youngs <steve@sxemacs.org>
12 years agoMerge branch 'lj-limits'
Steve Youngs [Sat, 25 Jun 2011 10:10:53 +0000 (20:10 +1000)]
Merge branch 'lj-limits'

12 years agoImpose size limits as per Livejournal API docs.
Steve Youngs [Sat, 25 Jun 2011 10:10:07 +0000 (20:10 +1000)]
Impose size limits as per Livejournal API docs.

This patchset makes sure you don't exceed the limits on size that
Livejournal imposes on entries.

It also fixes a quick little bug to do with abbrevs... I kinda forgot
to turn them on.

* lj.el (lj-check-limits): New.  Livejournals puts limits on the
length of posts and the headers etc.  This ensures you don't
exceed them.

* lj.el (lj-post): Use it.

* lj.el (lj-mode): Turn on abbrev-mode.

* lj.el (lj-version): Bump.

Signed-off-by: Steve Youngs <steve@sxemacs.org>
12 years agoMerge branch 'lj-new-stuff'
Steve Youngs [Sat, 25 Jun 2011 06:24:16 +0000 (16:24 +1000)]
Merge branch 'lj-new-stuff'

12 years agoNew signature feature and self-promotion.
Steve Youngs [Sat, 25 Jun 2011 06:23:59 +0000 (16:23 +1000)]
New signature feature and self-promotion.

This patchset brings some shameless self-promotion by adding a byline to
the bottom of a post: "Posted via: SXEmacs/LJ (version string)".  It is in
a fairly small font and out of the way so should be reasonably
inconspicuous, but you can turn it off if you want to with...

  (setq lj-self-promote nil)

There's a new user variable, `lj-signature', the value of which is
inserted at the bottom of the post buffer if it is non-nil.  It is
inserted verbatim, so making it pretty (HTML formatting) is up to the
user.

     * lj.el (lj-byline): New.  Nothing wrong with a bit of
self-advertising, I reckon. ;-)

     * lj.el (lj-self-promote): New.  When non-nil tell the world that
     you use sexy software.

     * lj.el (lj-post): Optionally add the byline.

     * lj.el (lj-preview): Include byline in preview.

     * lj.el (lj-validate): Ditto.

     * lj.el (lj-signature): New.  Lets you include a sig at the bottom
     of a post.

     * lj.el (lj-generate-new-buffer): Insert the signature if it is set.

     * lj.el (lj-version): Bump.

Signed-off-by: Steve Youngs <steve@sxemacs.org>
12 years agoUpdate Writer's Block code to pre-fill Subject header.
Steve Youngs [Fri, 24 Jun 2011 06:28:19 +0000 (16:28 +1000)]
Update Writer's Block code to pre-fill Subject header.

* lj.el (lj-parse-qotd-archive): Fix regexp.

* lj.el (lj-qotd-subject): New.  Pre-fills the Subject header with
the title of the Writer's Block question.

* lj.el (lj-narrow-to-qotd): Use it.

* lj.el (lj-version): Bump.

Signed-off-by: Steve Youngs <steve@sxemacs.org>
12 years agoTweak the validation code a bit. Make it check for more problems
Steve Youngs [Fri, 24 Jun 2011 01:02:46 +0000 (11:02 +1000)]
Tweak the validation code a bit.  Make it check for more problems

* lj.el (lj-validate-footer): Massage the validation command to
check for and warn about more things.

* lj.el: Add blurb about validating in commentary section.

Signed-off-by: Steve Youngs <steve@sxemacs.org>
12 years agoFix an infinite loop, and disable twitter updates
Steve Youngs [Thu, 23 Jun 2011 07:36:48 +0000 (17:36 +1000)]
Fix an infinite loop, and disable twitter updates

* lj.el (lj-get-cookies): Fix infinite loop when flavour is auto.

* lj.el (lj-post): Don't attempt to update Twitter.  It's broke.
Erm, I mean that SXEmacs/LJ twitter updating is broken, not that
Twitter itself is broken... at least not all the time. :-P

* lj.el (lj-version): Bump.

Signed-off-by: Steve Youngs <steve@sxemacs.org>
12 years agoQuick doc fix
Steve Youngs [Tue, 21 Jun 2011 04:38:13 +0000 (14:38 +1000)]
Quick doc fix

Signed-off-by: Steve Youngs <steve@sxemacs.org>
12 years agoAdd xz and lzma support to dired-tar.el
Steve Youngs [Tue, 21 Jun 2011 04:07:57 +0000 (14:07 +1000)]
Add xz and lzma support to dired-tar.el

* dired-tar.el (dired-tar-compress-with): Add lzma and xz
  (dired-tar-lzma-extension): New.
  (dired-tar-xz-extension): New.
  (dired-tar-lzma-command): New.
  (dired-tar-xz-command): New.
  (dired-tar-unlzma-command): New.
  (dired-tar-unxz-command): New.
  (dired-tar-pack): Handle xz and lzma as well.
  (dired-tar-lzma-tarfile-regexp): New.
  (dired-tar-xz-tarfile-regexp): New.
  (dired-tar-unpack): Handle xz and lzma as well.
  (dired-tar-pack-unpack): Update doc string to
  mention xz and lzma.

Signed-off-by: Steve Youngs <steve@sxemacs.org>
12 years agoInitial import from tla sources v1.0
Steve Youngs [Tue, 21 Jun 2011 03:17:42 +0000 (13:17 +1000)]
Initial import from tla sources

Signed-off-by: Steve Youngs <steve@sxemacs.org>