summary refs log tree commit diff
path: root/src/librustdoc/html/static
AgeCommit message (Collapse)AuthorLines
2014-06-19(doc) Properly doc hotkeys in generated docs.Zach Pomerantz-7/+7
Updated search bar to match help text. Used correct, normalized hotkeys in search. Updated shortcut menu with working shortcuts (tabs). Changed height of search help.
2014-06-13rustdoc: Larger click areas for sidebar itemsValentin Tsatskin-5/+8
* Change links to display:block for click larger targets * Remove linebreaks due to extra space * Adjust margins so that element spacing stays the same * Sidebar item hover background colour chosen from <pre> styling
2014-06-07rustdoc: More selectively remove execute linksAlex Crichton-1/+1
Closes #14723
2014-06-06rustdoc: Submit examples to play.rust-lang.orgAlex Crichton-2/+42
This grows a new option inside of rustdoc to add the ability to submit examples to an external website. If the `--markdown-playground-url` command line option or crate doc attribute `html_playground_url` is present, then examples will have a button on hover to submit the code to the playground specified. This commit enables submission of example code to play.rust-lang.org. The code submitted is that which is tested by rustdoc, not necessarily the exact code shown in the example. Closes #14654
2014-06-01rustdoc: Fix some more broken linksAlex Crichton-1/+4
2014-05-31rustdoc: Create anchor pages for primitive typesAlex Crichton-1/+2
This commit adds support in rustdoc to recognize the `#[doc(primitive = "foo")]` attribute. This attribute indicates that the current module is the "owner" of the primitive type `foo`. For rustdoc, this means that the doc-comment for the module is the doc-comment for the primitive type, plus a signal to all downstream crates that hyperlinks for primitive types will be directed at the crate containing the `#[doc]` directive. Additionally, rustdoc will favor crates closest to the one being documented which "implements the primitive type". For example, documentation of libcore links to libcore for primitive types, but documentation for libstd and beyond all links to libstd for primitive types. This change involves no compiler modifications, it is purely a rustdoc change. The landing pages for the primitive types primarily serve to show a list of implemented traits for the primitive type itself. The primitive types documented includes both strings and slices in a semi-ad-hoc way, but in a way that should provide at least somewhat meaningful documentation. Closes #14474
2014-05-31rustdoc: Show all implementors of traitsAlex Crichton-8/+6
When inlining documentation across crates, primitive implementors of traits were not shown. This commit tweaks the infrastructure to treat primitive and Path-like impls the same way, displaying all implementors everywhere. cc #14462
2014-05-25rustdoc: Move inlining to its own moduleAlex Crichton-8/+4
2014-05-25rustdoc: Get [src] links working for inlined doxAlex Crichton-0/+10
These links work by hyperlinking back to the actual documentation page with a query parameter which will be recognized and then auto-click the appropriate [src] link.
2014-05-24core: rename strbuf::StrBuf to string::StringRicho Healey-2/+2
[breaking-change]
2014-05-21rustdoc: Show types for traits across cratesAlex Crichton-0/+22
Right now, when you look in the "Implementors" section for traits, you only see implementors within that crate. This commit modifies that section to include implementors from neighboring crates as well. For example, the Container trait currently says that it is only implemented by strings and slices, but it is in fact implemented by nearly all containers. Implementation-wise, this change generates an "implementors cache" similarly to the search index where each crate will append implementors to the files. When the page for a trait is loaded, it will load its specific cache file, rendering links for all upstream types which implement the trait.
2014-05-10rustdoc: Fix search links to enums/typedefsAlex Crichton-2/+2
When the values in html::item_type were updated, the JS definitions were accidentally not updated as well. Closes #14095
2014-05-07auto merge of #13914 : alexcrichton/rust/pile-o-rustdoc-fixes, r=brsonbors-0/+0
Lots of assorted things here and there, all the details are in the commits. Closes #11712
2014-05-03rustdoc: Fix inclusion of the new fontsAlex Crichton-0/+0
These fonts were moved into place by rust's makefiles, but rustdoc is widely used outside of rustc itself. This moves the fonts into the rustdoc binary, similarly to the other static assets, and writes them to the output location whenever rustdoc generates documentation. Closes #13593 Closes #13787
2014-05-02rustdoc: escape shown input to prevent injectionAdrien Tétar-3/+6
2014-04-30rustdoc: fix overly broad selectorsAdrien Tétar-4/+3
2014-04-29auto merge of #13776 : adrientetar/rust/rustdoc-fix, r=brsonbors-26/+33
- Closes #13591. Relevant example: http://adrientetar.legtux.org/cached/rust-docs/struct.CChars.htm (Had to use `!important` to override CSS selector precedence, namely matching over parent class.) - Implement changes from #13780 feedback, namely: * Changed font-size from 18px to 15px * Reintroduced gray background for code samples * Tightened up the margins - Fix point 1 and point 4 of #13804. Samples: - [enum.FileType](http://adrientetar.legtux.org/cached/rust-docs/enum.FileType.htm) - [struct.CChars](http://adrientetar.legtux.org/cached/rust-docs/struct.CChars.htm) - [std](http://adrientetar.legtux.org/cached/rust-docs/std.htm) - [std::io](http://adrientetar.legtux.org/cached/rust-docs/io.htm). r? @brson
2014-04-28rustdoc: #13771: Make html links inside paragraphs more readableIvan Petkov-0/+4
All links inside docblocks will have their color set to `#4e8bca` (a light blue color to contrast against the black text). This color also offers a visible contrast from the surrounding text if viewed as grayscale, making it suitable for accessability. Docblock links will also be underlined when hovered over.
2014-04-29rustdoc: Make going back in browser history work after typing a search termNoam Yorav-Raphael-5/+4
2014-04-28rustdoc: fix a few inconsistenciesAdrien Tétar-8/+9
2014-04-27rustdoc: style tweaksAdrien Tétar-14/+19
2014-04-26rustdoc: refactor and unstyle inline section headersAdrien Tétar-8/+9
2014-04-25rustdoc: bring it inlineAdrien Tétar-6/+11
2014-04-25doc,rustdoc: store webfonts locallyAdrien Tétar-5/+5
- Avoids cross-domain requests restrictions - Better availability of content - No HTML queries needed for an offline build
2014-04-25rustdoc: fixesAdrien Tétar-5/+4
2014-04-20doc: unifying with rustdocAdrien Tétar-17/+23
Conflicts: src/doc/rust.md
2014-04-16auto merge of #13485 : adrientetar/rust/newrustdoc, r=brsonbors-59/+136
- Cherry-pick from #12996 - Use Fira Sans for headlines and sidebar (Light), Heuristica for the body (Adobe Utopia derivative). Both are licensed under the SIL OFL license. - A few tweaks Two examples: [modified `std`](http://adrientetar.legtux.org/cached/rust-docs/std.htm) and [modified `std::io`](http://adrientetar.legtux.org/cached/rust-docs/io.htm). cc #13484 **Blocked on graydon/rust-www#25 (for hosting of the fonts), that's showcased [here](http://adrientetar.github.io/rust-www/).** cc @brson, @TheHydroImpulse
2014-04-15rustdoc: Better sorting criteria for searching.Kang Seonghoon-51/+52
This essentially rewrites the sorting algorithm, which relied on the implementation-defined handling of non-consistent sorting function (cf. ECMA-262 5th edition, section 15.4.4.11) and was also a bit inefficient. The new criteria expands the prior criteria while adding these ones: - The current crate is always preferred over other crates. (Closes #13178) - An item with a description is preferred over one without it, if item names match. This is a heuristic assuming that the documented item is more likely to be relevant. - An item with no literal occurrence of search query is handled correctly.
2014-04-15rustdoc: add webfonts and tweak the styles accordinglyAdrien Tétar-22/+59
2014-04-14rustdoc: Omit repeated paths in the search index.Kang Seonghoon-2/+4
Since the items roughly follow the lexical order, there are many consecutive items with the same path value which can be easily compressed. For the library and compiler docs, this commit decreases the index size by 26% and 6% before and after gzip, respectively.
2014-04-14rustdoc: Get rid of `allPaths` global variable by merging it into `searchIndex`.Kang Seonghoon-14/+30
2014-04-14rustdoc: Use an array instead of an object for the search index.Kang Seonghoon-8/+12
`buildIndex` JS function recovers them into the original object form. This greatly reduces the size of the uncompressed search index (27%), while this effect is less visible after gzipped (~5%).
2014-04-14rustdoc: Represent item types as a small number in the search index.Kang Seonghoon-5/+31
Has negligible improvements with gzip, but saves about 7% without it. This also has an effect of changing the tie-breaking order of item types.
2014-04-12doc: design changes cleanupsAdrien Tétar-110/+35
Conflicts: src/librustdoc/html/layout.rs
2014-04-12fixed issuesDaniel Fagnan-17/+35
Signed-off-by: Daniel Fagnan <dnfagnan@gmail.com>
2014-04-12Tweaked the design to be a lot cleaner.Daniel Fagnan-28/+125
Signed-off-by: Daniel Fagnan <dnfagnan@gmail.com>
2014-04-10rustdoc: Clean the `initSearch` routine up.Kang Seonghoon-43/+39
2014-03-18rustdoc: Implement cross-crate searchingAlex Crichton-119/+125
A major discoverability issue with rustdoc is that all crates have their documentation built in isolation, so it's difficult when looking at the documentation for libstd to learn that there's a libcollections crate with a HashMap in it. This commit moves rustdoc a little closer to improving the multiple crate experience. This unifies all search indexes for all crates into one file so all pages share the same search index. This allows searching to work across crates in the same documentation directory (as the standard distribution is currently built). This strategy involves updating a shared file amongst many rustdoc processes, so I implemented a simple file locking API for handling synchronization for updates to the shared files. cc #12554
2014-03-12rustdoc: whitelist the headers that get a § on hover.Huon Wilson-11/+6
Previously the :hover rules were making the links to the traits/types in something like impl<K: Hash + Eq, V> ... { ... } be displayed with a trailing `§` when hovered over. This commit restricts that behaviour to specific headers, i.e. those that are known to be section headers (like those rendered in markdown doc-comments, and the "Modules", "Functions" etc. headings).
2014-03-09doc: CSS fixesAdrien Tétar-10/+7
- fixup and refactor highlighting code - have a proper print stylesheet
2014-03-09rustdoc: hardcode each header as a link.Huon Wilson-12/+13
This avoids having to include JS in the guide/tutorial/manual pages just to get the headers being links. The on-hover behaviour showing the little section marker § is preserved, because that gives a useful hint that the heading is a link.
2014-03-05rustdoc: Add anchors to section headersAlex Crichton-0/+14
This commit adds a appear-on-over link to all section headers to generated documentation. Each header also receives an id now, even those generated through markdown. The purpose of this is to provide easy to link to sections. This modifies the default header markdown generation because the default id added looks like "toc_NN" which is difficult to reconcile among all sections (by default each section gets a "toc_0" id), and it's also not very descriptive of where you're going. This chooses to adopt the github-style anchors by taking the contents of the title and hyphen-separating them (after lower casing). Closes #12681
2014-03-04rustdoc: tweak highlightingAdrien Tétar-16/+16
2014-03-02rustdoc: syntax highlight macro definitions, colour $... substitutions.Huon Wilson-0/+1
Macro definitions are just their raw source code, and so should be highlighted where possible. Also, $ident non-terminal substitutions are special, and so are worth of a little special treatment.
2014-02-23auto merge of #12484 : TheHydroImpulse/rust/fix_js, r=huonwbors-1/+1
2014-02-23rustdoc: Add syntax highlightingAlex Crichton-0/+15
This adds simple syntax highlighting based off libsyntax's lexer to be sure to stay up to date with rust's grammar. Some of the highlighting is a bit ad-hoc, but it definitely seems to get the job done! This currently doesn't highlight rustdoc-rendered function signatures and structs that are emitted to each page because the colors already signify what's clickable and I think we'd have to figure out a different scheme before colorizing them. This does, however, colorize all code examples and source code. Closes #11393
2014-02-22Fixed invalid JavaScriptDaniel Fagnan-1/+1
Signed-off-by: Daniel Fagnan <dnfagnan@gmail.com>
2014-02-21rustdoc: web: don't reset the search barCorey Richardson-4/+13
2014-02-19rustdoc: Highlight methods jumped toAlex Crichton-0/+2
This helps figure out where you actually jumped to, especially if the thing you jumped to is at the very bottom of the page. Closes #9905
2014-02-05rustdoc: update depsAdrien Tétar-7/+5