GNOMECAT. Let’s Strike again!

As you can see in my GNOMECAT commits I have been a couple or more months really inactive [emoji confused face] .

I have been too busy with my university exams and projects. I have become the secretary of GPUL (2012 GUADEC organizers), which is awesome but it takes an amazing amount of time. And, in addition, I have got employed by R (a galician ISP), which is also great but it takes another important amount of time too.

So that’s why I have not worked in GNOMECAT application during that time and I’m afraid that the situation isn’t gonna change in the next few months.

On the other hand, I have acquire a compromise with GNOME community when I started my GSoC internship. I should create an application to help GNOME translators and the application isn’t done. So I really want to finish GNOMECAT and I think that this summer would be a good time to do it. Providing that I find a mentor, I’m going to apply again for a Google Summer of Code.

The purpose of this GSoC is, obviously, finish the application. So in this post I’m going to sum up what’s is done and what I’m going to do this summer.

Continúe lendo GNOMECAT. Let’s Strike again!

GSoC Final Report

Before I start I would like to thank Gnome for this incredible experience, spending the entire summer working on FLOSS has being awesome :D. I would like to thank Gnome for sponsoring my travel to GUADEC and giving me the opportunity of meeting so nice people. Last but not least, I’d like to thank Google for creating this great program.

I have spend this summer writing a new translation tool that should substitute GTranslator. When I started to develop the idea one of the things that people said was that I would not be able to finish the application when the summer ends. To be honest now I have to say that they were right. I had to face some totally new technologies that were not or really bad documented in most cases. So I have to say that the application is not finished and it’s not ready to use. I will continue working on it the followings months because I consider it as a personal project I want to see finished.

On the last report I tell you that I was going to be working on preferences panel, I have create a preferences dialog with two tabs and I have implement profiles. In a near future this dialog is going to have a couple of more tabs, one for extensions and another for general application preferences.

In this video I show you the current aspect of the application and how some features that I have implemented are working.

Po files, projects, navigation and other stuff I have been doing

Last weeks I have being trying push up my project in order to make it useful. It means to accept real files and not ad-hoc DemoFiles. I have being trying to implemented bindings for the gettext-po library and I get something that works but that eats memory as a hungry monster :-(. I have being trying to figure out what was wrong but I have fail so I decided to continue with other features.

During this time I have implement drag and drop tabs and I have implemented navigators that allow the user move around the translated/untranslated/fuzzy messages. In addition I have created implemented dialogs for opening files and projects (directories) and I have modify the implementation of the advanced search dialog to use response codes.

Other thing I have being trying to do is to maintain the same coding style for every file. I have try to leave a blank space between function names and function parameter list, a white space after each comma among other things.

I’m trying to complete every detail before starting to implement plugin engine so I’m working hard implementing the remaining details. My plannings for next weeks are implementing preferences window with gsettings and view menu. I probably will rewrite some part of the search and navigation mechanism to make it simpler.

PS: I have been helping Sindhu to write some sections of a really nice guide for beginners. Check it out!

GSoC application status report

This last weeks I have been polishing some details of the application but I have not added any major feature.

I attend a really nice talk about building Gtk applications during GUADEC and I have been including some aspects that I learn there. I have create a class application and I have substitute Window by ApplicationWindow. In addition I didn’t know the SearchBar widget so I replace my ad-hoc widget by the “standard” one.

I have a really nice talk with Ignacio Casal (thank you man!) through IRC and he gives me really nice advises that I have been implementing. I have added autotools support to the project, I have implemented the HeaderBar and Notebook inside the window template and not as part of different templates and I have remove some comments that I wrote when I started the project and that make the code dirtier.

In addition I have removed the StatusBar and I have included a progressbar on the HeaderBar title that shows the name and status of the current file. That last idea comes from a conversation with yoseforb through IRC (Great idea!).

The next video show the current aspect of the the tool. Due to some unknown reason the button icons aren’t being shown since the last JHBuild update I have made :(.

You can follow the project status and you can try (and even review) the code using the GitHub repository.

Moreover I’m still waiting for your opinion about the program name. The only person that has give his opinion was Daniel so “GNOME Translation Tool” is winning at the moment.

Searching…

This last week I have been working on implementing search module on the new program. To do this I create iterators for messages inside files and for message marks inside messages. A message mark contains a reference to a substring on a message and it stores the information that it’s needed for highlight certain part of the message.

I have modify my code deleting my string filters that added Pango Markup and I change that for TextMarks that works better with a GtkTextView.

In the next video you can watch how a simple search looks in the new application.

If you have any suggestion about the video or the project in general please leave a comment, write me and email or contact me during GUADEC.

On the other hand this days I will be on GUADEC!! I’m really grateful to Gnome Foundation that sponsor my travel and accommodation for this really interesting conference and allows me to be here. If you want to see me and talk to me about this project or you want to see what I have make working you can find me on some of the talks where I’m volunteering as session chair.

PS: People from Gnome has asked me to change the name of the application because it should be Gnome branded. I need your opinion, what name do you like more, Gnome Translator or Gnome CAT?

ValaCAT. Some design aspects (Part 2).

This is the second article I have write about some design aspects about ValaCAT application, the first one is here. I have started to write some code and you can see it in my GitHub repository.

These are some details I’m including into the new application. I’m really a newbie in most of this aspects so any kind of feedback is welcome.
Continúe lendo ValaCAT. Some design aspects (Part 2).

ValaCAT. Some design aspects

Continuing with my series of articles about my participation on Google Summer of Code this time I’ll talk a little about some design aspects of the new application so if you are interested you can criticizer me :D.

Firtly I wanna say that I have found a name for the new tool which I think is pretty cool and it sums up some aspects of the application: ValaCAT, where CAT stands for “Computer Assisted Translation” and Vala (obviously) is the name of the programming language.

I have been working on a design for this new application taking as reference the old Gtranslator design since the last week and here are some aspects that I would like to comment:

Continúe lendo ValaCAT. Some design aspects

Starting the GSoC Project!!

On the 27th of May afternoon I received a really exciting email that told me that I was accepted to participate in this year Google Summer of Code 😀

Congratulations! Your proposal “Redesign and port Gtranslator to Vala” submitted to “GNOME” has been accepted for Google Summer of Code 2013. Over the next few days, we will add you to the private Google Summer of Code Student Discussion List.

First I want to say thank you to all people who help me while I was creating my proposal. I’m sure that this summer I can create a really good tool!!

As a first phase of the project, I have been sending emails to some localization mailing list, among others:

  • Galician Gnome L10N Team (url)
  • Proxecto Trasno
  • Spanish Gnome L10N Team (url)
  • International Gnome L10N (url)
  • OpenSuse L10N Team
  • OpenOffice L10N Team
  • Fedora Translation Team

I want to say thank you also to the people from this mailing list that collaborate with the project. As a result of this emails I have receive a huge number of ideas that I can sum up here: Continúe lendo Starting the GSoC Project!!

GSoC Gtranslator Redesign proposal

I have finished my GSoC proposal. I post it here so everybody can read it. GSoC Image
If somebody finds some spell mistake or you have any thoughts about it feel free to leave a comment. As you can understand I prefer to correct my mistakes before summit the proposal to the Google Melange system.

My project consists on redesigning Gtranslator the official GNOME application for translating.  The idea is make the design more extensible and write the implementation in Vala, a much more readable language than GObject. Here is my proposal:

Continúe lendo GSoC Gtranslator Redesign proposal

Re-writing/designing Gtranslator. Developing Plan

I’ve been working on a proposal for Google Summer of Code for the last three weeks. It consists on the rewriting of Gtranslator using Vala programming language. Gtranslator is the official Gnome .po file translation tool.

In spite of being the official application it’s quite buggy and it has an important lack of features if we compare it with other existent applications. In my opinion a rewriting in Vala, a much more friendly language than C with GObject, can help to increase the number of developers interested in the project.

The project mentor, Nicolás Satragno, has told me that defining a developing plan will be a great idea as a contribution to the project previous to the proposal submit. I have made this draft:

Continúe lendo Re-writing/designing Gtranslator. Developing Plan