diff --git a/src/librustdoc/html/static/main.js b/src/librustdoc/html/static/main.js
index be5025936a2c6..7e1e2ae77655d 100644
--- a/src/librustdoc/html/static/main.js
+++ b/src/librustdoc/html/static/main.js
@@ -669,6 +669,18 @@
search();
}
+ function plainSummaryLine(markdown) {
+ var str = markdown.replace(/\n/g, ' ')
+ str = str.replace(//g, ">")
+ str = str.replace(/"/g, """)
+ str = str.replace(/'/g, "'")
+ str = str.replace(/^#+? (.+?)/, "$1")
+ str = str.replace(/\[(.*?)\]\(.*?\)/g, "$1")
+ str = str.replace(/\[(.*?)\]\[.*?\]/g, "$1")
+ return str;
+ }
+
index = buildIndex(rawSearchIndex);
startSearch();
@@ -691,7 +703,7 @@
}
var desc = rawSearchIndex[crates[i]].items[0][3];
div.append($('', {'href': '../' + crates[i] + '/index.html',
- 'title': desc.replace(/\n/g, ' '),
+ 'title': plainSummaryLine(desc),
'class': klass}).text(crates[i]));
}
sidebar.append(div);