From 1999b253107e5c12c78ca2003732a9a771ee4d93 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adrien=20T=C3=A9tar?= Date: Sat, 7 Dec 2013 17:42:00 +0100 Subject: [PATCH] doc: CSS changes + commit improved favicon --- doc/manual.inc | 6 +- doc/rust.css | 335 +++++++++++++++++--------------------- doc/rust.md | 1 - mk/docs.mk | 4 +- src/etc/pkg/rust-logo.ico | Bin 94339 -> 4286 bytes 5 files changed, 153 insertions(+), 193 deletions(-) diff --git a/doc/manual.inc b/doc/manual.inc index a60ef803b5f..405dc559a12 100644 --- a/doc/manual.inc +++ b/doc/manual.inc @@ -5,8 +5,6 @@ padding-left: 2em; } #influences blockquote p:last-child { - display: block; - line-height: 1.428571429; - color: #999999; + color: #999; } - + \ No newline at end of file diff --git a/doc/rust.css b/doc/rust.css index 8b95a586030..402519162b5 100644 --- a/doc/rust.css +++ b/doc/rust.css @@ -13,99 +13,87 @@ /* Global page semantics ========================================================================== */ body { - background-color: #fff; - margin: 0 auto; - padding: 0 15px; - margin-bottom: 4em; - font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; - font-size: 14px; - color: #333; - line-height: 1.428571429; + margin: 0 auto; + padding: 0 15px; + margin-bottom: 4em; + font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; + font-size: 14px; + color: #333; + line-height: 1.428571429; } @media (min-width: 768px) { - body { - max-width: 750px; - } -} -@media (min-width: 992px) { - body { - max-width: 970px; - } -} -@media (min-width: 1200px) { - body { - max-width: 1170px; - } + body { + max-width: 750px; + } } h1, h2, h3, h4, h5, h6 { - color: black; - font-weight: 500; - line-height: 1.1; + color: black; + font-weight: 500; + line-height: 1.1; } h1, h2, h3 { - margin-top: 20px; - margin-bottom: 10px; + margin-top: 20px; + margin-bottom: 10px; } h4, h5, h6 { - margin-top: 12px; - margin-bottom: 10px; + margin-top: 12px; + margin-bottom: 10px; + padding: .2em .8em; + text-decoration: underline; } h1 { - font-size: 36px; - padding: .1em .4em; - margin: 0.67em 0; - background-color: #E9E9E9; - border-radius: .2em; + font-size: 36px; + padding: .1em .4em; + margin: 0.67em 0; + border-bottom: 2px solid #ddd; } h1.title { - line-height: 1.5em; + line-height: 1.5em; } h2 { - font-size: 30px; - padding: .2em .5em; - background-color: #E9E9E9; - border-radius: .3em; + font-size: 30px; + padding: .2em .5em; + border-bottom: 1px solid #ddd; } h3 { - font-size: 24px; - padding: .2em .5em; - background-color: #DDE8FC; - border-radius: .4em; + font-size: 24px; + padding: .2em .7em; + border-bottom: 1px solid #DDE8FC; } h4 { - font-size: 18px; + font-size: 18px; } h5 { - font-size: 16px; + font-size: 16px; } h6 { - font-size: 14px; + font-size: 14px; } p { - margin: 0 0 10px; + margin: 0 0 10px; } /* Links layout ========================================================================== */ a { - text-decoration: none; - color: #428BCA; - background: transparent; + text-decoration: none; + color: #428BCA; + background: transparent; } a:hover, a:focus { - color: #2A6496; - text-decoration: underline; + color: #2A6496; + text-decoration: underline; } a:focus { - outline: thin dotted #333; - outline: 5px auto -webkit-focus-ring-color; - outline-offset: -2px; + outline: thin dotted #333; + outline: 5px auto -webkit-focus-ring-color; + outline-offset: -2px; } a:hover, a:active { - outline: 0; + outline: 0; } h1 a:link, h1 a:visited, h2 a:link, h2 a:visited, @@ -115,193 +103,168 @@ h5 a:link, h5 a:visited {color: black;} /* Code ========================================================================== */ pre, code { - font-family: Menlo, Monaco, Consolas, "Courier New", monospace; - border-radius: 4px; + font-family: Menlo, Monaco, Consolas, "Courier New", monospace; + border-radius: 4px; } pre { - background-color: #F5F5F5; - border: 1px solid #CCC; - border-radius: 0.5em; - white-space: pre-wrap; - padding: 9.5px; - margin: 10px 0; - font-size: 13px; - word-break: break-all; - word-wrap: break-word; + background-color: #F5F5F5; + border: 1px solid #CCC; + border-radius: 0.5em; + white-space: pre-wrap; + padding: 9.5px; + margin: 10px 0; + font-size: 13px; + word-break: break-all; + word-wrap: break-word; } code { - padding: 2px 4px; - font-size: 90%; - color: #C7254E; - background-color: #F9F2F4; - white-space: nowrap; + padding: 2px 4px; + font-size: 90%; + color: #C7254E; + background-color: #F9F2F4; + white-space: nowrap; } pre code { - padding: 0; - font-size: inherit; - color: inherit; - white-space: pre-wrap; - background-color: transparent; - border-radius: 0; + padding: 0; + font-size: inherit; + color: inherit; + white-space: pre-wrap; + background-color: transparent; + border-radius: 0; } /* Code highlighting */ -.cm-s-default span.cm-keyword {color: #708;} +.cm-s-default span.cm-keyword {color: #803C8D;} .cm-s-default span.cm-atom {color: #219;} -.cm-s-default span.cm-number {color: #164;} -.cm-s-default span.cm-def {color: #00f;} +.cm-s-default span.cm-number {color: #2AA198;} +.cm-s-default span.cm-def {color: #256EB8;} .cm-s-default span.cm-variable {color: black;} -.cm-s-default span.cm-variable-2 {color: #05a;} +.cm-s-default span.cm-variable-2 {color: #817E61;} .cm-s-default span.cm-variable-3 {color: #085;} .cm-s-default span.cm-property {color: black;} .cm-s-default span.cm-operator {color: black;} -.cm-s-default span.cm-comment {color: #a50;} -.cm-s-default span.cm-string {color: #a11;} -.cm-s-default span.cm-string-2 {color: #f50;} +.cm-s-default span.cm-comment {color: #A82323;} +.cm-s-default span.cm-string {color: #866544;} +.cm-s-default span.cm-string-2 {color: #F50;} .cm-s-default span.cm-meta {color: #555;} -/*.cm-s-default span.cm-error {color: #f00;}*/ +/*.cm-s-default span.cm-error {color: #F00;}*/ .cm-s-default span.cm-qualifier {color: #555;} -.cm-s-default span.cm-builtin {color: #30a;} -.cm-s-default span.cm-bracket {color: #cc7;} +.cm-s-default span.cm-builtin {color: #30A;} +.cm-s-default span.cm-bracket {color: #CC7;} .cm-s-default span.cm-tag {color: #170;} -.cm-s-default span.cm-attribute {color: #00c;} +.cm-s-default span.cm-attribute {color: #00C;} /* The rest ========================================================================== */ #versioninfo { - text-align: center; - margin: 0.5em; - font-size: 1.1em; + text-align: center; + margin: 0.5em; + font-size: 1.1em; } @media (min-width: 768px) { - #versioninfo { - position: fixed; - bottom: 0px; - right: 0px; - } - .white-sticker { - background-color: #fff; - margin: 2px; - padding: 0 2px; - border-radius: .3em; - } + #versioninfo { + position: fixed; + bottom: 0px; + right: 0px; + } + .white-sticker { + background-color: #fff; + margin: 2px; + padding: 0 2px; + border-radius: .3em; + } } #versioninfo a.hash { - color: gray; - font-size: 70%; + color: gray; + font-size: 70%; } blockquote { - color: black; - border-left: 5px solid #eee; - margin: 0 0 20px; - padding: 10px 20px; + color: black; + border-left: 5px solid #eee; + margin: 0 0 20px; + padding: 10px 20px; } blockquote p { - font-size: 17px; - font-weight: 300; - line-height: 1.25; + font-size: 17px; + font-weight: 300; + line-height: 1.25; } blockquote p:last-child { - margin-bottom: 0; -} - -/* Make the table under the tutorial's 'Types' section look nicer */ -table { - border-top: 1px solid silver; - border-bottom: 1px solid silver; - padding: 0.8em; - font-size: smaller; -} -/* Also for the benefit of the type table */ -td { - padding-right: 1em; + margin-bottom: 0; } ul, ol { - margin-top: 0; - margin-bottom: 10px; + margin-top: 0; + margin-bottom: 10px; } ul ul, ol ul, ul ol, ol ol { - margin-bottom: 0; + margin-bottom: 0; } dl { - margin-bottom: 20px; + margin-bottom: 20px; } dd { - margin-left: 0; + margin-left: 0; } #TOC ul { - list-style-type: none; - padding-left: 0px; -} -/* Only display one level of hierarchy in the TOC */ -#TOC ul ul { - display: none; -} - -/* Adjust list alignment so rustdoc indexes don't align with blockquotes */ -div.index ul { - padding-left: 1em; -} - -div.section.level3 { - margin-left: 1em; + list-style-type: none; + padding-left: 0px; } sub, sup { - font-size: 75%; - line-height: 0; - position: relative; + font-size: 75%; + line-height: 0; + position: relative; } hr { - margin-top: 20px; - margin-bottom: 20px; - border: 0; - border-top: 1px solid #eeeeee; + margin-top: 20px; + margin-bottom: 20px; + border: 0; + border-top: 1px solid #eeeeee; } @media print { - * { - text-shadow: none !important; - color: #000 !important; - background: transparent !important; - box-shadow: none !important; - } - a, a:visited { - text-decoration: underline; - } - a[href]:after { - content: " (" attr(href) ")"; - } - a[href^="javascript:"]:after, a[href^="#"]:after { - content: ""; - } - pre, blockquote { - border: 1px solid #999; - page-break-inside: avoid; - } - @page { - margin: 2cm .5cm; - } - p, h2, h3 { - orphans: 3; - widows: 3; - } - h2, h3 { - page-break-after: avoid; - } - table { - border-collapse: collapse !important; - } - table td, table th { - background-color: #fff !important; - } + * { + text-shadow: none !important; + color: #000 !important; + background: transparent !important; + box-shadow: none !important; + } + a, a:visited { + text-decoration: underline; + } + a[href]:after { + content: " (" attr(href) ")"; + } + a[href^="javascript:"]:after, a[href^="#"]:after { + content: ""; + } + pre, blockquote { + border: 1px solid #999; + page-break-inside: avoid; + } + @page { + margin: 2cm .5cm; + } + p, h2, h3 { + orphans: 3; + widows: 3; + } + h2, h3 { + page-break-after: avoid; + } + table { + border-collapse: collapse !important; + } + table td, table th { + background-color: #fff !important; + } } diff --git a/doc/rust.md b/doc/rust.md index 7368ba2b7e7..87ba6c7d1f8 100644 --- a/doc/rust.md +++ b/doc/rust.md @@ -319,7 +319,6 @@ r##"foo #"# bar"##; // foo #"# bar #### Number literals ~~~~ {.ebnf .gram} - num_lit : nonzero_dec [ dec_digit | '_' ] * num_suffix ? | '0' [ [ dec_digit | '_' ] * num_suffix ? | 'b' [ '1' | '0' | '_' ] + int_suffix ? diff --git a/mk/docs.mk b/mk/docs.mk index 412981add6c..98cfed8b1e0 100644 --- a/mk/docs.mk +++ b/mk/docs.mk @@ -15,8 +15,8 @@ DOCS := DOCS_L10N := -BASE_DOC_OPTS := --from=markdown --standalone --toc --number-sections --include-before-body=doc/version_info.html -HTML_OPTS = $(BASE_DOC_OPTS) --to=html5 --section-divs --css=rust.css --include-in-header=doc/favicon.inc +BASE_DOC_OPTS := --from=markdown --standalone --toc --number-sections +HTML_OPTS = $(BASE_DOC_OPTS) --to=html5 --section-divs --css=rust.css --include-before-body=doc/version_info.html --include-in-header=doc/favicon.inc TEX_OPTS = $(BASE_DOC_OPTS) --to=latex EPUB_OPTS = $(BASE_DOC_OPTS) --to=epub diff --git a/src/etc/pkg/rust-logo.ico b/src/etc/pkg/rust-logo.ico index 4749b398c2d2c063219f8e5b5c99bf1547ec0d99..e8e1f18df224101e38632043cfd043cdd329c4b3 100644 GIT binary patch literal 4286 zcmcgwYfO|!6kXFM{nIqsG%boeL_<+P4I&DNq99H1RcHdHMi(E@O2PVw6iF2j{86Pu zPzhF1gR&(kC~OSSkQkI$9x1iP0tO!l3)?j%YpJbELAK{?z2xiXE<(~2bGh@)+u*Pd!T3Wg-IXPKpHk+sT`}-SQTwJXC_wUc2Hf@@f!Z!OjMw_Ih zBprRmi*L^kIB!>1S4VT~z<~oti9ct~9J9N-`{4BH)2)=LQ>WVaot>Sn6pqn`ZNzkx zzQiDwJ&v*Zo<4p0COLzGg6?BpJ;dZ($?4?eWD~a4-?U+D3l=QsUA%bl16Nm9E3wAn zQjRq@H-}ujcu{-(`t@+)Fa~mylU(!W%`hj>8;T(t! zT%+2jq@*MvJ3IR@;_ViG?4@5eZ{B=))22=O#Kgpsn3$Nlu&}V7loA>mdZ(_gE>iGt z);^4gi1>lF+qZB3cK!PGwQ+HAmBf;K;w*J%Wn~@4oD#$jxvgT(g_~OJU!|EF;uwua znEtb7jx=+?+)^;ND&eQbc{RzHXh%58{^H`|Pw0R4?Ab(R|5$CThe^0kpFX{F&6+ih zvu4eD#(8s(1P2FqQcyqcBQHa0EYzgVsHmv=$jHbh?rCDBq@)z8?fAWP>C!eYFE6u< zac(%*&sMKq-FWKMsh!7?4w{W+SXHIU=0;K(WrSzj~_pNk8Rf9mSO6X#AI$-nGB-c#_igolUUh92Cp zV@EM#Shj3gyYPy}zWto%y{D(gt*@`onRSwTK*mL*rhUab3Fqskr>Ext^!KR8f03VY zkh`d;XeZ7>6ZoH_)>V^p@7}%N;Jz7Ro9jqhir}&)OMXPNrpvhK88c>BShwlRdz!Z3 zx()szoaU*pr!Y6vN=|iK&7u637^!7{k%PFjqo#1*OAI=l z&UXI<1_pK`@1r(q-idrKU%ve3Cr_SCCP#aFyARi&^CAcDI^KE0FB*H@sLTWIxAs-5 zRy8AcU9S?H(?{?(peDEE=jW#hCf^}GK0d!Pc47mkPsWrQcV`Ue4jINCwb`y)x9;Y6 z-;S&`!^6X`DKQ5I2Hsk+V#OWd2JSFpz`N|F_s5I(mn+|2w2>Hi9y>ZZyp_1p<{5Mp zUrS3%5a#+wxQR(@gTdfx@BJm1<>lqt7kOX|BlM%BrKJ_HhKk*-TetjWFY%ot{j{O2 z>=j^*VqCg(Nh@}aG~y0n3^#7v2xlD31GU7lapT77+}zv@)+pTlpQ4?Pv-?|KUf!1* zHf*SonCK&ZzzXBLn%Itb)&0yXYBcX}z5{IMLW#+E#7API7903HLJjF;{EpU0{OxJ3 zQEhFl?Jhic@ZeF@GArv7>d~NZ;Js=>P4DM7xe@OmZTOv;nQ6OUi80oC+v8UE;qQiR zxKDIA&r|UBF(CK6Kk^w9g>ClXY#V5^Yu7FvebhMr#W(&2N*mrP* literal 94339 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