liveblog-indexer 0.2.3 → 0.2.4
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 +4 -4
- checksums.yaml.gz.sig +0 -0
- data/lib/liveblog-indexer.rb +45 -1
- data.tar.gz.sig +0 -0
- metadata +19 -19
- metadata.gz.sig +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a92d4df66d166954f93ac560329fc5f6cb735ef0
|
4
|
+
data.tar.gz: 50c584810fb0fd5c40b1c0cfd6dd64525cc29921
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 837354c1938492d6148f42ab1e7cb0499b1ab59129c71145755fc118adff10ccfebb609b66644fa72e2d23cac02fa85e140016d70ceea20504a970eb844e8a7a
|
7
|
+
data.tar.gz: 50fdb5eebb4938eb5c87da949403ff79a0bddc9f0911dd9ee1d4d8c26b3527f5802094cd0221e6e6e62b6d41c931c1e563be943f0836c77d0f7714cc686b36a4
|
checksums.yaml.gz.sig
CHANGED
Binary file
|
data/lib/liveblog-indexer.rb
CHANGED
@@ -78,7 +78,11 @@ class LiveBlogIndexer
|
|
78
78
|
save @wordindex_filepath
|
79
79
|
File.write File.join(@filepath, @urls_index_filepath), @url_index.to_json
|
80
80
|
|
81
|
-
end
|
81
|
+
end
|
82
|
+
|
83
|
+
def inspect()
|
84
|
+
"#<LiveBlogIndexer:#{self.object_id}>"
|
85
|
+
end
|
82
86
|
|
83
87
|
def save(filename='wordindex.json')
|
84
88
|
|
@@ -87,6 +91,46 @@ class LiveBlogIndexer
|
|
87
91
|
|
88
92
|
end
|
89
93
|
|
94
|
+
# search the word_index file with a keyword e.g. hdmi
|
95
|
+
# results are sorted by exact match with a hashtag, exact keyword match,
|
96
|
+
# followed by words which contain the keyword e.g. micro-hdmi
|
97
|
+
#
|
98
|
+
# links for each result are sorted by date
|
99
|
+
#
|
100
|
+
def search(keyword)
|
101
|
+
|
102
|
+
def add_links(a)
|
103
|
+
|
104
|
+
a.sort_by do |uri|
|
105
|
+
|
106
|
+
string = uri[/^\/liveblog\/(\d{4}\/\w{3}\/\d+)/,1].gsub('/','')
|
107
|
+
Date.strptime(string, "%Y%b%d")
|
108
|
+
|
109
|
+
end.reverse
|
110
|
+
|
111
|
+
end
|
112
|
+
|
113
|
+
h = @master
|
114
|
+
grepped = h.keys.grep /#{keyword}/i
|
115
|
+
# e.g. => ["hdmi=safe", "hdmi", "micro-hdmi", "#hdmi"]
|
116
|
+
|
117
|
+
# sort results by importance
|
118
|
+
r = []
|
119
|
+
|
120
|
+
# hashtag should be first
|
121
|
+
key = grepped.delete '#' + keyword
|
122
|
+
r.concat add_links(h[key].keys) if key
|
123
|
+
|
124
|
+
# the word on its own
|
125
|
+
key = grepped.delete keyword
|
126
|
+
r.concat add_links(h[key].keys) if key
|
127
|
+
|
128
|
+
r.concat grepped.map {|x| add_links(h[x].keys)}
|
129
|
+
|
130
|
+
return r.uniq
|
131
|
+
|
132
|
+
end
|
133
|
+
|
90
134
|
private
|
91
135
|
|
92
136
|
def index_file(location)
|
data.tar.gz.sig
CHANGED
Binary file
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: liveblog-indexer
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- James Robertson
|
@@ -12,26 +12,26 @@ cert_chain:
|
|
12
12
|
-----BEGIN CERTIFICATE-----
|
13
13
|
MIIDljCCAn6gAwIBAgIBATANBgkqhkiG9w0BAQUFADBIMRIwEAYDVQQDDAlnZW1t
|
14
14
|
YXN0ZXIxHjAcBgoJkiaJk/IsZAEZFg5qYW1lc3JvYmVydHNvbjESMBAGCgmSJomT
|
15
|
-
|
15
|
+
8ixkARkWAmV1MB4XDTE3MDEyODE1MDc1NVoXDTE4MDEyODE1MDc1NVowSDESMBAG
|
16
16
|
A1UEAwwJZ2VtbWFzdGVyMR4wHAYKCZImiZPyLGQBGRYOamFtZXNyb2JlcnRzb24x
|
17
17
|
EjAQBgoJkiaJk/IsZAEZFgJldTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
18
|
+
ggEBAJ0Vk53YC+Fa1U05NC3EgMLSPcT6KwxO2N7hY23L6y5wZiPXuQ5AQq3PDaPW
|
19
|
+
VkoZngnKzeSMeuFCK/mbGdW77Ll+cuM9vZ8xtlk5eKyybIMznFOt0mWX/wIFzV1V
|
20
|
+
XD+TTMC6jR5hYQib0zqev9hAcHqXEVoPhhR6avEGDrFheaopqObyCJ4rztFyYz/Q
|
21
|
+
tgHsQE9g6D9SwLeUc5x5XecQT9T13NpUuGEjcPp07XyytHWhgbeeDFIWz+xCZ7rK
|
22
|
+
9s/8kF7QmNgiQ0D8Ar91RiKcnW8hP+QtJJf94+e42doSDpdc3HRVc7b6nu8ySf6I
|
23
|
+
gHpSHJnGrVy207f0xETgHEiT2BsCAwEAAaOBijCBhzAJBgNVHRMEAjAAMAsGA1Ud
|
24
|
+
DwQEAwIEsDAdBgNVHQ4EFgQUXOeNAxMEMjYVvQTTKraToom4zFMwJgYDVR0RBB8w
|
25
25
|
HYEbZ2VtbWFzdGVyQGphbWVzcm9iZXJ0c29uLmV1MCYGA1UdEgQfMB2BG2dlbW1h
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
26
|
+
c3RlckBqYW1lc3JvYmVydHNvbi5ldTANBgkqhkiG9w0BAQUFAAOCAQEAldEnB3++
|
27
|
+
mNVko+TlHWAvP4qMvUa8MKGdNlbT/feeIPhNlHwcEW8opfKddOThEJcSaaxzNT9G
|
28
|
+
R7rh6J7cJXJNP0fMkN5weeDtp5W8KiYOFe/8o0YSsZIK2si26eERfETJvyAtrqsY
|
29
|
+
G29fPrEa+npsJpIZwgBUlsUHqyKeVHlBV5gX4IOsSRntocf/79KSdQbkf5WsPLvI
|
30
|
+
Vt7jbph3Nm21B5W85Xuo6F7wzo5dWRBertqz+CeTrWZXPtEL4EumEcqKZtjcl7L5
|
31
|
+
tobBQiI6ycwSA8Q7pjIepwhlVwJtTQO6KUI/GSDjtZ/EPgdLhApM2DtZpmNUuoUZ
|
32
|
+
aFRT5hgDm8JiKQ==
|
33
33
|
-----END CERTIFICATE-----
|
34
|
-
date:
|
34
|
+
date: 2017-01-28 00:00:00.000000000 Z
|
35
35
|
dependencies:
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: xws
|
@@ -74,7 +74,7 @@ dependencies:
|
|
74
74
|
- !ruby/object:Gem::Version
|
75
75
|
version: 0.2.3
|
76
76
|
description:
|
77
|
-
email: james@
|
77
|
+
email: james@jamesrobertson.eu
|
78
78
|
executables: []
|
79
79
|
extensions: []
|
80
80
|
extra_rdoc_files: []
|
@@ -100,7 +100,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
100
100
|
version: '0'
|
101
101
|
requirements: []
|
102
102
|
rubyforge_project:
|
103
|
-
rubygems_version: 2.
|
103
|
+
rubygems_version: 2.6.8
|
104
104
|
signing_key:
|
105
105
|
specification_version: 4
|
106
106
|
summary: This gem is under development. Generates a Liveblog indexed file in JSON
|
metadata.gz.sig
CHANGED
Binary file
|