DataparkSearch Engine 4.49: Поисковая машина; Справочное руководство | ||
---|---|---|
Пред. | Глава 8. Поиск документов | След. |
Когда DataparkSearch используется с поддержкой ispell, для расширения поискового запроса нахождятся все грамматические формы введенных слов. При индексировании все найденные слова сохраняются в базе, а при поиске для каждого введенного слова находятся все его грамматические формы и уже с учетом всех этих форм производится поиск документов. Т.е., поисковик будет искать слово "test", если в качестве запроса введены слова "testing" или "tests".
DataparkSearch понимает два типа файлов ispell: файлы аффиксов и файлы словарей. Файл аффиксов Ispell состоит из правил для слов и имеет примерно такой формат:
Flag V: E > -E, IVE # As in create> creative [^E] > IVE # As in prevent > preventive Flag *N: E > -E, ION # As in create > creation Y > -Y, ICATION # As in multiply > multiplication [^EY] > EN # As in fall > fallen
Файл словаря Ispell содержит сами слова и имеет следующий формат:
wop/S word/DGJMS wordage/S wordbook wordily wordless/P
Для использования ispell в DataparkSearch необходимо задать команды Affix и Spell в search.htm. Формат этих команд:
Affix [язык] [кодировка] [имя файла аффиксов ispell] Spell [язык] [кодировка] [имя файла словаря ispell]
Первый параметр обоих команд - стандартный двуюуквенный код языка. Воторой - имя кодировки, при помощи которой закодированы файлы ispell. Третий параметр указывает имя файла, абсолютное, или отностительно поддиректории etc/ корневой директории DataparkSearch
Замечание: Поддерживает загрузка данных для нескольких языков, например:
Affix en iso-8859-1 en.aff Spell en iso-8859-1 en.dict Affix de iso-8859-1 de.aff Spell de iso-8859-1 de.dictБудет загружена поддержка для английского и немецкого языков.
Если используется searchd, эти команды следует указывать в searchd.conf.
Если DataparkSearch используется с поддержкой ispell, рекомендуется исопльзовать searchd, особенно для поддержки нескольких языков. Иначе время запуска search.cgi увеличивается.
Возможно, на ваших страницах встретяться несколько редких слов, не включённых в словари ispell. В этом случае для построения всех форма слова выбирается запись с максимально совпадающим суффиксом.
Вы также можете создать список таких слов по одному на каждую строку:
rare.dict: ---------- webmaster intranet ....... www http ---------
Вы также можете указать флаги ispel для этих слов (описание флагов ispel смотрите в документации ISpell) для поиска всех словоформ, например, "webmaster" и "webmasters". Попробуйте найти в словарях ispel слово с таким же способом образования различных форм и скопировать его флаги для нового слова. Например, словарь английского языка содержит такую строчку:
postmaster/MS
Таким образом, webmaster с флагом MS, возможно будет правильным:
webmaster/MS
Скопируйте составленный вами словарь в поддиректорию /etc корневой директории установки DataparkSearch и добавьте соответсвующие команды в файл конфигурации.
Вы можете найти файлы Ispell для многих языков на этой странице.
Для японского языка созданы квази-Ispell файлы, предназначенные для использования только с DataparkSearch. Вы можете скачать эти файлы с нашего веб-сервера или с одного из наших зеркал. См. Разд. 1.2.
Когда DataparkSearch используется с поддержкой aspell, возможно автоматическое расширение поискового запроса вариантами слов с исправленым правописанием. Чтобы включить эту возможность, необходимо установить Aspell на вашу систему до сборки DataparkSearch. Чтобы включить эту возможность, необходимо добавить команду AspellExtensions yes в файлы конфигурации indexer.conf и search.htm (или searchd.conf, если используется searchd).
Автоматиская корректировка правописания при поиске происходит только при установке параметра поиска sp, см. Разд. 8.1.2.
Файлы синонимов устанавливаются в поддиректорию etc/synonym относительно корневой директории установки DataparkSearch. Большие файлы синонимов для некоторых языков вы должны скачать отдельно с нашего сайта или с одного из наших зеркал, см. Разд. 1.2.
Для включения поддержки синонимов, добавьте в шаблон поиска search.htm команды вида Synonym <filename>, например:
Synonym synonym/english.syn Synonym synonym/russian.syn
Имена файлов могут быть абсолютными (если имена начинаются с /), либо относительными поддиректории etc установки DataparkSearch.
Если используется searchd, добавьте эти команды вместо шаблона поиска в searchd.conf.
Вы можете создавать свои собственные списки синонимов. В качестве примера вы можете взять файл синонимов английского языка. В начале файла укажите следующие две команды:
Language: en Charset: us-ascii
Language - стандартный (ISO 639) двубуквенный код языка.
Charset - любая кодировка, поддерживаемая DataparkSearch (see Разд. 7.1). Список синонимов должен быть закодирован с использованием этой кодировки.
Дополнительно вы можете указать в списке синонимов команду:
Thesaurus: yes
Эта команда включает режим тезауруса для списка синонимов. В этом режиме только слова, расположенные на одной строке считаются синонимами.
Начиная с версии 4.17 DataparkSearch также поддерживает нечувствительный к акцентам над буквами поиск.
Чтобы включить поддержку этой возможности, используйте команду AccentExtensions в вашем шаблоне search.htm (или в файле конфигурации searchd.conf, если используется searchd) для автоматического построений копий слов из запроса без учёта акцентов над буквами, и в вашем файле конфигурации indexer.conf для автоматического добавления таких копий в базу.
AccentExtensions yes
Если команда AccentExtensions в файле конфигурации указана перед командами Spell и Affix, то копия этих данных без учёта акцентов над буквами будет загружаться автоматически.
Начиная с версии 4.30 поддерживается нечёткий поиск на основе акронимов и аббревиатур.
Файлы акронимов и аббревиатур устанавливаются в поддиректорию etc/acronym относительно корневой директории установки DataparkSearch.
Для включения поддержки акронимов и аббревиатур, добавьте в шаблон поиска search.htm команды вида Acronym <filename>, например:
Acronym acronym/en.fido.acr Acronym acronym/en.acr
Имена файлов могут быть абсолютными (если имена начинаются с /), либо относительными поддиректории etc установки DataparkSearch.
Если используется searchd, добавьте эти команды вместо шаблона поиска в searchd.conf.
Вы можете создавать свои собственные списки синонимов. В качестве примера вы можете взять файл синонимов английского языка. В начале файла укажите следующие две команды:
Language: en Charset: us-ascii
Language - стандартный (ISO 639) двубуквенный код языка.
Charset - любая кодировка, поддерживаемая DataparkSearch (see Разд. 7.1). Список синонимов должен быть закодирован с использованием этой кодировки.
Пожалуйста, присылайте ваши списки синонимаов на адрес <maxime@maxime.net.ru>.
Пред. | Начало | След. |
Кэш результатов поиска | Уровень выше | Разное |