<commit_before>taglib-ruby
===========

Ruby interface for the [TagLib C++ library][taglib].

In contrast to other libraries, this one wraps the full C++ API using
SWIG, not only the minimal C API. This means that all tags can be
accessed.

taglib-ruby is work in progress, here are some of the things still left
to do (contributors very welcome):

* Pre-compiled Gem for Windows
* More coverage of the library besides ID3v2

Installation
------------

Before you install the gem, make sure to have [taglib][taglib] installed
with header files (and a C++ compiler of course):

* Debian/Ubuntu: `sudo apt-get install libtag1-dev`
* Fedora/RHEL: `sudo yum install taglib-devel`
* Brew: `brew install taglib`
* MacPorts: `sudo port install taglib`

Then do:

    gem install taglib-ruby

Usage
-----

Here's an example for reading an ID3v2 tag:
<commit_msg>Add link to API documentation on rubydoc.info<commit_after>taglib-ruby
===========

Ruby interface for the [TagLib C++ library][taglib].

In contrast to other libraries, this one wraps the full C++ API using
SWIG, not only the minimal C API. This means that all tags can be
accessed.

taglib-ruby is work in progress, here are some of the things still left
to do (contributors very welcome):

* Pre-compiled Gem for Windows
* More coverage of the library besides ID3v2

Installation
------------

Before you install the gem, make sure to have [taglib][taglib] installed
with header files (and a C++ compiler of course):

* Debian/Ubuntu: `sudo apt-get install libtag1-dev`
* Fedora/RHEL: `sudo yum install taglib-devel`
* Brew: `brew install taglib`
* MacPorts: `sudo port install taglib`

Then do:

    gem install taglib-ruby

Usage
-----

Complete API documentation can be found here:

http://rubydoc.info/gems/taglib-ruby/frames

What follows are some examples of how to use taglib-ruby. Here's how to
read an ID3v2 tag:

{'fraction_non_alphanumeric': 0.10005321979776477, 'fraction_numerical': 0.005321979776476849, 'mean_word_length': 3.9473684210526314, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '843297', 'n_tokens_mistral': 598, 'n_tokens_neox': 552, 'n_words': 261}