Contents

A pkg_fr-FR.xml file

<?xmlversion="1.0"encoding="UTF-8"?><extensiontype="package"version="1.6"><name>French Language Pack</name><packagename>fr-FR</packagename> //the packagename has to be the same as the name of pkg_whatever.xml
<version>1.6</version><url></url><packager></packager><packagerurl></packagerurl><description>1.6 Joomla French Language Package</description><files><filetype="language"client="site"id="fr-FR">site_fr-FR.zip</file><filetype="language"client="administrator"id="fr-FR">admin_fr-FR.zip</file></files></extension>

One zip per client (i.e. site and admin)

site_fr-FR.zip

admin_fr-FR.zip

Content of the client's zip (example below is for admin)

an install.xml

<?xmlversion="1.0"encoding="utf-8"?><extensionversion="1.6"client="administrator"type="language"method="upgrade"> // change to client="site" if site pack
<name>French (Fr)</name><tag>fr-FR</tag><version>1.6</version><creationDate>2010-08-01</creationDate><author>French translation team : Joomla!fr</author><authorEmail>traduction@joomla.fr</authorEmail><authorUrl>www.joomla.fr</authorUrl><copyright>Copyright (C) 2005 - 2010 Joomla.fr et Open Source Matters. Tous droits réservés</copyright><license>GNU General Public License version 2 or later; see LICENSE.txt</license><description>French language pack for Joomla! 1.6</description><files><filename>index.html</filename><filename>fr-FR.com_admin.ini</filename><filename>fr-FR.com_admin.sys.ini</filename><filename> .....ini</filename>
[...]
<filename>fr-FR.lib_joomla.ini</filename> // Normally in administrator pack. !! If this is only a site pack then add in site !! Add in both if providing both packs together in one package
<filename>fr-FR.ini</filename><filenamefile="meta">fr-FR.xml</filename> // Note the file="meta" tag, telling it's the basic xml holding info about the pack. Note file="meta"
<filenamefile="meta">install.xml</filename> '''//Mandatory! This file lets uninstall a language.''' Note file="meta"
<filename>fr-FR.localise.php</filename> // normally in the site pack. If the language has only an admin pack, put in the admin pack. Add in both if providing both packs together in one package.
</files><mediadestination="fr-FR"> //if one needs to add a specific calendar
<filename>index.html</filename><filename>js/index.html</filename><filename>js/calendar-setup.js</filename><filename>js/calendar.js</filename></media></extension>

All the ini files

Beware of new formatting!

Double quotes in the value should be written as "_QQ_" or as &quot;

NEVER use an escaped quote \" as these will break in php 5.2.x

the fr-FR.xml

<?xmlversion="1.0"encoding="utf-8"?><metafileversion="1.6"client="administrator"method="upgrade"><tag>fr-FR</tag><name>French (FR)</name><description>French administrator language for Joomla 1.6</description><version>1.6</version><creationDate>2010-08-01</creationDate><author>French translation team : Joomla!fr</author><authorEmail>traduction@joomla.fr</authorEmail><authorUrl>www.joomla.fr</authorUrl><copyright>Copyright (C) 2005 - 2011 Open Source Matters &amp; Joomla.fr. All rights reserved.</copyright><license>GNU General Public License version 2 or later; see LICENSE.txt</license><metadata><name>French (FR)</name><tag>fr-FR</tag><rtl>0</rtl><locale>fr_FR.utf8, fr_FR.UTF-8, fr_FR.UTF-8@euro, French_Standard,french, fr_FR, fre_FR, fr</locale> //the locale is used to sort translated lists when present on the server.
<firstDay>1</firstDay> // used for the Calendar icon to specify what is the first day of the week in that language. 0 is Sunday, 1 is Monday, etc.
</metadata><params/></metafile>

the fr-FR.localise.php

(This is normally in the site pack. Add in admin pack if the pack does only provide admin language. Add in both when providing a full pack to cope with user deleting one of the packs)

Explanation of this file:

It replaces the fr-FR.ignore.php and it can be customized depending on languages.

Ignore search words.

Define upper and lower limit of search words length.

Define number of characters to display for the result of the search.

Define specific plural functionality for some languages where the value of the string can change depending on the count (Russian for example).

Define custom transliteration (i.e. when NOT using the Unicode URLS parameter in Global Configuration) to ensure proper change of some alphabets to ascii for the alias used when SEF is on. (The transliteration which is now default in 1.6 should take care of all latin-based languages.)

Define a custom calendar by adding a function as well as some js files

ALWAYS SAVE THIS FILE AS UTF8 NO BOM if it contains non-ascii glyphs (accented letters, etc.)

Example of a basic fr-FR.localise.php (where custom transliteration is NOT implemented)