webby 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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
+