Rollup merge of #84150 - jsha:defer-search-js, r=GuillaumeGomez
rustdoc: move some search code into search.js This reduces main.s from 3094 lines to 1587. Also it saves some bytes of download in the case where search isn't used. There were a fair number of variables that needed to be accessible in both main.js and search.js, but I didn't want to put too many symbols in the global namespace, so I consolidated much of the search-related state and functions into a new object `window.searchState`. Demo at https://hoffman-andrews.com/rust/move-search/std/?search=foo
This commit is contained in:
commit
b5ce9c44a3
6 changed files with 1685 additions and 1696 deletions
|
@ -222,6 +222,7 @@ pub(super) fn write_shared(
|
|||
&format!(" = {}", serde_json::to_string(&themes).unwrap()),
|
||||
),
|
||||
)?;
|
||||
write_minify("search.js", static_files::SEARCH_JS)?;
|
||||
write_minify("settings.js", static_files::SETTINGS_JS)?;
|
||||
if cx.shared.include_sources {
|
||||
write_minify("source-script.js", static_files::sidebar::SOURCE_SCRIPT)?;
|
||||
|
@ -409,7 +410,7 @@ pub(super) fn write_shared(
|
|||
write_crate("search-index.js", &|| {
|
||||
let mut v = String::from("var searchIndex = JSON.parse('{\\\n");
|
||||
v.push_str(&all_indexes.join(",\\\n"));
|
||||
v.push_str("\\\n}');\ninitSearch(searchIndex);");
|
||||
v.push_str("\\\n}');\nif (window.initSearch) {window.initSearch(searchIndex)};");
|
||||
Ok(v.into_bytes())
|
||||
})?;
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue