evernote-editor 0.1.5 → 0.1.6

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.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 5e0c7eda0c6c08b8b4e4d1bbc6a2e3c8965a5ceb
4
+ data.tar.gz: 42b9daf7d67a81bdf93b2e62ecdb60636201027a
5
+ SHA512:
6
+ metadata.gz: 091f9574bb001018e1d6738d9f415f7bcc55f4fdfeb364c9c003754004deab16084a495e229f75c8175063a9406c61b1df1ec24839cc28656b995583c0ae0355
7
+ data.tar.gz: 95d4c1a1c980bab523e65ee59ba691e821faaa6010d423b396c76ac32d8eb433dd0b958461dfa7a92766b9e75add08aefda44516b8e2032f8abe1d6d7158ef07
data/README.md CHANGED
@@ -26,3 +26,8 @@ You can modify both values later by editing `~/.enved`
26
26
  -h, --help Display this screen
27
27
 
28
28
  Title is optional on note creation. Tags are ignored when a note is edited.
29
+
30
+ ## Development
31
+
32
+ bundle
33
+ bx rspec spec
@@ -18,7 +18,7 @@ Gem::Specification.new do |gem|
18
18
  gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
19
19
  gem.require_paths = ["lib"]
20
20
 
21
- gem.add_runtime_dependency "evernote_oauth", "~> 0.1.6"
21
+ gem.add_runtime_dependency "evernote_oauth", "~> 0.2.1"
22
22
  gem.add_runtime_dependency "highline", "~> 1.6.15"
23
23
  gem.add_runtime_dependency "redcarpet", "~> 2.2.2"
24
24
  gem.add_runtime_dependency "reverse_markdown", "~> 0.4.3"
@@ -2,6 +2,7 @@ require 'evernote_oauth'
2
2
  require 'fileutils'
3
3
  require 'tempfile'
4
4
  require "highline/import"
5
+ require "json"
5
6
  require "redcarpet"
6
7
  require "reverse_markdown"
7
8
 
@@ -28,21 +29,23 @@ module EvernoteEditor
28
29
 
29
30
  def configure
30
31
  FileUtils.touch(CONFIGURATION_FILE) unless File.exist?(CONFIGURATION_FILE)
31
- @configuration = YAML::load(File.open(CONFIGURATION_FILE)) || {}
32
- store_key unless @configuration[:token]
33
- store_editor unless @configuration[:editor]
32
+ #@configuration = YAML::load(File.open(CONFIGURATION_FILE)) || {}
33
+ @configuration = JSON::load(File.open(CONFIGURATION_FILE)) || {}
34
+ #@configuration = JSON.parse( IO.read(CONFIGURATION_FILE) || {} )
35
+ store_key unless @configuration['token']
36
+ store_editor unless @configuration['editor']
34
37
  end
35
38
 
36
39
  def create_note
37
40
  markdown = invoke_editor
38
41
  begin
39
- evn_client = EvernoteOAuth::Client.new(token: @configuration[:token], sandbox: @sandbox)
42
+ evn_client = EvernoteOAuth::Client.new(token: @configuration['token'], sandbox: @sandbox)
40
43
  note_store = evn_client.note_store
41
44
  note = Evernote::EDAM::Type::Note.new
42
45
  note.title = @title.empty? ? "Untitled note" : @title
43
46
  note.tagNames = @tags unless @tags.empty?
44
47
  note.content = note_markup(markdown)
45
- created_note = note_store.createNote(@configuration[:token], note)
48
+ created_note = note_store.createNote(@configuration['token'], note)
46
49
  say "Successfully created new note '#{created_note.title}'"
47
50
  rescue Evernote::EDAM::Error::EDAMSystemException,
48
51
  Evernote::EDAM::Error::EDAMUserException,
@@ -82,9 +85,9 @@ module EvernoteEditor
82
85
  return if choice.nil?
83
86
 
84
87
  begin
85
- evn_client = EvernoteOAuth::Client.new(token: @configuration[:token], sandbox: @sandbox)
88
+ evn_client = EvernoteOAuth::Client.new(token: @configuration['token'], sandbox: @sandbox)
86
89
  note_store = evn_client.note_store
87
- note = note_store.getNote(@configuration[:token], choice, true, true, false, false)
90
+ note = note_store.getNote(@configuration['token'], choice, true, true, false, false)
88
91
  rescue Evernote::EDAM::Error::EDAMSystemException,
89
92
  Evernote::EDAM::Error::EDAMUserException,
90
93
  Evernote::EDAM::Error::EDAMNotFoundException => e
@@ -97,7 +100,7 @@ module EvernoteEditor
97
100
  note.updated = Time.now.to_i * 1000
98
101
 
99
102
  begin
100
- note_store.updateNote(@configuration[:token], note)
103
+ note_store.updateNote(@configuration['token'], note)
101
104
  say "Successfully updated note '#{note.title}'"
102
105
  rescue Evernote::EDAM::Error::EDAMSystemException,
103
106
  Evernote::EDAM::Error::EDAMUserException,
@@ -110,15 +113,15 @@ module EvernoteEditor
110
113
 
111
114
  def search_notes(term = '')
112
115
  begin
113
- evn_client = EvernoteOAuth::Client.new(token: @configuration[:token], sandbox: @sandbox)
116
+ evn_client = EvernoteOAuth::Client.new(token: @configuration['token'], sandbox: @sandbox)
114
117
  note_store = evn_client.note_store
115
118
  note_filter = Evernote::EDAM::NoteStore::NoteFilter.new
116
119
  note_filter.words = term
117
- results = note_store.findNotes(@configuration[:token], note_filter, 0, 10).notes
120
+ results = note_store.findNotes(@configuration['token'], note_filter, 0, 10).notes
118
121
  rescue Evernote::EDAM::Error::EDAMSystemException,
119
122
  Evernote::EDAM::Error::EDAMUserException,
120
123
  Evernote::EDAM::Error::EDAMNotFoundException => e
121
- say "Sorry, an error occurred saving the note to Evernote (#{e.message})"
124
+ say "Sorry, an error occurred communicating with Evernote (#{e.inspect})"
122
125
  false
123
126
  end
124
127
 
@@ -144,13 +147,13 @@ module EvernoteEditor
144
147
  end
145
148
 
146
149
  def open_editor(file_path)
147
- cmd = [@configuration[:editor], blocking_flag, file_path].join(' ')
150
+ cmd = [@configuration['editor'], blocking_flag, file_path].join(' ')
148
151
  system(cmd) or raise SystemCallError, "`#{cmd}` gave exit status: #{$?.exitstatus}"
149
152
  end
150
153
 
151
154
  # Patterned from Pry
152
155
  def blocking_flag
153
- case File.basename(@configuration[:editor])
156
+ case File.basename(@configuration['editor'])
154
157
  when /^[gm]vim/
155
158
  '--nofork'
156
159
  when /^jedit/
@@ -165,19 +168,19 @@ module EvernoteEditor
165
168
  say "You will need a developer token to use this editor."
166
169
  say "More information: http://dev.evernote.com/start/core/authentication.php#devtoken"
167
170
  token = ask("Please enter your developer token: ") { |q| q.default = "none" }
168
- @configuration[:token] = token
171
+ @configuration['token'] = token
169
172
  write_configuration
170
173
  end
171
174
 
172
175
  def store_editor
173
176
  editor_command = ask("Please enter the editor command you would like to use: ") { |q| q.default = `which vim`.strip.chomp }
174
- @configuration[:editor] = editor_command
177
+ @configuration['editor'] = editor_command
175
178
  write_configuration
176
179
  end
177
180
 
178
181
  def write_configuration
179
182
  File.open(CONFIGURATION_FILE, "w") do |file|
180
- file.write @configuration.to_yaml
183
+ file.write @configuration.to_json
181
184
  end
182
185
  end
183
186
 
@@ -1,3 +1,3 @@
1
1
  module EvernoteEditor
2
- VERSION = "0.1.5"
2
+ VERSION = "0.1.6"
3
3
  end
@@ -44,14 +44,14 @@ describe EvernoteEditor::Editor do
44
44
  enved.stub(:ask).with(/token/).and_return('123')
45
45
  enved.stub(:ask).with(/editor/).and_return('vim')
46
46
  enved.configure
47
- YAML::load(File.open(File.expand_path("~/.evned")))[:token].should eq "123"
47
+ JSON::load(File.open(File.expand_path("~/.evned")))['token'].should eq "123"
48
48
  end
49
49
 
50
50
  it "stores the editor path" do
51
51
  enved.stub(:ask).with(/token/).and_return('123')
52
52
  enved.stub(:ask).with(/editor/).and_return('vim')
53
53
  enved.configure
54
- YAML::load(File.open(File.expand_path("~/.evned")))[:editor].should eq "vim"
54
+ JSON::load(File.open(File.expand_path("~/.evned")))['editor'].should eq "vim"
55
55
  end
56
56
 
57
57
  end
@@ -76,7 +76,7 @@ describe EvernoteEditor::Editor do
76
76
 
77
77
  before do
78
78
  File.open(File.expand_path("~/.evned"), 'w') do |f|
79
- f.write( { foo: '123', editor: 'vim' }.to_yaml )
79
+ f.write( { foo: '123', editor: 'vim' }.to_json )
80
80
  end
81
81
  end
82
82
 
@@ -89,7 +89,7 @@ describe EvernoteEditor::Editor do
89
89
  it "rewrites the configuration file" do
90
90
  enved.should_receive(:ask).with(/token/).and_return('123')
91
91
  enved.configure
92
- YAML::load(File.open(File.expand_path("~/.evned")))[:token].should eq "123"
92
+ JSON::load(File.open(File.expand_path("~/.evned")))['token'].should eq "123"
93
93
  end
94
94
 
95
95
  end
@@ -9,7 +9,7 @@ RSpec.configure do |config|
9
9
 
10
10
  def write_fakefs_config
11
11
  File.open(File.expand_path("~/.evned"), 'w') do |f|
12
- f.write( { token: '123', editor: 'vim' }.to_yaml )
12
+ f.write( { token: '123', editor: 'vim' }.to_json )
13
13
  end
14
14
  end
15
15
  end
metadata CHANGED
@@ -1,36 +1,32 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: evernote-editor
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.5
5
- prerelease:
4
+ version: 0.1.6
6
5
  platform: ruby
7
6
  authors:
8
7
  - hpoydar
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2013-02-24 00:00:00.000000000 Z
11
+ date: 2013-10-15 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: evernote_oauth
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
17
  - - ~>
20
18
  - !ruby/object:Gem::Version
21
- version: 0.1.6
19
+ version: 0.2.1
22
20
  type: :runtime
23
21
  prerelease: false
24
22
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
23
  requirements:
27
24
  - - ~>
28
25
  - !ruby/object:Gem::Version
29
- version: 0.1.6
26
+ version: 0.2.1
30
27
  - !ruby/object:Gem::Dependency
31
28
  name: highline
32
29
  requirement: !ruby/object:Gem::Requirement
33
- none: false
34
30
  requirements:
35
31
  - - ~>
36
32
  - !ruby/object:Gem::Version
@@ -38,7 +34,6 @@ dependencies:
38
34
  type: :runtime
39
35
  prerelease: false
40
36
  version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
37
  requirements:
43
38
  - - ~>
44
39
  - !ruby/object:Gem::Version
@@ -46,7 +41,6 @@ dependencies:
46
41
  - !ruby/object:Gem::Dependency
47
42
  name: redcarpet
48
43
  requirement: !ruby/object:Gem::Requirement
49
- none: false
50
44
  requirements:
51
45
  - - ~>
52
46
  - !ruby/object:Gem::Version
@@ -54,7 +48,6 @@ dependencies:
54
48
  type: :runtime
55
49
  prerelease: false
56
50
  version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
51
  requirements:
59
52
  - - ~>
60
53
  - !ruby/object:Gem::Version
@@ -62,7 +55,6 @@ dependencies:
62
55
  - !ruby/object:Gem::Dependency
63
56
  name: reverse_markdown
64
57
  requirement: !ruby/object:Gem::Requirement
65
- none: false
66
58
  requirements:
67
59
  - - ~>
68
60
  - !ruby/object:Gem::Version
@@ -70,7 +62,6 @@ dependencies:
70
62
  type: :runtime
71
63
  prerelease: false
72
64
  version_requirements: !ruby/object:Gem::Requirement
73
- none: false
74
65
  requirements:
75
66
  - - ~>
76
67
  - !ruby/object:Gem::Version
@@ -78,7 +69,6 @@ dependencies:
78
69
  - !ruby/object:Gem::Dependency
79
70
  name: fakefs
80
71
  requirement: !ruby/object:Gem::Requirement
81
- none: false
82
72
  requirements:
83
73
  - - ~>
84
74
  - !ruby/object:Gem::Version
@@ -86,7 +76,6 @@ dependencies:
86
76
  type: :development
87
77
  prerelease: false
88
78
  version_requirements: !ruby/object:Gem::Requirement
89
- none: false
90
79
  requirements:
91
80
  - - ~>
92
81
  - !ruby/object:Gem::Version
@@ -94,7 +83,6 @@ dependencies:
94
83
  - !ruby/object:Gem::Dependency
95
84
  name: rake
96
85
  requirement: !ruby/object:Gem::Requirement
97
- none: false
98
86
  requirements:
99
87
  - - ~>
100
88
  - !ruby/object:Gem::Version
@@ -102,7 +90,6 @@ dependencies:
102
90
  type: :development
103
91
  prerelease: false
104
92
  version_requirements: !ruby/object:Gem::Requirement
105
- none: false
106
93
  requirements:
107
94
  - - ~>
108
95
  - !ruby/object:Gem::Version
@@ -110,7 +97,6 @@ dependencies:
110
97
  - !ruby/object:Gem::Dependency
111
98
  name: rspec
112
99
  requirement: !ruby/object:Gem::Requirement
113
- none: false
114
100
  requirements:
115
101
  - - ~>
116
102
  - !ruby/object:Gem::Version
@@ -118,7 +104,6 @@ dependencies:
118
104
  type: :development
119
105
  prerelease: false
120
106
  version_requirements: !ruby/object:Gem::Requirement
121
- none: false
122
107
  requirements:
123
108
  - - ~>
124
109
  - !ruby/object:Gem::Version
@@ -147,27 +132,26 @@ files:
147
132
  - spec/spec_helper.rb
148
133
  homepage: https://github.com/hpoydar/evernote-editor
149
134
  licenses: []
135
+ metadata: {}
150
136
  post_install_message:
151
137
  rdoc_options: []
152
138
  require_paths:
153
139
  - lib
154
140
  required_ruby_version: !ruby/object:Gem::Requirement
155
- none: false
156
141
  requirements:
157
- - - ! '>='
142
+ - - '>='
158
143
  - !ruby/object:Gem::Version
159
144
  version: '0'
160
145
  required_rubygems_version: !ruby/object:Gem::Requirement
161
- none: false
162
146
  requirements:
163
- - - ! '>='
147
+ - - '>='
164
148
  - !ruby/object:Gem::Version
165
149
  version: '0'
166
150
  requirements: []
167
151
  rubyforge_project:
168
- rubygems_version: 1.8.23
152
+ rubygems_version: 2.0.3
169
153
  signing_key:
170
- specification_version: 3
154
+ specification_version: 4
171
155
  summary: Command line creation and editing of Evernote notes
172
156
  test_files:
173
157
  - spec/evernote_editor/editor_spec.rb