Polyglot 1.4.0

Polyglot version 1.4.0 is out!

gem install jekyll-polyglot

static unrelativized href

This release provides a new liquid block tag ` {% static_href %}href=”…”{% endstatic_href %} ` which can be used to create href attributes in anchor tags that are not relativized by Polyglot.

Jekyll-Polyglot is fairly greedy and naive in it’s relativization, and so if you want a url that is explicitly static (such as for making a language switcher, hint hint), this liquid tag will help you construct that unmangled href=”…” tag in anchor elements.

Exclusive site language generation

Polyglot 1.4.0 adds support for lang-exclusive: [ ] frontmatter in documents. If added to a document, this frontmatter will limit generation of the document to that specific language.

---
lang-exclusive: ['en']
---

This is a way to control which languages may see a document, even if that document may not have an equivalent in the default language site.

Renaming a few liquid tags

The {% static_href %} tag is also available as {% Static_Href %} , and the existing {% I18n_Headers %} tag now can be called as {% i18n_headers %}

I am looking for any volunteers that would like to see the Jekyll-Polyglot homepage represented in your language of origin! If you find this software helpful and want to see your language represented, just reach out on the github issues.

Polyglot 1.3.3

Polyglot version 1.3.3 is out! It includes a minor fix for when running jekyll serve --incremental with polyglot installed on a fresh build.

gem install jekyll-polyglot

This release was made possible with the support of the following github user!

Polyglot 1.3.2

Polyglot version 1.3.2 has been released! Give it a try!

gem install jekyll-polyglot

This release was made possible with the support of the following github user

lang_from_path setting to derive document lang from relative path

This release adds a new boolean configuration setting lang_from_path. When set to true, this option tells polyglot to derive the base language from a matching subpath if the lang frontmatter is not set. This setting works well in conjunction with other translation maintenance tools such as po4a.

relative and absolute url relativization improved logic

excluded_from_localization files will have trailing slashes added to their paths if they are directories. In addition, these files will be matched differently in the relativize and absolute url regex matchers. This will improve the accuracy of url relativization based on user feedback.

Polyglot 1.3.0

A new version of Polyglot has been released! Give it a try!

gem install jekyll-polyglot

This release was made possible with the support of the following github users:

Recursively merge language specific site.data

Language specific content defined in your site.data directory will now be recursively merged together, so that active_lang content gets precedence over default_lang content, gets precedence over language non-specific content. (#59)

Still build unassigned files to the default_lang site root

If the default_lang is not defined in the languages, this ensures that language unassigned files (such as those excluded from localization) are still written out to the site root. (#65)

Performance improvements and fixes for i18n_headers tag

Document processing is now faster, and fixes were made to the i18n_headers for when the site.url is defined. (#67)

Custom keys for active_lang site payload

This allows custom keys to be defined with the active_lang, giving interoperability between polyglot and other plugins and themes. (#68)

Polyglot 1.2.4

A new version of Polyglot has been released! Give it a try!

gem install jekyll-polyglot

This release was made possible due to the kind support of github user vlsi, who helped fix a few bugs and added new features:

Support translation of absolute URLs

Polyglot will now translate your site.url, so absolute urls will now get translated as well.

Translation of all Jekyll Collections

Jekyll collections are a fairly new feature. This update translates all registered collections, not just site posts and pages.

Use language-specific _data for site.data rich text when site.data[:lang] is present

Top level rich text organized by language will be assigned to the site.data when building. Before, when rendering rich text, you would have to use:

{{ site.data[site.active_lang].richTextString }}

Now rich text can be rendered with just:

{{ site.data.richTextString }}

The I18n_Headers tag now defaults to site.url when left blank

Users can now use

{% I18n_Headers %}

without specifying a url, defaulting it to your site.url