20110909

(a) Labels in .dtl files didn’t get translated

The following subtile i18n problem was due to a nice little bug:

  1. Reitertitel “Contracts” (“Verträge”) im Detail Person ist noch nicht übersetzt.

To have the labels in .dtl files translated, we must write dummy message files for them. This is done by running make makedocs before running ´make mm` in the root of Lino source repository.

But lino.utils.config.Configured.make_dummy_messages_file() somehow decided to not write the .dtl.py file, thinking it were in a local directory.

That behaviour is basically correct since making dummy messages in a local directory makes no sense (make makedocs is to be used only by application developers).

The bug was that in this special case, lino.Lino.project_dir and lino.Lino.source_dir are the same. The lino/apps/xxx/config dirs were loaded twice during lino.utils.config import, one “local” version and one “source” version.

(b) Showing the MTI child

Cool: the label of a lino.utils.mti.EnableChild field contains a “show” link, which wasn’t implemented so far. Now it is: clicking on it will open the Detail window of that child.

The implementation uses a global JS variable ´Lino.current_window`. Not sure how this behaves in special circumstances…