選択できるのは25トピックまでです。 トピックは、先頭が英数字で、英数字とダッシュ('-')を使用した35文字以内のものにしてください。

65 行
2.0KB

  1. We are going to model our I18N/L10N off of MediaWiki's system. Their's is
  2. obviously quite complicated, so we're going to simplify it a bit for our needs.
  3. == Caching ==
  4. MediaWiki has lots of caching mechanisms built in, which make the code somewhat
  5. more difficult to understand. Before doing any loading, MediaWiki will check
  6. the following places to see if we can be lazy:
  7. 1. $mLocalisationCache[$code] - just a variable where it may have been stashed
  8. 2. serialized/$code.ser - compiled serialized language file
  9. 3. Memcached version of file (with expiration checking)
  10. Expiration checking consists of by ensuring all dependencies have filemtime
  11. that match the ones bundled with the cached copy. Similar checking could be
  12. implemented for serialized versions, as it seems that they are not updated
  13. until manually recompiled.
  14. == Behavior ==
  15. Things that are localizable:
  16. - Weekdays (and abbrev)
  17. - Months (and abbrev)
  18. - Bookstores
  19. - Skin names
  20. - Date preferences / Custom date format
  21. - Default date format
  22. - Default user option overrides
  23. -+ Language names
  24. - Timezones
  25. -+ Character encoding conversion via iconv
  26. - UpperLowerCase first (needs casemaps for some)
  27. - UpperLowerCase
  28. - Uppercase words
  29. - Uppercase word breaks
  30. - Case folding
  31. - Strip punctuation for MySQL search
  32. - Get first character
  33. -+ Alternate encoding
  34. -+ Recoding for edit (and then recode input)
  35. -+ RTL
  36. -+ Direction mark character depending on RTL
  37. -? Arrow depending on RTL
  38. - Languages where italics cannot be used
  39. -+ Number formatting (commafy, transform digits, transform separators)
  40. - Truncate (multibyte)
  41. - Grammar conversions for inflected languages
  42. - Plural transformations
  43. - Formatting expiry times
  44. - Segmenting for diffs (Chinese)
  45. - Convert to variants of language
  46. - Language specific user preference options
  47. - Link trails [[foo]]bar
  48. -+ Language code (RFC 3066)
  49. Neat functionality:
  50. - I18N sprintfDate
  51. - Roman numeral formatting
  52. Items marked with a + likely need to be addressed by HTML Purifier
  53. vim: et sw=4 sts=4