Adam Kiss Posted February 28, 2011 Share Posted February 28, 2011 Hi all, there has been few requests as I recall for translation of administration. And since I've been always interested for these things, few language differences come to my mind it has to solve in future (just from top of my mind): different words in different contexts – english has just one word in multiple contexts – e.g. page – 'Page was created' and 'user has created a page' are using the same word 'page', some languages don't different language when counting – english has just one page and multiple pages. some languages have more option, e.g. slovak language (my 'mother tongue') has different words for one, then two to four and then for 5 and more pages So, I'm interested about hearing what other differences may come to your mind and also what languages you speak and how are they dealing with these situations. Adam Link to comment Share on other sites More sharing options...
ryan Posted February 28, 2011 Share Posted February 28, 2011 I'm interested too. I didn't realize some of the language variations you mentioned. How do other CMSs do it in Slovak? Especially the issue you mentioned about different words depending on number of pages (1, 2-4, 5+)? Link to comment Share on other sites More sharing options...
Adam Kiss Posted February 28, 2011 Author Share Posted February 28, 2011 I don't know – I don't remember giving our clients full access in the past, so I never really tried to use slovak language in my administration. Also, not many open source projects (not even commercial, though) try to use the human language – full sentences with some information for end user. Most of CMS do take the engineer way – you know, saying stuff like 'Page with ID 756 was created on 2011-07-02 12:45' instead of something like 'You just created a new page!' Link to comment Share on other sites More sharing options...
ryan Posted February 28, 2011 Share Posted February 28, 2011 I'm starting to see why many CMSs take the icon approach too. Personally, I am not a fan of icons... 80% of the time, I have no idea what an icon is for in an application, even if it is pretty. And once I figure it out, I can't ever seem to remember what a given icon is for either... But I think part of that is just growing up with MS DOS rather than a Mac. I don't know what I'd do without tool tips. Link to comment Share on other sites More sharing options...
apeisa Posted February 28, 2011 Share Posted February 28, 2011 Great topic Adam. In Finnish we can easily have few thousand versions of the same word. See example these 2253 versiions of word "kauppa" (shop): http://www.ling.helsinki.fi/~fkarlsso/genkau2.html So it is pretty much same thing here than it is at Slovak I guess. No easy solutions. Complete phrases or some dummy language. Page was created: Sivu luotiin. User has created a page: Käyttäjä loi sivun. Page cannot be saved: Sivua ei voitu tallentaa. You can bring more content to a page: Voit tuoda lisää sisältöä sivulle. On the other way things can be said in many different ways, but usually if we need to use basic form of the word, it ends up sounding dummy. I think important thing is that if there is some thing in phrase that can be different every time (let's say page name), then that it could be in different place also in different language. Poor example, but: English: printf('You saved page %s succesfully', $pagename) Finnish: printf('Tallensit onnistuneesti sivun %s', $pagename) Link to comment Share on other sites More sharing options...
Adam Kiss Posted February 28, 2011 Author Share Posted February 28, 2011 ...except the fun starts when you need to say 'you saved %i pages' – there kicks in different 'amount forms' Is there any way to bring it down somehow in finnish? OT: in slovak, we call finnish 'fínština'. How cool is that? Link to comment Share on other sites More sharing options...
apeisa Posted February 28, 2011 Share Posted February 28, 2011 ...except the fun starts when you need to say 'you saved %i pages' – there kicks in different 'amount forms' Is there any way to bring it down somehow in finnish? That is in Finnish actually simple, since we have same plural if the context is same. But many other cases it's not, and then we end up saying something like this (this is what I call dummy language): You saved multiple pages (4). OT: Heh, that is cool. Stina is a girl's name here. Link to comment Share on other sites More sharing options...
Frank Vèssia Posted March 1, 2011 Share Posted March 1, 2011 in italian we have two words for counting, just one singular and one plural and in some situations we use the same word in different context like english does but sometimes english doesn't use 'the' or 'a' before the word ex.: 'page was created', in italian the correct would be 'the page was created' O.T.: hey Adam, starting from April i'll live in Bratislava ;D You live there? Link to comment Share on other sites More sharing options...
abu Posted March 4, 2011 Share Posted March 4, 2011 Yep articles are an issue in italian, you can rarely omit them and there are six forms for "the": il, lo [m, s]; la [f; s]; i, gli [m, p]; le [f, p]; and three for "a": un, uno [m]; una [f]. You pick the proper masculine form depending on the word that follows. Also, you can have elision with an apostrophe when the article ends with a vowel and the following word starts with a vowel (the user = l'utente). Moreover, they combine with prepositions: so while "of" is "di", "of the" can be "del, dello; della; dei, degli; delle". In general, this applies to Italian too: No easy solutions. Complete phrases or some dummy language. Single words substitutions are hard because of order and syntax variations depending on the context, and concordance issues. There's no neuter, only masculine and feminine, and articles, adjectives, and participles have to be adjusted for gender and singular/plural. "A new page has been created" -> "Una nuova pagina è stata creata" "A new user account has been created" -> "Un nuovo utente è stato creato" Being a romance language, verbs conjugations are also tricky, with suffixes that always change for person, tense and mood, following three different schemes with many adjustments and exceptions. I eat -> io mangio; I ate -> io mangiai; you ate -> tu mangiasti I see -> io vedo; I saw -> io vidi; you saw -> tu vedesti I sleep -> io dormo; I slept -> io dormii; you slept -> tu dormisti Oh, btw, hello to everybody in this forum =) Link to comment Share on other sites More sharing options...
ryan Posted March 4, 2011 Share Posted March 4, 2011 Abu, Thanks for your post... this is really good info, and I'm impressed by your understanding of the language differences. I don't have a good understanding of these issues, so this is very helpful. You'll be glad to know we're not planning to handle translations on a word-by-word basis, but rather as entire blocks/phrases. So there would be a block for "a new page has been created", and the translator will be free to re-word that in any way they see fit. Want to help with the Italian translation sometime in the future? Thanks, Ryan Link to comment Share on other sites More sharing options...
abu Posted March 7, 2011 Share Posted March 7, 2011 Sure I'd be glad to help. I just discovered processwire and think it's seriously cool, and since I'm no coder that's one of the few ways for me to give something back to the project. Link to comment Share on other sites More sharing options...
ryan Posted March 7, 2011 Share Posted March 7, 2011 Thanks Abu, that would be great. We're still a little ways off from having multi language capability in the admin, but it is one of the high priorities on the roadmap, so hopefully we can tackle this soon. Link to comment Share on other sites More sharing options...
abu Posted March 7, 2011 Share Posted March 7, 2011 k just let me know when it's time Link to comment Share on other sites More sharing options...
jbroussia Posted March 12, 2011 Share Posted March 12, 2011 I don't know if it can help, but coming from the Delphi world, this thread made me think of a problem I encountered long ago and made me remembered a tool I had a look on back then (gnugettext), so I searched about it and found this: http://www.gnu.org/software/hello/manual/gettext/Plural-forms.html Link to comment Share on other sites More sharing options...
Guest Posted March 12, 2011 Share Posted March 12, 2011 Why not make the script have variables : ( $language[181] or M_BACK so that there are different language files with defines, you ask php to include your language file. This will make it easier for any of us to translate PW since we would be translating full sentences instead of word by word. This also solves some things like changing the wording on the admin as we might please (by modifying the language file) or even using icons where/if we want. Making this a requirement for modules also means that they will be easily translateable as well. Link to comment Share on other sites More sharing options...
ryan Posted March 12, 2011 Share Posted March 12, 2011 I've been looking more and more into the multilanguage (internationalization and localization) capability here. There are two parts to it: 1. Predefined languages for the admin control panel 2. Built-in user defined multilanguage capabilities for sites Number 2 is broader in scope than 1, but it's also something that can be handled at the API level any number of ways. I know Adam and others have been doing this already. Whereas number 1 is something that can't be changed without it being built into the product itself. As a result, number 1 has the priority in the short term, and is actually the next item up on the roadmap. I haven't yet determined what approach we'll take, but am slightly leaning towards structuring it around GNU Gettext, since it's built into PHP and has a track record with other CMSs. That would make the translation process for each language roughly like that of WordPress: http://codex.wordpress.org/Translating_WordPress It would also make the module/plugin implementation of it roughly like WordPress: http://codex.wordpress.org/I18n_for_WordPress_Developers I'm curious what others experience has been with other CMSs with installing and/or translating with different languages? What solutions have you seen that you like, and what have you seen that you didn't like? Thanks, Ryan Link to comment Share on other sites More sharing options...
marcin Posted March 26, 2011 Share Posted March 26, 2011 Hi everyone, I agree, entire blocks is the only solution - Polish is also quite complicated Utworzyłeś stronę -> Page was created Strona nie może być zapisana -> Page cannot be saved Zapisano 2 strony -> Two pages were saved Zapisano 5 stron -> Five pages were saved ..and I'd be glad to create polish translation! Link to comment Share on other sites More sharing options...
ryan Posted March 26, 2011 Share Posted March 26, 2011 Thanks Marcin! That's great -- I'll be glad to take you up on that. In about a month or so I hope to have a separate dev branch that includes the multi language support (at least the basics). Link to comment Share on other sites More sharing options...
marcin Posted March 27, 2011 Share Posted March 27, 2011 Have you thought about translation file format? PHP array, some ini file with parsing? Link to comment Share on other sites More sharing options...
ryan Posted March 28, 2011 Share Posted March 28, 2011 Not yet positive about the actual format of the file, but the two you mentioned are likely candidates. Though the files may end up being used just for importing/exporting, and DB used for storage. Regardless of the file format, we're going to make them editable in the admin so that the format won't matter too much. Link to comment Share on other sites More sharing options...
slkwrm Posted May 26, 2011 Share Posted May 26, 2011 Hey, I'm new on this forum. I installed PW a couple of days ago and I like it! Very elegant and zen-like approach. Thank you Ryan! It seems like a lot of effort and background experience have been put into your cms. I'm just a wanna be freelance web developer from Russia looking for a flexible and lightweight cms that can help me start developing websites really fast I hope these links about i18n and numerals will be helpful: http://unicode.org/repos/cldr-tmp/trunk/diff/supplemental/language_plural_rules.html - Language Plural Rules http://cldr.unicode.org/ - Unicode Common Locale Data Repository http://www.yiiframework.com/doc/guide/1.1/en/topics.i18n - here is how it works in Yii http://bit.ly/m2OiXe - simple snippet for MODX cms using PHx for Russian language (google translate) I can't stress enough how important it is for Processwire to have multilanguage support. Because otherwise you just lose potentially huge community of non-Engish-speaking developers. Just check out Russian lounge on MODX forums and see how active the community is. About 92000 posts!!! I think i18n and l10n has to be a top priority on your roadmap))) I would be happy to help with translation in Russian. Thank you for your great cms again! Link to comment Share on other sites More sharing options...
ryan Posted May 27, 2011 Share Posted May 27, 2011 Slkwrm, thanks for these links. I took a brief look and these look very helpful. You'll be glad to know that multilanguage support is scheduled as the main drive behind ProcessWire 2.2, being developed this summer. I'm not an expert with i18n and l10n (yet), so I'm doing a lot of reading and links like those you posted are very helpful and I will be reviewing them in more detail. Likewise, having people around here that are well versed in this stuff is really helpful too, so please stick around. We will need all the help we can get with regard to testing, translating, etc. Link to comment Share on other sites More sharing options...
slkwrm Posted May 29, 2011 Share Posted May 29, 2011 Hi, sorry for not replying sooner. It's really nice to hear you scheduled it!!! I hope Proceswire will gain more attention in the nearest future. Unfortunately, I'm not an expert in i18n and l10n either, just learning the whole black art of making websites. I know it's a little bit off topic but what's your plans about bugtracking system, more condenced cheatsheet-like api-reference, maybe cummunity-supported knowledge base wiki. I understand, for now it's maybe not on your list, just asking))) Link to comment Share on other sites More sharing options...
ryan Posted May 29, 2011 Share Posted May 29, 2011 Currently we are using the bugtracking system provided by GitHub. I've been happy with it so far. But we're always open to suggestions if anyone thinks another system would be better. I like the idea of an API cheat sheet reference like you mentioned. I've got a 1-page VIM cheat sheet tacked on my wall. Might need something like this for ProcessWire. As for community-supported knowledge base wiki, I like the idea of this. I think we'll pursue it as soon as there is demand and a perceived need for it. I think this might be especially useful in maintaining documentation for 3rd party modules. Link to comment Share on other sites More sharing options...
diogo Posted June 3, 2011 Share Posted June 3, 2011 HI all! I found Processwire very recently, and I really like the concept behind it. I'm from Portugal and would like to help with the Portuguese translation. I agree that it would be much easier and friendly if we have complete sentences. The Portuguese language also raises some issues, but taking the example from Marcin I can see it might be less complicated than Polish A página foi criada -> Page was created A página não pôde ser salva -> Page cannot be saved Foram salvas duas páginas -> Two pages were saved Foram salvas cinco páginas -> Five pages were saved One major issue (but of a different kind) that comes to my mind is if there should be separated translations to European Portuguese and Brazilian Portuguese. Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now