just-the-docs 0.1.1 → 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 34c636bb5dad48e01e8b114762877acac6ab188f
4
- data.tar.gz: 8d294505dc73afb5b4eb13f5c4e3f82e89c0cb36
3
+ metadata.gz: 0df20cd3981237aee49439b746dc382b0afae218
4
+ data.tar.gz: d0c7a98d6e4a45115aebccfa6c4f4029613c17d9
5
5
  SHA512:
6
- metadata.gz: eb73494f49b1bda8c851921560adf353b8173c21af5b858e03f8a9e5f4d20bb85f241a3dc8aff5159df590372109aef97cf2467fb8a3d77a39b8646ddffe8b0c
7
- data.tar.gz: d358b60858410d90a86515f3d734fe7897f7268ff24dc64c85e3c2800fd21abff86f545282068c1e1ca2e5a6a322aa5b38d3c363d5986c1e97d99e7847135b66
6
+ metadata.gz: a9e62193aba76398104ebe3377c3ced35cea0c66ebd4aa9389477d2511470450789118cc2431208f2e7d82a4854d8a6ccccc0679ce4b8219f2552af7ba2b3677
7
+ data.tar.gz: 55c48cd7584961c98d24f3fe39f0c8a4b78551c2581751a3619b800d736fe24074fb96936c346a4a6566a701bad11cab1771b6d465602e22ba0c5d03214bd366
@@ -5,7 +5,7 @@
5
5
 
6
6
  <div class="page-wrap">
7
7
  <div class="side-bar">
8
- <a href="{{ site.url }}" class="site-title fs-6 text-grey-dk-300 lh-tight">{{ site.title }}</a>
8
+ <a href="{{ site.baseurl }}/" class="site-title fs-6 text-grey-dk-300 lh-tight">{{ site.title }}</a>
9
9
  <span class="fs-3"><button class="js-main-nav-trigger navigation-list-toggle btn btn-outline" type="button" data-text-toggle="Hide">Menu</button></span>
10
10
  <div class="navigation main-nav js-main-nav">
11
11
  {% include nav.html %}
@@ -38,7 +38,7 @@
38
38
  {% if page.parent != nil and page.parent != page.title %}
39
39
  <nav class="breadcrumb-nav">
40
40
  <ol class="breadcrumb-nav-list">
41
- <li class="breadcrumb-nav-list-item"><a href="{{ site.url }}/{{ page.parent | slugify }}">{{ page.parent }}</a></li>
41
+ <li class="breadcrumb-nav-list-item"><a href="{{ site.url | absolute_url }}/{{ page.parent | slugify }}">{{ page.parent }}</a></li>
42
42
  <li class="breadcrumb-nav-list-item"><span>{{ page.title }}</span></li>
43
43
  </ol>
44
44
  </nav>
@@ -35,14 +35,29 @@ function initSearch() {
35
35
  var index = lunr(function () {
36
36
  this.ref('id');
37
37
  this.field('title', { boost: 20 });
38
- this.field('content');
38
+ this.field('content', { boost: 10 });
39
39
  this.field('url');
40
40
  });
41
41
 
42
42
  // Get the generated search_data.json file so lunr.js can search it locally.
43
43
 
44
+ sc = document.getElementsByTagName("script");
45
+ source = '';
46
+
47
+ for(idx = 0; idx < sc.length; idx++)
48
+ {
49
+ s = sc.item(idx);
50
+
51
+ if(s.src && s.src.match(/just-the-docs\.js$/))
52
+ { source = s.src; }
53
+ }
54
+
55
+ jsPath = source.replace('just-the-docs.js', '');
56
+
57
+ jsonPath = jsPath + '/search-data.json';
58
+
44
59
  var request = new XMLHttpRequest();
45
- request.open('GET', '/search-data.json', true);
60
+ request.open('GET', jsonPath, true);
46
61
 
47
62
  request.onload = function() {
48
63
  if (request.status >= 200 && request.status < 400) {
@@ -103,11 +118,12 @@ function initSearch() {
103
118
  var resultsLink = document.createElement('a');
104
119
  var resultsUrlDesc = document.createElement('span');
105
120
  var resultsUrl = store[results[i].ref].url;
121
+ var resultsRelUrl = store[results[i].ref].relUrl;
106
122
  var resultsTitle = store[results[i].ref].title;
107
123
 
108
- resultsLink.setAttribute('href', store[results[i].ref].url);
124
+ resultsLink.setAttribute('href', resultsUrl);
109
125
  resultsLink.innerText = resultsTitle;
110
- resultsUrlDesc.innerText = resultsUrl;
126
+ resultsUrlDesc.innerText = resultsRelUrl;
111
127
 
112
128
  resultsList.classList.add('search-results-list');
113
129
  resultsListItem.classList.add('search-results-list-item');
@@ -0,0 +1,12 @@
1
+ ---
2
+ ---
3
+ {
4
+ {% for page in site.html_pages %}"{{ forloop.index0 }}": {
5
+ "id": "{{ forloop.index0 }}",
6
+ "title": "{{ page.title | xml_escape }}",
7
+ "content": "{{ page.content | markdownify | strip_html | xml_escape | remove: 'Table of contents' | strip_newlines | replace: '\', ' ' }}",
8
+ "url": "{{ page.url | absolute_url | xml_escape }}",
9
+ "relUrl": "{{ page.url | xml_escape }}"
10
+ }{% if forloop.last %}{% else %},
11
+ {% endif %}{% endfor %}
12
+ }
@@ -2,10 +2,12 @@ namespace :search do
2
2
  desc 'Generate the files needed for search functionality'
3
3
  task :init do
4
4
  puts 'Creating search data json file...'
5
- touch 'search-data.json'
5
+ touch 'assets/js/search-data.json'
6
6
  content = %Q[{{ page.content | markdownify | strip_html | xml_escape | remove: 'Table of contents' | strip_newlines | replace: '\\', ' ' }}]
7
+ puts 'Done.'
8
+ puts 'Generating content...'
7
9
 
8
- File.open('search-data.json', 'w') do |f|
10
+ File.open('assets/js/search-data.json', 'w') do |f|
9
11
  f.puts '---
10
12
  ---
11
13
  {
@@ -18,5 +20,6 @@ namespace :search do
18
20
  {% endif %}{% endfor %}
19
21
  }'
20
22
  end
23
+ puts 'Done.'
21
24
  end
22
25
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: just-the-docs
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Patrick Marsceill
@@ -98,6 +98,7 @@ files:
98
98
  - assets/images/just-the-docs.png
99
99
  - assets/images/search.svg
100
100
  - assets/js/just-the-docs.js
101
+ - assets/js/search-data.json
101
102
  - assets/js/vendor/lunr.min.js
102
103
  - bin/just-the-docs
103
104
  - lib/tasks/search.rake