Vara lat?
• ugettext_lazy för model.py
• När textvärdet hämtas
• ugettext för resten
• När funktionen anropas
ungettext och
ungettext_lazy
from django.utils.translation import ungettext
def hello_world(request, count):
page = ungettext('there is %(count)d object', 'there are %(count)d objects', count) % {
'count': count,
}
return HttpResponse(page)
1.b templatekod
{% load i18n %}
...
<h1>{% trans “Kanelbulle” %}</h1>
<p>{% blocktrans %}Hej, tomtegubbar slå i
glasen, \\n
och låt oss lustiga vara.
{% endblocktrans %}</p>
1.b templatekod
<h1>{% trans “Kanelbulle” %}</h1>
<h1>{% trans “Kanelbulle” noop %}</h1>
1.b templatekod
<p>{% blocktrans with publ_date|date as
local_date %}
Idag är det {{local_date}}. Mac rular fett.
{% endblocktrans%}</p>
1.b templatekod
<p>{% blocktrans with publ_date|date as
local_date and spam as skinka%}
Idag är det den {{local_date}}. Mac rular fett.
{{skinka}}, {{skinka}}, {{skinka}}
{% endblocktrans%}</p>
1.b templatekod
{% blocktrans count list|length as counter %}
There is only one {{ name }} object.
{% plural %}
There are {{ counter }} {{ name }} objects.
{% endblocktrans %}
2. Extrahera texten
cd /path/to/myproject
(cd /path/to/myapp)
django-admin.py makemessages -l sv
django-admin.py makemessages -l en
django-admin.py makemessages -l de
Vilket språk?
1. Nyckeln django_language i user session
2. Cookie django_language
3. Accept-Language HTTP header
4. LANGUAGE_CODE i settings.py
Vilket språk? (2)
ugettext = lambda s: s
LANGUAGES = (
('sv', ugettext('Swedish')),
('en', ugettext('English')),
)
Vad har jag missat?
• olika sajter för olika länder
!
M
• string_concat
F
• @allow_lazy
T
R
• set_language redirect view
• översättning av javascript
• Windows
Nu den svåra biten . . .
ga
lli
pi
Nu den svåra biten . . .
Tänk på sammanhanget!
Kom ihåg denna bild!
Vad fan menar han?
Tillbaka till Google
Docs
Men vad ser
översättaren?
New
Upload
All items
Owned by me
Opened by me
Starred
Hidden
Trash
Men vad ser
översättaren?
New Ny/Nytt/Nya/Färsk/Färska?
Upload Ladda upp/Uppladdning?
All items Alla saker/punkter/nummer
Owned by me Ägd/ägda av mig
Opened by me Öppnad/öppnade av mig
Starred Stjärnad? Framträdde?
Hidden Gömd/Gömda
Trash Smörja/struntprat/slödder
Lösning? Ge tips!
New [document]
Upload [a document]
All items [ie documents]
[documents] Owned by me
[documents] Opened by me
Starred [documents]
Hidden [documents]
Trash [trashcan]
Datum, typografi, mm
• Idag är det 2009-04-20. Känner ni till
“Django”?
• Today is 20/04/09. Do you know “Django”?
• Today is 04/20/09. Do you know “Django”?
Datum, typografi, mm
• Heute ist 20.04.09. Kennt ihr „Django”?
• Σήμερα είναι 20.04.09. Γνωρίζετε το
«Django»;
•
Datum, typografi, mm
{% blocktrans with publ_date.year as year and
publ_date.month as month and publ_date.day as day
%}
Idag är det {{year}}-{{month}}-{{day}}.
{% endblocktrans %}
Skrivriktning?
Sammanfattning
• Tänk på sammanhanget
• Tänk på typografin
• Olika sätt att skriva datum
• Olika längd på texten
• Skrivriktning
Presentation om hur man förbereder ett djangoproje more
Presentation om hur man förbereder ett djangoprojekt för översättning, hur man designar projektet för att underlätta för översättaren, hur man översätter med poEdit och hur översättning av ett djangoprogram fungerar. less
0 comments
Post a comment