Closed (fixed)
Project:
Views (for Drupal 7)
Version:
6.x-2.x-dev
Component:
Code
Priority:
Normal
Category:
Bug report
Assigned:
Unassigned
Reporter:
Created:
26 Apr 2008 at 21:15 UTC
Updated:
22 May 2008 at 06:01 UTC
Could we please remove strtolower? It makes translated strings looking wrong
admin.inc (Line 2011)
$form['#title'] .= t('Add @type', array('@type' => strtolower($types[$type]['title'])));
Comments
Comment #1
merlinofchaos commentedUm, but then we get incorrect capitalization on the string. I don't understand how this 'looks wrong'.
Comment #2
hass commentedNo, the strtolower capitalize wrong... it lowercases all strings that have capitalized the first letter uppercase and this makes the word wrong in other languages. For e.g. the string "Defaults: Add @type" is "Defaults: Add Node" in English. In German this looks like "Standard: Beitrag hinzufügen" and strtolower produces "Standard: beitrag hinzufügen" what is simply wrong (capitalization). "Beitrag" will never ever been written lowercase in German.
In general - translated strings should never been altered on output level... or they may become wrong...
Comment #3
merlinofchaos commentedYou realize that you're telling me to make it wrong in English so that it can be right in German.
In order to make this right in both languages I'm basically going to have to make it a separate string. I'm waffling over whether or not the work involved is worthwhile.
Comment #4
merlinofchaos commentedOk, that wasn't so bad.
Comment #5
hass commentedThank you. This are very typical context sensitive translation issue... I'm not saying you should make english wrong - it's more - we should never alter placeholder values in such a way or they may become wrong. Not only the German would be wrong without the above patch :-) - nearly every language except English is wrong. To fill placeholders with values from a different context is very problematic. However, thank you for fixing this.
Comment #6
Anonymous (not verified) commentedAutomatically closed -- issue fixed for two weeks with no activity.