adding-help: commit enabled help
This commit is contained in:
@@ -14,6 +14,16 @@ module Feature
|
||||
@argv = argv
|
||||
end
|
||||
|
||||
def help
|
||||
"TBD"
|
||||
end
|
||||
|
||||
def usage
|
||||
puts
|
||||
puts "USAGE: #{help}"
|
||||
puts
|
||||
exit
|
||||
end
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
@@ -7,8 +7,8 @@ module Feature
|
||||
true
|
||||
end
|
||||
|
||||
def usage
|
||||
exit
|
||||
def help
|
||||
"feature branch"
|
||||
end
|
||||
|
||||
def execute
|
||||
|
||||
@@ -11,21 +11,24 @@ require_relative './help'
|
||||
module Feature
|
||||
|
||||
class Commander
|
||||
attr_reader :subcommand
|
||||
attr_reader :subcommands, :subcommand
|
||||
|
||||
def initialize (argv)
|
||||
@subcommand = case argv[0]
|
||||
when "start" then Feature::Start.new(argv)
|
||||
when "end" then Feature::End.new(argv)
|
||||
when "trash" then Feature::Trash.new(argv)
|
||||
when "rebase" then Feature::Rebase.new(argv)
|
||||
when "merge" then Feature::MergeTo.new(argv)
|
||||
when "tab" then Feature::Tab.new(argv)
|
||||
when "commit" then Feature::Commit.new(argv)
|
||||
when "help" then Feature::Help.new(argv)
|
||||
when nil then Feature::Branch.new(argv)
|
||||
else Feature::Help.new(argv)
|
||||
end
|
||||
@subcommands = {
|
||||
branch: Feature::Branch.new(argv),
|
||||
commit: Feature::Commit.new(argv),
|
||||
help: Feature::Help.new(argv),
|
||||
end: Feature::End.new(argv),
|
||||
rebase: Feature::Rebase.new(argv),
|
||||
merge: Feature::MergeTo.new(argv),
|
||||
start: Feature::Start.new(argv),
|
||||
tab: Feature::Tab.new(argv),
|
||||
trash: Feature::Trash.new(argv)
|
||||
}
|
||||
|
||||
key = (argv[0] ? argv[0].to_sym : :branch)
|
||||
|
||||
@subcommand = (subcommands[key] ? subcommands[key] : subcommands[:help])
|
||||
end
|
||||
|
||||
def valid?
|
||||
@@ -40,10 +43,6 @@ module Feature
|
||||
subcommand.execute
|
||||
end
|
||||
|
||||
def self.tab_completion
|
||||
[:start, :end, :trash, :rebase, :merge, :commit].map(&:to_s).sort
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
@@ -7,11 +7,8 @@ module Feature
|
||||
argv.size > 1
|
||||
end
|
||||
|
||||
def usage
|
||||
puts
|
||||
puts "USAGE: feature commit [word....]"
|
||||
puts
|
||||
exit
|
||||
def help
|
||||
"feature commit [word....]"
|
||||
end
|
||||
|
||||
def execute
|
||||
|
||||
@@ -7,11 +7,8 @@ module Feature
|
||||
argv.size == 1
|
||||
end
|
||||
|
||||
def usage
|
||||
puts
|
||||
puts "USAGE: feature end"
|
||||
puts
|
||||
exit
|
||||
def help
|
||||
"feature end"
|
||||
end
|
||||
|
||||
def execute
|
||||
|
||||
@@ -7,11 +7,19 @@ module Feature
|
||||
true
|
||||
end
|
||||
|
||||
def usage
|
||||
exit
|
||||
def help
|
||||
"feature help"
|
||||
end
|
||||
|
||||
def execute
|
||||
puts
|
||||
# TODO: fix this
|
||||
commander = Feature::Commander.new(argv)
|
||||
commander.subcommands.keys.sort.each do |key|
|
||||
cmd = commander.subcommands[key]
|
||||
puts cmd.help
|
||||
end
|
||||
puts
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
@@ -7,11 +7,8 @@ module Feature
|
||||
[1,2].include? argv.size
|
||||
end
|
||||
|
||||
def usage
|
||||
puts
|
||||
puts "USAGE: feature merge [branch]"
|
||||
puts
|
||||
exit
|
||||
def help
|
||||
"feature merge [branch]"
|
||||
end
|
||||
|
||||
def execute
|
||||
|
||||
@@ -7,11 +7,8 @@ module Feature
|
||||
argv.size == 1
|
||||
end
|
||||
|
||||
def usage
|
||||
puts
|
||||
puts "USAGE: feature rebase"
|
||||
puts
|
||||
exit
|
||||
def help
|
||||
"feature rebase"
|
||||
end
|
||||
|
||||
def execute
|
||||
|
||||
@@ -7,11 +7,8 @@ module Feature
|
||||
argv.size > 1
|
||||
end
|
||||
|
||||
def usage
|
||||
puts
|
||||
puts "USAGE: feature start feature-words"
|
||||
puts
|
||||
exit
|
||||
def help
|
||||
"feature start feature-words"
|
||||
end
|
||||
|
||||
def execute
|
||||
|
||||
@@ -7,11 +7,8 @@ module Feature
|
||||
[1,2].include? argv.size
|
||||
end
|
||||
|
||||
def usage
|
||||
puts
|
||||
puts "USAGE: feature tab [pattern]"
|
||||
puts
|
||||
exit
|
||||
def help
|
||||
"feature tab [pattern]"
|
||||
end
|
||||
|
||||
def execute
|
||||
@@ -22,8 +19,9 @@ module Feature
|
||||
end
|
||||
|
||||
regexp = Regexp.new(pattern)
|
||||
cmds = Feature::Commander.tab_completion
|
||||
cmds = cmds.select { |x| regexp.match(x) }
|
||||
|
||||
# TODO: fix this
|
||||
cmds = Feature::Commander.new(argv).subcommands.keys.map(&:to_s).sort.select { |x| regexp.match(x) }
|
||||
|
||||
puts cmds.join("\n")
|
||||
end
|
||||
|
||||
@@ -7,11 +7,8 @@ module Feature
|
||||
argv.size == 1
|
||||
end
|
||||
|
||||
def usage
|
||||
puts
|
||||
puts "USAGE: feature trash"
|
||||
puts
|
||||
exit
|
||||
def help
|
||||
"feature trash"
|
||||
end
|
||||
|
||||
def execute
|
||||
|
||||
Reference in New Issue
Block a user