mint 0.1.4 → 0.1.5
Sign up to get free protection for your applications and to get access to all the features.
- data/bin/mint +12 -28
- data/config/options.yaml +72 -0
- data/lib/mint.rb +1 -0
- data/lib/mint/mint.rb +3 -3
- data/lib/mint/version.rb +3 -0
- metadata +5 -3
data/bin/mint
CHANGED
@@ -11,25 +11,9 @@ module Mint
|
|
11
11
|
# A map of all options that OptParse will accept from the commandline.
|
12
12
|
# All other arguments are taken to be filenames.
|
13
13
|
def self.options
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
layout: ['l', 'layout', true, 'Specify only the layout.'],
|
18
|
-
style: ['s', 'style', true, 'Specify only the style.'],
|
19
|
-
root: ['w', 'root', true, 'Specify a root outside the current directory.'],
|
20
|
-
destination: ['d', 'destination', true,
|
21
|
-
'Specify a destination directory, relative to the root.'],
|
22
|
-
style_destination: ['n', 'style-destination', true,
|
23
|
-
'Specify a destination directory for stylesheets, or nil to link in place'],
|
24
|
-
|
25
|
-
# These options do not take parameters
|
26
|
-
global: ['G', 'global', false, 'Specify config changes on a global level.'],
|
27
|
-
user: ['U', 'user', false, 'Specify config changes on a user-wide level.'],
|
28
|
-
local: ['L', 'local', false, 'Specify config changes on a project-specific level.'],
|
29
|
-
force: ['f', 'force', false, 'Force file overwrite without prompt.'],
|
30
|
-
verbose: ['v', 'verbose', false, 'Verbose output.'],
|
31
|
-
simulation: ['s', 'simulation', false, 'Simulate transformation without actually creating files.']
|
32
|
-
}
|
14
|
+
# Options file, relative to this one
|
15
|
+
options_file = '../../config/options.yaml'
|
16
|
+
YAML.load_file File.expand_path(options_file, __FILE__)
|
33
17
|
end
|
34
18
|
|
35
19
|
def self.config_options
|
@@ -42,7 +26,7 @@ module Mint
|
|
42
26
|
select(&:exist?).
|
43
27
|
map {|p| YAML.load_file p }.
|
44
28
|
reverse.
|
45
|
-
reduce(
|
29
|
+
reduce(Mint.default_options) {|r,p| r.merge p }
|
46
30
|
end
|
47
31
|
|
48
32
|
def self.full_options_with(commandline_options)
|
@@ -102,19 +86,19 @@ commandline_options = {}
|
|
102
86
|
optparse = OptionParser.new do |opts|
|
103
87
|
opts.banner = 'Usage: mint [command] files [options]'
|
104
88
|
|
105
|
-
Mint::
|
106
|
-
has_param = v[
|
89
|
+
Mint::CommandLine.options.each do |k,v|
|
90
|
+
has_param = v['parameter']
|
107
91
|
|
108
|
-
v[
|
109
|
-
v[
|
92
|
+
v['short'] = "-#{v['short']}"
|
93
|
+
v['long'] = "--#{v['long']}"
|
110
94
|
|
111
95
|
if has_param
|
112
|
-
v[
|
113
|
-
opts.on v[
|
114
|
-
commandline_options[k] = p
|
96
|
+
v['long'] << " PARAM"
|
97
|
+
opts.on v['short'], v['long'], v['description'] do |p|
|
98
|
+
commandline_options[k.to_sym] = p
|
115
99
|
end
|
116
100
|
else
|
117
|
-
opts.on v[
|
101
|
+
opts.on v['short'], v['long'], v['description'] do
|
118
102
|
commandline_options[k] = true
|
119
103
|
end
|
120
104
|
end
|
data/config/options.yaml
ADDED
@@ -0,0 +1,72 @@
|
|
1
|
+
template:
|
2
|
+
short: t
|
3
|
+
long: template
|
4
|
+
parameter: true
|
5
|
+
description: 'Specify the template (layout + style).'
|
6
|
+
|
7
|
+
layout:
|
8
|
+
short: l
|
9
|
+
long: layout
|
10
|
+
parameter: true
|
11
|
+
description: 'Specify only the style'
|
12
|
+
|
13
|
+
style:
|
14
|
+
short: s
|
15
|
+
long: style
|
16
|
+
parameter: true
|
17
|
+
description: 'Specify only the style.'
|
18
|
+
|
19
|
+
root:
|
20
|
+
short: w
|
21
|
+
long: r
|
22
|
+
parameter: true
|
23
|
+
description: 'Specify a root outside the current directory.'
|
24
|
+
|
25
|
+
destination:
|
26
|
+
short: d
|
27
|
+
long: destination
|
28
|
+
parameter: true
|
29
|
+
description: 'Specify a destination directory, relative to the root.'
|
30
|
+
|
31
|
+
style_destination:
|
32
|
+
short: n
|
33
|
+
long: style-destination
|
34
|
+
parameter: true
|
35
|
+
description: 'Specify a destination directory for stylesheets, or nil to link in place'
|
36
|
+
|
37
|
+
global:
|
38
|
+
short: G
|
39
|
+
long: global
|
40
|
+
parameter: false
|
41
|
+
description: 'Specify config changes on a global level.'
|
42
|
+
|
43
|
+
user:
|
44
|
+
short: U
|
45
|
+
long: user
|
46
|
+
parameter: false
|
47
|
+
description: 'Specify config changes on a user-wide level.'
|
48
|
+
|
49
|
+
|
50
|
+
local:
|
51
|
+
short: L
|
52
|
+
long: local
|
53
|
+
parameter: false
|
54
|
+
description: 'Specify config changes on a project-specific level.'
|
55
|
+
|
56
|
+
force:
|
57
|
+
short: f
|
58
|
+
long: force
|
59
|
+
parameter: false
|
60
|
+
description: 'Force file overwrite without prompt.'
|
61
|
+
|
62
|
+
verbose:
|
63
|
+
short: v
|
64
|
+
long: verbose
|
65
|
+
parameter: false
|
66
|
+
description: 'Verbose output.'
|
67
|
+
|
68
|
+
simulation:
|
69
|
+
short: s
|
70
|
+
long: simulation
|
71
|
+
parameter: false
|
72
|
+
description: 'Simulate transformation without actually creating files.'
|
data/lib/mint.rb
CHANGED
data/lib/mint/mint.rb
CHANGED
@@ -1,7 +1,6 @@
|
|
1
1
|
require 'pathname'
|
2
2
|
require 'fileutils'
|
3
3
|
require 'tilt'
|
4
|
-
require 'helpers'
|
5
4
|
|
6
5
|
module Mint
|
7
6
|
|
@@ -11,7 +10,7 @@ module Mint
|
|
11
10
|
Tilt.register 'html', Tilt::ERBTemplate
|
12
11
|
Tilt.register 'css', Tilt::LessTemplate
|
13
12
|
|
14
|
-
def root
|
13
|
+
def self.root
|
15
14
|
Pathname.new(__FILE__).realpath.dirname + '../..'
|
16
15
|
end
|
17
16
|
|
@@ -20,7 +19,8 @@ module Mint
|
|
20
19
|
# Either way, earlier/higher paths take precedence. And is considered to
|
21
20
|
# be the directory for "local" config options, templates, etc.
|
22
21
|
def self.path
|
23
|
-
mint_path = ENV['MINT_PATH'] ||
|
22
|
+
mint_path = ENV['MINT_PATH'] ||
|
23
|
+
"#{Dir.getwd}/.mint:~/.mint:#{Mint.root}"
|
24
24
|
mint_path.split(':').map {|p| Pathname.new(p).expand_path }
|
25
25
|
end
|
26
26
|
|
data/lib/mint/version.rb
ADDED
metadata
CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
|
|
5
5
|
segments:
|
6
6
|
- 0
|
7
7
|
- 1
|
8
|
-
-
|
9
|
-
version: 0.1.
|
8
|
+
- 5
|
9
|
+
version: 0.1.5
|
10
10
|
platform: ruby
|
11
11
|
authors:
|
12
12
|
- David Jacobs
|
@@ -14,7 +14,7 @@ autorequire:
|
|
14
14
|
bindir: bin
|
15
15
|
cert_chain: []
|
16
16
|
|
17
|
-
date: 2011-02-
|
17
|
+
date: 2011-02-02 00:00:00 -05:00
|
18
18
|
default_executable:
|
19
19
|
dependencies:
|
20
20
|
- !ruby/object:Gem::Dependency
|
@@ -44,6 +44,8 @@ files:
|
|
44
44
|
- lib/mint.rb
|
45
45
|
- lib/mint/mint.rb
|
46
46
|
- lib/mint/helpers.rb
|
47
|
+
- lib/mint/version.rb
|
48
|
+
- config/options.yaml
|
47
49
|
has_rdoc: true
|
48
50
|
homepage: http://github.com/davejacobs/mint
|
49
51
|
licenses: []
|