I created this analyzer: class DescriptionAnalyzer < Ferret::Analysis::Analyzer def token_stream(field, string) if field == "code" return CodeTokenStream.new(string) else return Ferret::Analysis::Analyzer.new.token_stream(field,string) end end end and created an IndexWriter with it: Ferret::Index::IndexWriter.new(get_index_path, :create => true, :analyzer => DescriptionAnalyzer.new) get_index_path is a method to calculate the path to use. The problem is that my token_stream method is never called. I'm using ferret 0.9.1 from rubygems, ruby is: ruby 1.8.4 (2005-12-24) [i486-linux] I'm running this in a rails app, but the script that creates the index only uses ActiveRecord to iterate all the records and index them. Any ideas? Greetings, Pedro.
on 2006-04-20 17:27
on 2006-04-25 09:24
Sorry Pedro, you can't create your own analyzer in 0.9.1. If you want to check out the latest version from subversion, this should work. Cheers, Dave