Add ToC to long pages
authorbep <bjorn.erik.pedersen@gmail.com>
Mon, 11 May 2015 16:39:40 +0000 (18:39 +0200)
committerbep <bjorn.erik.pedersen@gmail.com>
Mon, 11 May 2015 16:39:42 +0000 (18:39 +0200)
* A compact, fixed box in the right screen
* Only for big screens, > 1200 px wide

17 files changed:
docs/.gitignore [new file with mode: 0644]
docs/content/extras/crossreferences.md
docs/content/extras/dynamiccontent.md
docs/content/extras/highlighting.md
docs/content/extras/menus.md
docs/content/extras/shortcodes.md
docs/content/templates/functions.md
docs/content/tutorials/automated-deployments.md
docs/content/tutorials/creating-a-new-theme.md
docs/content/tutorials/github-pages-blog.md
docs/content/tutorials/installing-on-mac.md
docs/content/tutorials/installing-on-windows.md
docs/content/tutorials/migrate-from-jekyll.md
docs/layouts/_default/single.html
docs/layouts/partials/footer.html
docs/layouts/partials/header.html
docs/static/css/style.css

diff --git a/docs/.gitignore b/docs/.gitignore
new file mode 100644 (file)
index 0000000..a09c56d
--- /dev/null
@@ -0,0 +1 @@
+/.idea
index 19a3a9526d51d751e03043b41a93f746f5dfe5db..0b37cc09c89987c60e2ce06973967e72a80deecd 100644 (file)
@@ -6,6 +6,7 @@ menu:
 next: /extras/livereload
 prev: /extras/comments
 title: Cross-References
+toc: true
 weight: 40
 ---
 
index 9691ede33adba4c605f1523867f55652a5e13ec3..2874f3b65b9fa4abf82d4ecc461da9e7c4a8f8e2 100644 (file)
@@ -9,6 +9,7 @@ next: /extras/highlighting
 prev: /extras/datafiles
 title: Dynamic Content
 weight: 91
+toc: true
 ---
 
 Dynamic content with a static site generator? Yes, it is possible!
index 8296861d4a0a29a101d171fc1cfd269742e5939f..240c33057adac7b3225c2353536ee7fe108d5a7c 100644 (file)
@@ -9,6 +9,7 @@ next: /extras/toc
 prev: /extras/shortcodes
 title: Syntax Highlighting
 weight: 90
+toc: true
 ---
 
 Hugo provides the ability for you to highlight source code in two different
index bcdee6afa1734af50c1b1cd415f85d0f10fedfd8..05d40e5f9c9a4b1cbad2ef02b476f3436d168e8a 100644 (file)
@@ -1,5 +1,7 @@
 ---
 date: 2014-05-14T02:36:37Z
+toc: true
+tocstyle: compact
 menu:
   main:
     parent: extras
index 79c6871cd0aba7bca4f2d2c04e444ad023494ce8..790fba970af4c41ddf113c3c786e5e4cf08385aa 100644 (file)
@@ -9,6 +9,8 @@ next: /extras/pagination
 prev: /extras/permalinks
 title: Shortcodes
 weight: 80
+toc: true
+tocstyle: compact
 ---
 
 Hugo uses Markdown for its simple content format. However, there are a lot
index c380b091b5584659e5569293058e833d89c068f1..ec857fbce6e0c166f183b6b2e49cb8c5e95c70d4 100644 (file)
@@ -3,6 +3,7 @@ aliases:
 - /layout/functions/
 date: 2013-07-01
 linktitle: Functions
+toc: true
 menu:
   main:
     parent: layout
index 1194455b8abb56b7398cd5249814de5394a84e4a..66a41c19da6eba325a78af42975d012132d5376e 100644 (file)
@@ -2,6 +2,7 @@
 author: "Arjen Schwarz"
 date: 2015-01-12
 linktitle: Automated deployments
+toc: true
 menu:
   main:
     parent: tutorials
index d46413b768714eb35f0ed38c1f15e1a3a0ede86a..4113636ade90a6075e4e2ac12ba1a62f253361e1 100644 (file)
@@ -2,6 +2,8 @@
 author: "Michael Henderson"
 date: 2014-09-28
 linktitle: Creating a New Theme
+toc: true
+tocstyle: compact
 menu:
   main:
     parent: tutorials
index c003c84f38aaf973259dd85aaf2f31af00d36235..41d7e4db60b6f4260e3246b258776e26b06c22ac 100644 (file)
@@ -4,6 +4,7 @@ aliases:
 author: Spencer Lyon
 date: 2014-03-21
 linktitle: Hosting on GitHub
+toc: true
 menu:
   main:
     parent: tutorials
index 7c1cad17e2c4b906bbce73c08540cd3b41c914be..2ca0b73c3b67324b1d09ef17e2daef166f09af34 100644 (file)
@@ -2,6 +2,7 @@
 author: "Michael Henderson"
 date: 2015-02-22
 linktitle: Installing on Mac
+toc: true
 menu:
   main:
     parent: tutorials
@@ -56,7 +57,7 @@ ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/
 
 When I did this, I had some problems with directory permissions. Searches on Google pointed me to pages that walked me through updating permissions on the `/usr/local` directory. Seemed scary, but it's worked well since.
 
-## Step 2: Run the `brew` command to install `hugo`
+### Step 2: Run the `brew` command to install `hugo`
 
 Replace `brew install hugo` with `brew install hugo --HEAD` if you
 want the absolute latest version—there might be bugs!
@@ -129,7 +130,7 @@ $ tar tvf ~/Downloads/hugo_0.13_darwin_amd64.zip
 
 The `.md` files are documentation. The other file is the executable.
 
-## Step 4: Install into your bin directory
+### Step 4: Install into your bin directory
 
 ```
 $ # create the directory if needed
index beb821d8a8733713c9e80e59ba458ee8baa84f20..aea75ed076bc08143bae670be967a4677dde12ab 100644 (file)
@@ -2,6 +2,7 @@
 author: "Michael Henderson"
 date: 2015-03-30
 linktitle: Installing on Windows
+toc: true
 menu:
   main:
     parent: tutorials
index 75f95585439f3339aec9df14d40103b1384d8190..1dd5fd324d18d7790bb4b0aa38d2bb9583e4f648 100644 (file)
@@ -1,6 +1,8 @@
 ---
 date: 2014-03-10
 linktitle: Migrating from Jekyll
+toc: true
+tocstyle: compact
 menu:
   main:
     parent: tutorials
index 16f6ffc14102ab6b845e837af071bde620551306..864b37b8e5eb1641bb344b92ba556c15cb104d04 100644 (file)
@@ -1,3 +1,12 @@
 {{ partial "header.html" . }}
+{{ if .Params.toc }}
+<div class="col-lg-8 col-md-12">
 {{ .Content }}
+</div>
+<div id="toc" class="col-lg-offset-6 toc {{ with .Params.tocstyle }}{{ . }}{{ end }}">
+{{ .TableOfContents }}
+</div>
+{{ else }}
+{{ .Content }}
+{{ end }}
 {{ partial "footer.html" . }}
index f426375930089fa886b1cca4717f159b3da4737c..e5cd26d37b832c43adde9deb1444d5050b75eed3 100644 (file)
@@ -1,8 +1,10 @@
-                      <hr style="margin: 2em auto 0.25em;">
-                      <div style="font-size: medium; font-style: italic; text-align: right;">Hugo v{{ .Hugo.Version }} documentation</div>
+
                     </div>
                     </section>
-                </div>
+                    <div style="font-size: medium; font-style: italic; text-align: right;">Hugo v{{ .Hugo.Version }} documentation</div>
+
+                    </div>
+
                 <div class="col-md-1">
                     {{ if .IsPage }}
                     {{ with .GetParam "next" }}
index 8da30119837e8c5c887d28049176ea22c42f752c..d06bf4913c93cb612d9bb7d1e93ec936595c92cc 100644 (file)
@@ -81,4 +81,8 @@
                               <!--<h3>{{.Title}}</h3>-->
                           <!--</header>-->
                     <div class="panel-body">
-{{ partial "google-cse.html" . }}
+                        <div class="row">
+                            <div class="col-lg-12 cse">
+                                {{ partial "google-cse.html" . }}
+                            </div>
+                        </div>
index 478134a89b3173e66f6f470e90066a2848cca681..66bb45b7ec04005a4700a3f60bc0b72c898c5309 100755 (executable)
@@ -101,7 +101,7 @@ body {
     font-family: 'Lato', sans-serif;
     padding: 0px !important;
     margin: 0px !important;
-    font-size:16px !important;    
+    font-size:16px !important;
     font-weight: 300;
 }
 
@@ -266,13 +266,13 @@ ul.sidebar-menu li.active a, ul.sidebar-menu li a:hover, ul.sidebar-menu li a:fo
     -moz-transition: all 0.3s ease;
     -o-transition: all 0.3s ease;
     -ms-transition: all 0.3s ease;
-    transition: all 0.3s ease;        
+    transition: all 0.3s ease;
 }
 ul.sidebar-menu li a:hover, ul.sidebar-menu li a:focus {
     border-bottom: 1px solid #ff4088;
 }
 /*ul.sidebar-menu li.active a,*/ ul.sidebar-menu .sub-menu li.active a{
-    border-bottom: 1px solid #ff4088;   
+    border-bottom: 1px solid #ff4088;
 }
 
 ul.sidebar-menu li a i {
@@ -290,10 +290,10 @@ ul.sidebar-menu li.active a i {
 }
 
 
-#sidebar ul > li > a .menu-arrow { 
-    float: right;    
+#sidebar ul > li > a .menu-arrow {
+    float: right;
     margin-right: 8px;
-    margin-top: 6px;    
+    margin-top: 6px;
 }
 
 #main-content {
@@ -541,7 +541,7 @@ i.freebsd-19px:before {
     overflow: hidden;
     margin: 20px 0;
 }
+
 .video-container iframe,
 .video-container object,
 .video-container embed {
@@ -549,5 +549,39 @@ i.freebsd-19px:before {
     top: 0;
     left: 0;
     width: 100%;
-    height: 100%;    
+    height: 100%;
 }
+
+/* Google custom search */
+.cse {
+    margin-top: 20px;
+    padding-right: 20px;
+}
+
+
+/* Table of contents */
+
+.toc ul { list-style: none; margin: 0; padding: 0 5px;  }
+.toc ul li { display: inline; }
+#TableOfContents > ul > li > ul > li > ul li { margin-right: 8px; }
+#TableOfContents > ul > li > ul > li > a, #TableOfContents > ul > li > a   { font-weight: bold; background-color: #eeeeee; padding: 0 10px; margin: 0 2px; }
+#TableOfContents > ul > li > ul > li > a { font-style: italic; }
+.toc.compact ul > li > ul > li > ul  { display: none; }
+
+#toc {
+    position:fixed;
+    background-color: rgba(0, 0, 0, 0.1);
+    padding: 10px 50px 10px 20px;
+}
+
+
+@media(max-width:1200px) {
+    .toc {
+        display: none;
+    }
+}
+
+
+
+
+