Google Code Search | |
URL | http://www.google.com/codesearch (архивная копия) |
---|---|
Тип сайта | Поиск по исходным кодам |
Владелец | |
Начало работы | 2006[1] |
Окончание работы | 2012[2] |
Текущий статус | Используется для поиска в рамках проектов, размещенных на Google Code |
Google Code Search — проект поисковой машины от Google Labs, индексировавшей исходные коды открытых программ, и позволявшей использовать в поисковых запросах регулярные выражения[1]. В виде бета-версии работал с 5 октября 2006 года по 15 января 2012 года[2]. Закрыт в связи с закрытием Google Labs.
Кроме поддержки регулярных выражений[1], имелась возможность более точного поиска с помощью специальных операторов. Среди них: lang: (указание языка программирования[1]), package: (имя проекта), license: (лицензия[1]) и file: (имя файла).
Индексировался код программ, хранившихся в различных форматах, включая tar.gz, tar.bz2, .tar, .zip, репозитории CVS и Subversion.
В ограниченном виде наработки Google Code Search продолжают использоваться для поиска в рамках кодов проекта Chromium, код которого расположен на сайте Google Code.[3]
Автором проекта, Russ Cox, была опубликована пара консольных утилит Cindex/Csearch, предоставляющая возможность индексирования и поиска по исходным кодам. Утилиты используют схожие с Google Code Search принципы, хотя не могут масштабироваться более чем на несколько десятков гигабайт исходников.[4]
Сайт позволял использовать регулярные выражения в запросах и искал любые символы (в отличие от обычных поисковиков, которые игнорируют нетекстовые символы[5]). На момент создания такими возможностями не обладали другие поисковые системы. Это делало его похожим на программу grep, который выполняет поиск по огромной базе открытого исходного кода. Используется поиск на базе индекса триграмм и собственной реализации POSIX-совместимых регулярных выражений — RE2, написанной Russ Cox.[6] Исходные коды RE2 были открыты в марте 2010 .[7]
Google Code Search поддерживал POSIX-расширенный синтаксис регулярных выражений, за исключением обратных ссылок, сопоставления элементов и сортировки классов.[8]
В этой статье не хватает ссылок на источники информации. |