First time here? Check out the FAQ!
1

Some strings don't appear in rosetta

The jinja2_makemessages command isn't picking up some strings -- they don't even appear in the .po file.

For example "Sort by »" on the main /questions/ page is picked up correctly, but all the "by activity", "by date" texts next to it are not.

I looked in the source at skins/default/templates/main_page/tab_bar.html:

    {{macros.reversible_sort_button(
            button_sort_criterium = 'activity',
            label = gettext('by activity'),
            asc_tooltip = gettext('click to see the least recently updated questions'),
            desc_tooltip = gettext('click to see the most recently updated questions'),
            current_sort_method = sort
        )
    }}

Why is the gettext directive ignored? And how to fix this?

piskvorky's avatar
350
piskvorky
asked 2011-12-11 10:52:03 -0600
edit flag offensive 0 remove flag close merge delete

Comments

Try downgrading Django to 1.2, maybe that will help. There is also known bug with extracting messages from javascript - supposedly fixed in the dev version, but they might have broken something else. I've noticed that some of the messages were lost - even in the English locale.

Evgeny's avatar Evgeny (2011-12-11 13:24:02 -0600) edit
add a comment see more comments

1 Answer

0

The error was entirely on my part and completely unrelated. Sorry for the noise.

The cause of this issue was pretty bizzare and I'll explain below for those interested, but TL;DR is there's nothing wrong with askbot or jinja2_makemessages. So the django version thing that Evgeny mentions must be unrelated.


Being new to django and rosetta, I completely missed the fact that you have to select a 3rd party catalogue for translation (top-right corner of the initial rosetta view, not visible in later views; defaults to "Project only").

The reason this sort of worked for us and we didn't notice anything for a long time was that because of django.staticfiles, most of the askbot strings were actually picked up for translation! managy.py collectstatic copied askbot templates to a local dir under project, where makemessages found them and presented them for translation in rosetta. So when we were thinking we're translating askbot, we were actually translating its (partially) cloned version in STATIC_DIR! Heh.

piskvorky's avatar
350
piskvorky
answered 2011-12-20 13:04:00 -0600
edit flag offensive 0 remove flag delete link

Comments

add a comment see more comments