Make WordPress Core

Opened 18 years ago

Closed 17 years ago

#4865 closed enhancement (fixed)

Change plurals in text to allow for translations

Reported by: nbachiyski's profile nbachiyski Owned by: westi's profile westi
Milestone: 2.5 Priority: lowest
Severity: trivial Version: 2.3
Component: I18N Keywords: plurals has-patch needs-testing dev-feedback
Focuses: Cc:

Description

There are many places in the source, where counts were used, but the plural form is mentioned only. It isn't related to i18n only, the messages in English will benefit from it also.

Attachments (8)

wp_counted_string.diff (1.5 KB) - added by darkdragon 17 years ago.
Helper function for providing translatable plurals
i18n.#4865.patch (2.1 KB) - added by darkdragon 17 years ago.
Fixes two functions to use new wp_counted_string function
i18n.greymatter.#4865.patch (1.0 KB) - added by darkdragon 17 years ago.
Converted Greymatter importer to use wp_counted_string function
i18n.blogware.#4865.2.patch (405 bytes) - added by darkdragon 17 years ago.
Uses ngettext function instead of wp_counted_string function
i18n.blogware.#4865.patch (397 bytes) - added by darkdragon 17 years ago.
Uses __ngettext function instead of wp_counted_string function
i18n.pluggable.#4865.patch (1.2 KB) - added by darkdragon 17 years ago.
Removes wp_counted_string function and uses __ngettext() instead for pluggables file.
i18n.complete.#4865.patch (10.9 KB) - added by darkdragon 17 years ago.
Covers complete translation for plurals and covers #5164 plurals
i18n.complete.#4865.2.patch (10.9 KB) - added by nbachiyski 17 years ago.
Tiny fixes for darkdragon's patch

Download all attachments as: .zip

Change History (29)

#1 @darkdragon
17 years ago

  • Keywords reporter-feedback added

Can you give instances of possible candidates that should be changed?

#2 @nbachiyski
17 years ago

  • Type changed from defect to enhancement

#3 @lloydbudd
17 years ago

  • Milestone 2.4 deleted
  • Resolution set to invalid
  • Status changed from new to closed

Closing for until concrete examples/symptoms of the problem.

#4 @nbachiyski
17 years ago

  • Resolution invalid deleted
  • Status changed from closed to reopened

Somebody wanted examples :-)

  • wp-includes/pluggable.php:634 -- Currently %s comments are waiting for approval. Please...
  • wp-content/plugins/akismet/akismet.php:678 -- %d spam comments have been blocked by...
  • wp-admin/import/greymatter.php:275 -- imported %d comment(s)
  • wp-admin/import/greymatter.php:280 -- ignored %d pre-existing comments
  • wp-admin/import/blogware.php:144 -- (%s comments)
  • wp-admin/import/livejournal.php:122 -- (%s comments)
  • wp-admin/import/mt.php:241 -- (%s comments)
  • wp-admin/import/wordpress.php:432 -- (%s comments)
  • wp-admin/import/btt.php:71 -- Done! <strong>%s</strong> posts with tags were read.
  • wp-admin/import/jkw.php:87 -- Done! <strong>%s</strong> posts with tags were read.
  • wp-admin/import/dotclear.php:529 -- Done! <strong>%s</strong> links or link categories imported
  • wp-admin/import/jkw.php:128 -- Done! <strong>%s</strong> tags were read.
  • wp-admin/import/utw.php:87 -- Done! <strong>%s</strong> tags were read.
  • wp-admin/import/mt.php:258 -- (%s pings)
  • wp-admin/import/stp.php:76 -- Done! <strong>%s</strong> tag to post relationships were read.
  • wp-admin/import/utw.php:139 -- Done! <strong>%s</strong> tag to post relationships were read.
  • wp-admin/import/stp.php:94 -- Done! <strong>%s</strong> tags where added!
  • wp-admin/import/textpattern.php:465 -- Done! <strong>%s</strong> Links imported
  • wp-admin/import/utw.php:160 -- Done! <strong>%s</strong> tags were added!

#5 @darkdragon
17 years ago

Okay. I'll create a patch, unless someone else is already doing so.

If you find any more, then post it, please.

#6 @darkdragon
17 years ago

  • Summary changed from gettext plurals to Change plurals in text to allow for translations

#7 @darkdragon
17 years ago

I can't offer a patch for the Akismet Plugin. It is not part of the WordPress Repository.

@darkdragon
17 years ago

Helper function for providing translatable plurals

#8 @darkdragon
17 years ago

  • Keywords has-patch needs-testing added; i18n texts reporter-feedback removed
  • Milestone set to 2.4

#9 @darkdragon
17 years ago

  • Keywords i18n added

#10 @darkdragon
17 years ago

  • Component changed from General to i18n

#11 @darkdragon
17 years ago

  • Keywords i18n removed

@darkdragon
17 years ago

Fixes two functions to use new wp_counted_string function

@darkdragon
17 years ago

Converted Greymatter importer to use wp_counted_string function

#12 @darkdragon
17 years ago

  • Keywords dev-feedback added

I need to know if the wp_counted_string() can be committed as a possible fix and usage in the core of WordPress. It appears that the function would be of use and was adapted from a comments-template.php function.

The function needs testing (unit tests), as well as the other patches. If the function works, which given its trivial code, it should then everything else should work just fine.

#13 @darkdragon
17 years ago

__ngettext() exists for the purpose of specifying single and plurals. It probably could be used instead to limit the usage of two many functions.

@darkdragon
17 years ago

Uses ngettext function instead of wp_counted_string function

@darkdragon
17 years ago

Uses __ngettext function instead of wp_counted_string function

@darkdragon
17 years ago

Removes wp_counted_string function and uses __ngettext() instead for pluggables file.

#14 @darkdragon
17 years ago

Closed #5164 as duplicate of this ticket. Need to remember that part of patch came from nbachiyski's patch for credit.

@darkdragon
17 years ago

Covers complete translation for plurals and covers #5164 plurals

#15 @darkdragon
17 years ago

i18n.complete.#4865.patch covers all of the known cases where gettext plurals should have been used. Should not need testing, but should be tested anyway.

The wp-admin/moderation.php and wp-admin/edit-comments.php were based off of nbachiyski's patch in #5164.

#16 @nbachiyski
17 years ago

Just put a full stop in one case for consistency and fixed a % occurrence, instead of %s.

I like throwing ideas in the evening and finding patches in the morning -- thank you, darkdragon :-)

@nbachiyski
17 years ago

Tiny fixes for darkdragon's patch

#17 @westi
17 years ago

  • Owner changed from anonymous to westi
  • Status changed from reopened to new

#18 @darkdragon
17 years ago

Thanks, I wouldn't have been able to fix this for another 8 hours.

I think actually, I disagreed with the placement of some of your patch, "Why not a full stop when the sentence is done?" Since I'm not an English major or know exactly how the page looks, I'll say whatever gets it done.

#19 @ryan
17 years ago

(In [6430]) Use ngettext() for plurals. Props darkdragon. see #4865

#20 follow-up: @darkdragon
17 years ago

  • Milestone changed from 2.4 to 2.5

Sending to the next release to keep open for more considerations of strings that should use __ngettext() to allow for translatable plurals.

#21 in reply to: ↑ 20 @lloydbudd
17 years ago

  • Milestone changed from 2.5 to 2.4
  • Resolution set to fixed
  • Status changed from new to closed

Replying to darkdragon:

Sending to the next release to keep open for more considerations of strings that should use __ngettext() to allow for translatable plurals.

Better to just open new ticket(s) for any additional phrases I think.

Note: See TracTickets for help on using tickets.