webby 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (45) hide show
  1. data/History.txt +3 -0
  2. data/Manifest.txt +44 -0
  3. data/README.txt +50 -0
  4. data/Rakefile +29 -0
  5. data/bin/webby +14 -0
  6. data/data/Rakefile +6 -0
  7. data/data/content/css/blueprint/License.txt +21 -0
  8. data/data/content/css/blueprint/Readme.txt +93 -0
  9. data/data/content/css/blueprint/lib/buttons.css +112 -0
  10. data/data/content/css/blueprint/lib/compressed.css +127 -0
  11. data/data/content/css/blueprint/lib/grid.css +177 -0
  12. data/data/content/css/blueprint/lib/img/baseline-black.png +0 -0
  13. data/data/content/css/blueprint/lib/img/baseline.png +0 -0
  14. data/data/content/css/blueprint/lib/img/grid.png +0 -0
  15. data/data/content/css/blueprint/lib/img/icons/cross.png +0 -0
  16. data/data/content/css/blueprint/lib/img/icons/textfield_key.png +0 -0
  17. data/data/content/css/blueprint/lib/img/icons/tick.png +0 -0
  18. data/data/content/css/blueprint/lib/reset.css +37 -0
  19. data/data/content/css/blueprint/lib/typography.css +159 -0
  20. data/data/content/css/blueprint/print.css +75 -0
  21. data/data/content/css/blueprint/screen.css +34 -0
  22. data/data/content/css/site.css +0 -0
  23. data/data/content/index.rhtml +18 -0
  24. data/data/layouts/default.rhtml +55 -0
  25. data/data/tasks/create.rake +7 -0
  26. data/data/templates/page.erb +18 -0
  27. data/lib/webby.rb +67 -0
  28. data/lib/webby/auto_builder.rb +75 -0
  29. data/lib/webby/builder.rb +165 -0
  30. data/lib/webby/file.rb +191 -0
  31. data/lib/webby/main.rb +129 -0
  32. data/lib/webby/pages_db.rb +70 -0
  33. data/lib/webby/renderer.rb +94 -0
  34. data/lib/webby/resource.rb +174 -0
  35. data/lib/webby/utils.rb +24 -0
  36. data/lib/webby/webby_task.rb +136 -0
  37. data/spec/spec.opts +1 -0
  38. data/spec/spec_helper.rb +12 -0
  39. data/spec/webby/file_spec.rb +107 -0
  40. data/tasks/doc.rake +60 -0
  41. data/tasks/gem.rake +112 -0
  42. data/tasks/manifest.rake +39 -0
  43. data/tasks/setup.rb +108 -0
  44. data/tasks/spec.rake +37 -0
  45. metadata +128 -0
@@ -0,0 +1,177 @@
1
+ /* --------------------------------------------------------------
2
+
3
+ Grid.css
4
+ * Creates an easy to use grid of 14 columns.
5
+
6
+ Based on work by:
7
+ * Nathan Borror [playgroundblues.com]
8
+ * Jeff Croft [jeffcroft.com]
9
+ * Christian Metts [mintchaos.com]
10
+ * Khoi Vinh [subtraction.com]
11
+
12
+ By default, the grid is 960px wide, with columns
13
+ spanning 50px, and a 20px margin between columns.
14
+
15
+ If you need fewer or more columns, use this
16
+ formula to find the new total width:
17
+
18
+ Total width = (columns * 70) - 20
19
+
20
+ -------------------------------------------------------------- */
21
+
22
+ body {
23
+ text-align: center; /* IE Fix */
24
+ margin:36px 0;
25
+ }
26
+
27
+ /* A container should group all your columns. */
28
+ .container {
29
+ text-align: left;
30
+ position: relative;
31
+ padding: 0;
32
+ margin: 0 auto; /* Centers layout */
33
+ width: 960px; /* Total width */
34
+ }
35
+
36
+
37
+ /* Columns
38
+ -------------------------------------------------------------- */
39
+
40
+ /* Use this class together with the .span-x classes
41
+ to create any compsition of columns in a layout.
42
+ Nesting columns works like a charm (remember .first and .last). */
43
+
44
+ .column {
45
+ float: left;
46
+ margin: 0 10px;
47
+ padding: 0;
48
+ }
49
+ * html .column { overflow-x: hidden; } /* IE6 fix */
50
+
51
+
52
+ /* Add this class to a column if you want a border on its
53
+ right hand side. This should be customized to fit your needs. */
54
+
55
+ .border {
56
+ padding-right: 9px;
57
+ margin-right: 0;
58
+ border-right: 1px solid #ddd;
59
+ }
60
+
61
+
62
+ /* The first and last elements in a multi-column
63
+ block needs one of these classes each. */
64
+
65
+ .first { margin-left: 0; }
66
+ .last { margin-right: 0; }
67
+
68
+
69
+ /* Use these classes to set how wide a column should be. */
70
+ .span-1 { width: 50px; }
71
+ .span-2 { width: 120px; }
72
+ .span-3 { width: 190px; }
73
+ .span-4 { width: 260px; }
74
+ .span-5 { width: 330px; }
75
+ .span-6 { width: 400px; }
76
+ .span-7 { width: 470px; }
77
+ .span-8 { width: 540px; }
78
+ .span-9 { width: 610px; }
79
+ .span-10 { width: 680px; }
80
+ .span-11 { width: 750px; }
81
+ .span-12 { width: 820px; }
82
+ .span-13 { width: 890px; }
83
+ .span-14 { width: 960px; margin: 0; }
84
+
85
+ /* Add these to a column to append empty cols. */
86
+ .append-1 { padding-right: 70px; }
87
+ .append-2 { padding-right: 140px; }
88
+ .append-3 { padding-right: 210px; }
89
+ .append-4 { padding-right: 280px; }
90
+ .append-5 { padding-right: 350px; }
91
+ .append-6 { padding-right: 420px; }
92
+ .append-7 { padding-right: 490px; }
93
+ .append-8 { padding-right: 560px; }
94
+ .append-9 { padding-right: 630px; }
95
+ .append-10 { padding-right: 700px; }
96
+ .append-11 { padding-right: 770px; }
97
+ .append-12 { padding-right: 840px; }
98
+ .append-13 { padding-right: 910px; }
99
+
100
+ /* Add these to a column to prepend empty cols. */
101
+ .prepend-1 { padding-left: 70px; }
102
+ .prepend-2 { padding-left: 140px; }
103
+ .prepend-3 { padding-left: 210px; }
104
+ .prepend-4 { padding-left: 280px; }
105
+ .prepend-5 { padding-left: 350px; }
106
+ .prepend-6 { padding-left: 420px; }
107
+ .prepend-7 { padding-left: 490px; }
108
+ .prepend-8 { padding-left: 560px; }
109
+ .prepend-9 { padding-left: 630px; }
110
+ .prepend-10 { padding-left: 700px; }
111
+ .prepend-11 { padding-left: 770px; }
112
+ .prepend-12 { padding-left: 840px; }
113
+ .prepend-13 { padding-left: 910px; }
114
+
115
+
116
+ /* Use a .box to create a padded box inside a column.
117
+ Sticking to the the baseline. */
118
+
119
+ .box {
120
+ padding: 1.5em;
121
+ margin-bottom: 1.5em;
122
+ background: #f0f0f0;
123
+ }
124
+
125
+
126
+ /* Clearing floats without extra markup
127
+ Based on How To Clear Floats Without Structural Markup by PiE
128
+ [http://www.positioniseverything.net/easyclearing.html] */
129
+
130
+ .clear { display: inline-block; }
131
+ .clear:after, .container:after {
132
+ content: ".";
133
+ display: block;
134
+ height: 0;
135
+ clear: both;
136
+ visibility: hidden;
137
+ }
138
+ * html .clear { height: 1%; }
139
+ .clear { display: block; }
140
+
141
+
142
+ /* Nudge your elements [subtraction.com/archives/2007/0606_nudge_your_e.php]:
143
+ All block elements (not hr) inside a col should have a 5px padding on each side.
144
+ (Not everyone wants this, but feel free to uncomment if you do.)
145
+
146
+ p,ul,ol,dl,h1,h2,h3,h4,h5,h6,
147
+ caption,pre,blockquote,input,textarea {
148
+ padding-left: 5px;
149
+ padding-right: 5px;
150
+ }
151
+ div, table {
152
+ margin-left: 5px;
153
+ margin-right: 5px;
154
+ padding: 0;
155
+ } */
156
+
157
+
158
+ /* Images
159
+ -------------------------------------------------------------- */
160
+
161
+ /* Remember the baseline (typography.css). */
162
+ img { margin: 0 0 1.5em 0; }
163
+
164
+
165
+ /* Use these classes to make an image flow into the column before
166
+ or after it. This techique can also be used on other objects. */
167
+
168
+ .pull-1 { margin-left: -70px; }
169
+ .pull-2 { margin-left: -140px; }
170
+ .pull-3 { margin-left: -210px; }
171
+
172
+ .push-0 { margin: 0 0 0 1.5em; float: right; } /* Right aligns the image. */
173
+ .push-1 { margin: 0 -88px 0 1.5em; float: right; }
174
+ .push-2 { margin: 0 -158px 0 1.5em; float: right; }
175
+ .push-3 { margin: 0 -228px 0 1.5em; float: right; }
176
+
177
+
@@ -0,0 +1,37 @@
1
+ /* --------------------------------------------------------------
2
+
3
+ Reset.css
4
+ * Resets default browser CSS styles.
5
+
6
+ Original by Erik Meyer:
7
+ * meyerweb.com/eric/thoughts/2007/05/01/reset-reloaded/
8
+
9
+ -------------------------------------------------------------- */
10
+
11
+ html, body, div, span, applet, object, iframe,
12
+ h1, h2, h3, h4, h5, h6, p, blockquote, pre,
13
+ a, abbr, acronym, address, big, cite, code,
14
+ del, dfn, em, font, img, ins, kbd, q, s, samp,
15
+ small, strike, strong, sub, sup, tt, var,
16
+ dl, dt, dd, ol, ul, li,
17
+ fieldset, form, label, legend,
18
+ table, caption, tbody, tfoot, thead, tr, th, td {
19
+ margin: 0;
20
+ padding: 0;
21
+ border: 0;
22
+ font-weight: inherit;
23
+ font-style: inherit;
24
+ font-size: 100%;
25
+ font-family: inherit;
26
+ vertical-align: baseline;
27
+ }
28
+
29
+ body { line-height: 1; color: #333; background: white; }
30
+
31
+ /* Tables still need 'cellspacing="0"' in the markup. */
32
+ table { border-collapse: separate; border-spacing: 0; }
33
+ caption, th, td { text-align: left; font-weight: normal; }
34
+
35
+ /* Remove possible quote marks (") from <q>, <blockquote>. */
36
+ blockquote:before, blockquote:after, q:before, q:after { content: ""; }
37
+ blockquote, q { quotes: "" ""; }
@@ -0,0 +1,159 @@
1
+ /* --------------------------------------------------------------
2
+
3
+ Typography.css
4
+ * Sets some default typography.
5
+
6
+ Based on work by:
7
+ * Nathan Borror [playgroundblues.com]
8
+ * Jeff Croft [jeffcroft.com]
9
+ * Christian Metts [mintchaos.com]
10
+ * Wilson Miner [wilsonminer.com]
11
+
12
+ Read more about using a baseline here:
13
+ * alistapart.com/articles/settingtypeontheweb
14
+
15
+ -------------------------------------------------------------- */
16
+
17
+ body {
18
+ font-family: "Lucida Grande", Helvetica, Arial, Verdana, sans-serif;
19
+ line-height: 1.5; /* Unitless for proper inheritance */
20
+ }
21
+
22
+ /* This is where you set your desired font size. The line-height
23
+ and vertical margins are automatically calculated from this.
24
+
25
+ You have to add an extra calculation here because of IE, so that
26
+ all users may resize text manually in their browsers.
27
+
28
+ The top one is for IE: The percentage is of 16px (default IE text size)
29
+ 10px is 62.5%, 12px is 75%, 13px is 81.25%, and so forth).
30
+ The second value is what all other browsers see (the wanted font size). */
31
+
32
+ body { font-size: 75%; } /* IE */
33
+ html > body { font-size: 12px; } /* Other browsers */
34
+
35
+
36
+ /* Headings
37
+ -------------------------------------------------------------- */
38
+
39
+ h1,h2,h3,h4,h5,h6 {
40
+ font-family: Helvetica, Arial, "Lucida Grande", Verdana, sans-serif;
41
+ color:#111;
42
+ clear:both;
43
+ }
44
+
45
+ h1 { font-size: 3em; }
46
+ h2 { font-size: 2em; }
47
+ h3 { font-size: 1.5em; line-height:2; }
48
+ h4 { font-size: 1.2em; line-height:1.25; font-weight:bold; }
49
+ h5 { font-size: 1em; font-weight:bold; }
50
+ h6 { font-size: 1em; }
51
+
52
+
53
+ /* Text elements
54
+ -------------------------------------------------------------- */
55
+
56
+ p { margin: 0 0 1.5em 0; text-align:justify; }
57
+ p.last { margin-bottom:0; }
58
+ p img { float: left; margin: 1.5em 1.5em 1.5em 0; padding:0; }
59
+ p img.top { margin-top:0; } /* Use this if the image is at the top of the <p>. */
60
+
61
+ ul, ol { margin: 0 0 1.5em 1.5em; }
62
+ ol { list-style-type: decimal; }
63
+ dl { margin: 1.5em 0; }
64
+ dl dt { font-weight: bold; }
65
+
66
+ a { color: #125AA7; text-decoration: underline; outline: none; }
67
+ a:hover { color: #000; }
68
+
69
+ blockquote { margin: 1.5em 0 1.5em 1.5em; color: #666; font-style: italic; }
70
+ strong { font-weight: bold; }
71
+ em { font-style: italic; }
72
+ pre { margin-bottom: 1.3em; background: #eee; border:0.1em solid #ddd; padding:1.5em; }
73
+ code { font:0.9em Monaco, monospace; }
74
+
75
+ /* Use this to create a horizontal ruler across a column. */
76
+ hr {
77
+ background: #B2CCFF;
78
+ color: #B2CCFF;
79
+ clear: both;
80
+ float: none;
81
+ width: 100%;
82
+ height: 0.1em;
83
+ margin: 0 0 1.4em 0;
84
+ border: none;
85
+ }
86
+ * html hr { margin: 0 0 1.2em 0; } /* IE6 fix */
87
+
88
+
89
+ /* Tables
90
+ -------------------------------------------------------------- */
91
+
92
+ table { margin-bottom: 1.4em; border-top:0.1em solid #ddd; border-left:0.1em solid #ddd; }
93
+ th,td { height: 1em; padding:0.2em 0.4em; border-bottom:0.1em solid #ddd; border-right:0.1em solid #ddd; }
94
+ th { font-weight:bold; }
95
+
96
+
97
+ /* Forms
98
+ -------------------------------------------------------------- */
99
+
100
+ label { font-weight: bold; }
101
+ textarea { height: 180px; width: 300px; }
102
+
103
+
104
+ /* Some default classes
105
+ -------------------------------------------------------------- */
106
+
107
+ p.small { font-size: 0.8em; margin-bottom: 1.875em; line-height: 1.875em; }
108
+ p.large { font-size: 1.2em; line-height: 2.5em; }
109
+ p.quiet { color: #666; }
110
+ .hide { display: none; }
111
+
112
+
113
+ /* Extra fancy typography
114
+ -------------------------------------------------------------- */
115
+
116
+ /* For great looking type, use this code instead of asdf:
117
+ <span class="alt">asdf</span>
118
+ Best used on prepositions and ampersands. */
119
+
120
+ .alt {
121
+ color: #666;
122
+ font-family: "Warnock Pro", "Goudy Old Style","Palatino","Book Antiqua", serif;
123
+ font-size: 1.2em;
124
+ line-height: 1%; /* Maintain correct baseline */
125
+ font-style: italic;
126
+ }
127
+
128
+ /* For great looking quote marks in titles, replace "asdf" width:
129
+ <span class="dquo">&#8220;</span>asdf&#8221;
130
+ (That is, when the title starts with a quote mark).
131
+ (You may have to change this value depending on your font size). */
132
+
133
+ .dquo { margin-left: -.7em; }
134
+
135
+
136
+ /* Reduced size type with incremental leading
137
+ (http://www.markboulton.co.uk/journal/comments/incremental_leading/)
138
+
139
+ This could be used for side notes. For smaller type, you don't necessarily want to
140
+ follow the 1.5x vertical rhythm -- the line-height is too much.
141
+
142
+ Using this class, it reduces your font size and line-height so that for
143
+ every four lines of normal sized type, there is five lines of the sidenote. eg:
144
+
145
+ New type size in em's:
146
+ 10px (wanted side note size) / 12px (existing base size) = 0.8333 (new type size in ems)
147
+
148
+ New line-height value:
149
+ 12px x 1.5 = 18px (old line-height)
150
+ 18px x 4 = 72px
151
+ 60px / 5 = 14.4px (new line height)
152
+ 14.4px / 10px = 1.44 (new line height in em's) */
153
+
154
+ p.incr, .incr p {
155
+ font-size: 0.83333em; /* font size 10px */
156
+ line-height: 1.44em;
157
+ margin-bottom: 1.8em; /* Still 1.5 x normal font size as baseline */
158
+ }
159
+
@@ -0,0 +1,75 @@
1
+ /* --------------------------------------------------------------
2
+
3
+ Blueprint CSS Framework
4
+ [bjorkoy.com/blueprint]
5
+
6
+ * Print Styles *
7
+
8
+ This file creates CSS styles for printing documents.
9
+ Include this in the <head> of every page. See the
10
+ Readme file in this directory for further instructions.
11
+
12
+ Some additions you'll want to make,
13
+ customized to your markup:
14
+
15
+ #heder, #footer, #navigation { display:none; }
16
+
17
+ -------------------------------------------------------------- */
18
+
19
+ body {
20
+ font-family: Georgia, Times, serif;
21
+ line-height: 1.5;
22
+ color:#000;
23
+ background: none;
24
+ font-size: 11pt;
25
+ }
26
+
27
+ img {
28
+ float:left;
29
+ margin:1.5em 1.5em 1.5em 0;
30
+ }
31
+ p img.top {
32
+ margin-top: 0;
33
+ }
34
+
35
+ hr {
36
+ background:#ccc;
37
+ color:#ccc;
38
+ width:100%;
39
+ height:2px;
40
+ margin:2em 0;
41
+ padding:0;
42
+ border:none;
43
+ }
44
+ blockquote {
45
+ margin:1.5em 0;
46
+ padding:1em;
47
+ border:0.2em solid #ccc;
48
+ font-style:italic;
49
+ font-size:0.9em;
50
+ }
51
+
52
+ .small, .small p { font-size: 0.9em; }
53
+ .large, .large p { font-size: 1.1em; }
54
+ .quiet, .quiet p { color: #999; }
55
+ .hide { display:none; }
56
+
57
+ a:link, a:visited {
58
+ background: transparent;
59
+ font-weight: bold;
60
+ text-decoration: underline;
61
+ }
62
+
63
+ a:link:after, a:visited:after {
64
+ content: " (" attr(href) ") ";
65
+ font-size: 90%;
66
+ }
67
+
68
+ /* If you're having trouble printing relative links, uncomment and customize this:
69
+ (note: This is valid CSS3, but it still won't go through the W3C CSS Validator) */
70
+
71
+ /* a[href^="/"]:after {
72
+ content: " (http://www.yourdomain.com" attr(href) ") ";
73
+ } */
74
+
75
+