New Twitter Client: Twidge

September 12th, 2008

I’ve lately been thinking about Twitter. I wanted some way to quickly post tweets from the command line. But I also wanted to be able to receive them in a non-intrusive way on all my machines. And I wanted to work with Twitter and Identi.ca both.

Nothing quite existed to do that, so I wrote Twidge.

Twidge is a command-line Twitter client. It can be run quite nicely interactively, with output piped through less. Or you can run it as a unidirectional or bidirectional mail gateway. Or you can use its parser-friendly output options to integrate it with shell scripts or other programs.

It’s got an 11-page manual (which is also its manpage). User-friendly in the best tradition of command line programs.

And it’s released today. The source packages include the debian/ directory for you to use for building them, but I’ve also posted an i386 binary that runs on etch and sid on my webpage, until it gets out of NEW.

See the homepage for more info.

Oh, it’s written in Haskell, by the way.

Categories: Programming

Tags: Leave a comment

Comments Feed20 Comments

  1. Mauro

    I’ve been using python-twitter [0][1] to post on twitter from the command line, so far it works fine (though i’ve seen some bug reports on the mailing list)
    Also comes with a small script to post to twitter and one to read the twits of the people on your following-list.

    BTW, i’ve been waiting for something similar but for identi.ca, now i can finally leave twitter and their greatest uptime ;)

    [0] http://code.google.com/p/python-twitter/
    [1] packages.debian.org/python-twitter

    Reply

    John Goerzen Reply:

    This project is somewhat similar to Python-twitter, but has some different goals. It’s designed to be a “command line API” to work well with shell scripts and programmers using any language. It’s also designed around config files and ability to switch to different APIs.

    On the other hand, it is not really designed to provide a language-specific API, Python or Haskell.

    So a different tool to scratch a different itch.

    Reply

  2. Roman Lagunov

    I’m running ubuntu with utf-8 locale.

    I try twidge and get strange output for cyrillic posts.

    See this [url=http://img-fotki.yandex.ru/get/3002/rlagunov.0/0_245a2_9f7d1a4b_L.jpg]screenshot[/url]

    Reply

    John Goerzen Reply:

    Hi Roman,

    I’ll be contacting you by email to get some more information to help debug this.

    Reply

    Roman Lagunov Reply:

    No problem with that.

    Btw, I think that idea of command-line twitter API is really great.

    Reply

    John Goerzen Reply:

    I’ve posted 0.99.2 that I think will fix your problem.

    Reply

    Roman Lagunov Reply:

    Yes! Thanks. Now twidge display cyrillic post as it should.

    Reply

  3. Neil Bartlett

    It doesn’t work for me because curl complains about the server certificate. It looks like Twitter’s SSL certificate is invalid… is there any way to pass the -k flag through to curl?

    Reply

    John Goerzen Reply:

    Weird. I haven’t seen that.

    Anyhow, there are a few things you could do.

    You could edit your ~/.twidgerc and make Twidge use non-SSL communication with Twitter. Just set urlbase = http://twitter.com.

    Or, you could add the line insecure to ~/.curlrc, though that will impact more than just Twidge.

    I’ll add a curlrc option to the Twidge config file so you can set your own options for Twidge only.

    Reply

  4. Schneider

    I’m already using it! :)
    http://twitter.com/dudektria

    Reply

    Schneider Reply:

    Actually, I’m looking forward to create a ruby twitter client, strongly based on twidge. But it will have fewer funcionality :(

    Reply

  5. allyn

    This is a great tool! I just wanted to post to Twitter without leaving the command line while working. This suits my needs perfectly! Thank you.

    Reply

  6. Ershad

    Twidge is no longer supporting twitter, is it because of the changed authorization method in twitter API? Could you please give support for OAuth in twidg ?

    Reply

    John Goerzen Reply:

    Not true. Twidge has supported OAuth since version 1.0.1, which was released back in June already. The current version is 1.0.5 and there are instructions on the FAQ page on the wiki of how to switch.

    Reply

  7. Ershad

    Sorry for the previous comment, i would try the new twidge. Thank you.

    Reply

  8. tivasyk

    test of cyrillic tweet from twidge fails (check it). twidge 1.0.2 under #!crunchbang 10 statler alpha 2.

    Reply

    tivasyk Reply:

    interesting… the problem only appears when updating with one-liner: twidge update ‘cyrillic message’…but not when twetting interactively:
    twidge update
    …and then typing the tweet =/

    Reply

    John Goerzen Reply:

    See http://github.com/jgoerzen/twidge/issues#issue/12 – I will try to look at it next week

    Reply

  9. Brian Emilius

    I have a locale problem as well, system is running utf8, but tweeted scandinavian characters (æøåÆØÅ) are faulty.

    Reply

    Brian Emilius Reply:

    My bad, it was a locale problem on my own computer… There is nothing wrong with twidge :)

    Reply

Leave a comment

 

Feed

http://changelog.complete.org / New Twitter Client: Twidge