Module: Aid

Defined in:
lib/aid.rb,
lib/aid/script.rb,
lib/aid/scripts.rb,
lib/aid/version.rb,
lib/aid/inheritable.rb,
lib/aid/scripts/new.rb,
lib/aid/scripts/help.rb,
lib/aid/scripts/init.rb,
lib/aid/scripts/doctor.rb

Defined Under Namespace

Modules: Colorize, Inheritable, Scripts Classes: Script

Constant Summary collapse

VERSION =
"0.1.3"

Class Method Summary collapse

Class Method Details

.load_pathsObject



4
5
6
7
8
9
10
11
# File 'lib/aid.rb', line 4

def self.load_paths
  @load_paths ||= [
    File.expand_path(File.dirname(__FILE__) + "/aid/scripts"),
    ".aid",
    "#{Aid.project_root}/.aid",
    ENV['AID_PATH']
  ].compact
end

.load_scripts!Object



13
14
15
16
17
18
19
# File 'lib/aid.rb', line 13

def self.load_scripts!
  load_paths.each do |path|
    Dir.glob("#{path}/**/*.rb").each do |file|
      require File.expand_path(file)
    end
  end
end

.project_rootObject



29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
# File 'lib/aid.rb', line 29

def self.project_root
  @project_root ||= begin
    current_search_dir = Dir.pwd

    loop do
      git_dir = "#{current_search_dir}/.git"

      return current_search_dir if Dir.exists?(git_dir)
      break if current_search_dir == "/"

      current_search_dir = File.expand_path("#{current_search_dir}/..")
    end

    nil
  end
end

.script_argsObject



25
26
27
# File 'lib/aid.rb', line 25

def self.script_args
  ARGV[1..-1]
end

.script_nameObject



21
22
23
# File 'lib/aid.rb', line 21

def self.script_name
  ARGV.first
end