Skip to content

Commit 0da9d37

Browse files
ashmarolijekyllbot
authored andcommitted
normalize watched-path encoding (#69)
Merge pull request 69
1 parent c59c34f commit 0da9d37

23 files changed

+64
-62
lines changed

lib/jekyll/watcher.rb

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -54,19 +54,21 @@ def build_listener(site, options)
5454
def listen_handler(site)
5555
proc do |modified, added, removed|
5656
t = Time.now
57-
c = modified + added + removed
57+
c = normalize_encoding(modified + added + removed, site.source.encoding)
5858
n = c.length
59+
5960
Jekyll.logger.info "Regenerating:",
6061
"#{n} file(s) changed at #{t.strftime("%Y-%m-%d %H:%M:%S")}"
6162

62-
c.map { |path| path.sub("#{site.source}/", "") }.each do |file|
63-
Jekyll.logger.info "", file
64-
end
65-
63+
c.each { |path| Jekyll.logger.info "", path.sub("#{source_path}/", "") }
6664
process(site, t)
6765
end
6866
end
6967

68+
def normalize_encoding(list, desired_encoding)
69+
list.map { |entry| entry.encode!(desired_encoding, entry.encoding) }
70+
end
71+
7072
def custom_excludes(options)
7173
Array(options["exclude"]).map { |e| Jekyll.sanitized_path(options["source"], e) }
7274
end

script/test-watcher

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
#!/bin/bash
22

33
local-jekyll serve --watch \
4-
--source spec/test-site \
5-
--destination spec/test-site/_site
4+
--source spec/test-sité \
5+
--destination spec/test-sité/_site

spec/spec_helper.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@ def test_dir(*files)
6767
end
6868

6969
def source_dir(*files)
70-
test_dir("test-site", *files)
70+
test_dir("test-sité", *files)
7171
end
7272

7373
def dest_dir(*files)

spec/test-site/.gitignore

Lines changed: 0 additions & 1 deletion
This file was deleted.

spec/test-site/_config.dev.toml

Lines changed: 0 additions & 1 deletion
This file was deleted.

spec/test-sité/.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
_site

spec/test-sité/_config.dev.toml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
hello = "there"
File renamed without changes.
File renamed without changes.
File renamed without changes.

0 commit comments

Comments
 (0)