How to review i18n changes

2011-03-09 Thread Vladimir Macek
Hi, does anyone use an easy way to review translation changes for his/her
language?

Consider the situation that you developed some i18n rules for your language
and want to check whether the changes done by team members or anyone else
still abide those. You certainly don't want to read all everytime you check.

I hoped Transifex offers some change history browsing but it does not seem
to be true.

Now when the stuff got scattered to many files, it's even harder.

Thanks,

-- 
\//\/\ : Vladimir Macek : http://macek.sandbox.cz : +420 608 978 164

-- 
You received this message because you are subscribed to the Google Groups 
"Django internationalization and localization" group.
To post to this group, send email to django-i18n@googlegroups.com.
To unsubscribe from this group, send email to 
django-i18n+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/django-i18n?hl=en.

<>

Re: How to review i18n changes

2011-03-09 Thread Vladimir Macek
On 9.3.2011 12:20, Dimitris Glezos wrote:
> On Wed, Mar 9, 2011 at 12:11 PM, Vladimir Macek  wrote:
>> Hi, does anyone use an easy way to review translation changes for his/her
>> language?
>>
>> Consider the situation that you developed some i18n rules for your language
>> and want to check whether the changes done by team members or anyone else
>> still abide those. You certainly don't want to read all everytime you check.
>>
>> I hoped Transifex offers some change history browsing but it does not seem
>> to be true.
> This has been mentioned in some meetings with the fellow Tx
> developers, ie. to store the history of a translation, and probably
> under development in a branch. The UI to interact with "Latest changes
> by your team" is still unclear though. Mockups/ideas are welcome!
>
> -d

My compliments to the devs, the site seems straighforward and easy to use,
hence it had to cost boatloads of work.

Some rough ideas for discussion:

Every msgid has a few distinct events. Every event can carry the following
information for later reference:

timestamp, resource name, language, event type, initiating user, msgid

Event types:

* added to resource (po file)
* changed, additional values to carry:
  o previous msgstr
  o new msgstr
* marked/unmarked as fuzzy, as error, as ... ?
* removed from resource
* (You may name more.)

UI:

   1. On the bottom of the page "Home?Projects??Teams?"
  or linked from there:

  The "when DESC" ordered static list of events, at least past 6
  months. There is a (global team) History section already.

   2. The same information in daily/weekly/monthly/off (personal setting)
  digest e-mail everyone could subscribe to. Would be nice if I could
  process the mail by UNIX text tools (tab delimited file attachment?).


Super comfort feature:

Anyone could immediately edit the suboptimal translation as soon as he/she
sees it in the log on the web. The "Edit" button could be shown with every
event whose:

* event_type = "changed" or "added to resource"

for "changed": new msgstr = current msgstr for that msgid (to avoid editing
old values)

Sorry for being so verbose. :)

-- 
\//\/\ : Vladimir Macek : http://macek.sandbox.cz : +420 608 978 164

-- 
You received this message because you are subscribed to the Google Groups 
"Django internationalization and localization" group.
To post to this group, send email to django-i18n@googlegroups.com.
To unsubscribe from this group, send email to 
django-i18n+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/django-i18n?hl=en.

<>

multilingual site

2011-07-28 Thread Vladimir Macek
Hi,

I maintain a Django 1.1 site that makes a strong us of django-multilingual
(URL: http://django-multilingual.googlecode.com/svn/trunk, Revision: 175)
to provide 6 lang variations for some textual fields. In object detail
admin page, there's a nice javascript feature to switch supported langs
(shown as tabs).

I'd like to upgrade the site to latest stable Django, but I'm afraid the
django-multilingual is not compatible. I found
http://readthedocs.org/docs/multilingual-ng/en/latest/ which even informs
about migration the database and code to it.

It looks like the code for it is here:
https://github.com/ojii/django-multilingual-ng

But there's a big warning so I hesitate.

What do you use for multilingual fields in your apps?

What's the best migration procedure from the old django-multilingual?

Thank you,

-- 
:  Vladimir Macek  :  http://macek.sandbox.cz  :  +420 608 978 164
:  UNIX && Dev || Training  :  Python, Django  :  GPG key 1F059424

-- 
You received this message because you are subscribed to the Google Groups 
"Django internationalization and localization" group.
To post to this group, send email to django-i18n@googlegroups.com.
To unsubscribe from this group, send email to 
django-i18n+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/django-i18n?hl=en.



Re: Russian plural forms are broken

2011-10-13 Thread Vladimir Macek
On 13.10.2011 15:49, Nikolay Zakharov wrote:
> Plural forms for (at least) Russian language are *still broken*. We're
> still patching django to handle it.
>
> All I need is a translation team membership to fix it by myself or an
> *active* language team member.
>
> 29.06.2011 20:29, Nikolay Zakharov пишет:
>> Hello, guys!
>>
>> It seems like plural forms for core translations in russian django.po
>> are messed up after transition to transifex. If there are someone from
>> russian translation team, please take it into consideration. I've
>> personally requested to join the team but it is better to shout about
>> the problem than to wait for confirmation.
>>
>> You can take "year", "month", "week" as an example, try to search it
>> on this page:
>> https://www.transifex.net/projects/p/django/resource/core/l/ru/view/.
>> There are 3 plural forms but second and third are equal.
>>

Hello, Николай,

would you mind sharing the Django patch discussion with us, preferably as
an URL to the Trac ticket so other languages people can consider to what
extent the problem pertains to their languages?

Thank you,

-- 
:  Vladimir Macek  :  http://macek.sandbox.cz  :  +420 608 978 164
:  UNIX && Dev || Training  :  Python, Django  :  GPG key 1F059424

-- 
You received this message because you are subscribed to the Google Groups 
"Django internationalization and localization" group.
To post to this group, send email to django-i18n@googlegroups.com.
To unsubscribe from this group, send email to 
django-i18n+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/django-i18n?hl=en.



Issues with the new naturaltime template tag

2011-11-25 Thread Vladimir Macek
Hello translators,

there's a new `naturaltime' template tag coming with the Django dev
version. It construct a phrase specifying how much ago/from-now the given
time is.
https://docs.djangoproject.com/en/dev/ref/contrib/humanize/#naturaltime

When the difference is more than one day, it calls timesince/timeuntil and
translates its result using "%(delta) ago"/"%(delta) from now" msgids.

In my Czech language the translation of these is rather dumb unless I have
a chance to translate words generated here by timesince/timeuntil differently.

The past form would sound like either "age %(delta)s" or "%(delta)s in the
past". For second form I don't know anything better than "%(delta) in the
future". Not pretty.

Do other languages have similar trouble? In case there is considerable
number of them, I think the code should be changed.

The best I can see now would be to pass i18n contexts like "naturaltime
past"/"naturaltime future" to timesince/timeuntil
OR
don't call timesince/timeuntil at all and reimplement their functionality
using msgids containing words "hours", "minutes" etc. together with "ago"
and "from now" -- just as naturaltime already does when the delta is within
one day (u'a second from now', u'%(count)s seconds from now'), which is
completely ok.

Thank you for responses,

-- 
:  Vladimir Macek  :  http://macek.sandbox.cz  :  +420 608 978 164
:  UNIX && Dev || Training  :  Python, Django  :  GPG key 1F059424


-- 
You received this message because you are subscribed to the Google Groups 
"Django internationalization and localization" group.
To post to this group, send email to django-i18n@googlegroups.com.
To unsubscribe from this group, send email to 
django-i18n+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/django-i18n?hl=en.



Re: Making verbose_name(_plural) more i18n-friendly (ticket #11688)

2011-11-28 Thread Vladimir Macek
On 28.11.2011 11:49, Ramiro Morales wrote:
> Any kind of feedback is welcome!

Wonderful! Thanks for making verbose_names's really plural friendly!

-- 
:  Vladimir Macek  :  http://macek.sandbox.cz  :  +420 608 978 164
:  UNIX && Dev || Training  :  Python, Django  :  GPG key 1F059424

-- 
You received this message because you are subscribed to the Google Groups 
"Django internationalization and localization" group.
To post to this group, send email to django-i18n@googlegroups.com.
To unsubscribe from this group, send email to 
django-i18n+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/django-i18n?hl=en.



Re: Issues with the new naturaltime template tag

2011-11-28 Thread Vladimir Macek
No, I didn't. How could it help me with my problem and may I ask you for
examples for my situation?

V.

On 27.11.2011 00:23, Lachlan Musicman wrote:
> Have you had a look through http://lictionary.in/ to look for prevelance?
>
> cheers
> L.
>
> On Sun, Nov 27, 2011 at 02:23, Sergiy Kuzmenko  wrote:
>> I agree. We are getting nested translations here which does not work equally
>> well in all languages. Translation strings have to be fully spelled.
>>
>> On Nov 25, 2011 7:25 PM, "Vladimir Macek"  wrote:
>>> Hello translators,
>>>
>>> there's a new `naturaltime' template tag coming with the Django dev
>>> version. It construct a phrase specifying how much ago/from-now the given
>>> time is.
>>> https://docs.djangoproject.com/en/dev/ref/contrib/humanize/#naturaltime
>>>
>>> When the difference is more than one day, it calls timesince/timeuntil and
>>> translates its result using "%(delta) ago"/"%(delta) from now" msgids.
>>>
>>> In my Czech language the translation of these is rather dumb unless I have
>>> a chance to translate words generated here by timesince/timeuntil
>>> differently.
>>>
>>> The past form would sound like either "age %(delta)s" or "%(delta)s in the
>>> past". For second form I don't know anything better than "%(delta) in the
>>> future". Not pretty.
>>>
>>> Do other languages have similar trouble? In case there is considerable
>>> number of them, I think the code should be changed.
>>>
>>> The best I can see now would be to pass i18n contexts like "naturaltime
>>> past"/"naturaltime future" to timesince/timeuntil
>>> OR
>>> don't call timesince/timeuntil at all and reimplement their functionality
>>> using msgids containing words "hours", "minutes" etc. together with "ago"
>>> and "from now" -- just as naturaltime already does when the delta is
>>> within
>>> one day (u'a second from now', u'%(count)s seconds from now'), which is
>>> completely ok.
>>>
>>> Thank you for responses,
>>>
>>> --
>>> :  Vladimir Macek  :  http://macek.sandbox.cz  :  +420 608 978 164
>>> :  UNIX && Dev || Training  :  Python, Django  :  GPG key 1F059424
>>>
>>>
>>> --
>>> You received this message because you are subscribed to the Google Groups
>>> "Django internationalization and localization" group.
>>> To post to this group, send email to django-i18n@googlegroups.com.
>>> To unsubscribe from this group, send email to
>>> django-i18n+unsubscr...@googlegroups.com.
>>> For more options, visit this group at
>>> http://groups.google.com/group/django-i18n?hl=en.
>>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "Django internationalization and localization" group.
>> To post to this group, send email to django-i18n@googlegroups.com.
>> To unsubscribe from this group, send email to
>> django-i18n+unsubscr...@googlegroups.com.
>> For more options, visit this group at
>> http://groups.google.com/group/django-i18n?hl=en.
>>


-- 
:  Vladimir Macek  :  http://macek.sandbox.cz  :  +420 608 978 164
:  UNIX && Dev || Training  :  Python, Django  :  GPG key 1F059424
: MOJE AKT. SKOLENI: http://macek.sandbox.cz/skoleni/aktualni.html

-- 
You received this message because you are subscribed to the Google Groups 
"Django internationalization and localization" group.
To post to this group, send email to django-i18n@googlegroups.com.
To unsubscribe from this group, send email to 
django-i18n+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/django-i18n?hl=en.



Language in subdomain while translating URL patterns

2011-12-12 Thread Vladimir Macek
Hello,

I noticed that upcoming Django 1.4
(https://docs.djangoproject.com/en/dev/releases/1.4/) supports Translating
URL patterns
(https://docs.djangoproject.com/en/dev/topics/i18n/translation/#url-internationalization).

I'm currently working on a project that needs this, but we considered doing
language switching through a subdomain (cs.domain.com/path) instead of the
path root (domain.com/cs/path).

The later looks like the only documented way. And from my not-so-deep
research, translating patterns appears to be tightly bound to path language
prefixes.

Is there a simple way (by adding some custom thin layer perhaps) to do
Translating URL patterns the Django 1.4 way using the language subdomains?

Thanks,

-- 
:  Vladimir Macek  :  http://macek.sandbox.cz  :  +420 608 978 164
:  UNIX && Dev || Training  :  Python, Django  :  GPG key 1F059424
: MOJE AKT. SKOLENI: http://macek.sandbox.cz/skoleni/aktualni.html

-- 
You received this message because you are subscribed to the Google Groups 
"Django internationalization and localization" group.
To post to this group, send email to django-i18n@googlegroups.com.
To unsubscribe from this group, send email to 
django-i18n+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/django-i18n?hl=en.



Bug in i18n?

2013-04-29 Thread Vladimir Macek
Hi,

Transifex offers me _three_times_ the _same_ pluralized string to translate:

one: 1 comment was successfully %(action)s.
other: %(count)s comments were successfully %(action)s.

Details show locations:
admin.py:55
admin.py:61
admin.py:67

This string with "%(action)s" often has to have very unsmooth translation
to non-english.

At these locations there are much nicer, but different strings:

  def flag_comments(self, request, queryset):
  self._bulk_flag(request, queryset, perform_flag,
  ungettext_lazy('%d comment was successfully flagged',  
 '%d comments were successfully flagged'))
  flag_comments.short_description = _("Flag selected comments")

  def approve_comments(self, request, queryset):
  self._bulk_flag(request, queryset, perform_approve,
  ungettext_lazy('%d comment was successfully approved',  
 '%d comments were successfully approved'))
  approve_comments.short_description = _("Approve selected comments")

  def remove_comments(self, request, queryset):
  self._bulk_flag(request, queryset, perform_delete,
  ungettext_lazy('%d comment was successfully removed',  
 '%d comments were successfully removed'))
  remove_comments.short_description = _("Remove selected comments")

I wonder where this "%(action)s" stuff came from. It makes no sense on
Transifex.

BTW, the new Transifex online editor, while certainly designed with high
expectations, has terrible UX for me. I hope they will keep the old editor
around until they make the new one more usable.

-- 
:  Vladimir Macek  :  http://macek.sandbox.cz  :  +420 608 978 164
:  UNIX && Dev || Training  :  Python, Django  :  GPG key 1F059424

-- 
You received this message because you are subscribed to the Google Groups 
"Django internationalization and localization" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-i18n+unsubscr...@googlegroups.com.
To post to this group, send email to django-i18n@googlegroups.com.
Visit this group at http://groups.google.com/group/django-i18n?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.