Sha256: 91a781787d0fee3163450f61a831f5632fb3b2ba3dc401390ca88edb1c1599c6

Contents?: true

Size: 1.8 KB

Versions: 4

Compression:

Stored size: 1.8 KB

Contents

= ffi-icu

Simple FFI wrappers for things I need from ICU. For the full thing, check out ICU4R instead.

= Gem

* http://rubygems.org/gems/ffi-icu

  gem install ffi-icu

= Dependencies

ICU. If you get messages that the library or functions are not found, you can
set some environment varibles to tell ffi-icu where to find it, i.e.:

  FFI_ICU_LIB="icui18n.so" FFI_ICU_VERSION_SUFFIX="_3_8" ruby -r ffi-icu

= Features

== Character Encoding Detection

=== Examples:

  match = ICU::CharDet.detect(str)
  match.name       # => "UTF-8"
  match.confidence # => 80

or

  detector = ICU::CharDet::Detector.new
  detector.detect(str)
  detector.close

=== Why not just use rchardet?

* this is faster
* rchardet does not work well on 1.9
* none of the rchardet forks claiming to work on 1.9 actually does

== Locale Sensitive Collation

=== Examples:

  ICU::Collation.collate("nb", %w[å æ ø]) == %w[æ ø å] #=> true

or

  collator = ICU::Collation::Collator.new("nb")
  collator.compare("a", "b")  #=> -1
  collator.greater?("z", "a") #=> true
  collator.collate(%w[å æ ø]) #=> ["æ", "ø", "å"]

= Tested on:

Platforms:

* OS X 10.6
* Debian Linux
* Arch Linux

Rubies:

* MRI 1.9.1
* MRI 1.8.7

= TODO:

* Useful ICU stuff:
  - number formatting (decimal points, thousand separators, currency)
  - date formatting
* Windows?!

== Note on Patches/Pull Requests

* Fork the project.
* Make your feature addition or bug fix.
* Add tests for it. This is important so I don't break it in a
  future version unintentionally.
* Commit, do not mess with rakefile, version, or history.
  (if you want to have your own version, that is fine but bump version in a commit by itself I can ignore when I pull)
* Send me a pull request. Bonus points for topic branches.

== Copyright

Copyright (c) 2010-2011 Jari Bakken. See LICENSE for details.

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
ffi-icu-0.0.6 README.rdoc
ffi-icu-0.0.5 README.rdoc
ffi-icu-0.0.4 README.rdoc
ffi-icu-0.0.3 README.rdoc