in lib/utility/elasticsearch/index/text_analysis_settings.rb [144:215]
def analyzer_definitions
definitions = {}
definitions[:i_prefix] = {
tokenizer: analysis_settings[:tokenizer_name],
filter: [
*analysis_settings[:folding_filters],
'front_ngram'
]
}
definitions[:q_prefix] = {
tokenizer: analysis_settings[:tokenizer_name],
filter: [
*analysis_settings[:folding_filters]
]
}
definitions[:iq_text_base] = {
tokenizer: analysis_settings[:tokenizer_name],
filter: [
*analysis_settings[:folding_filters],
stop_words_filter_name
]
}
definitions[:iq_text_stem] = {
tokenizer: analysis_settings[:tokenizer_name],
filter: [
*prepended_filters,
*analysis_settings[:folding_filters],
stop_words_filter_name,
stem_filter_name,
*postpended_filters
]
}
definitions[:iq_text_delimiter] = {
tokenizer: 'whitespace',
filter: [
*prepended_filters,
'delimiter',
*analysis_settings[:folding_filters],
stop_words_filter_name,
stem_filter_name,
*postpended_filters
]
}
definitions[:i_text_bigram] = {
tokenizer: analysis_settings[:tokenizer_name],
filter: [
*analysis_settings[:folding_filters],
stem_filter_name,
'bigram_joiner',
'bigram_max_size'
]
}
definitions[:q_text_bigram] = {
tokenizer: analysis_settings[:tokenizer_name],
filter: [
*analysis_settings[:folding_filters],
stem_filter_name,
'bigram_joiner_unigrams',
'bigram_max_size'
]
}
definitions
end