Skip to main content

Is a django application that allows the translation of django templtes from the rendered html in the browser

Project description

Introduction

Inlinetrans is a django application that allows the translation of django templates from the rendered html in the browser. Once you have your templates internationalized with inlinetrans, you can click on the untranslated messages in their corresponding web pages to add their translations. This can be of great help for translators, as they will be able to translate the messages right in their intended context.

Features

  • A templatetag, inline_trans, intended as a replacement for django’s trans.

  • A management command, inline_makemessage, intended as a replacement for django’s makemessages.

  • A translation bar to show translatable messages, by default visible only to staff members.

To translate the messages in a web page rendered in your browser, you first find out, through the translation bar, which messages have already been translated (marked light green) and which ones lack translation (marked light red).

Then, you click on a marked message, and are prompted for its translation; on entering the text and clicking OK, the new translation is sent to the server and saved in the correct .po file.

Once you have translated all messages in a page, you can click on “apply changes” on the translation bar. This forces a restart on the server, and the reloading of the page with the translations applied.

Requirements

To use inlinetrans, you need:

  • Jquery-1.2.6

Using inlinetrans

Make sure media from inlinetrans is accessible in path:

{{ MEDIA_URL }}inlinetrans

You need to do a checkout of inlinetrans media on media path of your project or setting property externals on your media path.

svn checkout http://django-inlinetrans.googlecode.com/svn/trunk/inlinetrans/media inlinetrans

Make sure you load inlinetrans in all templates you want to internationalize, by adding the following code:

{% load inlinetrans %}

{% inlinetrans_media %}

Then, you can use:

{% inline_trans "translate this" %}

Instead of:

{% trans "translate this" %}

Inlinetrans adds html code to each translation, so make sure you don’t use inline_trans tags inside html attributes, such as this:

<a href="#" alt="{% inline_trans "translate this" %}"></a>

In these cases you have to use the regular trans tag.

Once your template is internationalized, you run the following command:

$ ./manage.py inline_makemessages

This extracts both inline_trans and trans messages from the templates, and incorporates them to the gettext catalogs, just as makemessages does for trans messages.

Afterwords, you can start your server, navigate to the rendered pages (as a staff member), and, as explained above, translate the messages through the web.

Detailed Documentation

Introduction

Inlinetrans is a django application that allows the translation of django templates from the rendered html in the browser. Once you have your templates internationalized with inlinetrans, you can click on the untranslated messages in their corresponding web pages to add their translations. This can be of great help for translators, as they will be able to translate the messages right in their intended context.

Features

  • A templatetag, inline_trans, intended as a replacement for django’s trans.

  • A management command, inline_makemessage, intended as a replacement for django’s makemessages.

  • A translation bar to show translatable messages, by default visible only to staff members.

To translate the messages in a web page rendered in your browser, you first find out, through the translation bar, which messages have already been translated (marked light green) and which ones lack translation (marked light red).

Then, you click on a marked message, and are prompted for its translation; on entering the text and clicking OK, the new translation is sent to the server and saved in the correct .po file.

Once you have translated all messages in a page, you can click on “apply changes” on the translation bar. This forces a restart on the server, and the reloading of the page with the translations applied.

Requirements

To use inlinetrans, you need:

  • Jquery-1.2.6

Using inlinetrans

Make sure media from inlinetrans is accessible in path:

{{ MEDIA_URL }}inlinetrans

You need to do a checkout of inlinetrans media on media path of your project or setting property externals on your media path.

svn checkout http://django-inlinetrans.googlecode.com/svn/trunk/inlinetrans/media inlinetrans

Make sure you load inlinetrans in all templates you want to internationalize, by adding the following code:

{% load inlinetrans %}

{% inlinetrans_media %}

Then, you can use:

{% inline_trans "translate this" %}

Instead of:

{% trans "translate this" %}

Inlinetrans adds html code to each translation, so make sure you don’t use inline_trans tags inside html attributes, such as this:

<a href="#" alt="{% inline_trans "translate this" %}"></a>

In these cases you have to use the regular trans tag.

Once your template is internationalized, you run the following command:

$ ./manage.py inline_makemessages

This extracts both inline_trans and trans messages from the templates, and incorporates them to the gettext catalogs, just as makemessages does for trans messages.

Afterwords, you can start your server, navigate to the rendered pages (as a staff member), and, as explained above, translate the messages through the web.

Contributors

“Antonio Pérez-Aranda Alcaide”, ant30 “Emilio Sánchez”, emilio.sanchez “Manuel Saelices”, lin

Change history

0.1 (2010-12-21)

  • Adapting to use a egg using basic_package skel

Download

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

django_inlinetrans-0.1dev_r28-py2.6.egg (55.7 kB view details)

Uploaded Source

File details

Details for the file django_inlinetrans-0.1dev_r28-py2.6.egg.

File metadata

File hashes

Hashes for django_inlinetrans-0.1dev_r28-py2.6.egg
Algorithm Hash digest
SHA256 2d7f2527addf1fa5cd42b324abc5e1aed52acb86386393680a80902b6b0ac4f5
MD5 4456732349b95d0e216a48e0b2c10c37
BLAKE2b-256 e1ee2b5df64eab75330e4dbbbb88aaf9d0ffdf87c9daf814d70505d01812f1c6

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page