← Back to team overview

ubuntu-tour team mailing list archive

Programming update

 

Hi all.

Just a quick email about the programming side. I think most of it is done,
however, there are a few things.


   1. Language system. We are testing a new dialects system. This means that
   you need only write 1 tour for each language, then the dialect system will
   automatically translate it. Basically this means that the dialect languages
   shouldn't be needed. Please download the *new-lang-system* branch and
   test it out.When writing tours please using the main dialect, for english,
   please use en_GB. There are several reasons for this.

   1) Less likely to corrupt tags, <font color="red">Change colour</font>
   would translate to <font color="red">Change color</font> with english as the
   base lang. <font color="red">Change color</font> would translate to <font
   *colour*="red">Change colour</font> with american english as the base
   lang. (Although i think I have got regex to minize the chance of this
   happening it's still possible.

   2) English english is more complex. For example, depending on the context
   it may be programme or program, whereas afaik in American it's always
   program. Translating from American the script would have no idea which it
   was meant to be.

   If these are the case in other languages, Austrian German -> German to
   German is easier than the reverse, then decide between the translators of
   that language which you want to use as the base, it really, doesn't matter,
   provided there is a file de_DE in the dialects folder with all the
   translations from de to de_DE. Basically if you us language ab_CD it will
   load the tour in language ab and apply the translations in the ab_CD file.
   If this file doesn't exist it will simply not apply any dialects, which may
   be fine. If you decide you want to use en_US as your base than that is
   probably fine too, but it may cause some unexpected results.

   2. Bugs. If you see anything wrong with the programming, please post them
   here: https://bugs.launchpad.net/~ubuntu-tour. No matter how trivial they
   seam, posting on the bug tracker is the easiest way for us to manage them.
   Programmers, if you see a bug, which is no assigned to anyone, feel free to
   assign it to yourself and fix it.

   3. We have a system which allows you to regulate tour progression. This
   has been available for a while but it not being used, most likely because it
   is not appropriate but also I don't know if it is know about. Here is an
   example that you could put in the firefox file
   <!-- "Requirements"
   cancontinue = ("firefox-bin" in os.popen("ps aux | grep firefox").read())
   elsemessage = ["Firefox is not running.", "We recommend you to start it
   before continuing."]
   justwarning = True
   "Requirements" -->

   *cancontinue* should be a boolean. This can, like the above but generated
   in python, the above will see if firefox is running or not.
   *elsemessage* is the message which should be shown if the condition above
   is not met, if you don't set a value for elsewarning it will default
   to ["Progression Warning", "We recommend you run the relevant program before
   continuing."]
   *justwarning* should also be a boolean, if True, then the tour will
   progress if cancontinue fails, it will show the warning but carry on. If
   false the tour will not allow you to move on at all until the condition is
   met. By default this is True.

   4. Additional features. If you want anything else adding to the
   programming back-end, just ask on the IRC, if there are any developers
   around or message the mailing list. If you want to be able to do something
   then just ask. Some of the features available are demoed in "Continue
   Playing -> Build tests". In addition you should be able to make use of
   HTML5, javascript and jquery.

   5. Start page. I think we need a start page, so when the tour first
   starts, the user gets a nice friendly page. Also the parents for each of the
   tours, Internet, Office, Multimedia ect should also have pages. These should
   be single pages though, not tours. Discuss.

I think I promised you a short email, sorry about that.

Regards

Anthony

tl;dr -> We now have a dialect system, each dialect doesn't need it's own
tour. Please report bugs in the bug tracker. We have progression
requirements, we have had for a while, please feel free to use them. If you
want more features, please ask. I think we need a start page and a page for
each of the sections.

Follow ups