Re: pgAdmin4 Chinese (Simplified) translation Patch

From: Khushboo Vashi <khushboo(dot)vashi(at)enterprisedb(dot)com>
To: lambda <googletoday009(at)163(dot)com>
Cc: Dave Page <dpage(at)pgadmin(dot)org>, pgadmin-hackers <pgadmin-hackers(at)postgresql(dot)org>, pgadmin-hackers-owner(at)postgresql(dot)org
Subject: Re: pgAdmin4 Chinese (Simplified) translation Patch
Date: 2016-11-16 04:40:44
Message-ID: CAFOhELeUY+nzuUUXNN-zi=Q1DDWiwBtyjgrmoK_hJ2cGqrBVkg@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgadmin-hackers

Hi Dave,

I have fixed the issue regarding the nodes are not translated. Please find
the attached patch for the same.

Issue: We were translating the nodes label while registering the module,
but at that time the translator does not get the context, so it returns the
null translation. Now I have put the translation function at the collection
property. So, whenever required, it will be translated.

Thanks,
Khushboo

On Mon, Nov 14, 2016 at 11:03 PM, lambda <googletoday009(at)163(dot)com> wrote:

>
> Hi,
> this is the new updated version,
> thank you!
> :)
>
>
>
>
>
> At 2016-11-14 23:41:21, "Dave Page" <dpage(at)pgadmin(dot)org> wrote:
> >Hi
> >
> >On Mon, Nov 14, 2016 at 3:22 PM, lambda <googletoday009(at)163(dot)com> wrote:
> >>
> >>
> >> with web/config.py add
> >>
> >> ```
> >> LANGUAGES = {
> >> 'zh_cn' : 'zh_CN',
> >> 'en' : 'English'
> >> }
> >> ```
> >> ok ?
> >
> >Hmm, I'm sure that failed yesterday - I remember debugging it! It's
> >working now though, so let's use zh_cn.
> >
> >BTW; the second field above is just a label, so I'd probably put
> >"Chinese (Simplified)" in there.
> >
> >Can you update your catalog with the latest changes please?
> >
> >> 在 2016-11-14 20:16:47,"Khushboo Vashi" <khushboo(dot)vashi(at)enterprisedb(dot)com> 写道:
> >>
> >>
> >>
> >> On Mon, Nov 14, 2016 at 5:37 PM, Dave Page <dpage(at)pgadmin(dot)org> wrote:
> >>>
> >>> Hi
> >>>
> >>> (Khushboo, please see below)
> >>>
> >>> On Sun, Nov 13, 2016 at 1:26 PM, lambda <googletoday009(at)163(dot)com> wrote:
> >>> > for the first question, pybabel support Chinese with zh_Hans_CN
> >>> >
> >>> > #pybabel --list-locales |grep zh
> >>> > b'zh Chinese'
> >>> > b'zh_Hans Chinese (Simplified)'
> >>> > b'zh_Hans_CN Chinese (Simplified, China)'
> >>> > b'zh_Hans_HK Chinese (Simplified, Hong Kong SAR China)'
> >>> > b'zh_Hans_MO Chinese (Simplified, Macau SAR China)'
> >>> > b'zh_Hans_SG Chinese (Simplified, Singapore)'
> >>> > b'zh_Hant Chinese (Traditional)'
> >>> > b'zh_Hant_HK Chinese (Traditional, Hong Kong SAR China)'
> >>> > b'zh_Hant_MO Chinese (Traditional, Macau SAR China)'
> >>> > b'zh_Hant_TW Chinese (Traditional, Taiwan)'
> >>>
> >>> Right, but if I try to match with 'zh-CN' (which is what Chrome offers
> >>> for Chinese Simplified), then I get:
> >>>
> >>> 2016-11-14 11:53:52,919: INFO werkzeug: 127.0.0.1 - - [14/Nov/2016
> >>> 11:53:52] "GET / HTTP/1.1" 500 -
> >>> Traceback (most recent call last):
> >>> File
> >>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
> >>> line 2000, in __call__
> >>> return self.wsgi_app(environ, start_response)
> >>> File
> >>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
> >>> line 1991, in wsgi_app
> >>> response = self.make_response(self.handle_exception(e))
> >>> File
> >>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
> >>> line 1567, in handle_exception
> >>> reraise(exc_type, exc_value, tb)
> >>> File
> >>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
> >>> line 1988, in wsgi_app
> >>> response = self.full_dispatch_request()
> >>> File
> >>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
> >>> line 1634, in full_dispatch_request
> >>> self.try_trigger_before_first_request_functions()
> >>> File
> >>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
> >>> line 1660, in try_trigger_before_first_request_functions
> >>> func()
> >>> File "/Users/dpage/git/pgadmin4/web/pgadmin/utils/__init__.py", line
> >>> 42, in create_module_preference
> >>> self.register_preferences()
> >>> File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/__init__.py",
> >>> line 192, in register_preferences
> >>> gettext("Show system objects?"), 'boolean', False,
> >>> File
> >>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask_babel/__init__.py",
> >>> line 539, in gettext
> >>> t = get_translations()
> >>> File
> >>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask_babel/__init__.py",
> >>> line 216, in get_translations
> >>> catalog = support.Translations.load(dirname, [get_locale()])
> >>> File
> >>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask_babel/__init__.py",
> >>> line 248, in get_locale
> >>> locale = Locale.parse(rv)
> >>> File
> >>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/babel/core.py",
> >>> line 270, in parse
> >>> parts = parse_locale(identifier, sep=sep)
> >>> File
> >>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/babel/core.py",
> >>> line 1096, in parse_locale
> >>> raise ValueError('expected only letters, got %r' % lang)
> >>> ValueError: expected only letters, got 'zh-cn'
> >>>
> >>> zh_Hans_CN isn't offered by the browser at all, so that doesn't work.
> >>>
> >>> Maybe the answer is to not use the browser's language negotiation at
> >>> all, but make it a configurable setting?
> >>>
> >>> > 2.for the compile error, it seems an bug in pybabel choose ignore
> >>> > it,
> >>> > it well ok.in my vim , line 7283 nearly it highlights '% u' in " 20%
> >>> > use"
> >>> > i do not known why both '%' and 'u' high here.
> >>> > in my laptop, although it make an error massage as you show, it
> >>> > generate the po file ok!
> >>> > now i update the 7283 line with '20% use' with '20%\
> >>> > use'
> >>> > it will compile without errror,
> >>> > attatchment is updated version.
> >>> > Thank you!
> >>>
> >>> In testing I found a couple of issues:
> >>>
> >>> 1) We weren't extracting strings from SQL templates for translation
> >>>
> >>> 2) Strings in some of the dashboards weren't marked for translation
> >>>
> >>> I've fixed those two issues and updated the template. Can you please
> >>> update your translation?
> >>>
> >>> Khushboo; I also noticed that the treeview collection labels aren't
> >>> getting translated. Can you look to see why please?
> >>>
> >>
> >> Sure. Will look into this.
> >>
> >>>
> >>> Thanks.
> >>>
> >>> --
> >>> Dave Page
> >>> Blog: http://pgsnake.blogspot.com
> >>> Twitter: @pgsnake
> >>>
> >>> EnterpriseDB UK: http://www.enterprisedb.com
> >>> The Enterprise PostgreSQL Company
> >>
> >>
> >>
> >>
> >>
> >
> >
> >
> >--
> >Dave Page
> >Blog: http://pgsnake.blogspot.com
> >Twitter: @pgsnake
> >
> >EnterpriseDB UK: http://www.enterprisedb.com
>
> >The Enterprise PostgreSQL Company
> >
> >
> >--
> >Sent via pgadmin-hackers mailing list (pgadmin-hackers(at)postgresql(dot)org)
> >To make changes to your subscription:
> >http://www.postgresql.org/mailpref/pgadmin-hackers
>
>
>
>
>

Attachment Content-Type Size
pgAdmin4_treeview_nodes_translation.patch text/x-patch 669 bytes

In response to

Responses

Browse pgadmin-hackers by date

  From Date Subject
Next Message Dave Page 2016-11-16 09:14:03 pgAdmin 4 commit: Fix upgrade check on Python 3. Fixes #1961
Previous Message Devrim Gündüz 2016-11-15 10:42:09 pgAdmin 4 1.1 RPMs released for RHEL 7, and Fedora 23, 24 and 25