jekyll-compose 0.10.1 → 0.11.0

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
  SHA256:
3
- metadata.gz: ac7c2527486f47d482c17e4a6d7186ba942a2e8394121e60cb95c3fb501fd2ac
4
- data.tar.gz: 5f2145e7d015fc6afa0b0835dab86daa71446c725a40a76fbdf2d888440956ff
3
+ metadata.gz: a1017cc00ab44265c4d810de87d46661bdf7feecacbe6da5a54f1b11b9bf3edf
4
+ data.tar.gz: c6e896c66c7e5c4be5bb613a84307c2cff9bb872a687764a12e5c147422028bc
5
5
  SHA512:
6
- metadata.gz: d8c85dde4919cae3e9b3c98f66c203a965b9d12cce8de3a438922ff4b761bdcdfd688d7011f81f0ee8fa75eded01bc74204d6f21d19e088e7d48f907efa5d9fe
7
- data.tar.gz: 06b648f3f22c07d1a1e8d432ebbc39e9788653d425b976f44f78966f0d4cde03b9f62c85b8adfe3ad73003c41ccf62072bc025e307dbc2d62b27836ccf81c00b
6
+ metadata.gz: b4aaf2b87dbb6d61a8c5710b9c8a2b239116517dc946b36c09d802021f1233fc5c906a94c9a0723536ff970e8b588481cd0501a5cf03ceae58e7c9cf62b13ded
7
+ data.tar.gz: c5878411cdc0255d180839c4798c6b86d438a08b466f502cbea4c2de048dcba7f77f3f0df187ff14874eb95907a2027b547add8d5667afc2bc7f300ff5c543ea
@@ -22,6 +22,7 @@ module Jekyll
22
22
  return unless valid_source? && valid_destination?
23
23
 
24
24
  ensure_directory_exists
25
+ update_front_matter
25
26
  move_file
26
27
  end
27
28
 
@@ -43,6 +44,20 @@ module Jekyll
43
44
  Jekyll.logger.info "#{resource_type_from.capitalize} #{from} was moved to #{to}"
44
45
  end
45
46
 
47
+ def update_front_matter
48
+ content = File.read(from)
49
+ if content =~ Jekyll::Document::YAML_FRONT_MATTER_REGEXP
50
+ content = $POSTMATCH
51
+ match = Regexp.last_match[1] if Regexp.last_match
52
+ data = movement.front_matter(Psych.safe_load(match))
53
+ File.write(from, "#{Psych.dump(data)}---\n#{content}")
54
+ end
55
+ rescue Psych::SyntaxError => e
56
+ Jekyll.logger.warn e
57
+ rescue StandardError => e
58
+ Jekyll.logger.warn e
59
+ end
60
+
46
61
  private
47
62
 
48
63
  def valid_source?
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Jekyll
4
4
  module Compose
5
- VERSION = "0.10.1"
5
+ VERSION = "0.11.0"
6
6
  end
7
7
  end
@@ -37,7 +37,7 @@ module Jekyll
37
37
  end
38
38
 
39
39
  def date
40
- options["date"].nil? ? Date.today : Date.parse(options["date"])
40
+ options["date"].nil? ? Time.now : Date.parse(options["date"])
41
41
  end
42
42
 
43
43
  def name
@@ -59,6 +59,11 @@ module Jekyll
59
59
  date_stamp = params.date.strftime Jekyll::Compose::DEFAULT_DATESTAMP_FORMAT
60
60
  "_posts/#{date_stamp}-#{params.name}"
61
61
  end
62
+
63
+ def front_matter(data)
64
+ data["date"] ||= params.date.strftime("%Y-%m-%d %H:%M %z")
65
+ data
66
+ end
62
67
  end
63
68
 
64
69
  class DraftMover < Compose::FileMover
@@ -53,6 +53,10 @@ module Jekyll
53
53
  def to
54
54
  "_drafts/#{params.name}"
55
55
  end
56
+
57
+ def front_matter(data)
58
+ data.reject { |key, _value| key == "date" }
59
+ end
56
60
  end
57
61
 
58
62
  class PostMover < Compose::FileMover
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: jekyll-compose
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.10.1
4
+ version: 0.11.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Parker Moore
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-03-23 00:00:00.000000000 Z
11
+ date: 2019-04-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: jekyll