project_store 0.6.4 → 0.6.5

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 7cb080d71803a232ff9f4e934708bc9224e080f1
4
- data.tar.gz: 0db482d21229d725df62db58faa7c9aa3a281f71
3
+ metadata.gz: 7aec052dcc6c2a846f386a68bf4d7be18cc4a6de
4
+ data.tar.gz: b1adf9a1a305d8722174d413f69337295ac7d9df
5
5
  SHA512:
6
- metadata.gz: 7fd8e4c184ed8495fe9d68006d70a7d73c0cd15855fbd0c76662ce76446e87d08800165ed2835577121440be529a4b41cb7fd140527d9066084293a76c7f9bb5
7
- data.tar.gz: 6b1ba18dc842ea470e80e1b30c1f96c4d9e8b7f11c3f0f243e884e676f6d714201cb25098fae1f27780ef84820f38ef7381a0a25aac8d2fdab6b3b9ce6c2e07c
6
+ metadata.gz: ba4969524b48bb49d4eb86c577bdbd4c4488e047d54b8fbb1f21be321a81343c94b2b2c5b0ea582e1220176b3e321c2dd2ead34df082a7ff74145431f060220e
7
+ data.tar.gz: 2d681acf0343ce5a193f676d113e62f5d4bec9521f0179185a9836583785b81c2369762a9fe724aa51090a6655aa135b0eaf2329b715388cc1482d7d1dbf84c8
@@ -5,13 +5,15 @@ module ProjectStore
5
5
 
6
6
  module Editing
7
7
 
8
+ EDITOR_ENVIRONMENT_VARIABLE = 'DM_EDITOR'
9
+
8
10
  attr_writer :editor
9
11
 
10
12
  def editor
11
- @editor ||= ENV['DM_EDITOR']
13
+ @editor ||= ENV[EDITOR_ENVIRONMENT_VARIABLE]
12
14
  end
13
15
 
14
- def edit(file_or_entity)
16
+ def edit(file_or_entity, &block)
15
17
  file = case file_or_entity
16
18
  when String
17
19
  if File.exists? file_or_entity and File.readable? file_or_entity
@@ -25,7 +27,7 @@ module ProjectStore
25
27
  tmp_file = Tempfile.new(self.class.name).path
26
28
  begin
27
29
  FileUtils.copy file, tmp_file
28
- edit_file tmp_file
30
+ edit_file tmp_file, &block
29
31
  begin
30
32
  store = YAML::Store.new(tmp_file)
31
33
  store.transaction do
@@ -51,7 +53,11 @@ module ProjectStore
51
53
  def edit_file(file)
52
54
  raise PSE, 'No editor specified' if editor.nil?
53
55
  logger.debug "Editing file '#{file}', using editor '#{editor}'"
54
- `"#{editor}" "#{file}"`
56
+ if block_given?
57
+ yield editor, file
58
+ else
59
+ system "#{editor} '#{file}'"
60
+ end
55
61
  end
56
62
 
57
63
 
@@ -1,3 +1,3 @@
1
1
  module ProjectStore
2
- VERSION = '0.6.4'
2
+ VERSION = '0.6.5'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: project_store
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.4
4
+ version: 0.6.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Laurent B.
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2016-07-24 00:00:00.000000000 Z
11
+ date: 2016-07-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler