Sha256: d3b789fb1b7a6f93633cc4c7638693d036961e24d735e3e28584c9e381417ff3

Contents?: true

Size: 451 Bytes

Versions: 103

Compression:

Stored size: 451 Bytes

Contents

# frozen_string_literal: true

require "thor"

class SubCommandBase < Thor
  def self.banner(command, namespace = nil, subcommand = false)
    "#{basename} #{subcommand_prefix} #{command.usage}"
  end

  def self.subcommand_prefix
    self.name
      .split("::")[2..-2]
      .map { |name| name.gsub(%r{^[A-Z]}) { |match| match[0].downcase } }
      .map { |name| name.gsub(%r{[A-Z]}) { |match| "-#{match[0].downcase}" } }
      .join(" ")
  end
end

Version data entries

103 entries across 103 versions & 2 rubygems

Version Path
neetob-0.5.35 lib/neetob/cli/sub_command_base.rb
neetob-0.5.34 lib/neetob/cli/sub_command_base.rb
neetob-0.5.33 lib/neetob/cli/sub_command_base.rb
neetob-0.5.32 lib/neetob/cli/sub_command_base.rb
neetob-0.5.31 lib/neetob/cli/sub_command_base.rb
neetob-0.5.30 lib/neetob/cli/sub_command_base.rb
neetob-0.5.29 lib/neetob/cli/sub_command_base.rb
neetob-0.5.28 lib/neetob/cli/sub_command_base.rb
neetob-0.5.27 lib/neetob/cli/sub_command_base.rb
neetob-0.5.26 lib/neetob/cli/sub_command_base.rb
neetob-0.5.25 lib/neetob/cli/sub_command_base.rb
neetob-0.5.24 lib/neetob/cli/sub_command_base.rb
neetob-0.5.23 lib/neetob/cli/sub_command_base.rb
neetob-0.5.22 lib/neetob/cli/sub_command_base.rb
neetob-0.5.21 lib/neetob/cli/sub_command_base.rb
neetob-0.5.20 lib/neetob/cli/sub_command_base.rb
neetob-0.5.19 lib/neetob/cli/sub_command_base.rb
neetob-0.5.18 lib/neetob/cli/sub_command_base.rb
neetob-0.5.17 lib/neetob/cli/sub_command_base.rb
neetob-0.5.16 lib/neetob/cli/sub_command_base.rb