classic-jekyll-theme 1.8.4 → 1.9.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 667f087979bb4416150d30b4f023f13d6e03966d
4
- data.tar.gz: a8337cd4b8c4ab90cbb973f0d3dd95f4072f0689
3
+ metadata.gz: 50c96a1ef3329dd06e283d37c5fd093b648451aa
4
+ data.tar.gz: da7dfb274d2c4d6810c65732e566083faca60e30
5
5
  SHA512:
6
- metadata.gz: cdc8ebd8ca664e5975ac2ef08eae06904efbe33684ec1ffc33b30ed981452c6ea78f013cf5a5a57497e132c9372e6f317f55ddd30c2adf165425b99e55b34947
7
- data.tar.gz: 5bc4034e5c702f4476726d9abfee90bf123dcb1dac17d44311c01164c2fdd40f7727c90f58aeb6c9a62ed48fcf396d9a3d966451c4f2d45a1b859a2f046eaa76
6
+ metadata.gz: 876ae805d23ed754fbb3ba5bfdeccb99501c760089ffa1ce992e830f7914212977619119d93ef39bdd636bf1d457004b54cf8388dc30c361eed9d8694a80ee7e
7
+ data.tar.gz: af4fc2633d6280da070a007106f7cbba1f881037198365a4bd85a503cfbea169d2413330095834db2babc1e5aa553d088f2a817b2aca1d7b71a0fbbd2706b661
data/README.md CHANGED
@@ -1,4 +1,4 @@
1
- # Classic-Jekyll-Theme v1.8.3
1
+ # Classic-Jekyll-Theme v1.9.0
2
2
 
3
3
  Welcome to Classic-Jekyll-Theme. This theme centers around one of the most used website structures on the web. A banner, navigation menu (dropdown), (up to) three columns and a footer. The design is fully responsive for three different screen widths: wide, medium and narrow. It is probably best shown in an example:
4
4
 
@@ -58,6 +58,7 @@ Other features:
58
58
 
59
59
  - __Move banner/menu to main column__ The banner & navigation can be moved to within the main column only. The secondary and tertiary columns will ten run right up to the top of the screen.
60
60
 
61
+ - __Split files for the menu's__ It is possible to generate the menu file separate from the content file. While this may slow down the loading of the site a little, it is a huge speed up for site generation under Jekyll.
61
62
 
62
63
  You can download it from [github](https://github.com/Balancingrock/classic-jekyll-theme) or install it with [rubygems](https://rubygems.org/gems/classic-jekyll-theme).
63
64
 
@@ -100,11 +101,11 @@ Delete the file `about.md`:
100
101
 
101
102
  It is possible to start the jekyll server now:
102
103
 
103
- $ jekyll serve
104
+ $ bundle exec jekyll serve
104
105
 
105
106
  Then the site will show up at `localhost:4000`.
106
107
 
107
- To add sample content that illustrates how pages and categories are implemented, copy the folder `pages` from the gem to the current project.
108
+ To add sample content that illustrates how pages and categories are implemented, copy the folder `pages` from the gem to the current project. To use the 'separate navbanner file' feature, also copy the `navbanner.md` from the gem to the project.
108
109
 
109
110
  ## Configuration
110
111
 
@@ -149,6 +150,16 @@ The following values are configurable:
149
150
 
150
151
  `yes` to enable the cookies warning, `no` to disable. The cookies warning is from [Silktide](http://silktide.com/cookieconsent), distributed under the MIT license.
151
152
 
153
+ - navbanner-position:
154
+
155
+ `top`: The navigation banner will be placed over the entire site (all columns)
156
+ `main`: The navigation banner will be placed at the top of the main column. Possibly next to or in between the secondary and tertiary columns.
157
+
158
+ - useSeparateNavBanner:
159
+
160
+ `yes`: Use a separate file for the navigation banner. This may cause a slight performance hit for browsers, but is a huge performance enhancement for the site generation process. Note that this option necessitates a JQuery library. By default the google JQuery library is loaded. Update the `_includes/head.html` if a different JQuery library should be used or if the library should be upgraded.
161
+ `no`: Generate the navigation banner in-line into the posts and pages.
162
+
152
163
  ### text-for.yml
153
164
 
154
165
  Some of the text elements in the theme can be translated with the following definitions:
@@ -185,16 +196,17 @@ Some of the text elements in the theme can be translated with the following defi
185
196
 
186
197
  Typically you will need to copy some files from the gem iteself to the project (web site) directory. The most common files are:
187
198
 
188
- - `_sass/classic-jekyll-theme.scss` for configuration
189
- - `_sass/classic/_normalize-override.scss` if site wide updates must be made to `_normalize.scss`
190
- - `_data/setup.yml` for configuration
191
- - `_data/text-for.yml` for configuration
192
- - `_includes/secondary-column.html` for the secondary column contents
193
- - `_includes/tertiary-column.html` for the tertiary column contents
199
+ - `_sass/classic-jekyll-theme.scss` for configuration.
200
+ - `_sass/classic/_normalize-override.scss` if site wide updates must be made to `_normalize.scss`.
201
+ - `_data/setup.yml` for configuration.
202
+ - `_data/text-for.yml` for configuration.
203
+ - `_includes/secondary-column.html` for the secondary column contents.
204
+ - `_includes/tertiary-column.html` for the tertiary column contents.
205
+ - `navbanner.md` for the navigation bar menu. This is mandatory if the `useSeparateNavBanner` setting is used, optional when not. Hence its easier to always copy this file.
194
206
 
195
207
  These files can be found in the gem directory. On macOS this directory is located at: `Library/Ruby/Gems/<version>/gems/classic-jekyll-theme-<version>`. When you copy these files, make sure they are in the same relative directory as in the gem itself.
196
208
 
197
- Besides the above mentioned files you should avoid making changes to the files provided in the gem. The more changes you make, the more difficult it will become to upgrade. Instead of chaning a file, include a new file that contains the stuff you want and include that file.
209
+ Besides the above mentioned files you should avoid making changes to the files provided in the gem. The more changes you make, the more difficult it will become to upgrade. Instead of changing a file, include a new file that contains the stuff you want and include that file.
198
210
 
199
211
  For example, if you need to add to the SASS files, create a new file and include that at the end of `_sass/classic-jekyll-theme.scss`.
200
212
 
@@ -396,6 +408,11 @@ Release 1.8.3
396
408
 
397
409
  - Bugfix: corrected a liquid error in `/_layout/default.html`
398
410
 
411
+ Release 1.9.0
412
+
413
+ - Bugfix: Fixed the sometimes horizontal scrollbar bug
414
+ - Feature: Added option to generate a separately loaded navbanner file.
415
+
399
416
  ## Upgrade information
400
417
 
401
418
  ### from 0.2.6 to 1.0.0
@@ -599,6 +616,23 @@ The index for a menu item. If not present, the menu ordering is undetermined. If
599
616
  - The configuration file `_config.yml` updated to Jekyll 3.5 standard
600
617
  - Updated the file `_layouts/default.html` again (3rd line)
601
618
 
619
+ ### from 1.8.4 to 1.9.0
620
+
621
+ - The setup file in `_data/setup.yml` (added option to enable/disable separate navbanner file generation)
622
+ - The following files have been updated or added:
623
+
624
+ ~~~~
625
+ _data/setup.yml
626
+ _includes/head.html
627
+ _includes/navbanner.html
628
+ _layouts/default.html
629
+ _layouts/navbanner-layout.html
630
+ _sass/classic/_formatting.scss
631
+ navbanner.md
632
+ ~~~~
633
+
634
+ - To use the separate navbanner file, copy the "navbanner.md" file from the theme folder to the project folder (at the same relative level)
635
+
602
636
  ## Feedback
603
637
 
604
638
  Comments, bug reports, feature requests and improvements are eagerly anticipated via email: rien@balancingrock.nl.
@@ -54,4 +54,14 @@ enable-cookies-policy: yes
54
54
  #
55
55
  navbanner-position: top
56
56
 
57
+ # Create a separate file containing the Navigation & Banner
58
+ # Values: yes | no
59
+ #
60
+ # Using a separate navbanner file will speed up jekyll compilation a lot. However it also means that the browser has to make two additional fetches: the navbanner file and the JQuery library (the later from google). However this is mitigated by the fact that both files can be cached by the browser.
61
+ # If another JQuery library has to be used, edit the _includes/head.html file accordingly.
62
+ #
63
+ # Note: If this option is set to 'yes', then make sure the file 'navbanner.md' is present (can be found in the theme folder) in the same project folder as the index.md file.
64
+
65
+ use-separate-navbanner: yes
66
+
57
67
  # End of file
@@ -12,6 +12,11 @@
12
12
  <link rel="canonical" href="{{ page.url | replace:'index.html','' | absolute_url }}">
13
13
  <link rel="alternate" type="application/rss+xml" title="{{ site.title | escape }}" href="{{ "/feed.xml" | relative_url }}">
14
14
 
15
+ <!-- Include JQuery from google -->
16
+ {% if site.data.setup.use-separate-navbanner %}
17
+ <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
18
+ {% endif %}
19
+
15
20
  <!-- Include google analytics for production build and if necessary -->
16
21
  {% if jekyll.environment == 'production' and site.google_analytics %}
17
22
  {% include google-analytics.html %}
@@ -1,6 +1,6 @@
1
1
  <!-- Title of the site is always visible -->
2
2
  <div class="navbanner-title">
3
- <div class="banner-icon"></div>
3
+ <div class="banner-icon-container"><div class="banner-icon"></div></div>
4
4
  <p class="site-title-text">{{ site.title }}</p>
5
5
  </div>
6
6
 
@@ -11,7 +11,11 @@
11
11
  <body class="body-panel">
12
12
 
13
13
  {% if navbanner-position == 'top' %}
14
- <div class="navbanner-panel">{% include navbanner.html %}</div>
14
+ {% if site.data.setup.use-separate-navbanner %}
15
+ <div id="navFrame" class="navbanner-panel"><script>$("#navFrame").load("/navbanner.html");</script></div>
16
+ {% else %}
17
+ <div class="navbanner-panel">{% include navbanner.html %}</div>
18
+ {% endif %}
15
19
  {% endif %}
16
20
 
17
21
  <div class="column-panel">
@@ -36,7 +40,11 @@
36
40
 
37
41
  <div class="primary-column">
38
42
  {% if navbanner-position == 'main' %}
39
- <div class="navbanner-panel">{% include navbanner.html %}</div>
43
+ {% if site.data.setup.use-separate-navbanner %}
44
+ <div id="navFrame" class="navbanner-panel"><script>$("#navFrame").load("/navbanner.html");</script></div>
45
+ {% else %}
46
+ <div class="navbanner-panel">{% include navbanner.html %}</div>
47
+ {% endif %}
40
48
  {% endif %}
41
49
  <main>{{ content }}</main>
42
50
  </div>
@@ -0,0 +1 @@
1
+ {% include navbanner.html %}
@@ -32,19 +32,39 @@ body {
32
32
  margin-top: $narrow-vertical-title-shift;
33
33
  }
34
34
  }
35
- .banner-icon {
35
+ .banner-icon-container {
36
36
  position: absolute;
37
+ top: 0px;
38
+ left: 0px;
37
39
  width: 100%;
38
40
  height: 100%;
41
+ display: flex;
42
+ overflow: hidden;
39
43
  }
40
44
  @include wide-layout {
41
45
  height: $wide-banner-height;
42
- background: $wide-banner-background;
46
+ background-color: $wide-banner-background;
43
47
  @if $wide-icon-url != none {
44
48
  .banner-icon {
45
- top: $wide-icon-voffset;
46
- left: $wide-icon-hoffset;
47
- background: $wide-icon-url $wide-icon-hposition $wide-icon-vposition no-repeat;
49
+ margin-top: $wide-icon-voffset;
50
+ margin-left: $wide-icon-hoffset;
51
+ content: $wide-icon-url;
52
+ }
53
+ .banner-icon-container {
54
+ @if $wide-icon-vposition == top {
55
+ align-items: flex-start;
56
+ } @else if $wide-icon-vposition == bottom {
57
+ align-items: flex-end;
58
+ } @else {
59
+ align-items: $wide-icon-vposition;
60
+ }
61
+ @if $wide-icon-hposition == left {
62
+ justify-content: flex-start;
63
+ } @else if $wide-icon-hposition == right {
64
+ justify-content: flex-end;
65
+ } @else {
66
+ justify-content: $wide-icon-hposition;
67
+ }
48
68
  }
49
69
  }
50
70
  }
@@ -53,9 +73,25 @@ body {
53
73
  background: $medium-banner-background;
54
74
  @if $medium-icon-url != none {
55
75
  .banner-icon {
56
- top: $medium-icon-voffset;
57
- left: $medium-icon-hoffset;
58
- background: $medium-icon-url $medium-icon-hposition $medium-icon-vposition no-repeat;
76
+ margin-top: $medium-icon-voffset;
77
+ margin-left: $medium-icon-hoffset;
78
+ content: $medium-icon-url;
79
+ }
80
+ .banner-icon-container {
81
+ @if $medium-icon-vposition == top {
82
+ align-items: flex-start;
83
+ } @else if $medium-icon-vposition == bottom {
84
+ align-items: flex-end;
85
+ } @else {
86
+ align-items: $medium-icon-vposition;
87
+ }
88
+ @if $medium-icon-hposition == left {
89
+ justify-content: flex-start;
90
+ } @else if $medium-icon-hposition == right {
91
+ justify-content: flex-end;
92
+ } @else {
93
+ justify-content: $medium-icon-hposition;
94
+ }
59
95
  }
60
96
  }
61
97
  }
@@ -64,9 +100,25 @@ body {
64
100
  background: $narrow-banner-background;
65
101
  @if $narrow-icon-url != none {
66
102
  .banner-icon {
67
- top: $narrow-icon-voffset;
68
- left: $narrow-icon-hoffset;
69
- background: $narrow-icon-url $narrow-icon-hposition $narrow-icon-vposition no-repeat;
103
+ margin-top: $narrow-icon-voffset;
104
+ margin-left: $narrow-icon-hoffset;
105
+ content: $narrow-icon-url;
106
+ }
107
+ .banner-icon-container {
108
+ @if $narrow-icon-vposition == top {
109
+ align-items: flex-start;
110
+ } @else if $narrow-icon-vposition == bottom {
111
+ align-items: flex-end;
112
+ } @else {
113
+ align-items: $narrow-icon-vposition;
114
+ }
115
+ @if $narrow-icon-hposition == left {
116
+ justify-content: flex-start;
117
+ } @else if $narrow-icon-hposition == right {
118
+ justify-content: flex-end;
119
+ } @else {
120
+ justify-content: $narrow-icon-hposition;
121
+ }
70
122
  }
71
123
  }
72
124
  }
@@ -220,6 +272,7 @@ body {
220
272
  }
221
273
  }
222
274
 
275
+
223
276
  // Defines the insets used in the columns and footer-panel. I.e the empty spaces between text and separators lines.
224
277
  .insets {
225
278
  padding-top: $vspacing-unit;
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: classic-jekyll-theme
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.8.4
4
+ version: 1.9.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Rien
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-07-02 00:00:00.000000000 Z
11
+ date: 2017-07-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: jekyll-feed
@@ -121,6 +121,7 @@ files:
121
121
  - _layouts/content-blocks.html
122
122
  - _layouts/default.html
123
123
  - _layouts/home.html
124
+ - _layouts/navbanner-layout.html
124
125
  - _layouts/page.html
125
126
  - _layouts/post.html
126
127
  - _sass/classic-jekyll-theme.scss