programming-pages 0.5.12 → 0.5.13

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
  SHA256:
3
- metadata.gz: 0a6b1a9b591c42fda5c74b677f67f7453cded99ce3f651a71c6f412c2005f70a
4
- data.tar.gz: 3c1ce1126a5955d15147187b0d28941871d93f6412deec20c3186366743cc82d
3
+ metadata.gz: d57b487009256e4b0e49d71617734cf316bfa4f5704a89c3cf1171ef13b62720
4
+ data.tar.gz: 663ae09708451c5dda16b720ff4ede925502f186104dd38a07d6325a6486f4a9
5
5
  SHA512:
6
- metadata.gz: 05772c1a109ea8a40f0b23f9918ba68e6f588379384942406df74a878ba6afe7df6600caceae6224060ba5b9d9a8b0f078d004b7e7393279b851a2be93a4f0e5
7
- data.tar.gz: d260e088c3d649b4110af0a517ac9cb5f75b74034ece0ff5226b1c88b4aac1e868b67e91ead5dad9215073ff50162d6e04768d6eeeb890c312bccd9a56f6f7fe
6
+ metadata.gz: 7e018ffd284f4e54e37410a202e1e785e379aa9a2fc15977b7e00c801490ec821adb0578733bc41d452ea82111b412aeb57c0df9be5417ed58096d30409b6364
7
+ data.tar.gz: 55a2609e7492ffb36adf12d142ab3ce533229f98e0f4e2824bd2079ad33237bd508ab79c7a0f2a1abbe745066fd75a44f69b35fa750109ff0374dcb127397625
@@ -1,11 +1,3 @@
1
- <div class="ui inverted large menu">
2
- <div class="item" style="padding-top: 1.6em;">
3
- {% include elements/search.html %}
4
- </div>
5
- </div>
6
-
7
- <div class="ui fitted inverted divider"></div>
8
-
9
1
  {% assign collection_list = site.collections %}
10
2
 
11
3
  {% assign ordered = '' | split: '' %}
@@ -25,13 +17,6 @@
25
17
  {% assign endered = endered | sort: 'tab-order' | reverse %}
26
18
  {% assign collection_list = ordered | concat: unorder | concat: endered %}
27
19
 
28
- <div id="collection-tabs" class="ui inverted stackable pointing secondary menu">
29
- {% for collection in collection_list %}
30
- {% capture tab_class %}{% if forloop.first %}active {% endif %}item{% endcapture %}
31
- <a class="{{ tab_class }}" data-tab="{{ collection.label | downcase }}">{{ collection.title }}</a>
32
- {% endfor %}
33
- </div>
34
-
35
20
  {% for collection in collection_list %}
36
21
  {% capture tab_class %}ui {% if forloop.first %}active {% endif %}inverted tab segment{% endcapture %}
37
22
  <div class="{{ tab_class }}" data-tab="{{ collection.label | downcase }}">
@@ -212,3 +197,19 @@ so our strategy is to:
212
197
  &nbsp;<br>
213
198
  </div>
214
199
  {% endfor %}
200
+
201
+
202
+ {%- comment %} these fixed items (search & collection tabs) need to be above the tab segments {% endcomment -%}
203
+
204
+ <div id="collection-tabs" class="ui inverted stackable pointing secondary fixed menu">
205
+ {% for collection in collection_list %}
206
+ {% capture tab_class %}{% if forloop.first %}active {% endif %}item{% endcapture %}
207
+ <a class="{{ tab_class }}" data-tab="{{ collection.label | downcase }}">{{ collection.title }}</a>
208
+ {% endfor %}
209
+ </div>
210
+
211
+ <div class="ui inverted large fixed menu">
212
+ <div class="item">
213
+ {% include elements/search.html %}
214
+ </div>
215
+ </div>
@@ -3,7 +3,7 @@ set_indices_scrolltop = function() {
3
3
  var active_item = $('#active-page-index').first();
4
4
  if (active_item.length < 1) return;
5
5
 
6
- var y = active_item.position().top;
6
+ var y = active_item.position().top - 50; {% comment %} an arbitrary amount below the collection-tabs element {% endcomment %}
7
7
  $('#sidebar-fixed').scrollTop(y);
8
8
  }
9
9
 
@@ -1,23 +1,41 @@
1
+ {% capture NL %}
2
+ {% endcapture%}
3
+
4
+ {% assign searchable_docs = site.pages | concat: site.documents | where_exp:'it','it.title.size > 0' %}
5
+
1
6
  site_search_init = function() {
2
7
  var search_content = [
3
- {% for collection in site.collections %}
4
- {% unless collection.label == 'posts' %}
5
- {% for doc in collection.docs %}
6
- {% capture url %}{{ doc.url }}#/{{ collection.label | downcase }}/{% endcapture %}
7
- { title: '{{ doc.title }}', url: '{{ site.baseurl }}{{ url }}' },
8
- {% endfor %}
9
- {% endunless %}
8
+ {% for doc in searchable_docs %}
9
+ {% assign collection = doc.collection %}
10
+ {% if collection == 'posts' %}{% continue %}{% endif %}
11
+ {% assign url = doc.url %}{% if collection.size > 0 %}{% capture url %}{{ doc.url }}#/{{ collection | downcase }}/{% endcapture %}{% endif %}
12
+ {% assign title = doc.title | default: doc.name %}
13
+ {% assign category = doc.category | default: collection | default: '?' %}
14
+ {% assign tags = doc.search_tags %}
15
+ {% assign description = doc.description %}
16
+ {% comment %} placing string values in single quotes, so need to escape any within the string {% endcomment %}
17
+ {% if title == "'" %}{% assign title = "\'" %} {% comment %} allow title to be single char, assume other fields are not {% endcomment %}
18
+ {% elsif title contains "'" %}{% assign title = title | split: "'" | join: "\'" %}
19
+ {% endif %}
20
+ {% if tags contains "'" %}{% assign tags = tags | split: "'" | join: "\'" %}{% endif %}
21
+ {% if description.size > 0 %}{% assign description = description | split: NL | first | truncatewords: 7 | markdownify | rstrip %}{% endif %}
22
+ {% if description contains "'" %}{% assign description = description | split: "'" | join: "\'" %}{% endif %}
23
+ {% capture tags %}{% if tags.size > 0 %}, tags: '{{ tags }}'{% endif %}{% endcapture %}
24
+ {% capture desc %}{% if description.size > 0 %}, description: '{{ description }}'{% endif %}{% endcapture %}
25
+ { title: '{{ title }}', category: '{{ category }}'{{ tags }}{{ desc }}, url: '{{ site.baseurl }}{{ url }}' },
10
26
  {% endfor %}
11
27
  ];
12
28
 
13
29
  {% comment %} urls are auto-followed, so no callback needed {% endcomment %}
14
30
  $('#site-search').search({
31
+ type: 'category',
15
32
  source: search_content,
33
+ searchFields: [ 'title', 'tags', 'category', 'description' ],
16
34
  selectFirstResult: true,
17
35
  });
18
36
 
19
37
  {% comment %} set up shortut key for search input focus {% endcomment %}
20
- Mousetrap.bind('s', function() { $( '#site-search .prompt' ).focus(); return false; });
38
+ Mousetrap.bind('s', function() { $('#site-search .prompt').focus(); return false; });
21
39
  };
22
40
 
23
41
  $(site_search_init);
@@ -0,0 +1,20 @@
1
+ /*!
2
+ * Remixed from StackOverflow <kbd> css, user Jin
3
+ * https://meta.superuser.com/questions/4788/css-for-the-new-kbd-style
4
+ * https://creativecommons.org/licenses/by-sa/3.0/
5
+ */
6
+ kbd {
7
+ background-color: #f7f7f7;
8
+ border-radius: 3px;
9
+ border: 1px solid #ccc;
10
+ box-shadow: 0 1px 0 rgba(0,0,0,0.2),0 0 0 2px #fff inset;
11
+ color: #333;
12
+ display: inline-block;
13
+ font-family: Arial,Helvetica,sans-serif;
14
+ font-size: 75%;
15
+ line-height: 140%;
16
+ margin: 0 .1em;
17
+ padding: .1em .6em;
18
+ text-shadow: 0 1px 0 #fff;
19
+ user-select: none;
20
+ }
@@ -111,6 +111,41 @@ sup:target::before {
111
111
  font-size: /* 10 - 14px */ calc(10px + 4 * ((100vw - 320px) / (1910 - 320)));
112
112
  }
113
113
 
114
+ /* add space underneath indices so bottom-most item can scroll into view */
115
+ #collection-indices {
116
+ padding-bottom: 75vh;
117
+ }
118
+ #collection-indices .ui.large.fixed.menu .item {
119
+ padding-top: 1.4em;
120
+ }
121
+
122
+ /* for sidebar fixed, keep search and tabs fixed at top */
123
+ #sidebar-fixed #collection-indices .ui.large.fixed.menu {
124
+ top: 3.5rem;
125
+ }
126
+ #sidebar-fixed #collection-indices .ui.tab.segment {
127
+ top: 5rem;
128
+ margin-top: 0;
129
+ }
130
+ #sidebar-fixed #collection-tabs {
131
+ top: 5.5rem;
132
+ background-color: #1b1c1d; /* FIXME: this should pull the semantic sass variable for inverted backgrounds: @black */
133
+ }
134
+
135
+ /* for sidebar retractable, items still need to be positioned, since they've been fixed */
136
+ /* FIXME: this is clunky and brittle */
137
+ #sidebar-retractable #collection-indices .ui.large.fixed.menu {
138
+ top: 0;
139
+ }
140
+ #sidebar-retractable #collection-indices .ui.tab.segment {
141
+ top: 8.5rem; /* TODO: use liquid to make this {{ num_collections*2.5+1 }}; */
142
+ margin-top: 0;
143
+ }
144
+ #sidebar-retractable #collection-tabs {
145
+ top: 2.5rem;
146
+ background-color: rgba(255,255,255,.08); /* FIXME: this should pull the semantic sass variable for .ui.inverted.menu a.item:hover: @invertedHoverBackground */
147
+ }
148
+
114
149
  /* tweaks to existing semantic-ui rules */
115
150
  #sidebar-retractable.ui.push.sidebar {
116
151
  z-index: 100; /* underneath top fixed menu */
@@ -167,7 +202,7 @@ blockquote {
167
202
  blockquote p {
168
203
  display: inline;
169
204
  }
170
- code, kbd, pre, samp {
205
+ code, pre, samp {
171
206
  font-family: Consolas,'Lucida Console','Andale Mono',monospace;
172
207
  }
173
208
  code.highlighter-rouge {
data/_layouts/layout.html CHANGED
@@ -27,7 +27,7 @@ layout: page
27
27
  {% endif %}
28
28
 
29
29
  <div class="ui basic segment"><span class="anchor" id="description">&nbsp;</span>
30
- {% assign lines = page.description | split: newline %}
30
+ {% assign lines = page.description | newline_to_br | split: '<br />' %}
31
31
  <p class="larger text">
32
32
  {{ lines.first | markdownify | remove: '<p>' | remove: '</p>' }}
33
33
  </p>
data/_layouts/page.html CHANGED
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  layout: base
3
- theme_version: 0.5.12
3
+ theme_version: 0.5.13
4
4
  theme_url: https://github.com/pixeldroid/programming-pages
5
5
  ---
6
6
 
data/assets/site.css CHANGED
@@ -30,6 +30,7 @@ layout: compress
30
30
  {% include styles/semantic-ui/transition.min.css %}
31
31
 
32
32
  {% capture _css %}
33
+ {% include styles/kbd.css %}
33
34
  {% include styles/svg-icons.css %}
34
35
  {% include styles/tweaks.css %}
35
36
  {% include themes/syntax.css %}
data/screenshot.png CHANGED
Binary file
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: programming-pages
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.12
4
+ version: 0.5.13
5
5
  platform: ruby
6
6
  authors:
7
7
  - pixeldroid
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-01-27 00:00:00.000000000 Z
11
+ date: 2019-02-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: github-pages
@@ -92,6 +92,7 @@ files:
92
92
  - _includes/scripts/semantic-ui/sticky.min.js
93
93
  - _includes/scripts/semantic-ui/tab.min.js
94
94
  - _includes/scripts/semantic-ui/transition.min.js
95
+ - _includes/styles/kbd.css
95
96
  - _includes/styles/semantic-ui/_version.css
96
97
  - _includes/styles/semantic-ui/breadcrumb.min.css
97
98
  - _includes/styles/semantic-ui/container.min.css