[libcamera-devel,4/8] Documentation: Generate local TOC on demand

Message ID 20191021102453.26471-4-laurent.pinchart@ideasonboard.com
State Accepted
Commit 33ae55c3cdfe78de2e5c9e53c95eb35cc6f3e068
Headers show
Series
  • [libcamera-devel,1/8] Documentation: Move coding style under contributing
Related show

Commit Message

Laurent Pinchart Oct. 21, 2019, 10:24 a.m. UTC
All pages are generated with a local TOC, which is pointless on simple
pages such as the front page, or other pages containing little content.
Use the .. contents:: :local: directive instead to generate the local
TOC on demand, and remove the automatic local TOC generation. Only the
Docs page uses a local TOC.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
---
 Documentation/docs.rst                   |  3 ++
 Documentation/theme/layout.html          |  5 ----
 Documentation/theme/static/css/theme.css | 38 ++++++++++++++++--------
 3 files changed, 29 insertions(+), 17 deletions(-)

Comments

Kieran Bingham Oct. 21, 2019, 11:03 a.m. UTC | #1
Hi Laurent,

On 21/10/2019 11:24, Laurent Pinchart wrote:
> All pages are generated with a local TOC, which is pointless on simple
> pages such as the front page, or other pages containing little content.
> Use the .. contents:: :local: directive instead to generate the local
> TOC on demand, and remove the automatic local TOC generation. Only the
> Docs page uses a local TOC.
> 

Agreed, the superfluous TOCs are overkill.

Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>

> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
> ---
>  Documentation/docs.rst                   |  3 ++
>  Documentation/theme/layout.html          |  5 ----
>  Documentation/theme/static/css/theme.css | 38 ++++++++++++++++--------
>  3 files changed, 29 insertions(+), 17 deletions(-)
> 
> diff --git a/Documentation/docs.rst b/Documentation/docs.rst
> index 7a3977c13110..7cb6059616fd 100644
> --- a/Documentation/docs.rst
> +++ b/Documentation/docs.rst
> @@ -1,3 +1,6 @@
> +.. contents::
> +   :local:
> +
>  *************
>  Documentation
>  *************
> diff --git a/Documentation/theme/layout.html b/Documentation/theme/layout.html
> index a5cc2776adf5..139c39c7cc38 100644
> --- a/Documentation/theme/layout.html
> +++ b/Documentation/theme/layout.html
> @@ -100,11 +100,6 @@
>    </header>
>  
>    <div id="content">
> -    <div class="local-toc">
> -      <div class="toc-title">Contents</div>
> -      {{ toc }}
> -    </div>
> -
>      {# PAGE CONTENT #}
>      <div class="block">
>        {% block body %}{% endblock %}
> diff --git a/Documentation/theme/static/css/theme.css b/Documentation/theme/static/css/theme.css
> index 047aff07dddb..4901bbf564f7 100644
> --- a/Documentation/theme/static/css/theme.css
> +++ b/Documentation/theme/static/css/theme.css
> @@ -24,6 +24,10 @@ a.headerlink {
>  	visibility: hidden;
>  }
>  
> +a.toc-backref {
> +	text-decoration: none;
> +}
> +
>  h1:hover a.headerlink,
>  h2:hover a.headerlink,
>  h3:hover a.headerlink,
> @@ -206,37 +210,47 @@ div#content {
>  div#content > div.block {
>  	font-size: 16px;
>  	margin-right: 0px;
> -	margin-left: 20px;
> -	max-width: 800px;
> -	padding: 20px 60px 0px 60px;
> +	margin-left: 0px;
> +	max-width: 1280px;
> +	padding: 0px 60px 0px 60px;
>  	text-align: justify;
> -	width: 70%;
>  }
>  
>  div#content > div.block h1 {
>  	color: black;
>  	font-size: 40px;
> +	margin-top: 0px;
>  	text-align: left;
>  }
>  
> -div.local-toc {
> +div#content > div.block > div.section {
> +	max-width: 800px;
> +}
> +
> +div.local.topic {
>  	float: right;
>  	background-color: #fcfcff;
>  	border: 1px dotted #4896e0;
> -	margin-right: 100px;
> +	margin-left: 20px;
> +	margin-right: 0px;
> +	max-width: 15em;
>  	padding: 10px 20px 10px 10px;
> +	text-align: left;
>  }
>  
> -div.toc-title {
> -	font-weight: bold;
> -}
> -
> -div.local-toc ul {
> +div.local.topic ul {
>  	padding-left: 20px;
>  	margin-bottom: 5px;
>  }
>  
> -div.local-toc a {
> +div.local.topic > ul:before {
> +	content: "Contents";
> +	display: block;
> +	font-weight: bold;
> +	margin-bottom: 10px;
> +}
> +
> +div.local.topic a {
>  	font-weight: normal;
>  	padding-left: 10px;
>  	text-decoration: none;
>

Patch

diff --git a/Documentation/docs.rst b/Documentation/docs.rst
index 7a3977c13110..7cb6059616fd 100644
--- a/Documentation/docs.rst
+++ b/Documentation/docs.rst
@@ -1,3 +1,6 @@ 
+.. contents::
+   :local:
+
 *************
 Documentation
 *************
diff --git a/Documentation/theme/layout.html b/Documentation/theme/layout.html
index a5cc2776adf5..139c39c7cc38 100644
--- a/Documentation/theme/layout.html
+++ b/Documentation/theme/layout.html
@@ -100,11 +100,6 @@ 
   </header>
 
   <div id="content">
-    <div class="local-toc">
-      <div class="toc-title">Contents</div>
-      {{ toc }}
-    </div>
-
     {# PAGE CONTENT #}
     <div class="block">
       {% block body %}{% endblock %}
diff --git a/Documentation/theme/static/css/theme.css b/Documentation/theme/static/css/theme.css
index 047aff07dddb..4901bbf564f7 100644
--- a/Documentation/theme/static/css/theme.css
+++ b/Documentation/theme/static/css/theme.css
@@ -24,6 +24,10 @@  a.headerlink {
 	visibility: hidden;
 }
 
+a.toc-backref {
+	text-decoration: none;
+}
+
 h1:hover a.headerlink,
 h2:hover a.headerlink,
 h3:hover a.headerlink,
@@ -206,37 +210,47 @@  div#content {
 div#content > div.block {
 	font-size: 16px;
 	margin-right: 0px;
-	margin-left: 20px;
-	max-width: 800px;
-	padding: 20px 60px 0px 60px;
+	margin-left: 0px;
+	max-width: 1280px;
+	padding: 0px 60px 0px 60px;
 	text-align: justify;
-	width: 70%;
 }
 
 div#content > div.block h1 {
 	color: black;
 	font-size: 40px;
+	margin-top: 0px;
 	text-align: left;
 }
 
-div.local-toc {
+div#content > div.block > div.section {
+	max-width: 800px;
+}
+
+div.local.topic {
 	float: right;
 	background-color: #fcfcff;
 	border: 1px dotted #4896e0;
-	margin-right: 100px;
+	margin-left: 20px;
+	margin-right: 0px;
+	max-width: 15em;
 	padding: 10px 20px 10px 10px;
+	text-align: left;
 }
 
-div.toc-title {
-	font-weight: bold;
-}
-
-div.local-toc ul {
+div.local.topic ul {
 	padding-left: 20px;
 	margin-bottom: 5px;
 }
 
-div.local-toc a {
+div.local.topic > ul:before {
+	content: "Contents";
+	display: block;
+	font-weight: bold;
+	margin-bottom: 10px;
+}
+
+div.local.topic a {
 	font-weight: normal;
 	padding-left: 10px;
 	text-decoration: none;