January 2010


This is your captain speaking, Terminator has now landed!

Posted on Thursday, 21 January 2010

I managed to finish off what I thought were the last few missing keyboard shortcuts during my lunch break today, but then realised that I'd missed two, but I was so excited an short of time that I decided to just go ahead and land the branch anyway!
So there it is - trunk is now completely refactored and full of exciting new bugs. I noticed while I was working from it this afternoon that the transparency setting code wasn't working, but I expect I can get that cleared up tonight :)

Now a bunch of bug fixing and a config converter and we can release!
Thanks to everyone who has been testing so far.


Final approach for Terminator epic-refactor

I'm done hacking on the Terminator epic-refactor branch for the evening and the following has been achieved today (in chronological order):

  • Fix a bug in handling URLs dropped on the window

  • Implement directional navigation

  • Implement geometry hinting

  • Fix a bug in group emitting that cause "Broadcast off" and "Broadcast to all" to become inverted

  • Implement WM_URGENT bell handler

I'm really happy with how this is going. All that is left to have feature parity with trunk, I think, is some keyboard shortcut handlers.

I'd still love to get more testing results to make sure I haven't missed anything, but at this rate I'm expecting to be able to land the epic-refactor branch on trunk this weekend, after five and a half months.

Then I'm going to write a tool to convert old config files and we can think about putting out a 0.90 beta release. Exciting stuff!


Terminator 0.90 progress

Posted on Tuesday, 19 January 2010

Further to my previous post I thought I'd post a quick update about how things are progressing. I mentioned in my previous post that I knew of several things that were not yet working in the Epic Refactor branch:

  • -e and -x command line options

  • all forms of drag & drop

  • directional navigation

  • some keyboard shortcuts

I'm pleased to say that the first two of these are now taken care of, but the latter two are still to be done. I'm less pleased to say that I haven't had much external feedback about this branch yet, but I suspect that most people who might be interested probably don't read my blog ;)

So if you know people who like Terminator and enjoy testing things out, all they need to do is:
bzr branch lp:~cmsj/terminator/epic-refactor
cd epic-refactor

and give some feedback!


Testing Terminator 0.90

Posted on Tuesday, 5 January 2010

You might have seen my recent posts about the epic refactoring that has been going on in the Terminator codebase for the last few months.

I think it's finally time that we get some more eyeballs on it, mainly so I can check that I haven't massively screwed something up. I know there is lots of missing functionality right now, and probably a bunch of subtle bugs, but I could use your help quantifying exactly what these are!

If you're inclined to help, please branch lp:~cmsj/terminator/epic-refactor, cd into it and run ./terminator, then use it like you always would and file bugs, preferably indicating clearly in the bug that you're using this branch and not trunk (maybe tag the bug 'epicrefactor').

Things I know are broken right now:

  • -e and -x command line options

  • all forms of drag & drop

  • directional navigation

  • some keyboard shortcuts

Things I know are missing because they're not coming back:

  • Extreme tabs mode (sorry, it's just too insane to support)

  • GNOME Terminal profile reading (I'm trying to simplify our crazy config system and dropping GConf is a good way to achieve that)

  • Config file reading. At some point I'll write something that migrates old Terminator configs to the new format, but for now you'll have to live without your old config file. The new one isn't documented yet either, but it is a whole bunch better!

Now would also be a great time to start writing plugins for Terminator and telling me about them. I'm happy to ship good plugins, but more importantly I want feedback about the weaknesses/strengths of our plugin system. Right now you can only hook into URL mangling and the terminal context menu, but the latter of those gives you pretty serious flexibility I think. Obviously one massive weakness is a lack of documentation about the plugin API, but I'll get to that, I promise!

So there we have it, another step along the way to me being able to merge this branch into trunk and put out a real release of 0.90 and then eventually 1.0!