ace 0.3.3 → 0.4
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGELOG +3 -0
- data/bin/ace-gen +2 -0
- data/lib/ace/version.rb +1 -1
- data/project_generator/content/.gitignore +1 -0
- data/project_generator/content/Gemfile +24 -0
- data/project_generator/content/LICENSE.rbt +26 -0
- data/project_generator/content/README.textile.rbt +11 -0
- data/project_generator/content/app/.gitignore +0 -0
- data/project_generator/content/boot.rb +20 -0
- data/project_generator/content/config.ru +32 -0
- data/project_generator/content/config.yml.rbt +2 -0
- data/project_generator/content/content/assets/css/.gitignore +0 -0
- data/project_generator/content/content/assets/img/.gitignore +0 -0
- data/project_generator/content/content/assets/js/.gitignore +0 -0
- data/project_generator/content/content/index.html.haml +7 -0
- data/project_generator/content/content/robots.txt +3 -0
- data/project_generator/content/layouts/base.html.haml.rbt +13 -0
- data/project_generator/content/rules.rb +5 -0
- data/project_generator/content/tasks.rb +28 -0
- data/project_generator/setup.rb +5 -1
- metadata +20 -7
data/CHANGELOG
CHANGED
data/bin/ace-gen
CHANGED
data/lib/ace/version.rb
CHANGED
@@ -0,0 +1 @@
|
|
1
|
+
output
|
@@ -0,0 +1,24 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
|
3
|
+
# Use local clones if possible.
|
4
|
+
# If you want to use your local copy, just symlink it to vendor.
|
5
|
+
extend Module.new {
|
6
|
+
def gem(name, options = Hash.new)
|
7
|
+
local_path = File.expand_path("../vendor/#{name}", __FILE__)
|
8
|
+
if File.exist?(local_path)
|
9
|
+
super name, options.merge(path: local_path).delete_if { |key, _| [:git, :branch].include?(key) }
|
10
|
+
else
|
11
|
+
super name, options
|
12
|
+
end
|
13
|
+
end
|
14
|
+
}
|
15
|
+
|
16
|
+
source "http://gemcutter.org"
|
17
|
+
|
18
|
+
gem "ace"
|
19
|
+
gem "nake"
|
20
|
+
gem "template-inheritance"
|
21
|
+
|
22
|
+
group(:development)
|
23
|
+
gem "rack"
|
24
|
+
end
|
@@ -0,0 +1,26 @@
|
|
1
|
+
Copyright (c) <%= Time.now.year %> <%= @user %>
|
2
|
+
|
3
|
+
All the logic can be used under the MIT license (see bellow).
|
4
|
+
The actual articles though shall not be used by other people
|
5
|
+
in any circumstances unless the author gives permission to do
|
6
|
+
otherwise. In such case the copyright information shall not
|
7
|
+
be omitted as well as a link to its original source.
|
8
|
+
|
9
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
10
|
+
a copy of this software and associated documentation files (the
|
11
|
+
"Software"), to deal in the Software without restriction, including
|
12
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
13
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
14
|
+
permit persons to whom the Software is furnished to do so, subject to
|
15
|
+
the following conditions:
|
16
|
+
|
17
|
+
The above copyright notice and this permission notice shall be
|
18
|
+
included in all copies or substantial portions of the Software.
|
19
|
+
|
20
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
21
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
22
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
23
|
+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
24
|
+
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
25
|
+
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
26
|
+
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
@@ -0,0 +1,11 @@
|
|
1
|
+
h1. About
|
2
|
+
|
3
|
+
This is "<%= @name %>":<%= @url %>. It is written in "Ace":https://github.com/botanicus/ace, a powerful generator of static sites.
|
4
|
+
|
5
|
+
h1. Usage
|
6
|
+
|
7
|
+
_*NOTE:* You need Ruby 1.9.2 or later._
|
8
|
+
|
9
|
+
# Install all the dependencies via bundler: @bundle install@.
|
10
|
+
# Generate the output by running @./tasks.rb generate@.
|
11
|
+
# Run @./config.ru@ and view the content at "localhost:9292":http://localhost:9292/.
|
File without changes
|
@@ -0,0 +1,20 @@
|
|
1
|
+
#!/usr/bin/env bundle exec ace
|
2
|
+
# encoding: utf-8
|
3
|
+
|
4
|
+
Encoding.default_internal = "utf-8"
|
5
|
+
Encoding.default_external = "utf-8"
|
6
|
+
|
7
|
+
# Setup $LOAD_PATH.
|
8
|
+
require "bundler/setup"
|
9
|
+
|
10
|
+
# Custom setup.
|
11
|
+
require "pupu/adapters/ace"
|
12
|
+
Pupu.media_prefix = "/assets"
|
13
|
+
|
14
|
+
require "helpers"
|
15
|
+
|
16
|
+
# Load the app.
|
17
|
+
Dir["app/**/*.rb"].each do |file|
|
18
|
+
puts "~ Loading #{file}"
|
19
|
+
load file
|
20
|
+
end
|
@@ -0,0 +1,32 @@
|
|
1
|
+
#!/usr/bin/env rackup
|
2
|
+
|
3
|
+
# This is just for development. The only thing it does
|
4
|
+
# is serving of static files from the output/ directory.
|
5
|
+
|
6
|
+
use Rack::Head
|
7
|
+
|
8
|
+
class Server
|
9
|
+
def initialize(root)
|
10
|
+
@file_server = Rack::File.new(root)
|
11
|
+
end
|
12
|
+
|
13
|
+
def call(env)
|
14
|
+
path = env["PATH_INFO"]
|
15
|
+
returned = @file_server.call(env)
|
16
|
+
if returned[0] == 404 && env["PATH_INFO"].end_with?("/")
|
17
|
+
env["PATH_INFO"] = File.join(env["PATH_INFO"], "index.html")
|
18
|
+
returned = @file_server.call(env)
|
19
|
+
log "[404]", env["PATH_INFO"] if returned[0] == 404
|
20
|
+
returned
|
21
|
+
else
|
22
|
+
returned
|
23
|
+
end
|
24
|
+
end
|
25
|
+
|
26
|
+
private
|
27
|
+
def log(bold, message)
|
28
|
+
warn "~ \033[1;31m#{bold}\033[0m #{message}"
|
29
|
+
end
|
30
|
+
end
|
31
|
+
|
32
|
+
run Server.new("output")
|
File without changes
|
File without changes
|
File without changes
|
@@ -0,0 +1,13 @@
|
|
1
|
+
!!! 5
|
2
|
+
%html
|
3
|
+
%head
|
4
|
+
%title= block(:title, "<%= @name %>")
|
5
|
+
%meta{"http-equiv" => "content-type", content: "text/html; charset=utf-8"}
|
6
|
+
%meta{"http-equiv" => "content-language", content: "en"}
|
7
|
+
%meta{name: "description", content: block(:description, "")}
|
8
|
+
%meta{name: "keywords", content: block(:keywords, "")}
|
9
|
+
= block(:head)
|
10
|
+
%body
|
11
|
+
= block(:body)
|
12
|
+
#footer
|
13
|
+
© <%= Time.now.year %> – #{Time.now.year} <%= @user %> | Powered by <a href="https://github.com/botanicus/ace">Ace</a>.
|
@@ -0,0 +1,28 @@
|
|
1
|
+
#!/usr/bin/env bundle exec nake
|
2
|
+
# encoding: utf-8
|
3
|
+
|
4
|
+
Encoding.default_internal = "utf-8"
|
5
|
+
Encoding.default_external = "utf-8"
|
6
|
+
|
7
|
+
# Task.tasks.default_proc = lambda { |*| Task[:generate] }
|
8
|
+
|
9
|
+
Task.new(:generate) do |task|
|
10
|
+
task.description = "Generate static HTML."
|
11
|
+
|
12
|
+
task.define do
|
13
|
+
sh "./boot.rb"
|
14
|
+
end
|
15
|
+
end
|
16
|
+
|
17
|
+
Task.new(:rsync) do |task|
|
18
|
+
task.description = "Rsync the output to server."
|
19
|
+
|
20
|
+
# config
|
21
|
+
task.config[:user] = "TODO"
|
22
|
+
task.config[:server] = "TODO"
|
23
|
+
task.config[:path] = "TODO"
|
24
|
+
|
25
|
+
task.define do |options|
|
26
|
+
sh "rsync -av --delete output/ #{config[:user]}@#{config[:server]}:#{config[:path]}"
|
27
|
+
end
|
28
|
+
end
|
data/project_generator/setup.rb
CHANGED
@@ -4,6 +4,10 @@
|
|
4
4
|
# You can update context hash and register hooks. Don't forget to use merge! instead of merge, because you are
|
5
5
|
# manipulating with one object, rather than returning new one.
|
6
6
|
|
7
|
+
# ace-gen project --user="Jakub Stastny" --name=101Ideas.cz --url=http://101ideas.cz
|
8
|
+
|
7
9
|
hook do |generator, context|
|
8
|
-
|
10
|
+
context[:user] ||= ENV["USER"]
|
11
|
+
context[:name] || raise("You have to specify at least --title=WebTitle")
|
12
|
+
context[:url] ||= "http://#{context[:name]}"
|
9
13
|
end
|
metadata
CHANGED
@@ -2,14 +2,14 @@
|
|
2
2
|
name: ace
|
3
3
|
version: !ruby/object:Gem::Version
|
4
4
|
prerelease:
|
5
|
-
version: 0.
|
5
|
+
version: "0.4"
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
8
8
|
- "Jakub \xC5\xA0\xC5\xA5astn\xC3\xBD aka Botanicus"
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain:
|
12
|
-
date: 2011-06-
|
12
|
+
date: 2011-06-12 00:00:00 +02:00
|
13
13
|
default_executable: ace
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
@@ -97,6 +97,22 @@ files:
|
|
97
97
|
- lib/ace/mixins/lazy.rb
|
98
98
|
- lib/ace/static.rb
|
99
99
|
- lib/ace/version.rb
|
100
|
+
- project_generator/content/.gitignore
|
101
|
+
- project_generator/content/Gemfile
|
102
|
+
- project_generator/content/LICENSE.rbt
|
103
|
+
- project_generator/content/README.textile.rbt
|
104
|
+
- project_generator/content/app/.gitignore
|
105
|
+
- project_generator/content/boot.rb
|
106
|
+
- project_generator/content/config.ru
|
107
|
+
- project_generator/content/config.yml.rbt
|
108
|
+
- project_generator/content/content/assets/css/.gitignore
|
109
|
+
- project_generator/content/content/assets/img/.gitignore
|
110
|
+
- project_generator/content/content/assets/js/.gitignore
|
111
|
+
- project_generator/content/content/index.html.haml
|
112
|
+
- project_generator/content/content/robots.txt
|
113
|
+
- project_generator/content/layouts/base.html.haml.rbt
|
114
|
+
- project_generator/content/rules.rb
|
115
|
+
- project_generator/content/tasks.rb
|
100
116
|
- project_generator/metadata.yml
|
101
117
|
- project_generator/postprocess.rb
|
102
118
|
- project_generator/setup.rb
|
@@ -105,10 +121,7 @@ has_rdoc: true
|
|
105
121
|
homepage: http://github.com/botanicus/ace
|
106
122
|
licenses: []
|
107
123
|
|
108
|
-
post_install_message:
|
109
|
-
[\e[32mVersion 0.3\e[0m] Added SassFilter.\n\
|
110
|
-
[\e[32mVersion 0.3\e[0m] Added PygmentsFilter for syntax highlighting.\n\
|
111
|
-
[\e[32mVersion 0.3\e[0m] Added Static class for copying static files.\n"
|
124
|
+
post_install_message:
|
112
125
|
rdoc_options: []
|
113
126
|
|
114
127
|
require_paths:
|
@@ -128,7 +141,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
128
141
|
requirements: []
|
129
142
|
|
130
143
|
rubyforge_project: ace
|
131
|
-
rubygems_version: 1.
|
144
|
+
rubygems_version: 1.6.2
|
132
145
|
signing_key:
|
133
146
|
specification_version: 3
|
134
147
|
summary: Ace is highly flexible static pages generator with template inheritance.
|