Differences between revisions 22 and 32 (spanning 10 versions)
Revision 22 as of 2008-01-12 11:58:42
Size: 17642
Comment:
Revision 32 as of 2021-09-24 22:41:40
Size: 20870
Editor: ThiagoPezzo
Comment: Add category
Deletions are marked like this. Additions are marked like this.
Line 2: Line 2:
||<tablestyle="width: 100%;" style="border: 0px hidden">~-Translation(s): none-~||<style="text-align: right;border: 0px hidden"> (!) [:/Discussion:Discussion]|| ||<tablestyle="width: 100%;" style="border: 0px hidden">~-Translation(s): none-~||<style="text-align: right;border: 0px hidden"> (!) [[DebianWiki/ConventionsDiscussion|Discussion]]||
Line 13: Line 13:
[[TableOfContents(3)]] <<TableOfContents(3)>>
Line 17: Line 17:
[[Anchor(Search)]] <<Anchor(Search)>>
Line 19: Line 19:
 1. English version should be presented if localized version isn't available.
 1. Find a page using localized words (assuming the user clicks "Full-text" search).

[[Anchor(Subject)]]
  1. English version should be presented if localized version isn't available.
  1. Find a page using localized words (assuming the user clicks "Full-text" search).

<<Anchor(Subject)>>
Line 25: Line 25:
[[Anchor(IdLang)]] <<Anchor(IdLang)>>
Line 28: Line 28:
[[Anchor(OtherLng)]] <<Anchor(OtherLng)>>
Line 31: Line 31:
[[Anchor(MmLnk)]] <<Anchor(MmLnk)>>
Line 34: Line 34:
[[Anchor(IsoColl)]] <<Anchor(IsoColl)>>
Line 37: Line 37:
[[Anchor(LangColl)]] <<Anchor(LangColl)>>
Line 40: Line 40:
[[Anchor(WrdColl)]] <<Anchor(WrdColl)>>
Line 43: Line 43:
[[Anchor(Map)]] <<Anchor(Map)>>
Line 46: Line 46:
[[Anchor(NoTrnsl)]] <<Anchor(NoTrnsl)>>
Line 49: Line 49:
[[Anchor(TruncURL)]]
 URL truncated by MUA (#TruncURL) :: Some links may get broken by some MUA, like [http://wiki.debian.org/Hardware].fr [http://wiki.debian.org/Hardware(fr])

[[Anchor(RelLnk)]]
<<Anchor(TruncURL)>>
 URL truncated by MUA (#TruncURL) :: Some links may get broken by some MUA, like [[http://wiki.debian.org/Hardware]].fr [[http://wiki.debian.org/Hardware(fr]])

<<Anchor(RelLnk)>>
Line 55: Line 55:
[[Anchor(ShortURL)]]
 short URLs (#ShortURL) :: it's best if URL don't become too long. unlike : [http://wiki.debian.org/InstallingDebianOn/Dell/Latitude/Etch/PortugueseBrazil]
<<Anchor(ShortURL)>>
 short URLs (#ShortURL) :: it's best if URL don't become too long. unlike : [[http://wiki.debian.org/InstallingDebianOn/Dell/Latitude/Etch/PortugueseBrazil]]
Line 59: Line 59:
== wishlist ==
Wishlist features, not implemented by Moinmoin.

<<Anchor(LangNego)>>
 Automatic language Negotiation (#LangNego) :: When a user request "Hardware", the server would redirect to visitors preferred language (using the {{{Accepted-Languages}}} field sent in the user-agent's HTTP request).
Line 62: Line 67:
||<style="font-weight:bolder;" >Sample page name || [#IdLang] || [#Subject] || [#WrdColl] || [#IsoColl] || [#RelLnk] || [#OtherLng] || [#TruncURL] || [#ShortURL] || [#Map] || [#Search] ||
||[#wiki.debian.org/Materiel] || {X} || {X} || {X} || (./) || (./) || {X} || (./) || (./) || {X} || (./) ||
||[#fr.wiki.debian.org/Hardware_rewrite]|| (./) || (./) || (./) || (./) || (./) || (./) || (./) || (./) || (./) || (./) ||
||[#fr.wiki.debian.org/Hardware_vhost] || (./) || (./) || (./) || (./) || (./) || (./) || (./) || (./) || {X} || {X} ||
||[#wiki.debian.org/Hardware/French] || (./) || (./) || (./) || (./) || {X} || (./) || (./) || (./) || (./) || (./) ||
||[#wiki.debian.org/HardwareFrancais] || {X} || {X} || (./) || (./) || (./) || {X} || (./) || {X} || (./) || (./) ||
||[#wiki.debian.org/HardwareFrench] || {X} || {X} || (./) || (./) || (./) || {X} || (./) || {X} || (./) || (./) ||
||[#wiki.debian.org/Hardware.Fr] || ? || (./) || (./) || (./) || (./) || (./) || {X} || (./) || (./) || (./) ||
||[#wiki.debian.org/Hardware.fr] || {X} || (./) || (./) || {X} || (./) || (./) || {X} || (./) || (./) || (./) ||
||[#wiki.debian.org/Hardware-fr] || (./) || (./) || (./) || {X} || (./) || (./) || {X} || (./) || (./) || (./) ||
||[#wiki.debian.org/Hardware_fr] || (./) || (./) || (./) || {X} || (./) || (./) || {X} || (./) || (./) || (./) ||
||[#wiki.debian.org/French/Hardware] || (./) || (./) || (./) || (./) || (./) || (./) || (./) || {X} || (./) || (./) ||
||[#wiki.debian.org/FrenchHardware] || {X} || {X} || (./) || (./) || (./) || {X} || (./) || {X} || (./) || (./) ||
||[#wiki.debian.org/Fr/Hardware] || (./) || (./) || (./) || (./) || (./) || (./) || (./) || (./) || (./) || (./) ||
||[#wiki.debian.org/fr/Hardware] || (./) || (./) || (./) || (./) || (./) || (./) || (./) || (./) || (./) || (./) ||
||[#wiki.debian.org/FrHardware] || {X} || {X} || (./) || (./) || (./) || (./) || (./) || (./) || (./) || (./) ||
||[#wiki.debian.org/DebFr/Hardware] || ? || (./) || (./) || (./) || (./) || (./) || (./) || (./) || (./) || (./) ||
||[#wiki.debian.org/DebFrHardware] || {X} || {X} || (./) || (./) || (./) || (./) || (./) || (./) || (./) || (./) ||
||<style="font-weight:bolder;" >     || [[#IdLang]] || [[#Subject]] || [[#WrdColl]] || [[#IsoColl]] || [[#RelLnk]] || [[#OtherLng]] || [[#TruncURL]] || [[#ShortURL]] || [[#Map]] || [[#Search]] ||
||'''Pages titles Translated''' ||<-10>||
||[
[#wiki.debian.org/Materiel]] || {X} || {X} || {X} || (./) || (./) || {X} || (./) || (./) || {X} || (./) ||
||[[#wiki.debian.org/fr/Matériel]] || (./) || (./) || (./) || (./) || (./) || {X} || (./) || (./) || {X} || (./) ||
||[[#wiki.debian.org/fr/Materiel]] || (./) || (./) || (./) || (./) || (./) || {X} || (./) || (./) || {X} || (./) ||
||'''Pages titles in English''' ||<-10>||
||[
[#fr.wiki.debian.org/Hardware_rewrite]]|| (./) || (./) || (./) || (./) || (./) || (./) || (./) || (./) || (./) || (./) ||
||[[#fr.wiki.debian.org/Hardware_vhost]] || (./) || (./) || (./) || (./) || (./) || (./) || (./) || (./) || {X} || {X} ||
||[[#fr.wiki.debian.org/Hardware_layers]] || (./) || (./) || (./) || (./) || (./) || (./) || (./) || (./) || {X} || (./) ||
||[
[#wiki.debian.org/Hardware/French]] || (./) || (./) || (./) || (./) || {X} || (./) || (./) || (./) || (./) || (./) ||
||[[#wiki.debian.org/HardwareFrancais]] || {X} || {X} || (./) || (./) || (./) || {X} || (./) || {X} || (./) || (./) ||
||[[#wiki.debian.org/HardwareFrench]] || {X} || {X} || (./) || (./) || (./) || {X} || (./) || {X} || (./) || (./) ||
||[[#wiki.debian.org/Hardware.Fr]] || ? || (./) || (./) || (./) || (./) || (./) || {X} || (./) || (./) || (./) ||
||[[#wiki.debian.org/Hardware.fr]] || {X} || (./) || (./) || {X} || (./) || (./) || {X} || (./) || (./) || (./) ||
||[[#wiki.debian.org/Hardware-fr]] || (./) || (./) || (./) || {X} || (./) || (./) || {X} || (./) || (./) || (./) ||
||[[#wiki.debian.org/Hardware_fr]] || (./) || (./) || (./) || {X} || (./) || (./) || {X} || (./) || (./) || (./) ||
||[[#wiki.debian.org/French/Hardware]] || (./) || (./) || (./) || (./) || (./) || (./) || (./) || {X} || (./) || (./) ||
||[[#wiki.debian.org/FrenchHardware]] || {X} || {X} || (./) || (./) || (./) || {X} || (./) || {X} || (./) || (./) ||
||[[#wiki.debian.org/Fr/Hardware]] || (./) || (./) || (./) || (./) || (./) || (./) || (./) || (./) || (./) || (./) ||
||[[#wiki.debian.org/fr/Hardware]] || (./) || (./) || (./) || (./) || (./) || (./) || (./) || (./) || (./) || (./) ||
||[[#wiki.debian.org/FrHardware]] || {X} || {X} || (./) || (./) || (./) || (./) || (./) || (./) || (./) || (./) ||
||[[#wiki.debian.org/DebFr/Hardware]] || (./) || (./) || (./) || (./) || (./) || (./) || (./) || (./) || (./) || (./) ||
||[[#wiki.debian.org/DebFrHardware]] || {X} || {X} || (./) || (./) || (./) || (./) || (./) || (./) || (./) || (./) ||
Line 81: Line 91:
||[#wiki.debian.org/fr/Materiel stub] || (./) || (./) || (./) || (./) || (./) || (./) || (./) || (./) || (./) || (./) || ||[[#wiki.debian.org/fr/Materiel|stub]] || (./) || (./) || (./) || (./) || (./) || (./) || (./) || (./) || (./) || (./) ||
Line 89: Line 99:
= Alternatives =

The following are various alternatives for translation page names for a sample 'Hardware' page.
[[Anchor(wiki.debian.org/Materiel)]]
= Alternatives with Transalated pages names =
The following are various alternatives for translation page names for a sample 'Hardware' page, __where the page title is translated__.


<<
Anchor(wiki.debian.org/Materiel)>>
Line 104: Line 115:
[[Anchor(fr.wiki.debian.org/Hardware)]] <<Anchor(wiki.debian.org/fr/Matériel)>>
== wiki.debian.org/fr/Matériel ==
'''Cons:'''
 * High maintenance cost : It's Difficult to list other languages-version of a given page : Renaming pages should be handled with care to avoid orphan. Also, one shouldn't forget to create stub English page.
 * non-ascii caracters may get broken because of characters encoding and conversion in URL, MUA, IRC (ISO-8859-* ; UTF-8).
 * Another issue is that the translated word may not carry the __exactly__ same meaning as the original. So the contents of the pages may tend to "fork" (like "What is Debian" and "About Debian").

'''Pros:'''
 * Allowing non-ascii characters allow proper i18n handling.
 * Easy to search for non-english speaking people..

'''Useful implementation Hints'''
 * Using [[#translated-pages|List translated pages (#translated-pages)]] could make it this solution quite ''Maintainable''.

<<Anchor(wiki.debian.org/fr/Materiel)>>
=== wiki.debian.org/fr/Materiel ===
 This is a variant of above [[#wiki.debian.org/fr/Matériel]], but without non-ascii characters. Check above Pros and Cons.
'''Cons:'''
 * Difficult to list other languages-version of a given page.
 * Disallowing non-ascii characters prevents proper i18n handling.

'''Pros:'''
 * Easy to search information for non-english people
 * URL never gets broken due to charset encoding.





= Alternatives with English pages names =
The following are various alternatives for translation page names for a sample 'Hardware' page, __where the page title is not translated__ (i.e in English).

<<Anchor(fr.wiki.debian.org/Hardware)>>
Line 108: Line 151:
[[Anchor(fr.wiki.debian.org/Hardware_vhost)]] <<Anchor(fr.wiki.debian.org/Hardware_vhost)>>
Line 116: Line 159:
[[Anchor(fr.wiki.debian.org/Hardware_rewrite)]] <<Anchor(fr.wiki.debian.org/Hardware_rewrite)>>
Line 123: Line 166:
[[Anchor(wiki.debian.org/Hardware/French)]]
<<Anchor(fr.wiki.debian.org/Hardware_layers)>>
=== fr.wiki.debian.org/Hardware (layers) ===
Modify Moinmoin to use the English version as underlay of any other language.
'''Pros'''
 * URL scheme is the same in English and other language.
 * If a page doesn't exist in a given language, the English version is presented.
'''Cons '''
 * Non-native Moinmoin behaviour (underlay is supposed to be for help pages).
 * Google detects duplicate content (not translated pages), which leads to lower rating.
 * Help pages may not be available in alternate languages (except if we hack Moinmoin to allow 3 layers).
 * Wiki users has to sign-in multiple times.


<<Anchor(wiki.debian.org/Hardware/French)>>
Line 130: Line 187:
[[Anchor(wiki.debian.org/HardwareFrench)]] <<Anchor(wiki.debian.org/HardwareFrench)>>
Line 137: Line 194:
[[Anchor(wiki.debian.org/Hardware.Fr)]] <<Anchor(wiki.debian.org/Hardware.Fr)>>
Line 140: Line 197:
 * some links may get broken by some MUA => [http://wiki.debian.org/Hardware].fr  * some links may get broken by some MUA => [[http://wiki.debian.org/Hardware]].fr
Line 142: Line 199:
see trick [#page-list-macro].

[[Anchor(wiki.debian.org/Hardware.fr)]]
see trick [[#page-list-macro]].

<<Anchor(wiki.debian.org/Hardware.fr)>>
Line 147: Line 204:
 * some links may get broken by some MUA => [http://wiki.debian.org/Hardware].fr  * some links may get broken by some MUA => [[http://wiki.debian.org/Hardware]].fr
Line 151: Line 208:
[[Anchor(wiki.debian.org/Hardware_fr)]] <<Anchor(wiki.debian.org/Hardware_fr)>>
Line 156: Line 213:
[[Anchor(wiki.debian.org/Hardware-fr)]] <<Anchor(wiki.debian.org/Hardware-fr)>>
Line 161: Line 218:
[[Anchor(wiki.debian.org/French/Hardware)]] <<Anchor(wiki.debian.org/French/Hardware)>>
Line 165: Line 222:
[[Anchor(wiki.debian.org/FrenchHardware)]] <<Anchor(wiki.debian.org/FrenchHardware)>>
Line 170: Line 227:
[[Anchor(wiki.debian.org/Fr/Hardware)]] <<Anchor(wiki.debian.org/Fr/Hardware)>>
Line 174: Line 231:
[[Anchor(wiki.debian.org/fr/Hardware)]] <<Anchor(wiki.debian.org/fr/Hardware)>>
Line 181: Line 238:
[[Anchor(wiki.debian.org/FrHardware)]] <<Anchor(wiki.debian.org/FrHardware)>>
Line 186: Line 243:
[[Anchor(wiki.debian.org/DebFr/Hardware)]] <<Anchor(wiki.debian.org/DebFr/Hardware)>>
Line 192: Line 249:
[[Anchor(wiki.debian.org/DebFrHardware)]] <<Anchor(wiki.debian.org/DebFrHardware)>>
Line 197: Line 254:
= Possible Tricks =
The following tricks can be used to improve some of the above proposal.

[[Anchor(
wiki.debian.org/fr/Materiel stub)]]
== wiki.debian.org/fr/Materiel stub ==
== Possible Tricks ==
The following tricks can be used to improve ''Alternatives with English pages names'' proposals.

<<Anchor(wiki.debian.org/
fr/Materiel stub)>>
===
wiki.debian.org/fr/Materiel stub ===
Line 217: Line 274:
||<style="font-weight:bolder;" >Sample page name || [#WrdColl] || [#page-list-macro] || [#translated-pages] || [#i18nPrefix] ||
||
[#wiki.debian.org/Materiel]  || {X} || {X} || (./) || {X} ||
||
[#fr.wiki.debian.org/Hardware_rewrite]|| (./) || {X} || ? || (./) ||
||[#fr.wiki.debian.org/Hardware_vhost] || (./) || {X} || ? || (./) ||
||[#wiki.debian.org/Hardware/French] || (./) || {X} || (./) || {X} ||
||
[#wiki.debian.org/HardwareFrancais] || (./) || {X} || (./) || {X} ||
||
[#wiki.debian.org/HardwareFrench] || (./) || {X} || (./) || {X} ||
||
[#wiki.debian.org/Hardware.Fr] || (./) || (./) || (./) || (./) ||
||
[#wiki.debian.org/Hardware.fr] || (./) || (./) || (./) || (./) ||
||
[#wiki.debian.org/Hardware-fr] || (./) || (./) || (./) || ? ||
||[#wiki.debian.org/Hardware_fr] || (./) || {X} || (./) || {X} ||
||
[#wiki.debian.org/French/Hardware] || (./) || {X} || (./) || {X} ||
||
[#wiki.debian.org/FrenchHardware] || (./) || {X} || (./) || {X} ||
||
[#wiki.debian.org/Fr/Hardware] || (./) || {X} || (./) || ?||
||[#wiki.debian.org/fr/Hardware] || (./) || (./) || (./) || (./) ||
||
[#wiki.debian.org/FrHardware]  || (./) || (./) || (./) || {X} ||
||
[#wiki.debian.org/DebFr/Hardware] || (./) || (./) || (./) || ? ||
||[#wiki.debian.org/DebFrHardware] || (./) || (./) || (./) || ? ||


[[Anchor(page-list-macro)]]
||<style="font-weight:bolder;" >Sample page name || [[#WrdColl]] || [[#page-list-macro]] || [[#translated-pages]] || [[#i18nPrefix]] ||
||[
[#wiki.debian.org/Materiel]] || {X} || {X} || (./) || {X} ||
||[
[#fr.wiki.debian.org/Hardware_rewrite]]|| (./) || {X} || ? || (./) ||
||[[#fr.wiki.debian.org/Hardware_vhost]] || (./) || {X} || ? || (./) ||
||[[#wiki.debian.org/Hardware/French]] || (./) || {X} || (./) || {X} ||
||[
[#wiki.debian.org/HardwareFrancais]] || (./) || {X} || (./) || {X} ||
||[
[#wiki.debian.org/HardwareFrench]] || (./) || {X} || (./) || {X} ||
||[
[#wiki.debian.org/Hardware.Fr]] || (./) || (./) || (./) || (./) ||
||[
[#wiki.debian.org/Hardware.fr]] || (./) || (./) || (./) || (./) ||
||[
[#wiki.debian.org/Hardware-fr]] || (./) || (./) || (./) || ? ||
||[[#wiki.debian.org/Hardware_fr]] || (./) || {X} || (./) || {X} ||
||[
[#wiki.debian.org/French/Hardware]] || (./) || {X} || (./) || {X} ||
||[
[#wiki.debian.org/FrenchHardware]] || (./) || {X} || (./) || {X} ||
||[
[#wiki.debian.org/Fr/Hardware]] || (./) || {X} || (./) || ?||
||[[#wiki.debian.org/fr/Hardware]] || (./) || (./) || (./) || (./) ||
||[
[#wiki.debian.org/FrHardware]] || (./) || (./) || (./) || {X} ||
||[
[#wiki.debian.org/DebFr/Hardware]] || (./) || (./) || (./) || ? ||
||[[#wiki.debian.org/DebFrHardware]] || (./) || (./) || (./) || ? ||


<<Anchor(page-list-macro)>>
Line 239: Line 296:
If the page name structure of translated pages is formally structured ([#wiki.debian.org/fr/Hardware], [#wiki.debian.org/Hardware.fr], [#wiki.debian.org/Hardware-fr]...), it's possible to use the {{{PageList}}} macro to list available languages, like : If the page name structure of translated pages is formally structured ([[#wiki.debian.org/fr/Hardware]], [[#wiki.debian.org/Hardware.fr]], [[#wiki.debian.org/Hardware-fr]]...), it's possible to use the {{{PageList}}} macro to list available languages, like :
Line 246: Line 303:
[[Anchor(translated-pages)]] <<Anchor(translated-pages)>>
Line 248: Line 305:
''It's possible to automatically list translated versions of the page (even if the pages names are translated).'' demonstration: ["TestInEnglish"]. ''It's possible to automatically list translated versions of the page (even if the pages names are translated).'' demonstration: [[TestInEnglish]].
Line 263: Line 320:
 {i} It should be possible to implement this feature in Moinmoin itself. Moinmoin would do something similar to [http://moinmoin.wikiwikiweb.de/HelpOnMacros FullSearchCached], but it would also fetch the page header's {{{#language xx}}} and display the matching language name (rather than the page name).


[[Anchor(i18nPrefix)]]
 {i} It should be possible to implement this feature in Moinmoin itself. Moinmoin would do something similar to [[http://moinmoin.wikiwikiweb.de/HelpOnMacros|FullSearchCached]], but it would also fetch the page header's {{{#language xx}}} and display the matching language name (rather than the page name).


<<Anchor(i18nPrefix)>>
Line 271: Line 328:
 * with [#fr.wiki.debian.org/Hardware_rewrite] It's probably '''not''' possible to detect "broken link"/"missing page".
 * with [#fr.wiki.debian.org/Hardware_vhost] It's should be possible to detect "broken link"/"missing page".
 * with [#wiki.debian.org/fr/Hardware] It's should be possible to detect "broken link"/"missing page".
 * with [#wiki.debian.org/Hardware.fr] It's should be possible to detect "broken link"/"missing page".
 * with [[#fr.wiki.debian.org/Hardware_rewrite]] It's probably '''not''' possible to detect "broken link"/"missing page".
 * with [[#fr.wiki.debian.org/Hardware_vhost]] It's should be possible to detect "broken link"/"missing page".
 * with [[#wiki.debian.org/fr/Hardware]] It's should be possible to detect "broken link"/"missing page".
 * with [[#wiki.debian.org/Hardware.fr]] It's should be possible to detect "broken link"/"missing page".
Line 279: Line 336:
 * PaoloPan proposal for {{{<language-identifier><page title in english>}}}, on [http://wiki.debian.org/WikiMeta?action=recall&rev=44 2005-08-15].
 * debian-www [http://lists.debian.org/debian-www/2007/10/threads.html#00277 Debian Wiki: Give your opinion] thread on the mailing list, on 2007-10-21.
 * Add SalokineTerata's [http://wiki.debian.org/DebianWiki/TranslationNamespace/Discussion?action=recall&rev=3 proposal] : [#wiki.debian.org/fr/Materiel stub]
 * PaoloPan proposal for {{{<language-identifier><page title in english>}}}, on [[http://wiki.debian.org/WikiMeta?action=recall&rev=44|2005-08-15]].
 * debian-www [[http://lists.debian.org/debian-www/2007/10/threads.html#00277|Debian Wiki: Give your opinion]] thread on the mailing list, on 2007-10-21.
 * Add SalokineTerata's [[http://wiki.debian.org/DebianWiki/TranslationNamespace/Discussion?action=recall&rev=3|proposal]] : [[#wiki.debian.org/fr/Materiel|stub]]
Line 292: Line 349:
 * [http://www.debian.org/international/l10n/po/] list of locales  * [[http://www.debian.org/international/l10n/po/]] list of locales
Line 296: Line 353:
[[Anchor(wikivote)]] <<Anchor(wikivote)>>
Line 298: Line 355:
Please read ["DebianWiki/WikiVote"] for instruction:
Line 312: Line 368:
 * wiki.debian.org/fr/Hardware [:SalokineTerata:1] [:ClytieSiddall:2][:SatoruKurashiki:3]  * wiki.debian.org/fr/Hardware [[SalokineTerata|1]] [[ClytieSiddall|2]][[SatoruKurashiki|3]]
Line 320: Line 376:
CategoryWiki CategoryLocalization

Translation(s): none

(!) Discussion

Choosing a page namespace for Internationalizing DebianWiki : This page attempts to list various problematics and constraints to be taken into account before choosing a namespace... This should help choose the best solution.

Your contribution is welcome :

  • Add more constraints / needs below.
  • Add more namespace proposal.
  • Add brilliant ideas on how to implement those namespaces too !

Constraints and needs

Easy to search (#Search)
It should be easy to search.
  1. English version should be presented if localized version isn't available.
  2. Find a page using localized words (assuming the user clicks "Full-text" search).

Clear page subject (#Subject)

Is it easy to identify what's the subject of a page, according to it's title ? SupportFrench and InstallDebian.pl are prone to confusion), as opposed to fr.wiki.debian.org/Support or pl/!?InstallDebian.

Clear page language (#IdLang)

Is it easy to identify what's the of a language ? A French visitor couldn't guess if he should click on Support or Assistance to get the French version (since both words are synonyms)...

Linking translated pages (#OtherLng)
Make it easy to find the same page in other languages.(moinmoin don't have a feature to automatically connect/link localized versions of a page).

Moinmoin CamelCase linking (#MmLnk)

Does Moinmoin create link automatically ? page containing a slash ("/") or a period (".") doesn't work, like InstallDebian/French or InstallDebian.fr . However, single word are never converted as links by moinmoin, so it's not really an issue since editors have to write ["Foo"] anyway... they can write ["fr/Foo"] too.

Country code collision (#IsoColl)

.pl can be the short for perl files or polish translations.

Language name collision (#LangColl)
Some language may be spelled the same way in their local language (?).

Translated word collision (#WrdColl)

The word Installation is the same in French and English. not to mention that nouns, projects name , brands, technologies aren't translated : Debian, DebianInstaller, iSCSI, HP.

Problem mapping pages(#Map)
It should be easy to find the different versions/languages of a page, in case link is missing.

Page not translated
When a page isn't translated, the visitor should be presented the English version.

URL truncated by MUA (#TruncURL)

Some links may get broken by some MUA, like http://wiki.debian.org/Hardware.fr http://wiki.debian.org/Hardware(fr)

relative links (#RelLnk)
breaks relative links : "../Subpage" in Hardware/Wifi must be rewritten "../../Subpage/French" for Hardware/Wifi/French.

short URLs (#ShortURL)

it's best if URL don't become too long. unlike : http://wiki.debian.org/InstallingDebianOn/Dell/Latitude/Etch/PortugueseBrazil

sub-locales
People from Brazil will appreciate if we handle pt_BR nicely.

wishlist

Wishlist features, not implemented by Moinmoin.

Automatic language Negotiation (#LangNego)

When a user request "Hardware", the server would redirect to visitors preferred language (using the Accepted-Languages field sent in the user-agent's HTTP request).

Summary

This table is a summary of the alternatives below.

#IdLang

#Subject

#WrdColl

#IsoColl

#RelLnk

#OtherLng

#TruncURL

#ShortURL

#Map

#Search

Pages titles Translated

#wiki.debian.org/Materiel

{X}

{X}

{X}

(./)

(./)

{X}

(./)

(./)

{X}

(./)

#wiki.debian.org/fr/Matériel

(./)

(./)

(./)

(./)

(./)

{X}

(./)

(./)

{X}

(./)

#wiki.debian.org/fr/Materiel

(./)

(./)

(./)

(./)

(./)

{X}

(./)

(./)

{X}

(./)

Pages titles in English

#fr.wiki.debian.org/Hardware_rewrite

(./)

(./)

(./)

(./)

(./)

(./)

(./)

(./)

(./)

(./)

#fr.wiki.debian.org/Hardware_vhost

(./)

(./)

(./)

(./)

(./)

(./)

(./)

(./)

{X}

{X}

#fr.wiki.debian.org/Hardware_layers

(./)

(./)

(./)

(./)

(./)

(./)

(./)

(./)

{X}

(./)

#wiki.debian.org/Hardware/French

(./)

(./)

(./)

(./)

{X}

(./)

(./)

(./)

(./)

(./)

#wiki.debian.org/HardwareFrancais

{X}

{X}

(./)

(./)

(./)

{X}

(./)

{X}

(./)

(./)

#wiki.debian.org/HardwareFrench

{X}

{X}

(./)

(./)

(./)

{X}

(./)

{X}

(./)

(./)

#wiki.debian.org/Hardware.Fr

?

(./)

(./)

(./)

(./)

(./)

{X}

(./)

(./)

(./)

#wiki.debian.org/Hardware.fr

{X}

(./)

(./)

{X}

(./)

(./)

{X}

(./)

(./)

(./)

#wiki.debian.org/Hardware-fr

(./)

(./)

(./)

{X}

(./)

(./)

{X}

(./)

(./)

(./)

#wiki.debian.org/Hardware_fr

(./)

(./)

(./)

{X}

(./)

(./)

{X}

(./)

(./)

(./)

#wiki.debian.org/French/Hardware

(./)

(./)

(./)

(./)

(./)

(./)

(./)

{X}

(./)

(./)

#wiki.debian.org/FrenchHardware

{X}

{X}

(./)

(./)

(./)

{X}

(./)

{X}

(./)

(./)

#wiki.debian.org/Fr/Hardware

(./)

(./)

(./)

(./)

(./)

(./)

(./)

(./)

(./)

(./)

#wiki.debian.org/fr/Hardware

(./)

(./)

(./)

(./)

(./)

(./)

(./)

(./)

(./)

(./)

#wiki.debian.org/FrHardware

{X}

{X}

(./)

(./)

(./)

(./)

(./)

(./)

(./)

(./)

#wiki.debian.org/DebFr/Hardware

(./)

(./)

(./)

(./)

(./)

(./)

(./)

(./)

(./)

(./)

#wiki.debian.org/DebFrHardware

{X}

{X}

(./)

(./)

(./)

(./)

(./)

(./)

(./)

(./)

Possible tricks

stub

(./)

(./)

(./)

(./)

(./)

(./)

(./)

(./)

(./)

(./)

Legend :

  • {X} The namespace doesn't support the feature properly

  • (./) The namespace supports the feature properly.

  • ? Undecided / Not clear, yet.

Alternatives with Transalated pages names

The following are various alternatives for translation page names for a sample 'Hardware' page, where the page title is translated.

wiki.debian.org/Materiel

Cons:

  • Subject collision : The same word can be used for different subject in different languages
  • Language collision : two language can use the same word.
  • Difficult to guess the page language (see point above).
  • Difficult to list other languages-version of a given page.
  • Difficult to present English page if {lang} doesn't exist.

Pros:

  • Easy to search information for non-english people

wiki.debian.org/fr/Matériel

Cons:

  • High maintenance cost : It's Difficult to list other languages-version of a given page : Renaming pages should be handled with care to avoid orphan. Also, one shouldn't forget to create stub English page.
  • non-ascii caracters may get broken because of characters encoding and conversion in URL, MUA, IRC (ISO-8859-* ; UTF-8).
  • Another issue is that the translated word may not carry the exactly same meaning as the original. So the contents of the pages may tend to "fork" (like "What is Debian" and "About Debian").

Pros:

  • Allowing non-ascii characters allow proper i18n handling.
  • Easy to search for non-english speaking people..

Useful implementation Hints

wiki.debian.org/fr/Materiel

Cons:

  • Difficult to list other languages-version of a given page.
  • Disallowing non-ascii characters prevents proper i18n handling.

Pros:

  • Easy to search information for non-english people
  • URL never gets broken due to charset encoding.

Alternatives with English pages names

The following are various alternatives for translation page names for a sample 'Hardware' page, where the page title is not translated (i.e in English).

fr.wiki.debian.org/Hardware

This can be achieved by two means :

fr.wiki.debian.org/Hardware (vhost)

Create multiple moinmoin wiki instances in multiple virtual hosts.

Cons

  • Editors would have to create their accounts in each instances.
  • Non-english visitor wouldn't be able to search in English pages (someone proposed to use English as underlay, which could solve this.).

fr.wiki.debian.org/Hardware (rewrite)

Use Apache to rewrite fr.wiki.debian.org/Hardware to wiki.debian.org/fr/Hardware. We would need to hack moinmoin to fallback to English version.

Cons

  • The pages are accessible through multiple URI (fr.wiki.debian.org/Hardware and wiki.debian.org/fr/Hardware) which could lead to a major confusion (accidental deletion) !

fr.wiki.debian.org/Hardware (layers)

Modify Moinmoin to use the English version as underlay of any other language. Pros

  • URL scheme is the same in English and other language.
  • If a page doesn't exist in a given language, the English version is presented.

Cons

  • Non-native Moinmoin behaviour (underlay is supposed to be for help pages).
  • Google detects duplicate content (not translated pages), which leads to lower rating.
  • Help pages may not be available in alternate languages (except if we hack Moinmoin to allow 3 layers).
  • Wiki users has to sign-in multiple times.

wiki.debian.org/Hardware/French

Cons

  • Breaks ?SubPages relative Links.

  • If we wanted to have a page about "I18n/French", we should name it "I18n/French/French" and "I18n/French/English" ! (that's unlikely to happend)

wiki.debian.org/HardwareFrench

Cons

  • Can be ambigous : consider ?WhyFrench ; ?SupportFrench, etc..

  • The URL could become long for some language (esp. ?PortugueseBrazil)

wiki.debian.org/Hardware.Fr

Cons

see trick #page-list-macro.

wiki.debian.org/Hardware.fr

Cons

wiki.debian.org/Hardware_fr

Cons

  • some people use "page_name" rather that CamelCase => page_name_fr could be ambiguous.

wiki.debian.org/Hardware-fr

Cons

  • Page language isn't very clearly identified (for visitors not used to this convention). it's still fairly obvious.

wiki.debian.org/French/Hardware

  • The URL could become long for some language (esp. ?PortugueseBrazil)

wiki.debian.org/FrenchHardware

  • Can be ambigous : consider ?FrenchWhy ; ?FrenchSupport, etc..

  • The URL could become long for some language (esp. ?PortugueseBrazil)

wiki.debian.org/Fr/Hardware

  • Help ! any cons ?

wiki.debian.org/fr/Hardware

  • Help ! any cons ?

Pros :

  • Even better than "/Fr/*", since a wiki page name should start with an uppercase, we know that a page matching regexp:^[a-z]{2}/.*$ is a localised version.

wiki.debian.org/FrHardware

Cons

  • ?DeInstall vs Desinstall. (I hope you don't have dyslexia problem).

wiki.debian.org/DebFr/Hardware

Cons

  • Longer, than "Fr/*" !.

(I guess It was actually a short for ?DebianFrFoobar )

wiki.debian.org/DebFrHardware

  • Longer, than "Fr/*" !.
  • ?DebDeInstall ?=? ?DebianDesinstall ? (I hope you don't have dyslexia problem).

Possible Tricks

The following tricks can be used to improve Alternatives with English pages names proposals.

wiki.debian.org/fr/Materiel stub

Create linker to help non-english people to find article by title search tool?

  • (optional) To help user that doesn't speak English, you can create a linker page named "Initial of language" + "/" + "PageInNativeLanguage". This page redirect to the English page with the content #redirect "Language" + "/"+ "NameOfReferentPage"

    • Example:
      • Linker page: fr/!?QuelqueChose

      • Content of the linker: #redirect fr/Something

      • English page: fr/Something

Pros :

  • non-english people can Search article by title.

Cons :

  • Extra maintenance cost.
  • Does searching [BackLink] works ?

Connecting Translated pages

This table is a summary of the alternatives below.

Sample page name

#WrdColl

#page-list-macro

#translated-pages

#i18nPrefix

#wiki.debian.org/Materiel

{X}

{X}

(./)

{X}

#fr.wiki.debian.org/Hardware_rewrite

(./)

{X}

?

(./)

#fr.wiki.debian.org/Hardware_vhost

(./)

{X}

?

(./)

#wiki.debian.org/Hardware/French

(./)

{X}

(./)

{X}

#wiki.debian.org/HardwareFrancais

(./)

{X}

(./)

{X}

#wiki.debian.org/HardwareFrench

(./)

{X}

(./)

{X}

#wiki.debian.org/Hardware.Fr

(./)

(./)

(./)

(./)

#wiki.debian.org/Hardware.fr

(./)

(./)

(./)

(./)

#wiki.debian.org/Hardware-fr

(./)

(./)

(./)

?

#wiki.debian.org/Hardware_fr

(./)

{X}

(./)

{X}

#wiki.debian.org/French/Hardware

(./)

{X}

(./)

{X}

#wiki.debian.org/FrenchHardware

(./)

{X}

(./)

{X}

#wiki.debian.org/Fr/Hardware

(./)

{X}

(./)

?

#wiki.debian.org/fr/Hardware

(./)

(./)

(./)

(./)

#wiki.debian.org/FrHardware

(./)

(./)

(./)

{X}

#wiki.debian.org/DebFr/Hardware

(./)

(./)

(./)

?

#wiki.debian.org/DebFrHardware

(./)

(./)

(./)

?

PageList for alternatives (#page-list-macro)

If the page name structure of translated pages is formally structured (#wiki.debian.org/fr/Hardware, #wiki.debian.org/Hardware.fr, #wiki.debian.org/Hardware-fr...), it's possible to use the PageList macro to list available languages, like :

  •  [[PageList(re:^MacBook/[a-z][a-z]$)]]

    {i} this trick could be used in our Moinmoin theme, so it doesn't to be added in every pages..

List translated pages (#translated-pages)

It's possible to automatically list translated versions of the page (even if the pages names are translated). demonstration: ?TestInEnglish.

Everypage should have the following header (adjust #language en)

  • #language en
    ##TranslationMasterPage:EnglishName## 

And the following footer.

  • ----
    Translated versions :
     [[FullSearchCached(##TranslationMasterPage:TestInEnglish##)]]

    {i} It should be possible to implement this feature in Moinmoin itself. Moinmoin would do something similar to FullSearchCached, but it would also fetch the page header's #language xx and display the matching language name (rather than the page name).

Automatic Prefix/suffix pages (#i18nPrefix)

For fr.wiki.debian.org, wiki.debian.org/fr/* and wiki.debian.org/*.fr schemes, It's possible to automatically list alternates languages (by adding a prefix or suffix to the current page name)..

  • Typically, the Moinmoin template would show the links : Brasileiro - Deutsch - Español - Français - Italiano - Kurdî - Nederlands - Norsk - Polski - Português - Русский - Svenska - Türkçe - 简体中文 - 繁體中文 - فارسی for every pages (without checking if the translated page exist).

  • with #fr.wiki.debian.org/Hardware_rewrite It's probably not possible to detect "broken link"/"missing page".

  • with #fr.wiki.debian.org/Hardware_vhost It's should be possible to detect "broken link"/"missing page".

  • with #wiki.debian.org/fr/Hardware It's should be possible to detect "broken link"/"missing page".

  • with #wiki.debian.org/Hardware.fr It's should be possible to detect "broken link"/"missing page". {i} for all schme, detecting "broken link"/"missing page" would require serious Moinmoin patching. It's probably not a goos idea, unless the patch is included upstream.

    • {i} it might also be possible to redirect (or present) the English version, when localized version is missing. again, this would involve serious Moinmoin modification.

History

ToDo

Once the decision is made :

  • Update editor guide.
  • Rename existing pages.
  • Renmame Frontpages + get Content negotiation updated ( /var/lib/python-support/python2.4/MoinMoin/i18n/fr.py ?)

Resources


WikiVote

Vote start 05/01/2008 and will finished 15/01/2008

  • wiki.debian.org/Materiel
  • fr.wiki.debian.org/Hardware (vhost)
  • fr.wiki.debian.org/Hardware (rewrite)
  • wiki.debian.org/Hardware/French
  • wiki.debian.org/!?HardwareFrench

  • wiki.debian.org/Hardware.Fr
  • wiki.debian.org/Hardware.fr
  • wiki.debian.org/French/Hardware
  • wiki.debian.org/!?FrenchHardware

  • wiki.debian.org/Fr/Hardware
  • wiki.debian.org/fr/Hardware 1 ?23

  • wiki.debian.org/!?FrHardware

  • wiki.debian.org/!DebFr/Hardware
  • wiki.debian.org/!?DebFrHardware

Mailing lists contacted on @lists.debian.org: debian-i18n, debian-l10n-english, debian-www


CategoryLocalization