X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=_static%2Fsearchtools.js;h=5ff318066d83f9da7a5a97f34f7d78e1a7696c7c;hb=a1703e82caca2896043069bf8e9db85451e7f3d5;hp=edef8acf5c1bc6e87a5738fb9d7e9a3f12721da5;hpb=b997cdd3e15a2c10dbbdf3383a64bfb0a405461e;p=awesomized%2Flibmemcached
diff --git a/_static/searchtools.js b/_static/searchtools.js
index edef8acf..5ff31806 100644
--- a/_static/searchtools.js
+++ b/_static/searchtools.js
@@ -4,7 +4,7 @@
*
* Sphinx JavaScript utilities for the full-text search.
*
- * :copyright: Copyright 2007-2020 by the Sphinx team, see AUTHORS.
+ * :copyright: Copyright 2007-2019 by the Sphinx team, see AUTHORS.
* :license: BSD, see LICENSE for details.
*
*/
@@ -36,10 +36,8 @@ if (!Scorer) {
// query found in title
title: 15,
- partialTitle: 7,
// query found in terms
- term: 5,
- partialTerm: 2
+ term: 5
};
}
@@ -58,14 +56,6 @@ var Search = {
_queued_query : null,
_pulse_status : -1,
- htmlToText : function(htmlString) {
- var htmlElement = document.createElement('span');
- htmlElement.innerHTML = htmlString;
- $(htmlElement).find('.headerlink').remove();
- docContent = $(htmlElement).find('[role=main]')[0];
- return docContent.textContent || docContent.innerText;
- },
-
init : function() {
var params = $.getQueryParameters();
if (params.q) {
@@ -130,7 +120,7 @@ var Search = {
this.out = $('#search-results');
this.title = $('
' + _('Searching') + '
').appendTo(this.out);
this.dots = $('').appendTo(this.title);
- this.status = $('
').appendTo(this.out);
+ this.status = $('').appendTo(this.out);
this.output = $('').appendTo(this.out);
$('#search-progress').text(_('Preparing search...'));
@@ -245,7 +235,7 @@ var Search = {
if (results.length) {
var item = results.pop();
var listItem = $('');
- if (DOCUMENTATION_OPTIONS.BUILDER === 'dirhtml') {
+ if (DOCUMENTATION_OPTIONS.FILE_SUFFIX === '') {
// dirhtml builder
var dirname = item[0] + '/';
if (dirname.match(/\/index\/$/)) {
@@ -269,7 +259,11 @@ var Search = {
displayNextItem();
});
} else if (DOCUMENTATION_OPTIONS.HAS_SOURCE) {
- $.ajax({url: DOCUMENTATION_OPTIONS.URL_ROOT + item[0] + DOCUMENTATION_OPTIONS.FILE_SUFFIX,
+ var suffix = DOCUMENTATION_OPTIONS.SOURCELINK_SUFFIX;
+ if (suffix === undefined) {
+ suffix = '.txt';
+ }
+ $.ajax({url: DOCUMENTATION_OPTIONS.URL_ROOT + '_sources/' + item[5] + (item[5].slice(-suffix.length) === suffix ? '' : suffix),
dataType: "text",
complete: function(jqxhr, textstatus) {
var data = jqxhr.responseText;
@@ -319,13 +313,12 @@ var Search = {
for (var prefix in objects) {
for (var name in objects[prefix]) {
var fullname = (prefix ? prefix + '.' : '') + name;
- var fullnameLower = fullname.toLowerCase()
- if (fullnameLower.indexOf(object) > -1) {
+ if (fullname.toLowerCase().indexOf(object) > -1) {
var score = 0;
- var parts = fullnameLower.split('.');
+ var parts = fullname.split('.');
// check for different match types: exact matches of full name or
// "last name" (i.e. last dotted part)
- if (fullnameLower == object || parts[parts.length - 1] == object) {
+ if (fullname == object || parts[parts.length - 1] == object) {
score += Scorer.objNameMatch;
// matches in last name
} else if (parts[parts.length - 1].indexOf(object) > -1) {
@@ -392,19 +385,6 @@ var Search = {
{files: terms[word], score: Scorer.term},
{files: titleterms[word], score: Scorer.title}
];
- // add support for partial matches
- if (word.length > 2) {
- for (var w in terms) {
- if (w.match(word) && !terms[word]) {
- _o.push({files: terms[w], score: Scorer.partialTerm})
- }
- }
- for (var w in titleterms) {
- if (w.match(word) && !titleterms[word]) {
- _o.push({files: titleterms[w], score: Scorer.partialTitle})
- }
- }
- }
// no match but word was a required one
if ($u.every(_o, function(o){return o.files === undefined;})) {
@@ -424,7 +404,7 @@ var Search = {
for (j = 0; j < _files.length; j++) {
file = _files[j];
if (!(file in scoreMap))
- scoreMap[file] = {};
+ scoreMap[file] = {}
scoreMap[file][word] = o.score;
}
});
@@ -432,7 +412,7 @@ var Search = {
// create the mapping
for (j = 0; j < files.length; j++) {
file = files[j];
- if (file in fileMap && fileMap[file].indexOf(word) === -1)
+ if (file in fileMap)
fileMap[file].push(word);
else
fileMap[file] = [word];
@@ -444,12 +424,8 @@ var Search = {
var valid = true;
// check if all requirements are matched
- var filteredTermCount = // as search terms with length < 3 are discarded: ignore
- searchterms.filter(function(term){return term.length > 2}).length
- if (
- fileMap[file].length != searchterms.length &&
- fileMap[file].length != filteredTermCount
- ) continue;
+ if (fileMap[file].length != searchterms.length)
+ continue;
// ensure that none of the excluded terms is in the search result
for (i = 0; i < excluded.length; i++) {
@@ -480,8 +456,7 @@ var Search = {
* words. the first one is used to find the occurrence, the
* latter for highlighting it.
*/
- makeSearchSummary : function(htmlText, keywords, hlwords) {
- var text = Search.htmlToText(htmlText);
+ makeSearchSummary : function(text, keywords, hlwords) {
var textLower = text.toLowerCase();
var start = 0;
$.each(keywords, function() {