Re: [dev] merp is a loneliness mitigation device written in python and Tk

From: Joseph Xu <>
Date: Tue, 13 Jul 2010 09:09:31 -0400

On Mon, Jul 12, 2010 at 1:46 PM, Ethan Grammatikidis
<> wrote:
> On 12 Jul 2010, at 13:50, Ethan Grammatikidis wrote:
>> On 12 Jul 2010, at 03:33, Joseph Xu wrote:
>>> Hi:
>>> I switched my main computer to Windows XP a while ago to play some games,
>>> and was frustrated with the lack of simple usable IRC clients (among other
>>> applications). So I decided to write my own. Since I didn't want to mess
>>> with Visual Studio and complicated GUI toolkits, I decided to write it in
>>> python using the standard Tkinter library. The result is merp: a simple,
>>> cross-platform, graphical,
>>> options-dialogs-toolbars-icons-click-okay-to-continue-free irc client. The
>>> source is just under 700 lines and poorly written, as it was only meant to
>>> be a prototype. I was hoping to get some feedback on the interface design,
>>> so if anyone has a few moments to spare, your testing experience would be
>>> much appreciated.
>>> You can download the current source at
>>> You'll need python 2.6 to run it. It should work in both windows and
>>> linux, and probably anything else that runs python. Please look at the
>>> readme.txt file, as otherwise merp might be a little confusing to use at
>>> first.
>> It works on OS X too, except middle and right buttons are swapped. I'm not
>> asking for it to be fixed, just surprised Tk doesn't make it consistent
>> across platforms. Scrollbar down arrow is also hidden by the window resize
>> handle. *shrug*
>> I may keep using it, I IRC from an old laptop now & Colloquy's a bit too
>> memory-hungry, surprisingly. Also, search actually works in merp.. :D I'll
>> miss Colloquy's logging and automatic nickserv management, but I should
>> really be using a bouncer anyway.
>> I'm not sure what I think of the interface yet. Oh; one possible bug I
>> keep forgetting: when I tried to connect to freenode the cursor wouldn't go
>> to the bottom line. I have no idea if my join request was sent and freenode
>> ignored it or if it wasn't sent. Speaking of freenode, how do you respond to
>> a version request? I think freenode ignores everything until you respond.
>> Another thing which could be worked around by using a bouncer. hmm.
> Another bug: it needs to word wrap. (i.e. not break words at the ends of
> lines.)
> I'm thinking of making something in awk to handle nickserv etc, maybe
> version requests too. Still thinking it over.

Hi Ethan:

Thanks for checking out the software. Sounds like Tk is not as
cross-platform as it claims. I don't have access to a mac right now,
but I'll look into it in a few days. For nickserv, the only way I
interact with it is identifying myself, and I do that by passing a
"PRIVMSG nickserv :identify pass" argument to the end of the command
line. As for the version, unfortunately I didn't do anything with CTCP
yet, but I'll get around to it very soon. However, I can use freenode
just fine, it doesn't seem to care that I don't respond to its version

It'd be interesting to figure out a good way to integrate unix
commands. Alternatively, maybe merp can be made to just read stdin and
write to stdout instead of connecting using its own tcp socket. That
way filters and loggers can just be inserted before.

Received on Tue Jul 13 2010 - 15:09:31 CEST

This archive was generated by hypermail 2.2.0 : Tue Jul 13 2010 - 15:12:02 CEST