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




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:
September 13th, 2008 at 8:40 am
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
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:
September 13th, 2008 at 8:45 am
Hi Roman,
I’ll be contacting you by email to get some more information to help debug this.
Reply
Roman Lagunov Reply:
September 13th, 2008 at 9:12 am
No problem with that.
Btw, I think that idea of command-line twitter API is really great.
Reply
John Goerzen Reply:
September 13th, 2008 at 9:36 am
I’ve posted 0.99.2 that I think will fix your problem.
Reply
Roman Lagunov Reply:
September 13th, 2008 at 9:37 am
Yes! Thanks. Now twidge display cyrillic post as it should.
Reply
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:
September 14th, 2008 at 8:03 am
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
I’m already using it! :)
http://twitter.com/dudektria
Reply
Schneider Reply:
January 11th, 2010 at 4:55 pm
Actually, I’m looking forward to create a ruby twitter client, strongly based on twidge. But it will have fewer funcionality :(
Reply
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
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:
September 2nd, 2010 at 9:57 am
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
Sorry for the previous comment, i would try the new twidge. Thank you.
Reply
test of cyrillic tweet from twidge fails (check it). twidge 1.0.2 under #!crunchbang 10 statler alpha 2.
Reply
tivasyk Reply:
September 21st, 2010 at 1:43 am
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:
September 21st, 2010 at 8:00 am
See http://github.com/jgoerzen/twidge/issues#issue/12 – I will try to look at it next week
Reply
I have a locale problem as well, system is running utf8, but tweeted scandinavian characters (æøåÆØÅ) are faulty.
Reply
Brian Emilius Reply:
January 4th, 2013 at 11:43 am
My bad, it was a locale problem on my own computer… There is nothing wrong with twidge :)
Reply