Archive of RubyForge sup-talk mailing list
 help / color / mirror / Atom feed
From: johnbent@lanl.gov (John Bent)
Subject: [sup-talk] missing run-mailcap
Date: Tue, 22 Jan 2008 09:40:05 -0700	[thread overview]
Message-ID: <1201019996-sup-8960@tangerine.lanl.gov> (raw)

I saw some earlier discussion in the list archives about a missing run-mailcap
script.  I had this same problem too on my mac (10.4.11 Power PC).  It's sort
of a kluge but I dealt with this by writing my own /usr/bin/run-mailcap which
just does a simple hash lookup of mime type to rename the file with an
appropriate extension and then uses the mac 'open' command.  I haven't fully
populated the hash table yet; I'll do that lazily.  If the 'file' command
could return an extension, I'd be tempted to use it and avoid the hash table
but the best it can do is return the mime-type which we already know.  Or if
there was some way to pass the mime-type to the 'open' command, that'd be
better too.  But at least this works...

===========================================================================

 
#! /usr/bin/perl

my %mimes = (
    'image/jpeg'    => 'jpg',
    'text/html'     => 'html',
);

my ( $type, $file ) = split( /:/, $ARGV[1] );
Log( "$type - $file\n" );
my $extension = $mimes{$type};
if ( ! defined $extension ) {
    Log( "Unknown type $type\n" );
} else {
    rename( $file, "$file.$extension" );
    Log( "open $file.$extension\n" );
    system( "open $file.$extension" );
}

#######################################################################

my $log_fd;
sub
Log {
    if ( ! defined $log_fd ) {
        open LOG, ">>/tmp/mailcap.log" or warn "open log: $!\n";
        $log_fd = \*LOG;
    }
    #print "@_";
    print LOG "@_";
}


             reply	other threads:[~2008-01-22 16:40 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-01-22 16:40 John Bent [this message]
2008-01-22 22:33 ` John Bent
2008-01-24 21:40   ` John Bent
2008-01-24 23:26     ` William Morgan
2008-01-24 23:52       ` John Bent
2008-01-25  0:17         ` William Morgan
2008-01-25  0:57           ` Grant Hollingworth
2008-01-25  4:40             ` John Bent
2008-01-26  0:35               ` John Bent
2008-01-30 17:29                 ` William Morgan
2008-01-30 17:54                   ` John Bent
2008-01-30 18:26                     ` William Morgan
2008-01-30 18:35                       ` John Bent
2008-02-03  3:01                         ` William Morgan
  -- strict thread matches above, loose matches on Subject: below --
2008-01-04 23:45 Giorgio Lando
2008-01-04 23:59 ` Giorgio Lando
2008-01-05  0:13 ` William Morgan
2008-01-05  1:01   ` Giorgio Lando

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1201019996-sup-8960@tangerine.lanl.gov \
    --to=johnbent@lanl.gov \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox