あたらしものずきっ!

試してみたものとか、遊んでみたものを色々記してみます。

OSX Leopard で Terminal から TwitterにPOSTする

TwitterにPostするために専用クライアントへ切り替えるのが面倒になってきたため、投稿用に書いた。文字化けを防ぐために、Encode::Guess使って判定してる。

#!/usr/bin/perl
 
use warnings;
use strict;
use Encode::Guess qw/shift-jis euc-jp 7bit-jis/;
use Net::Twitter;

my $twitter = Net::Twitter->new(
    username => 'username',
    password => 'password',
);

my $post = $ARGV[0];
my $decoder = Encode::Guess->guess($post);
ref($decoder) || die "Can't guess: $decoder";
$post = $decoder->decode($post);
$twitter->update($post);

名前をtwitterにして保存。これをPATHの通っているところに置いて、権限を変更しておく。

sudo cp twitter /usr/local/bin/twitter
sudo chmod 755 /usr/local/bin/twitter

最初の引数しか見ない状態になってるので、文章中に半角スペースを途中で挟むとそれ以降はポストされないから注意が必要。