# File lib/gilenson/gilenson.rb, line 258
   def to_html
     return '' unless @_text
     
     # NOTE: strip is Unicode-space aware on 1.9.1, so here we simulate that
     text = @_text.gsub(/[#{UNICODE_WHITESPACE}]\z/, '').gsub(/\A[#{UNICODE_WHITESPACE}]/, '')
     
     # -6. Подмухляем таблицу глифов, если нам ее передали
     glyph_table = glyph.dup
     
     if @settings["enforce_ru_quotes"]
       glyph_table[:ldquo], glyph_table[:rdquo] = glyph_table[:laquo], glyph_table[:raquo]
     elsif @settings["enforce_en_quotes"]
       glyph_table[:laquo], glyph_table[:raquo] = glyph_table[:ldquo], glyph_table[:rdquo]
     end
     
     # -5. Копируем глифы в ивары, к ним доступ быстр и в коде они глаза тоже не мозолят
     glyph_table.each_pair do | ki, wi |
       instance_variable_set("@#{ki}", wi)
     end
   
     # -4. запрет тагов html
     process_escape_html(text) unless @settings["html"]
    
     # -3. Никогда (вы слышите?!) не пущать лабуду &#not_correct_number;
     FORBIDDEN_NUMERIC_ENTITIES.dup.each_pair do | key, rep |
       text.gsub!(/&##{key};/, self.glyph[rep])
     end
      
     # -2. Чистим copy&paste
     process_copy_paste_clearing(text) if @settings['copypaste']
   
     # -1. Замена &entity_name; на входе (' ' => ' ' и т.д.)
     process_html_entities(text)
   
     # 0. Вырезаем таги
     tags = lift_ignored_elements(text) if @skip_tags
   
     # 1. Запятые и пробелы
     process_spacing(text) if @settings["spacing"]
   
     # 1. лапки
     process_quotes(text) if @settings["quotes"]
     
     # 2. ёлочки
     process_laquo(text) if @settings["laquo"]

     # 3. Инчи
     process_inches(text) if @settings["inches"]
   
     # 2b. одновременно ёлочки и лапки
     process_compound_quotes(text) if (@settings["quotes"] && @settings["laquo"])
   
     # 3. тире
     process_dash(text) if @settings["dash"]
   
     # 3a. тире длинное
     process_emdash(text) if @settings["emdash"]
   
     # 5. +/-
     process_plusmin(text) if @settings["+-"]
   
     # 5a. 12^C
     process_degrees(text) if @settings["degrees"]
   
     # 6. телефоны
     process_phones(text) if @settings["phones"]
   
     # 7. Короткие слова и  
     process_wordglue(text) if @settings["wordglue"]
   
     # 8. Склейка ласт. Тьфу! дефисов.
     process_dashglue(text) if @settings["dashglue"]
   
     # 8a. Инициалы
     process_initials(text) if @settings['initials']
   
     # 8b. Троеточия
     process_ellipsises(text) if @settings["wordglue"]
   
     # 9. Акронимы от Текстиля
     process_acronyms(text) if @settings["acronyms"]
     
     # БЕСКОНЕЧНОСТЬ. Вставляем таги обратно.
     reinsert_fragments(text, tags) if @skip_tags
   
     # фуф, закончили.
     process_span_instead_of_nobr(text) if @settings["de_nobr"]
   
     # заменяем entities на истинные символы
     process_raw_output(text) if @settings["raw_output"]
     
     text.strip
   end