about summary refs log tree commit diff
path: root/src/librustdoc/html/static
AgeCommit message (Collapse)AuthorLines
2022-04-18Remove unnecessary `elem.name.length === 0` since the rustdoc search eBNF ↵Guillaume Gomez-1/+1
does not allow elements without a name
2022-04-18Update the eBNF to allow generics bracket to not be closed if it's EOFGuillaume Gomez-1/+1
2022-04-18Handle separators in their own functions and fix missing handling of tabsGuillaume Gomez-3/+18
2022-04-18Improve the BNF description a bit and fix some issuesGuillaume Gomez-18/+44
2022-04-18Forbid rustdoc search query to end with ->Guillaume Gomez-0/+3
2022-04-18Add isIdentCharacter function to ensure that unexpected characters are ↵Guillaume Gomez-10/+29
handled correctly
2022-04-18Replace unneeded use of regex with a simple ifGuillaume Gomez-1/+4
2022-04-18Apply suggestions:Guillaume Gomez-37/+74
* Forbid generics without a path (so "<p>" is forbidden). * Change `handleSingleArg` so that it takes `results_others`, `results_in_args` and `results_returned` as arguments instead of using the "global" variables. * Change `createQueryElement` so that it returns the newly created element instead of taking `elems` as argument. * Improve documentation
2022-04-18Improve documentation and add some explanations in the codeGuillaume Gomez-9/+23
2022-04-18Simplify parser syntaxGuillaume Gomez-41/+39
2022-04-18Make query parser more strict and improve display of errorsGuillaume Gomez-51/+64
2022-04-18* Greatly improve the rustdoc search parser source codeGuillaume Gomez-398/+497
* Move all functions outside parseQuery
2022-04-18Add query syntax for the parserGuillaume Gomez-12/+71
2022-04-18* If type filter is in quotes, throw an error.Guillaume Gomez-3/+11
* If there are generics, don't allow to have quotes.
2022-04-18Improve naming of "val" fieldGuillaume Gomez-32/+32
2022-04-18Update search engine and parser to error when quotes are used on queries ↵Guillaume Gomez-58/+104
with more than one element.
2022-04-18Greatly improve rustdoc searchGuillaume Gomez-394/+602
2022-04-13Rollup merge of #93217 - willcrichton:example-analyzer, r=GuillaumeGomezDylan DPC-49/+159
Improve Rustdoc UI for scraped examples with multiline arguments, fix overflow in line numbers This PR improves a few aspects of the scrape examples feature in Rustdoc. * Only function names and not the full call expression are highlighted. * For call-sites with multiline arguments, the minimized code viewer will scroll to the top of the call-site rather than the middle if the argument is larger than the viewer size, ensuring that the function name is visible. * This fixes an issue where the line numbers column had a visible x-scroll bar. r? `@GuillaumeGomez`
2022-04-12rustdoc: discr. required+provided assoc consts+tysLeón Orell Valerian Liehr-1/+1
2022-04-06Switch item-info div to span to generate valid HTMLGuillaume Gomez-0/+4
2022-03-27Add scrape examples help pageWill Crichton-7/+41
2022-03-27Improve styling on scrape examples help buttonWill Crichton-12/+11
2022-03-27Improve alignment of additional scraped examples, add scrape examples help pageWill Crichton-40/+104
2022-03-27Improve Rustdoc UI for scraped examples with multiline arguments, fixWill Crichton-12/+25
overflow in line numbers
2022-03-19Remove animation on source sidebarGuillaume Gomez-7/+0
2022-03-13Auto merge of #94320 - GuillaumeGomez:sidebar-display, r=jshabors-3/+3
Fix sidebar elements display The bug can be seen more easily when the javascript is disabled: ![Screenshot from 2022-02-24 12-18-28](https://user-images.githubusercontent.com/3050060/155514578-cbefd3dd-f006-47e9-bc76-7c26d7e823e8.png) r? `@jsha`
2022-03-10Rollup merge of #94740 - GuillaumeGomez:unify-impl-blocks, r=notriddleMatthias Krüger-1/+1
Unify impl blocks by wrapping them into a div The blanket and "auto traits" sections are wrapped into a `div` with an ID. This PR fixes this incoherence by wrapping each impl section (the "deref impl" and the "inherent impl" sections were missing it). It'll also make some tests simpler to write. r? `````@notriddle`````
2022-03-08Unify inherent impl blocks by wrapping them into a divGuillaume Gomez-1/+1
2022-03-07Remove unneeded whitespace generation and use CSS instead instead to align ↵Guillaume Gomez-0/+3
line numbers to the right
2022-03-05Scroll when the anchor change and is linking outside of the displayed contentGuillaume Gomez-9/+7
2022-02-24Fix bad handling of the source code viewer sidebar style to prevent the ↵Guillaume Gomez-3/+3
appearance of the logo
2022-02-17Rollup merge of #93780 - GuillaumeGomez:links-in-sidebar, r=jshaMatthias Krüger-6/+5
Generate list instead of div items in sidebar Fixes #92986. Surprisingly, we didn't have much CSS for this... [Demo](https://rustdoc.crud.net/imperio/links-in-sidebar/std/index.html). r? `@jsha`
2022-02-16Unify sidebar a bit more by generating a list using <ul> instead of <div> ↵Guillaume Gomez-6/+5
elements
2022-02-16Rollup merge of #93382 - GuillaumeGomez:search-input-padding, r=jshaMatthias Krüger-1/+1
Add a bit more padding in search box As asked in https://github.com/rust-lang/rust/pull/93113#issuecomment-1021565703, here is a bit more padding. You can check it [here](https://rustdoc.crud.net/imperio/search-input-padding/foo/index.html). r? `@camelid`
2022-02-13Auto merge of #93763 - jsha:re-space-empty-impls, r=GuillaumeGomezbors-2/+3
rustdoc: fix spacing of non-toggled impl blocks We [recently removed the "up here" arrows on item-infos](https://github.com/rust-lang/rust/pull/92651), and adjusted vertical spacing so that even without the arrow, it would be visually clear which item the item-info belonged to. The new CSS styles for vertical spacing only applied to toggles, though. This missed non-toggled impl blocks - for instance, those without any methods, like https://doc.rust-lang.org/nightly/std/marker/trait.Send.html#implementors. The result was lists of implementors that were spaced too closely. This PR fixes the spacing by making it apply to non-toggled impl blocks as well. This also fixes an issue where item-infos were displayed too far below their items. That was a result of display: table on .item-info .stab. Changed that to display: inline-block. Demo: https://rustdoc.crud.net/jsha/re-space-empty-impls/std/marker/trait.Send.html Before: <img width=300 src="https://user-images.githubusercontent.com/220205/152954394-ec0b80e7-2573-4f06-9d7a-7b10b8ceac60.png"> After: <img width=300 src="https://user-images.githubusercontent.com/220205/152954228-abac1d30-a76d-4ab1-89ec-ef7549fe8c9c.png"> r? `@GuillaumeGomez`
2022-02-11Rollup merge of #93852 - GuillaumeGomez:remove-multi-query, r=jshaMatthias Krüger-97/+6
rustdoc: remove support for multi-query search This is needed by https://github.com/rust-lang/rust/pull/90630 to make feature changes non-existent. cc `@camelid` r? `@jsha`
2022-02-10Remove support for multi-query searchGuillaume Gomez-97/+6
2022-02-09rustdoc: fix spacing of non-toggled impl blocksJacob Hoffman-Andrews-2/+3
We recently removed the "up here" arrows on item-infos, and adjusted vertical spacing so that even without the arrow, it would be visually clear which item the item-info belonged to. The new CSS styles for vertical spacing only applied to toggles, though. This missed non-toggled impl blocks - for instance, those without any methods, like https://doc.rust-lang.org/nightly/std/marker/trait.Send.html#implementors. The result was lists of implementors that were spaced too closely. This PR fixes the spacing by making it apply to non-toggled impl blocks as well. This also fixes an issue where item-infos were displayed too far below their items. That was a result of display: table on .item-info .stab. Changed that to display: inline-block.
2022-02-09Unify headings indent and remove useless anchorGuillaume Gomez-21/+0
2022-02-09Add a bit more padding on search padding and reduce its font sizeGuillaume Gomez-1/+1
2022-02-08rustdoc: tweak line and ¶ spacing for a11yJacob Hoffman-Andrews-60/+52
The W3C Web Content Accessibility Guidelines specify a minimum line spacing of 1.5 and a minimum paragraph spacing of 1.5 times the line spacing. Our current line spacing (implemented by line-height) is 1.4, so it's a small bump to go up to 1.5. Similarly, we have a paragraph spacing of 0.6em. Bump that to 0.75em (which is 1.5 times the 0.5em distance between lines). Also, fix all the font sizes so instead of being round-ish numbers in rem (like 1.1rem, 1.2rem), they are round numbers in pixels. Ensure each font size is at least 2 pixels different than the nearest other font size, so distinctions can be clearly seen. Overall the font-sizes are mostly staying the same, being rounded up or down as appropriate. Remove a few unused styles. Simplify the display of the mobile-topbar location, by setting its margins to auto rather than trying to size it exactly to the topbar.
2022-02-07Fix hover effects in sidebarJacob Hoffman-Andrews-33/+18
The dark and ayu themes have a menu-like highlight on sidebar items. The light theme used to, but it was accidentally lost in the sidebar unification. The change brings back the hover effect in the light theme. It also makes the hover effect apply consistently to all links in the sidebar, including headings. It also simplifies the "In _path_" heading so it's one big link. The breadcrumbs are still readily available at the top of the page.
2022-02-07Rollup merge of #93673 - jsha:linkify-sidebar-headings, r=GuillaumeGomezMara Bos-18/+25
Linkify sidebar headings for sibling items Also adjust CSS so this doesn't produce excess padding/margin. Note: I tried and failed to write a test with browser-UI-test. First I tried to `assert-property: (".block.mod h3 a", {"href": "index.html#macros"})`. But the `href` that gets read out is the fully-quallified URL, starting with `file:///`. That URL will differ depending on what path the test is run from, so that doesn't work. Next I tried clicking on the appropriate sidebar link, and verifying that the appropriate heading on the next page is highlighted with the right background color. However, that also didn't work: according to browser-UI-test, the targeted heading was plain white. However, running with no-headless, I could see that it actually was yellow. I suspect this is a bug in the older version of Chromium used with browser-UI-test's bundled puppeteer, since it doesn't reproduce on latest Chrome. Fixes #92957 Demo: https://rustdoc.crud.net/jsha/linkify-sidebar-headings/std/string/trait.ToString.html r? ``@GuillaumeGomez``
2022-02-05Linkify sidebar headings for sibling itemsJacob Hoffman-Andrews-18/+25
Also adjust CSS so this doesn't produce excess padding/margin.
2022-02-06Rollup merge of #93659 - UltiRequiem:refactor_conditional_static_rustdoc, ↵Matthias Krüger-5/+2
r=GuillaumeGomez Refactor conditional Merge two `if` in just one.
2022-02-06Rollup merge of #92651 - jsha:impl-spacing, r=GuillaumeGomezMatthias Krüger-20/+24
Remove "up here" arrow on item-infos Use spacing to distinguish what is related to a given heading. This was originally introduced in #53043, in response to #51387. The arrow is a little distracting, and leads the item-info to not be aligned properly with the text below it. Demo: https://rustdoc.crud.net/jsha/impl-spacing/std/string/struct.String.html r? ``@GuillaumeGomez``
2022-02-04Refactor conditionalEliaz Bobadilla-5/+2
2022-02-04Rollup merge of #93576 - jsha:fix-rustdoc-html, r=GuillaumeGomezMatthias Krüger-0/+1
Emit more valid HTML from rustdoc Previously, tidy-html5 (`tidy`) would complain about a few things in our HTML. The main thing is that `<summary>` tags can't contain `<div>`s. That's easily fixed by changing out the `<div>`s for `<span>`s with `display: block`. However, there's also a rule that `<span>`s can't contain heading elements. `<span>` permits only "phrasing content" https://developer.mozilla.org/en-US/docs/Web/HTML/Element/span, and `<h3>` (and friends) are "Flow content, heading content, palpable content". https://developer.mozilla.org/en-US/docs/Web/HTML/Element/Heading_Elements We have a wrapping `<div>` that goes around each `<h3>`/`<h4>`, etc. We turn that into a `<section>` rather than a `<span>` because `<section>` permits "flow content". https://developer.mozilla.org/en-US/docs/Web/HTML/Element/section After this change we get only three warnings from tidy, run on struct.String.html: line 6 column 10790 - Warning: trimming empty <span> line 1 column 1118 - Warning: <link> proprietary attribute "disabled" line 1 column 1193 - Warning: <link> proprietary attribute "disabled" The empty `<span>` is a known issue - there's a span in front of the search box to work around a strange Safari issue. The `<link>` attributes are the non-default stylesheets. We can probably refactor theme application to avoid using this proprietary "disabled" attribute. We can suppress those warnings with flags to tidy, and get a run that returns 0 (success): ``` tidy -o /dev/null -quiet --drop-empty-elements no --warn-proprietary-attributes no build/x86_64-unknown-linux-gnu/doc/std/string/trait.ToString.html ``` Note: this requires the latest version of tidy-html5, built from https://github.com/htacg/tidy-html5. Older versions (including the default version on Ubuntu 21.10) think `<section>` can't occur inside `<summary>`. Demo: https://rustdoc.crud.net/jsha/fix-rustdoc-html/std/string/struct.String.html r? `@GuillaumeGomez`
2022-02-04Rollup merge of #92735 - GuillaumeGomez:crate-filter-url-param, r=jshaMatthias Krüger-58/+108
Add crate filter parameter in URL Fixes #92621. r? `@jsha`
2022-02-03Add filter-crate URL parameterGuillaume Gomez-47/+97