Gtranslator: Present and Future



WARNING: Long email.

I've been speaking with Ignacio quite a bit recently on IRC (in #i18n on GimpNet) and in our discussions we've come up with a number of things that should be addressed. I'd like to get the ball rolling and as such I intend this email to be a very general discussion of where things are at now and where they're going. (I will stick to talking about the GOBJECT_WORK branch as that's what I've been working on.)

It was mentioned earlier today that Pablo had commented on lack of communication. As such, I think I'll make it my first priority to address what I've been doing and what my immediate plans are. (I know I'm not really a dev for gtranslator but I'd like to continue contributing.) Largely my focus has been making improvements to functionality that I feel is necessary to my own translation work and making gtranslator fit in with the GNOME desktop better. To this end, I've been cleaning up strings and trying to bring the interface together a little better. For the next little bit, I intend on continuing this sort of cleanup work. Following is a list of things I plan on doing and some notes, in no particular order:

* Put some sort of distinguishing string in the tabs so that translators can tell open files apart. Currently, I'm thinking that the contents of Project-Id-Version in the PO header is a good way to go. Filenames are too ambiguous. Every file I work on is going to be named ga.po so having five tabs that all say that won't be helpful. Project-Id-Version will give at least a semi-unique name to each open file.

* Change around the visual cue for translated/untranslated/fuzzy messages. The current text coloring is next to impossible to read and, for my part, I find that it isn't visually striking enough to quickly distinguish between an untranslated and a fuzzy message while scrolling through the message table. I've had a few thoughts on this but I'm unsure of the direction I'd like to go in. One thought was changing the background colors of individual rows. Themes could be respected by using symbolic colors, though I haven't quite figured out how to do this. Another problem is that I can't figure out how to change the background color of a full row. It's possible to do it with individual cells but this leaves unattractive gaps and doesn't respect the rules_hint. Another idea I've tossed around is some sort of icon for each status, but we'd have to figure out how to respect themes and how to make them visually striking enough. Then we'd have to get someone to create the images for us. We could probably ask the Tango guys to do this at some point if we decided to go this way.

* Preferences could probably do with a bit of attention. We should look at key names, contents and location and clean up where things are stored in GConf. Additionally, we should take stock of which preferences we really need and see if anything is missing right now. I plan on getting header related things working shortly unless someone else is working on this right now. One thing I'd like to address right now is the necessity of specifying the number of plurals. I think we should obtain this programmatically from the Plural-Forms string. Additionally, I'd like to see the Plural-Forms string parsed out so that we can give the user a hint as to which plural form he's currently translating for. (Irish has a large number of plural forms and I can't always remember which corresponds to what. poedit does a nice thing here.) gettext provides no external API for this, it seems, and their internal stuff appears to handle things with bison. What do others think about this?

* The Page Up and Page Down key bindings for next and previous messages interferes with normal behavior of those keys on the message table. I accidentally made a commit that killed those bindings (I removed them locally) so I think this is a good time to bring this up. Web browsers and various other applications make use of Alt+Left and Alt+Right to navigate between pages. This seems most intuitive to me but I'd like to see what others think about this.

The other thing I'd like to see discussed is plans for release. As Nacho brought up previously, it seems like a good time to merge GOBJECT_WORK into trunk. Are there any plans to do anything more than maintenance and bugfix releases from trunk? If not, work on current stable could be done out of a branch and work on the next major version could be done in trunk. Beyond that, what is still missing from GOBJECT_WORK before an alpha can be released? We should take stock of what features are necessary and what needs to be done. We should comment out all unnecessary, unimplemented features in the UI and try to bring together something we can release for people to use. My personal list:

* We need to track when a file has been modified and take appropriate action. * PO headers should be properly written on save. This includes the PO revision date, as this isn't currently set when we save.
      * GConf keys need to be cleaned up and an up-to-date schema written.
* We should try to get our hands on a new icon. The current one doesn't scale well and doesn't seem to indicate "translation tool" to me. I see that someone made a Tango-styled one some time ago but it has the same metaphor as the current one and I'm not sure I like the all-purple color scheme. We could probably ask the Tango guys for a new icon.

That's about all I can think of for the time being. I apologize for the exceedingly long email and I thank anyone with the patience to read and respond to it. A lot of good work is going into gtranslator, for which I thank you guys. I hope my own contributions have been useful and that I haven't stepped on anyone's toes.


Seán de Búrca


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]