Полнотекстовый поиск статических файлов HTML на CD-ROM с помощью JavaScript

Найденный этим---это - собственные драйверы ATI. Используя параметры настройки системы, дополнительные драйверы, отключая драйверы ATI зафиксировали использование ЦП оболочки гнома назад, где это было.

система кажется немного медленнее в начальной загрузке графического интерфейса, но впоследствии это работает вполне хорошо---, отмечают однако, что я не использую 3-ю графику. Видеокартой является Radeon HD2400 Pro ATI.

15
задан Bambax 10 December 2009 в 01:14
поделиться

4 ответа

На самом деле я построил это сам.

Существующие решения (которые я смог найти) были неубедительными.

Я хотел иметь возможность искать в очень длинном дереве (ul / li / ul ...), который отображается как одна страница; он содержит более 5000 элементов.

Отображение такого длинного дерева на одной странице звучит немного странно, но на самом деле при свертывании / развертывании оно намного более интуитивно понятное, чем отдельные страницы, и, поскольку мы не в сети, время загрузки не является проблема (время синтаксического анализа, тем не менее, но Chrome потрясающее; -)

Функция "поиска", предоставляемая современными браузерами (во всяком случае, FF и Chrome), имеет две большие проблемы: они ищут только видимые элементы на странице, и они могут не ищите непоследовательные слова.

Я хочу иметь возможность искать свернутые элементы (не видны на экране); Я хочу найти "раз, два, три" при поиске «раз-тройка» (как в Google / Lucene); и я хочу открыть только ветви дерева, содержащие найденные элементы.

Итак, я сделал следующее:

  1. создал инвертированный индекс слов <-> id элементов из списка (через xslt) (прибл. 4500 уникальных слов в документе)
  2. преобразует этот индекс в набор массивов javascript (одно слово = один массив, содержащий идентификаторы)
  3. при поиске пересекает массивы, представленные поисковыми словами
  4. шаг 3 возвращает массив идентификаторов, которые я затем могу открыть / выделить

Он делает именно то, что мне нужно, и очень быстро. Еще лучше, поскольку он выполняет поиск из независимого «индекса» (массивов идентификаторов), он может искать, когда список даже не загружен в браузер!

и я хочу открыть только ветви дерева, содержащие найденные элементы.

Итак, я сделал следующее:

  1. создал инвертированный индекс слов <-> id элементов из списка (через xslt) (прибл. 4500 уникальных слов в документе)
  2. преобразует этот индекс в набор массивов javascript (одно слово = один массив, содержащий идентификаторы)
  3. при поиске пересекает массивы, представленные поисковыми словами
  4. шаг 3 возвращает массив идентификаторов, которые я затем могу открыть / выделить

Он делает именно то, что мне нужно, и очень быстро. Еще лучше, поскольку он выполняет поиск из независимого «индекса» (массивов идентификаторов), он может искать, когда список даже не загружен в браузер!

и я хочу открыть только ветви дерева, содержащие найденные элементы.

Итак, я сделал следующее:

  1. создал инвертированный индекс слов <-> идентификаторов элементов из списка (через xslt) (прибл. 4500 уникальных слов в документе)
  2. преобразует этот индекс в набор массивов javascript (одно слово = один массив, содержащий идентификаторы)
  3. при поиске пересекает массивы, представленные поисковыми словами
  4. шаг 3 возвращает массив идентификаторов, которые я затем могу открыть / выделить

Он делает именно то, что мне нужно, и очень быстро. Еще лучше, поскольку он выполняет поиск из независимого «индекса» (массивов идентификаторов), он может искать, когда список даже не загружен в браузер!

4500 уникальных слов в документе)
  • преобразует этот индекс в группу массивов javascript (одно слово = один массив, содержащий идентификаторы)
  • при поиске пересекает массивы, представленные поисковыми словами
  • шаг 3 возвращает массив идентификаторов, которые я затем могу открыть / выделить
  • Он делает именно то, что мне нужно, и очень быстро. Еще лучше, поскольку он выполняет поиск из независимого «индекса» (массивов идентификаторов), он может искать, когда список даже не загружен в браузер!

    4500 уникальных слов в документе)
  • преобразует этот индекс в набор массивов javascript (одно слово = один массив, содержащий идентификаторы)
  • при поиске пересекает массивы, представленные поисковыми словами
  • шаг 3 возвращает массив идентификаторов, которые я затем могу открыть / выделить
  • Он делает именно то, что мне нужно, и очень быстро. Еще лучше, поскольку он выполняет поиск из независимого «индекса» (массивов идентификаторов), он может искать, когда список даже не загружен в браузер!

    11
    ответ дан 1 December 2019 в 03:43
    поделиться

    Поисковая система Zoom может это сделать.

    Я не использовал версию на компакт-диске, но я использую версию PHP для своего веб-сайта, и она работает очень хорошо.

    2
    ответ дан 1 December 2019 в 03:43
    поделиться

    Взгляните на CLucene -

    http://sourceforge.net/projects/clucene

    http://clucene.git.sourceforge.net/git/gitweb.cgi ? p = clucene / clucene; a = summary

    Компиляция исходных текстов C ++ в консоль или исполняемый файл Win32 сделает вышеупомянутое возможным также с использованием технологии Lucene (которую, я полагаю, вы бы предпочли придерживаться).

    0
    ответ дан 1 December 2019 в 03:43
    поделиться

    Я знаю, что многие люди используют Java для написания апплетов поиска по компакт-дискам. У меня есть несколько устаревший список различных бесплатных и коммерческих программ на сайте Инструменты поиска для CD-ROM и DVD .

    1
    ответ дан 1 December 2019 в 03:43
    поделиться
    Другие вопросы по тегам:

    Похожие вопросы: