todo-curses 0.0.5 → 0.0.6

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
  SHA1:
3
- metadata.gz: 732f87d6a1d0039ec07cfdc464b9a81bf82ba1e3
4
- data.tar.gz: f3111293b08d469ea38f092dc3a6319305a8e3f6
3
+ metadata.gz: 72fdc9d3b56688a1a54baf70871e942c67960ca6
4
+ data.tar.gz: 65842f06410196df2ff73b1f956e546225e0e4ac
5
5
  SHA512:
6
- metadata.gz: 133900726e93cc036678fd9cc165655ebd91daf5854ccf3db4b177f970e94eb5045041223e76ead393ca3a9f42c19c2f97bfe7ec6ce07a4c4470365c4d27066d
7
- data.tar.gz: 2f1b823f7438d4cee0e8280d6623db11fd39369274cfa5348d0994c99a30f47024911a8721502f3cbc9e456f097dd1e2ac68e7177e19b6a621c17e4e5d1d5fc6
6
+ metadata.gz: 4e675d31ac70ede162f1bdec6425adc4a01bfb06e7ae48fbea4452964e219253500e96fe4940abdcf23e99f6c55c56f9a863b819ee36808e5e24dce5e7caed91
7
+ data.tar.gz: 926d880a5dc678d79c098834456e034fbf4d88e2b555e4c08edcdbf991716a6116808e325ed3f57ca9fabf31375185390ea86340526be1d4a299c76d2bf96784
data/.gitignore CHANGED
@@ -1,6 +1,2 @@
1
- todo.txt
2
- todo.txt.bak
3
- done.txt
4
- log.txt
5
1
  *.gem
6
2
  results.html
@@ -0,0 +1,7 @@
1
+ language: ruby
2
+ rvm:
3
+ - 2.0
4
+ - 2.1
5
+ - 2.2
6
+ - 2.3.0
7
+ before_install: gem install bundler -v 1.10.6
@@ -1,26 +1,39 @@
1
1
  # Contributing
2
2
 
3
- If you find this app useful, please consider contributing to its
4
- development. There are plenty of wish-list features in the
5
- [bug tracker][bugtracker].
3
+ This is a great project for brushing up on basic Ruby skills,
4
+ and practicing some low-level C-ish Curses along the way.
6
5
 
7
- To get started, fork the repo, have a look around, and try building
8
- the gem:
6
+ If you're interested in contributing, please have a look at the
7
+ roadmap in the project management folder.
8
+ (Alternatively, you could just run `rake roadmap`, which should
9
+ open the roadmap in TodoCurses. Very meta.)
10
+ There are a lot of interesting features to build out --
11
+ pull requests welcome!
12
+
13
+ Please send a message to me on Github or
14
+ [log an issue for your feature][bugtracker] so that there's no
15
+ duplicate effort on features.
16
+
17
+ ## Setup
18
+
19
+ To get started, fork the repo, have a look around, and run the
20
+ standard `bundle` to install dependencies.
21
+
22
+ Next, try building the gem:
9
23
 
10
24
  gem build todo-curses.gemspec
11
25
 
12
26
  This should succeed.
13
27
 
14
- Then, [find an issue][bugtracker] (or log one) and add a comment saying that
15
- you'd like to work on it.
16
- (So that we don't end up with duplicate effort.)
28
+ To install this as an actual gem onto your local machine,
29
+ run `bundle exec rake install`.
17
30
 
18
31
  ## Developing
19
32
 
20
- To make life a little easier, I've set up some Rake tasks.
21
- If you create a `todo.txt.bak` file, you can run `rake reset`, which
22
- will copy it into `todo.txt`. Then you can run `rake` and it will
23
- open the app on this file.
33
+ To make life a little easier, there are some handy Rake tasks.
34
+ `rake run` is the most straight-forward. Assuming you have access
35
+ to `/tmp`, and you've already run `bundle`, this should open up
36
+ the app. (If not, please [report a bug][bugtracker].)
24
37
 
25
38
  ## Submitting
26
39
 
@@ -29,6 +42,6 @@ Push to your fork and submit a pull request. Be sure to mention
29
42
  the issue number you were working on in the bug tracker so that
30
43
  they're linked up.
31
44
 
32
- [bugtracker]: https://github.com/lorentrogers/jekylljournal/issues
45
+ [bugtracker]: https://github.com/lorentrogers/todo-curses/issues
33
46
  [commit]: http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html
34
47
 
data/README.md CHANGED
@@ -13,15 +13,16 @@ this, I decided to roll my own using Ruby and Ncurses. There was already
13
13
  a robust library for handling todo.txt files, and Ncurses was something
14
14
  I'd been meaning to learn for a while.
15
15
 
16
- No doubt there's a ton of nasty code in here. I'm sure there's a lot
17
- that can be refactored; pull requests welcome!
18
-
19
- ![Gem Version](https://badge.fury.io/rb/todo-curses.svg)
16
+ ![Gem Version](https://img.shields.io/gem/v/todo-curses.svg)
17
+ ![Total Gem Downloads](https://img.shields.io/gem/dt/todo-curses.svg)
18
+ [![Build Status](https://travis-ci.org/lorentrogers/todo-curses.svg?branch=master)](https://travis-ci.org/lorentrogers/todo-curses)
20
19
 
21
20
  [Gem available on Rubygems.org](https://rubygems.org/gems/todo-curses)
22
21
 
23
22
  [Source on github.com](https://github.com/lorentrogers/todo-curses)
24
23
 
24
+ Supports Ruby >= `2.0.0`
25
+
25
26
  ## Installation
26
27
 
27
28
  Grab the gem:
@@ -53,16 +54,8 @@ phase, I use Vim for my day-to-day work.
53
54
 
54
55
  ## Development
55
56
 
56
- To release a new version, update
57
- the version number in `version.rb`, and then run
58
- `bundle exec rake release`, which will create a git tag for the version,
59
- push git commits and tags, and push the `.gem`
60
- file to [rubygems.org](https://rubygems.org).
61
- After checking out the repo, run `bin/setup` to install dependencies.
62
- You can also run `bin/console` for an interactive prompt that
63
- will allow you to experiment.
64
-
65
- To install this gem onto your local machine, run `bundle exec rake install`.
57
+ Please read through `CONTRIBUTING.md` for more info.
58
+ Contributions are very welcome!
66
59
 
67
60
  ## License
68
61
 
data/Rakefile CHANGED
@@ -1,3 +1,16 @@
1
+ require 'fileutils'
2
+ require 'bundler'
3
+ require 'rake/clean'
4
+ require 'rake/testtask'
5
+ require 'rubocop/rake_task'
6
+ require 'cucumber'
7
+ require 'cucumber/rake/task'
8
+ require 'rdoc/task'
9
+
10
+ gem 'rdoc' # we need the installed RDoc gem, not the system one
11
+
12
+ include Rake::DSL
13
+
1
14
  def dump_load_path
2
15
  puts $LOAD_PATH.join("\n")
3
16
  found = nil
@@ -24,18 +37,12 @@ def dump_load_path
24
37
  end
25
38
  end
26
39
 
27
- require 'bundler'
28
- require 'rake/clean'
29
-
30
- require 'rake/testtask'
31
- require 'rubocop/rake_task'
32
-
33
- require 'cucumber'
34
- require 'cucumber/rake/task'
35
- gem 'rdoc' # we need the installed RDoc gem, not the system one
36
- require 'rdoc/task'
37
-
38
- include Rake::DSL
40
+ # Creates a sample file for testing in /tmp.
41
+ def reset_test_file(todo_file='test/todo.txt')
42
+ FileUtils.rm_rf '/tmp/todo-curses'
43
+ FileUtils.mkdir '/tmp/todo-curses'
44
+ FileUtils.cp todo_file, '/tmp/todo-curses/'
45
+ end
39
46
 
40
47
  Bundler::GemHelper.install_tasks
41
48
 
@@ -57,10 +64,24 @@ end
57
64
 
58
65
  task :default => [:test,:features]
59
66
 
67
+ # Copies the roadmap file to /tmp and opens the app for it.
68
+ desc 'roadmap'
69
+ task :roadmap do
70
+ reset_test_file('project-management/todo.txt')
71
+ sh 'bundle exec bin/todo-curses /tmp/todo-curses/todo.txt'
72
+ end
73
+
60
74
  # Reset the testing todo.txt file, if you have one.
61
75
  desc 'reset'
62
76
  task :reset do
63
- sh 'cp todo.txt.bak todo.txt'
77
+ reset_test_file
78
+ end
79
+
80
+ # Easy way to run the app for dev
81
+ desc 'run'
82
+ task :run do
83
+ reset_test_file unless File.file?('/tmp/todo-curses/todo.txt')
84
+ sh 'bundle exec bin/todo-curses /tmp/todo-curses/todo.txt'
64
85
  end
65
86
 
66
87
  # Easy way to rubocop the project
@@ -7,37 +7,16 @@ require 'TodoCurses'
7
7
  class App
8
8
  include Methadone::Main
9
9
  include Methadone::CLILogging
10
+ include Todo
10
11
  include TodoCurses
11
12
 
12
13
  main do |todo_path|
13
- # your program code here
14
- # You can access CLI options via
15
- # the options Hash
14
+ TodoCurses::View.new todo_path
16
15
  end
17
16
 
18
- # supplemental methods here
19
-
20
- # Declare command-line interface here
21
-
22
- # description "one line description of your app"
23
- #
24
- # Accept flags via:
25
- # on("--flag VAL","Some flag")
26
- # options[flag] will contain VAL
27
- #
28
- # Specify switches via:
29
- # on("--[no-]switch","Some switch")
30
- #
31
- # Or, just call OptionParser methods on opts
32
- #
33
- # Require an argument
34
- # arg :some_arg
35
- #
36
- # # Make an argument optional
37
- # arg :optional_arg, :optional
38
-
17
+ arg :todo_path, 'Path to the todo.txt file'
18
+ description 'An interactive curses-based editor for todo.txt files'
39
19
  version TodoCurses::VERSION
40
-
41
20
  use_log_level_option :toggle_debug_on_signal => 'USR1'
42
21
 
43
22
  go!
@@ -1,14 +1,3 @@
1
1
  require 'TodoCurses/view.rb'
2
2
  require 'TodoCurses/version.rb'
3
3
  require 'todo-txt'
4
-
5
- module TodoCurses
6
- include Todo
7
-
8
- if ARGV.size != 1
9
- printf("usage: #{$PROGRAM_NAME} file\n")
10
- exit
11
- end
12
-
13
- View.new ARGV[0]
14
- end
@@ -1,3 +1,3 @@
1
1
  module TodoCurses
2
- VERSION = '0.0.5'
2
+ VERSION = '0.0.6'.freeze
3
3
  end
@@ -1,40 +1,17 @@
1
1
  require 'ncursesw'
2
+ require 'todo-txt'
2
3
 
4
+ # Interactive application for handling todo.txt files
3
5
  module TodoCurses
4
6
  include Ncurses
7
+ include Todo
5
8
 
6
9
  # A curses based todo.txt file viewer
7
10
  class View
8
11
  # Run the ncurses application
9
12
  def interact
10
- while true
11
- result = true
12
- c = Ncurses.getch
13
- case c
14
- when 'j'.ord # Move down
15
- result = scroll_down
16
- when 'k'.ord # Move up
17
- result = scroll_up
18
- when 'J'.ord # Decrease priority
19
- result = priority_down
20
- when 'K'.ord # Increase priority
21
- result = priority_up
22
- when 'x'.ord # Toggle complete
23
- toggle_item_completion
24
- when 'n'.ord # New item
25
- new_item
26
- when 'h'.ord # Scroll to top
27
- while scroll_up
28
- end
29
- when 'l'.ord # Scroll to bottom
30
- while scroll_down
31
- end
32
- when 'q'.ord
33
- break
34
- else
35
- @screen.mvprintw(0, 0, "[unknown key `#{Ncurses.keyname(c)}'=#{c}] ")
36
- end
37
- Ncurses.beep unless result
13
+ loop do
14
+ break unless handle_character_input(Ncurses.getch)
38
15
  end
39
16
  clean_done_tasks
40
17
  close_ncurses
@@ -42,6 +19,32 @@ module TodoCurses
42
19
 
43
20
  private
44
21
 
22
+ # Maps methods to character inputs from Ncurses.
23
+ # @return [Boolean] false if application should exit.
24
+ #
25
+ # rubocop:disable Metrics/MethodLength
26
+ def handle_character_input(c)
27
+ case c
28
+ when 'q'.ord then return false
29
+ when 'j'.ord then scroll_down
30
+ when 'k'.ord then scroll_up
31
+ when 'J'.ord then priority_down
32
+ when 'K'.ord then priority_up
33
+ when 'x'.ord then toggle_item_completion
34
+ when 'n'.ord then new_item
35
+ when 'h'.ord then scroll_home
36
+ when 'l'.ord then scroll_end
37
+ else display_message(c)
38
+ end
39
+ true
40
+ # rubocop:enable Metrics/MethodLength
41
+ end
42
+
43
+ # Displays a message saying that the character was not recognized.
44
+ def display_message(c)
45
+ @screen.mvprintw(0, 0, "[unknown key `#{Ncurses.keyname(c)}'=#{c}] ")
46
+ end
47
+
45
48
  # Create a new fileviewer, and view the file.
46
49
  def initialize(filename)
47
50
  init_curses
@@ -60,6 +63,7 @@ module TodoCurses
60
63
 
61
64
  # Loads the given file as a todo.txt array. Sets the view to the top
62
65
  # and redraws the list view.
66
+ #
63
67
  # @param filename [String] path to the text file to be loaded
64
68
  def load_file(filename)
65
69
  @done_file = File.dirname(filename) + '/done.txt'
@@ -89,16 +93,15 @@ module TodoCurses
89
93
  current_selection = menu_item if item.to_s == last_selection.to_s
90
94
  end
91
95
 
92
- # Build the final menu object
93
- @menu = Ncurses::Menu::MENU.new items
94
- @menu.set_menu_win(@screen)
95
- @menu.set_menu_sub(@screen.derwin(@screen.getmaxx, @screen.getmaxy, 0, 0))
96
- @menu.set_menu_format(@screen.getmaxy, 1)
96
+ display_main_menu(items, current_selection)
97
+ end
97
98
 
98
- # Set dividers to non-interactive
99
- @menu.menu_items.select { |i| i.user_object.nil? }.each do |divider|
100
- divider.item_opts_off Ncurses::Menu::O_SELECTABLE
101
- end
99
+ # Creates a menu and displays it on the screen.
100
+ #
101
+ # @param items [Array] the items to be shown.
102
+ # @param current_selection [Ncurses::Menu::ITEM] the current menu item.
103
+ def display_main_menu(items, current_selection)
104
+ @menu = build_menu(items)
102
105
 
103
106
  # Show the menu
104
107
  @screen.clear
@@ -109,8 +112,26 @@ module TodoCurses
109
112
  @menu.menu_driver(
110
113
  Ncurses::Menu::REQ_DOWN_ITEM) if @menu.current_item.user_object.nil?
111
114
 
112
- # Refresh
113
- @screen.refresh
115
+ # Refresh
116
+ @screen.refresh
117
+ end
118
+
119
+ # Builds the main display menu of todo.txt items.
120
+ #
121
+ # @param items [Array] the items to be shown in the list.
122
+ # @return [Ncurses::Menu::MENU] the final menu object to be shown.
123
+ def build_menu(items)
124
+ # Build the final menu object
125
+ menu = Ncurses::Menu::MENU.new items
126
+ menu.set_menu_win(@screen)
127
+ menu.set_menu_sub(@screen.derwin(@screen.getmaxx, @screen.getmaxy, 0, 0))
128
+ menu.set_menu_format(@screen.getmaxy, 1)
129
+
130
+ # Set dividers to non-interactive
131
+ menu.menu_items.select { |i| i.user_object.nil? }.each do |divider|
132
+ divider.item_opts_off Ncurses::Menu::O_SELECTABLE
133
+ end
134
+ menu
114
135
  end
115
136
 
116
137
  # Moves the current selection's priority up by one unless it is at Z.
@@ -132,14 +153,14 @@ module TodoCurses
132
153
  def scroll_up
133
154
  # Move to the next item if it's not the first in the list
134
155
  unless @menu.menu_items[0].user_object.nil? &&
135
- @menu.current_item.item_index < 2
156
+ @menu.current_item.item_index < 2
136
157
  result = @menu.menu_driver(Ncurses::Menu::REQ_UP_ITEM)
137
158
  end
138
159
  # Move to the next item if it's not a divider
139
160
  result = @menu.menu_driver(
140
161
  Ncurses::Menu::REQ_UP_ITEM) unless @menu.current_item.user_object
141
- return true if result == Ncurses::Menu::E_OK
142
- false
162
+ return true if result == Ncurses::Menu::E_OK
163
+ false
143
164
  end
144
165
 
145
166
  # Scroll the display down by one line
@@ -148,8 +169,20 @@ module TodoCurses
148
169
  result = @menu.menu_driver(Ncurses::Menu::REQ_DOWN_ITEM)
149
170
  result = @menu.menu_driver(
150
171
  Ncurses::Menu::REQ_DOWN_ITEM) unless @menu.current_item.user_object
151
- return true if result == Ncurses::Menu::E_OK
152
- false
172
+ return true if result == Ncurses::Menu::E_OK
173
+ false
174
+ end
175
+
176
+ # Scrolls to the top of the list
177
+ def scroll_home
178
+ while scroll_up
179
+ end
180
+ end
181
+
182
+ # Scrolls to the end of the list
183
+ def scroll_end
184
+ while scroll_down
185
+ end
153
186
  end
154
187
 
155
188
  # Collects a new todo item from the user and saves
@@ -254,7 +287,8 @@ module TodoCurses
254
287
  form.form_driver ch # If this is a normal character, it gets Printed
255
288
  end
256
289
  end
257
- form.form_driver Ncurses::Form::REQ_NEXT_FIELD # Request next to set 0 buffer in field
290
+ # Request next to set 0 buffer in field
291
+ form.form_driver Ncurses::Form::REQ_NEXT_FIELD
258
292
  Ncurses::Form.field_buffer(field, 0)
259
293
  end
260
294
  end
@@ -0,0 +1,35 @@
1
+ (A) 2016-03-09 Fail cleanly if the todo.txt file does not exist +Feature
2
+ (A) 2016-03-09 Page down should actually work +Feature
3
+ (A) 2016-03-09 Refactor main viewer file into proper size +Refactor
4
+ (B) 2016-03-09 Ability to delete a task +Feature
5
+ (B) 2016-03-09 Ability to edit a given task +Feature
6
+ (B) 2016-03-09 Add a spacer between priority groups +Feature
7
+ (B) 2016-03-09 Basic color display +Feature
8
+ (B) 2016-03-09 Escape should close the new item window and delete anything in the buffer +Feature
9
+ (B) 2016-03-09 Highlight newly created items +Feature
10
+ (B) 2016-03-09 Long lines should wrap at edge of display +Feature
11
+ (B) 2016-03-09 Set up Hound integration +ProjectManagement
12
+ (B) 2016-03-09 Show help dialog +Feature
13
+ (B) 2016-04-01 Option to enable/disable autosave after each item edit +Feature
14
+ (B) 2016-04-09 Set up Travis CI for Gem releases and testing +PrjectManagement
15
+ (C) 2016-03-09 Catch ctrl+c and prompt for a clean exit +Feature
16
+ (C) 2016-03-09 Cycle through displays (Priority, project, etc.) +Feature
17
+ (C) 2016-03-09 F: filter tasks (free-text, one filter condition per line) +Feature
18
+ (C) 2016-03-09 Possible memory leak +Refactor
19
+ (C) 2016-03-09 Safer file handling +Feature
20
+ (C) 2016-03-09 Save a copy of the file with a ~ extension +Feature
21
+ (D) 2016-03-08 Confirm quit and clean done tasks +Feature
22
+ (D) 2016-03-09 Ability to copy items to the clipboard +Feature
23
+ (D) 2016-03-09 Ability to duplicate a task into the edit field +Feature
24
+ (E) 2016-03-07 Ability to create new todo.txt files +Feature
25
+ (E) 2016-03-07 Ability to generate a default dotfile +Feature
26
+ (E) 2016-03-09 Ability to archive completed tasks within the app +Feature
27
+ (E) 2016-03-09 Ability to change files +Feature
28
+ (E) 2016-03-09 Ability to move items between lists +Feature
29
+ (E) 2016-03-09 Ability to undo last action +Feature
30
+ (E) 2016-03-09 Advanced filtering settings / memory +Feature
31
+ (E) 2016-03-09 Change current file +Feature
32
+ (E) 2016-03-09 Configuration with a dotfile +Feature
33
+ (E) 2016-03-09 Create new file +Feature
34
+ (E) 2016-03-09 Set default to show help text if no config file is set up +Feature
35
+ x 2016-04-09 2016-03-09 Remove the "list" argument -- not needed +Refactor
@@ -4,25 +4,26 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
4
  require 'TodoCurses/version'
5
5
 
6
6
  Gem::Specification.new do |spec|
7
- spec.name = "todo-curses"
8
- spec.license = "GPL-3.0"
7
+ spec.name = 'todo-curses'
8
+ spec.license = 'GPL-3.0'
9
9
  spec.version = TodoCurses::VERSION
10
- spec.authors = ["Loren Rogers"]
11
- spec.email = ["loren@lorentrogers.com"]
10
+ spec.authors = ['Loren Rogers']
11
+ spec.email = ['loren@lorentrogers.com']
12
12
  spec.summary = %q{An interactive terminal application for managing todo.txt files.}
13
- spec.homepage = "https://github.com/lorentrogers/todo-curses"
13
+ spec.homepage = 'https://github.com/lorentrogers/todo-curses'
14
14
  spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
15
- spec.bindir = "bin"
16
- spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
17
- spec.require_paths = ["lib"]
15
+ spec.bindir = 'bin'
16
+ spec.executables = 'todo-curses'
17
+ spec.require_paths = ['lib']
18
+ spec.required_ruby_version = '>= 2.0'
18
19
 
19
- spec.add_development_dependency "bundler", "~> 1.11"
20
- spec.add_development_dependency "rake", "~> 10.0"
21
- spec.add_development_dependency('rdoc', '~> 4.2', '>= 4.2.2')
22
- spec.add_development_dependency('aruba', '~> 0.14.1')
23
- spec.add_dependency('methadone', '~> 1.9', '>= 1.9.2')
24
- spec.add_dependency('ncursesw', '~> 1.4', '>= 1.4.9')
25
- spec.add_dependency('todo-txt', '~> 0.7')
26
- spec.add_development_dependency('test-unit', '~> 3.1', '>= 3.1.8')
27
- spec.add_development_dependency('rubocop', '~> 0.39.0')
20
+ spec.add_development_dependency 'bundler', '~> 1.10', '>= 1.10.6'
21
+ spec.add_development_dependency 'rake', '~> 10.0'
22
+ spec.add_development_dependency 'rdoc', '~> 4.2', '>= 4.2.2'
23
+ spec.add_development_dependency 'aruba', '~> 0.14.1'
24
+ spec.add_development_dependency 'test-unit', '~> 3.1', '>= 3.1.8'
25
+ spec.add_development_dependency 'rubocop', '~> 0.39.0'
26
+ spec.add_dependency 'methadone', '~> 1.9', '>= 1.9.2'
27
+ spec.add_dependency 'ncursesw', '~> 1.4', '>= 1.4.9'
28
+ spec.add_dependency 'todo-txt', '~> 0.7'
28
29
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: todo-curses
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.5
4
+ version: 0.0.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Loren Rogers
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-04-08 00:00:00.000000000 Z
11
+ date: 2016-04-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -16,14 +16,20 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '1.11'
19
+ version: '1.10'
20
+ - - ">="
21
+ - !ruby/object:Gem::Version
22
+ version: 1.10.6
20
23
  type: :development
21
24
  prerelease: false
22
25
  version_requirements: !ruby/object:Gem::Requirement
23
26
  requirements:
24
27
  - - "~>"
25
28
  - !ruby/object:Gem::Version
26
- version: '1.11'
29
+ version: '1.10'
30
+ - - ">="
31
+ - !ruby/object:Gem::Version
32
+ version: 1.10.6
27
33
  - !ruby/object:Gem::Dependency
28
34
  name: rake
29
35
  requirement: !ruby/object:Gem::Requirement
@@ -73,107 +79,105 @@ dependencies:
73
79
  - !ruby/object:Gem::Version
74
80
  version: 0.14.1
75
81
  - !ruby/object:Gem::Dependency
76
- name: methadone
82
+ name: test-unit
77
83
  requirement: !ruby/object:Gem::Requirement
78
84
  requirements:
79
85
  - - "~>"
80
86
  - !ruby/object:Gem::Version
81
- version: '1.9'
87
+ version: '3.1'
82
88
  - - ">="
83
89
  - !ruby/object:Gem::Version
84
- version: 1.9.2
85
- type: :runtime
90
+ version: 3.1.8
91
+ type: :development
86
92
  prerelease: false
87
93
  version_requirements: !ruby/object:Gem::Requirement
88
94
  requirements:
89
95
  - - "~>"
90
96
  - !ruby/object:Gem::Version
91
- version: '1.9'
97
+ version: '3.1'
92
98
  - - ">="
93
99
  - !ruby/object:Gem::Version
94
- version: 1.9.2
100
+ version: 3.1.8
95
101
  - !ruby/object:Gem::Dependency
96
- name: ncursesw
102
+ name: rubocop
97
103
  requirement: !ruby/object:Gem::Requirement
98
104
  requirements:
99
105
  - - "~>"
100
106
  - !ruby/object:Gem::Version
101
- version: '1.4'
102
- - - ">="
103
- - !ruby/object:Gem::Version
104
- version: 1.4.9
105
- type: :runtime
107
+ version: 0.39.0
108
+ type: :development
106
109
  prerelease: false
107
110
  version_requirements: !ruby/object:Gem::Requirement
108
111
  requirements:
109
112
  - - "~>"
110
113
  - !ruby/object:Gem::Version
111
- version: '1.4'
112
- - - ">="
113
- - !ruby/object:Gem::Version
114
- version: 1.4.9
114
+ version: 0.39.0
115
115
  - !ruby/object:Gem::Dependency
116
- name: todo-txt
116
+ name: methadone
117
117
  requirement: !ruby/object:Gem::Requirement
118
118
  requirements:
119
119
  - - "~>"
120
120
  - !ruby/object:Gem::Version
121
- version: '0.7'
121
+ version: '1.9'
122
+ - - ">="
123
+ - !ruby/object:Gem::Version
124
+ version: 1.9.2
122
125
  type: :runtime
123
126
  prerelease: false
124
127
  version_requirements: !ruby/object:Gem::Requirement
125
128
  requirements:
126
129
  - - "~>"
127
130
  - !ruby/object:Gem::Version
128
- version: '0.7'
131
+ version: '1.9'
132
+ - - ">="
133
+ - !ruby/object:Gem::Version
134
+ version: 1.9.2
129
135
  - !ruby/object:Gem::Dependency
130
- name: test-unit
136
+ name: ncursesw
131
137
  requirement: !ruby/object:Gem::Requirement
132
138
  requirements:
133
139
  - - "~>"
134
140
  - !ruby/object:Gem::Version
135
- version: '3.1'
141
+ version: '1.4'
136
142
  - - ">="
137
143
  - !ruby/object:Gem::Version
138
- version: 3.1.8
139
- type: :development
144
+ version: 1.4.9
145
+ type: :runtime
140
146
  prerelease: false
141
147
  version_requirements: !ruby/object:Gem::Requirement
142
148
  requirements:
143
149
  - - "~>"
144
150
  - !ruby/object:Gem::Version
145
- version: '3.1'
151
+ version: '1.4'
146
152
  - - ">="
147
153
  - !ruby/object:Gem::Version
148
- version: 3.1.8
154
+ version: 1.4.9
149
155
  - !ruby/object:Gem::Dependency
150
- name: rubocop
156
+ name: todo-txt
151
157
  requirement: !ruby/object:Gem::Requirement
152
158
  requirements:
153
159
  - - "~>"
154
160
  - !ruby/object:Gem::Version
155
- version: 0.39.0
156
- type: :development
161
+ version: '0.7'
162
+ type: :runtime
157
163
  prerelease: false
158
164
  version_requirements: !ruby/object:Gem::Requirement
159
165
  requirements:
160
166
  - - "~>"
161
167
  - !ruby/object:Gem::Version
162
- version: 0.39.0
168
+ version: '0.7'
163
169
  description:
164
170
  email:
165
171
  - loren@lorentrogers.com
166
172
  executables:
167
- - console
168
- - setup
169
173
  - todo-curses
170
174
  extensions: []
171
175
  extra_rdoc_files: []
172
176
  files:
173
177
  - ".gitignore"
178
+ - ".travis.yml"
174
179
  - CONTRIBUTING.md
175
180
  - Gemfile
176
- - Gemfile.lock
177
181
  - LICENSE.txt
178
182
  - README.md
179
183
  - Rakefile
@@ -184,6 +188,7 @@ files:
184
188
  - lib/TodoCurses.rb
185
189
  - lib/TodoCurses/version.rb
186
190
  - lib/TodoCurses/view.rb
191
+ - project-management/todo.txt
187
192
  - todo-curses.gemspec
188
193
  homepage: https://github.com/lorentrogers/todo-curses
189
194
  licenses:
@@ -197,7 +202,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
197
202
  requirements:
198
203
  - - ">="
199
204
  - !ruby/object:Gem::Version
200
- version: '0'
205
+ version: '2.0'
201
206
  required_rubygems_version: !ruby/object:Gem::Requirement
202
207
  requirements:
203
208
  - - ">="
@@ -1,82 +0,0 @@
1
- PATH
2
- remote: .
3
- specs:
4
- todo-curses (0.0.5)
5
- methadone (~> 1.9, >= 1.9.2)
6
- ncursesw (~> 1.4, >= 1.4.9)
7
- todo-txt (~> 0.7)
8
-
9
- GEM
10
- remote: https://rubygems.org/
11
- specs:
12
- aruba (0.14.1)
13
- childprocess (~> 0.5.6)
14
- contracts (~> 0.9)
15
- cucumber (>= 1.3.19)
16
- ffi (~> 1.9.10)
17
- rspec-expectations (>= 2.99)
18
- thor (~> 0.19)
19
- ast (2.2.0)
20
- builder (3.2.2)
21
- childprocess (0.5.9)
22
- ffi (~> 1.0, >= 1.0.11)
23
- contracts (0.13.0)
24
- cucumber (2.3.3)
25
- builder (>= 2.1.2)
26
- cucumber-core (~> 1.4.0)
27
- cucumber-wire (~> 0.0.1)
28
- diff-lcs (>= 1.1.3)
29
- gherkin (~> 3.2.0)
30
- multi_json (>= 1.7.5, < 2.0)
31
- multi_test (>= 0.1.2)
32
- cucumber-core (1.4.0)
33
- gherkin (~> 3.2.0)
34
- cucumber-wire (0.0.1)
35
- diff-lcs (1.2.5)
36
- ffi (1.9.10)
37
- gherkin (3.2.0)
38
- json (1.8.3)
39
- methadone (1.9.2)
40
- bundler
41
- multi_json (1.11.2)
42
- multi_test (0.1.2)
43
- ncursesw (1.4.9)
44
- parser (2.3.0.7)
45
- ast (~> 2.2)
46
- power_assert (0.2.7)
47
- powerpack (0.1.1)
48
- rainbow (2.1.0)
49
- rake (10.5.0)
50
- rdoc (4.2.2)
51
- json (~> 1.4)
52
- rspec-expectations (3.4.0)
53
- diff-lcs (>= 1.2.0, < 2.0)
54
- rspec-support (~> 3.4.0)
55
- rspec-support (3.4.1)
56
- rubocop (0.39.0)
57
- parser (>= 2.3.0.7, < 3.0)
58
- powerpack (~> 0.1)
59
- rainbow (>= 1.99.1, < 3.0)
60
- ruby-progressbar (~> 1.7)
61
- unicode-display_width (~> 1.0, >= 1.0.1)
62
- ruby-progressbar (1.7.5)
63
- test-unit (3.1.8)
64
- power_assert
65
- thor (0.19.1)
66
- todo-txt (0.7)
67
- unicode-display_width (1.0.2)
68
-
69
- PLATFORMS
70
- ruby
71
-
72
- DEPENDENCIES
73
- aruba (~> 0.14.1)
74
- bundler (~> 1.11)
75
- rake (~> 10.0)
76
- rdoc (~> 4.2, >= 4.2.2)
77
- rubocop (~> 0.39.0)
78
- test-unit (~> 3.1, >= 3.1.8)
79
- todo-curses!
80
-
81
- BUNDLED WITH
82
- 1.11.2