Module: Prigner

Defined in:
lib/prigner.rb

Overview

Prigner is a Project Design Kit, that is, a tool which creates a conventional structure for several projects as RubyGems, Websites, MVC application and simple scripts. It is a DRY tool, because everything is based in templates. In short, a project template engine.

Defined Under Namespace

Modules: CLI Classes: Binder, Builder, Model, Project, Spec, Template, Version

Constant Summary collapse

ROOT =

Root directory for project.

Pathname.new(__FILE__).dirname.join('..').expand_path.freeze

Class Method Summary collapse

Class Method Details

.shared_pathObject

Look at user home and template shared path.



207
208
209
210
# File 'lib/prigner.rb', line 207

def self.shared_path
  user_home_templates = File.join(user_home_basedir, "templates")
  [ user_home_templates, "#{Prigner::ROOT}/share/templates" ]
end

.user_homeObject

User home.



218
219
220
221
222
223
224
225
226
# File 'lib/prigner.rb', line 218

def self.user_home
  File.expand_path(ENV["HOME"])
rescue
  if File::ALT_SEPARATOR then
    "C:/"
  else
    "/"
  end
end

.user_home_basedirObject

User home base directory for Prigner files.



213
214
215
# File 'lib/prigner.rb', line 213

def self.user_home_basedir
  File.join(user_home, ".prigner")
end

.versionObject

Return the current version.



42
43
44
# File 'lib/prigner.rb', line 42

def self.version
  @version ||= Version.current
end