analyzer_definitions

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