just-the-docs 0.1.1 → 0.1.2

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: 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