jekyll-livereload 0.1.0 → 0.1.1.1
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
- data/History.md +12 -0
- data/README.md +16 -2
- data/jekyll-livereload.gemspec +1 -1
- data/lib/jekyll-livereload/build.rb +7 -2
- data/lib/jekyll-livereload/configuration.rb +13 -0
- data/lib/jekyll-livereload/serve.rb +10 -2
- data/lib/jekyll-livereload/version.rb +1 -1
- metadata +4 -3
- data/History.markdown +0 -5
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b06478eab8b2303bef86d2bc601aa05f125954ed
|
4
|
+
data.tar.gz: ef7ac2618c98f6186fd8dedfc3375dba5e76b749
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e2a5173d48a1fe632514f97c02e8da504b6fefcf08305b84bf360dc8b21ae4ebb9f9c06781211277945dff2599b80d00f96f9581894074e47e0d1c5bbc49dec3
|
7
|
+
data.tar.gz: 3263e143ce532d299d25a030bba1c894817be06fc906030370b76b78a36d59cbc9be29c89d4c315b74f6bc28ebaa7d8115d9665793a18317bd5a2ca953a19fbf
|
data/History.md
ADDED
@@ -0,0 +1,12 @@
|
|
1
|
+
## 0.1.1 / 2016-05-09
|
2
|
+
|
3
|
+
### Minor fixes and improvements
|
4
|
+
|
5
|
+
* Don't start Websocket unless --livereload is included
|
6
|
+
* Support configuration through `_config.yml` file
|
7
|
+
|
8
|
+
## 0.1.0 / 2016-05-09
|
9
|
+
|
10
|
+
### Initial Release
|
11
|
+
|
12
|
+
* First release of Jekyll-Livereload
|
data/README.md
CHANGED
@@ -1,5 +1,7 @@
|
|
1
1
|
# Jekyll::Livereload
|
2
2
|
|
3
|
+
[](https://badge.fury.io/rb/jekyll-livereload)
|
4
|
+
|
3
5
|
Adds Livereloading support to Jekyll
|
4
6
|
|
5
7
|
## Installation
|
@@ -8,7 +10,7 @@ Add this line to your site's Gemfile in the Jekyll Plugin Group:
|
|
8
10
|
|
9
11
|
```ruby
|
10
12
|
group :jekyll_plugins do
|
11
|
-
gem 'jekyll-
|
13
|
+
gem 'jekyll-livereload'
|
12
14
|
end
|
13
15
|
```
|
14
16
|
|
@@ -35,6 +37,18 @@ that two new options have been added.
|
|
35
37
|
|
36
38
|
These options have been added by this plugin.
|
37
39
|
|
40
|
+
## Making Livereload the default
|
41
|
+
|
42
|
+
Jekyll::Livereload supports readings configuration values from your local `_config.yml`
|
43
|
+
file. If you always what to use Livereload, and why wouldn't you, you can add it to
|
44
|
+
your config like so:
|
45
|
+
|
46
|
+
```yaml
|
47
|
+
# Server Config optiosn
|
48
|
+
livereload: true # You no longer need to include --livereload
|
49
|
+
reload_port: 5678 # If you don't want to use the default port
|
50
|
+
```
|
51
|
+
|
38
52
|
## Caveats
|
39
53
|
|
40
54
|
This plugin is dependent on the way Jekyll loads plugins.
|
@@ -43,7 +57,7 @@ includes `jekyll` and `mercenary`, both of which need to be modified before
|
|
43
57
|
Jekyll initializes it's command line options.
|
44
58
|
|
45
59
|
If you attempt to use this plugin by installing it in the `_plugin` directory
|
46
|
-
or by adding it to your `_config.
|
60
|
+
or by adding it to your `_config.yml` file, it will not work.
|
47
61
|
|
48
62
|
This plugin will break if Jekyll upstream every changes the placement of the call
|
49
63
|
`Jekyll::PluginManager.require_from_bundler` in it's `binary` command `jekyll` to
|
data/jekyll-livereload.gemspec
CHANGED
@@ -5,7 +5,7 @@ require 'jekyll-livereload/version'
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |spec|
|
7
7
|
spec.name = "jekyll-livereload"
|
8
|
-
spec.version = Jekyll::Livereload::VERSION
|
8
|
+
spec.version = "#{Jekyll::Livereload::VERSION}.1"
|
9
9
|
spec.authors = ["Robert DeRose"]
|
10
10
|
spec.email = ["RobertDeRose@gmail.com"]
|
11
11
|
spec.summary = "Adds LiveReload support to Jekyll's included Server"
|
@@ -1,22 +1,27 @@
|
|
1
1
|
require 'json'
|
2
|
+
require_relative 'configuration'
|
2
3
|
|
3
4
|
# Register Hooks, if livereload is enabled
|
4
5
|
module Jekyll
|
5
6
|
module Livereload
|
6
7
|
module Build
|
8
|
+
include Livereload::Configuration
|
9
|
+
|
7
10
|
def process(opts)
|
8
|
-
opts
|
9
|
-
opts['reload_port'] = Livereload::LIVERELOAD_PORT unless opts.key?('reload_port')
|
11
|
+
opts = load_config_options(opts)
|
10
12
|
if opts['livereload']
|
13
|
+
|
11
14
|
Jekyll::Hooks.register(:site, :post_render) do |site|
|
12
15
|
regenerator = Jekyll::Regenerator.new(site)
|
13
16
|
Livereload.pages = site.pages.select do |p|
|
14
17
|
regenerator.regenerate?(p)
|
15
18
|
end
|
16
19
|
end
|
20
|
+
|
17
21
|
Jekyll::Hooks.register([:pages, :documents], :post_render) do |doc|
|
18
22
|
doc.output.sub!(/<head>(.*)<\/head>/m, "<head>\\1#{reload_script(opts)}</head>")
|
19
23
|
end
|
24
|
+
|
20
25
|
Jekyll::Hooks.register :site, :post_write do
|
21
26
|
Livereload.reactor.reload() unless Livereload.reactor.nil?
|
22
27
|
end
|
@@ -0,0 +1,13 @@
|
|
1
|
+
module Jekyll
|
2
|
+
module Livereload
|
3
|
+
module Configuration
|
4
|
+
private
|
5
|
+
def load_config_options(opts)
|
6
|
+
opts = configuration_from_options(opts)
|
7
|
+
opts['host'] = 'localhost' unless opts.key?('host')
|
8
|
+
opts['reload_port'] = Livereload::LIVERELOAD_PORT unless opts.key?('reload_port')
|
9
|
+
return opts
|
10
|
+
end
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
@@ -1,3 +1,5 @@
|
|
1
|
+
require_relative 'configuration'
|
2
|
+
|
1
3
|
# Allows us to add more option parameter to the serve command
|
2
4
|
module Mercenary
|
3
5
|
class Command
|
@@ -15,6 +17,8 @@ end
|
|
15
17
|
module Jekyll
|
16
18
|
module Livereload
|
17
19
|
module Serve
|
20
|
+
include Livereload::Configuration
|
21
|
+
|
18
22
|
def init_with_program(prog)
|
19
23
|
prog.command(:serve) do |c|
|
20
24
|
c.option 'livereload', '-L', '--livereload', 'Inject Livereload.js and run a WebSocket Server'
|
@@ -25,8 +29,12 @@ module Jekyll
|
|
25
29
|
end
|
26
30
|
|
27
31
|
def process(opts)
|
28
|
-
|
29
|
-
|
32
|
+
opts = load_config_options(opts)
|
33
|
+
if opts['livereload']
|
34
|
+
Livereload.reactor = Livereload::Reactor.new(opts)
|
35
|
+
Livereload.reactor.start
|
36
|
+
end
|
37
|
+
|
30
38
|
super opts
|
31
39
|
end
|
32
40
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: jekyll-livereload
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.1.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Robert DeRose
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-05-
|
11
|
+
date: 2016-05-10 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: jekyll
|
@@ -62,7 +62,7 @@ files:
|
|
62
62
|
- ".gitignore"
|
63
63
|
- ".rspec"
|
64
64
|
- Gemfile
|
65
|
-
- History.
|
65
|
+
- History.md
|
66
66
|
- LICENSE.txt
|
67
67
|
- README.md
|
68
68
|
- Rakefile
|
@@ -70,6 +70,7 @@ files:
|
|
70
70
|
- js/livereload.js
|
71
71
|
- lib/jekyll-livereload.rb
|
72
72
|
- lib/jekyll-livereload/build.rb
|
73
|
+
- lib/jekyll-livereload/configuration.rb
|
73
74
|
- lib/jekyll-livereload/serve.rb
|
74
75
|
- lib/jekyll-livereload/version.rb
|
75
76
|
- lib/jekyll-livereload/websocket.rb
|