staticmatic 0.8.10 → 0.9.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.
@@ -1,86 +1,96 @@
1
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2
- <html lang='en' xml:lang='en' xmlns='http://www.w3.org/1999/xhtml'>
3
- <head>
4
- <meta content='text/html; charset=utf-8' http-equiv='Content-Type' />
5
- <title>StaticMatic</title>
6
- <link media="all" href="/stylesheets/application.css" rel="stylesheet"/>
7
- </head>
8
- <body>
9
- <div id='container'>
10
- <div id='header'>
11
- <div class='bycurve21'>
12
- <a href="http://www.curve21.com"><img alt="/images/bycurve21" src="/images/bycurve21.gif"/>
13
- </a>
14
- </div>
15
- <div class='title'>StaticMatic</div>
16
- </div>
17
- <div id='menu'>
18
- <ul>
19
- <li><a href="/">Home</a></li>
20
- <li><a href="/download.html">Download</a></li>
21
- <li><a href="/how_to_use.html">How to use</a></li>
22
- <li>
23
- <a href="http://rubyforge.org/projects/staticmatic">Development</a>
24
- </li>
25
- <li>
26
- <a href="http://groups.google.co.uk/group/staticmatic">Community</a>
27
- </li>
28
- <li><a href="/faq.html">FAQ</a></li>
29
- </ul>
30
- </div>
31
- <div id='content_wrapper'>
32
- <div id='side'>
33
- <div id='news'>
34
- <div class='heading'>News</div>
35
- <div class='title'>0.8.8 Released!</div>
36
- <p>
37
- Complete with:
38
- </p>
39
- <ul>
40
- <li>Helpers</li>
41
- <li>Configuration</li>
42
- </ul>
43
- <a href="/releases/0_8_8.html">And More!</a>
44
- </div>
45
- </div>
46
- <div id='content'>
47
- <h1>StaticMatic 0.8.8</h1>
48
- <h2>Helpers</h2>
49
- <p>
50
- Thanks to Craig Webster, we now have Rails-style helpers.
51
- </p>
52
- src/application_helper.rb:
53
- <pre class="code">&#x000A;module ApplicationHelper&#x000A; def greet(name)&#x000A; "Hello, #{name}!"&#x000A; end&#x000A;end&#x000A;</pre>&#x000A;&#x000A;
54
- <h2>Configuration</h2>
55
- <p>
56
- We also now have configuration. It's only basic right now but expect this to expand.
57
- </p>
58
- src/configuration.rb:
59
- <div class='code'>
60
- configuration.preview_server_port = 3000
61
- configuration.use_relative_paths_for_links = false
62
- configuration.use_relative_paths_for_images = false
63
- configuration.use_relative_paths_for_stylesheets = false
64
- configuration.use_relative_paths_for_javascripts = false
65
- </div>
66
- <p>
67
- The configuration file is also loaded before StaticMatic starts so it can be used to monkey-patch to demonstrate new features.
68
- </p>
69
- </div>
70
- </div>
71
- <div id='footer'>
72
- <p>
73
- Made with StaticMatic, Hosted by
74
- <a href="http://rubyforge.org">RubyForge</a>
75
- </p>
76
- </div>
77
- <script src='http://www.google-analytics.com/urchin.js' type='text/javascript'>
78
- _hamlspace = "";
79
- </script>
80
- <script type='text/javascript'>
81
- _uacct = "UA-775359-8";
82
- urchinTracker();
83
- </script>
84
- </div>
85
- </body>
86
- </html>
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2
+ <html lang='en' xml:lang='en' xmlns='http://www.w3.org/1999/xhtml'>
3
+ <head>
4
+ <meta content='text/html; charset=utf-8' http-equiv='Content-Type' />
5
+ <title>StaticMatic</title>
6
+ <link href="../stylesheets/application.css" media="all" rel="stylesheet"/>
7
+ <link href="../stylesheets/application.css" media="screen" rel="stylesheet"/>
8
+ </head>
9
+ <body>
10
+ <div id='container'>
11
+ <div id='header'>
12
+ <div class='bycurve21'>
13
+ <a href="http://www.curve21.com"><img alt="Bycurve21" src="../images/bycurve21.gif"/></a>
14
+ </div>
15
+ <div class='title'>StaticMatic</div>
16
+ </div>
17
+ <div id='menu'>
18
+ <ul>
19
+ <li><a href="/">Home</a></li>
20
+ <li><a href="../download.html">Download</a></li>
21
+ <li><a href="../how_to_use.html">How to use</a></li>
22
+ <li>
23
+ <a href="http://groups.google.co.uk/group/staticmatic">Community</a>
24
+ </li>
25
+ <li><a href="../faq.html">FAQ</a></li>
26
+ <li>
27
+ <a href="http://rubyforge.org/tracker/?func=browse&amp;group_id=3712&amp;atid=14306">Report Bug</a>
28
+ </li>
29
+ <li>
30
+ <a href="http://rubyforge.org/projects/staticmatic">Development</a>
31
+ </li>
32
+ </ul>
33
+ </div>
34
+ <div id='content_wrapper'>
35
+ <div id='side'>
36
+ <div id='news'>
37
+ <div class='heading'>News</div>
38
+ <div class='title'>0.9.0 Released!</div>
39
+ <p>Complete with:</p>
40
+ <ul>
41
+ <li>&quot;Local&quot; links are always relative</li>
42
+ <li>
43
+ Ability to strip .html and index.html from link tag urls
44
+ </li>
45
+ <li>configuration.sass_options</li>
46
+ </ul>
47
+ <a href="/releases/0_9_0.html">And More!</a>
48
+ </div>
49
+ </div>
50
+ <div id='content'>
51
+ <h1>StaticMatic 0.8.8</h1>
52
+ <h2>Helpers</h2>
53
+ <p>
54
+ Thanks to Craig Webster, we now have Rails-style helpers.
55
+ </p>
56
+ src/application_helper.rb:
57
+ <pre class="code">&#x000A;module ApplicationHelper&#x000A; def greet(name)&#x000A; "Hello, #{name}!"&#x000A; end&#x000A;end&#x000A;</pre>&#x000A;&#x000A;
58
+ <h2>Configuration</h2>
59
+ <p>
60
+ We also now have configuration. It's only basic right now but expect this to expand.
61
+ </p>
62
+ src/configuration.rb:
63
+ <div class='code'>
64
+ configuration.preview_server_port = 3000
65
+ configuration.use_relative_paths_for_links = false
66
+ configuration.use_relative_paths_for_images = false
67
+ configuration.use_relative_paths_for_stylesheets = false
68
+ configuration.use_relative_paths_for_javascripts = false
69
+ </div>
70
+ <p>
71
+ The configuration file is also loaded before StaticMatic starts so it can be used to monkey-patch to demonstrate new features.
72
+ </p>
73
+ <p>
74
+ See what changed in
75
+ <a href="/releases/0_8_4.html">0.8.4</a>
76
+ </p>
77
+ </div>
78
+ </div>
79
+ <div id='footer'>
80
+ <p>
81
+ Made with StaticMatic
82
+ 0.9.0
83
+ , Hosted by
84
+ <a href="http://rubyforge.org">RubyForge</a>
85
+ </p>
86
+ </div>
87
+ <script src='http://www.google-analytics.com/urchin.js' type='text/javascript'>
88
+ _hamlspace = "";
89
+ </script>
90
+ <script type='text/javascript'>
91
+ _uacct = "UA-775359-8";
92
+ urchinTracker();
93
+ </script>
94
+ </div>
95
+ </body>
96
+ </html>
@@ -0,0 +1,124 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2
+ <html lang='en' xml:lang='en' xmlns='http://www.w3.org/1999/xhtml'>
3
+ <head>
4
+ <meta content='text/html; charset=utf-8' http-equiv='Content-Type' />
5
+ <title>StaticMatic</title>
6
+ <link href="../stylesheets/application.css" media="all" rel="stylesheet"/>
7
+ <link href="../stylesheets/application.css" media="screen" rel="stylesheet"/>
8
+ </head>
9
+ <body>
10
+ <div id='container'>
11
+ <div id='header'>
12
+ <div class='bycurve21'>
13
+ <a href="http://www.curve21.com"><img alt="Bycurve21" src="../images/bycurve21.gif"/></a>
14
+ </div>
15
+ <div class='title'>StaticMatic</div>
16
+ </div>
17
+ <div id='menu'>
18
+ <ul>
19
+ <li><a href="/">Home</a></li>
20
+ <li><a href="../download.html">Download</a></li>
21
+ <li><a href="../how_to_use.html">How to use</a></li>
22
+ <li>
23
+ <a href="http://groups.google.co.uk/group/staticmatic">Community</a>
24
+ </li>
25
+ <li><a href="../faq.html">FAQ</a></li>
26
+ <li>
27
+ <a href="http://rubyforge.org/tracker/?func=browse&amp;group_id=3712&amp;atid=14306">Report Bug</a>
28
+ </li>
29
+ <li>
30
+ <a href="http://rubyforge.org/projects/staticmatic">Development</a>
31
+ </li>
32
+ </ul>
33
+ </div>
34
+ <div id='content_wrapper'>
35
+ <div id='side'>
36
+ <div id='news'>
37
+ <div class='heading'>News</div>
38
+ <div class='title'>0.9.0 Released!</div>
39
+ <p>Complete with:</p>
40
+ <ul>
41
+ <li>&quot;Local&quot; links are always relative</li>
42
+ <li>
43
+ Ability to strip .html and index.html from link tag urls
44
+ </li>
45
+ <li>configuration.sass_options</li>
46
+ </ul>
47
+ <a href="/releases/0_9_0.html">And More!</a>
48
+ </div>
49
+ </div>
50
+ <div id='content'>
51
+ <h1>StaticMatic 0.9.0</h1>
52
+ <p>
53
+ The biggest change is that
54
+ <span class='highlight'>
55
+ all the "local" links (pages/stylesheets/images) are always relative
56
+ </span>
57
+ now that we know the current page. So the
58
+ use_relative_path_for_* configuration settings were removed.
59
+ <span class='highlight'>
60
+ This will cause your configuration.rb to blow up unless you delete them.
61
+ </span>
62
+ </p>
63
+ <h2>What's New</h2>
64
+ <ul>
65
+ <li>added StaticMatic::VERSION.requirements_met?</li>
66
+ <li>added LICENSE and CHANGELOG files</li>
67
+ <li>
68
+ can now specify relative paths when only specifying a title - link("../other/How to download")
69
+ </li>
70
+ <li>
71
+ add src_dir/stylesheets directory to sass load path so you can use @import styles.sass
72
+ </li>
73
+ <li>
74
+ added sass_options hash to configuration so you can configure sass (ie: :style => :compact)
75
+ </li>
76
+ <li>
77
+ added configuration.use_extensions_for_page_links (defaults to true) when false will strip index.html and .html off the end of links for pretty urls
78
+ </li>
79
+ <li>
80
+ made all "local" links (pages/stylesheets/images) relative to the current page and removed use_relative_path_for_* configuration settings
81
+ </li>
82
+ <li>
83
+ stylesheets helper can now take a list of stylesheets to include and the order as well as options (ie: :media => :print)
84
+ </li>
85
+ <li>added clean and clobber tasks to Rakefile</li>
86
+ <li>added StaticMatic::VERSION in version.rb</li>
87
+ <li>
88
+ added package task to Rakefile and made it the default
89
+ </li>
90
+ </ul>
91
+ <h2>What's Fixed</h2>
92
+ <ul>
93
+ <li>
94
+ clear all instance variables in @scope except @staticmatic
95
+ </li>
96
+ <li>no longer add \n after the tag in the tag helper</li>
97
+ <li>
98
+ mailto: links were getting a / inserted at in front of the mailto:
99
+ </li>
100
+ </ul>
101
+ <p>
102
+ See what changed in
103
+ <a href="/releases/0_8_10.html">0.8.10</a>
104
+ </p>
105
+ </div>
106
+ </div>
107
+ <div id='footer'>
108
+ <p>
109
+ Made with StaticMatic
110
+ 0.9.0
111
+ , Hosted by
112
+ <a href="http://rubyforge.org">RubyForge</a>
113
+ </p>
114
+ </div>
115
+ <script src='http://www.google-analytics.com/urchin.js' type='text/javascript'>
116
+ _hamlspace = "";
117
+ </script>
118
+ <script type='text/javascript'>
119
+ _uacct = "UA-775359-8";
120
+ urchinTracker();
121
+ </script>
122
+ </div>
123
+ </body>
124
+ </html>
@@ -4,22 +4,23 @@
4
4
  %meta{"http-equiv"=>"Content-Type", :content=>"text/html; charset=utf-8"}
5
5
  %title StaticMatic
6
6
  = stylesheets
7
+ = stylesheets :reset, :application, :media => :screen
7
8
  %body
8
9
  #container
9
10
  #header
10
- .bycurve21= link(img("/images/bycurve21.gif"), "http://www.curve21.com")
11
+ .bycurve21= link(img("bycurve21.gif"), "http://www.curve21.com")
11
12
  .title StaticMatic
12
13
 
13
14
  #menu
14
15
 
15
16
  %ul
16
17
  %li= link "Home", "/"
17
- %li= link "Download", "download.html"
18
- %li= link "How to use", "how_to_use.html"
19
- %li= link "Development", "http://rubyforge.org/projects/staticmatic"
18
+ %li= link "Download"
19
+ %li= link "How to use"
20
20
  %li= link "Community", "http://groups.google.co.uk/group/staticmatic"
21
- %li= link "FAQ", "faq.html"
22
-
21
+ %li= link "FAQ"
22
+ %li= link 'Report Bug', 'http://rubyforge.org/tracker/?func=browse&amp;group_id=3712&amp;atid=14306'
23
+ %li= link "Development", "http://rubyforge.org/projects/staticmatic"
23
24
  #content_wrapper
24
25
  #side
25
26
  #news= partial("news")
@@ -29,7 +30,9 @@
29
30
 
30
31
  #footer
31
32
  %p
32
- Made with StaticMatic, Hosted by
33
+ Made with StaticMatic
34
+ = StaticMatic::VERSION::STRING
35
+ \, Hosted by
33
36
  = link "RubyForge", "http://rubyforge.org"
34
37
 
35
38
  %script{:src => "http://www.google-analytics.com/urchin.js", :type => "text/javascript"}
@@ -4,11 +4,13 @@
4
4
 
5
5
  %ul
6
6
  %li= link "Developing a site", "#developing"
7
+ %li= link "Configuration", "#configuration"
7
8
  %li
8
9
  = link "Templates", "#templates"
9
10
  %ul
10
11
  %li= link "Layouts", "#layouts"
11
12
  %li= link "Helpers", "#helpers"
13
+ %li= link "Partials", "#partials"
12
14
 
13
15
  %h2{:id => 'developing'} Developing a site with StaticMatic
14
16
 
@@ -25,9 +27,14 @@
25
27
  %li
26
28
  src/ - where you'll work on your templates
27
29
  %ul
30
+ %li helpers/ - contains any helpers you want to use in your website
28
31
  %li layouts/ - contains templates that 'wrap' your main content pages
29
32
  %li pages/ - contains the actual pages of content
30
- %li stylesheets/ - contains any Sass stylesheets you want to create
33
+ %li partials/ - contains any &quot;partial pages&quot; that can be reused in other pages or layouts
34
+ %li
35
+ stylesheets/ - contains any
36
+ = link 'Sass', 'http://haml.hamptoncatlin.com/docs/sass'
37
+ stylesheets you want to create
31
38
 
32
39
  %h3 Previewing your site
33
40
 
@@ -46,21 +53,49 @@
46
53
 
47
54
  .code staticmatic build my_site
48
55
 
56
+ %h2{:id => 'configuration'} Configuration
57
+
58
+ %p
59
+ You can put a file called configuration.rb in your staticmatic project base directory.
60
+ In this file, you can set configuration settings or whatever else since it's just a
61
+ ruby file.
62
+
63
+ %h3 configuration.preview_server_port
64
+
65
+ %p
66
+ The default is 3000.
67
+
68
+ %h3 configuration.preview_server_host
69
+
70
+ %p
71
+ The default is localhost.
72
+
73
+ %h3 configuration.use_extensions_for_page_links
74
+
75
+ %p
76
+ The default is true. When false .html and index.html will be stripped off
77
+ urls generated by the link tag helper.
78
+
79
+ %h3 configuration.sass_options
80
+
81
+ %p
82
+ Default is an empty hash. You can specify any options that
83
+ = link 'Sass', 'http://haml.hamptoncatlin.com/docs/sass'
84
+ can take like :style => :compact
49
85
 
50
86
  %h2{:id => 'templates'} Templates
51
87
 
52
88
  %p
53
89
  %em
54
90
  For information on how to use Haml itself, please check out the
55
- = link "Haml website", "http://haml.hamptoncatlin.com/docs/haml"
56
- \.
91
+ = link("Haml website", "http://haml.hamptoncatlin.com/docs/haml") + "."
57
92
 
58
93
  %h3{:id => 'layouts'} Layouts
59
94
 
60
95
  %p
61
96
  As with web frameworks like
62
- = link "Ruby on Rails", "http://www.rubyonrails.com"
63
- \, StaticMatic uses layouts to 'wrap' up the content contained within page templates.
97
+ = link("Ruby on Rails", "http://www.rubyonrails.com") + ","
98
+ StaticMatic uses layouts to 'wrap' up the content contained within page templates.
64
99
 
65
100
  %p A layout typically contains the header and footer code for a page - code that is common to all pages on the site.
66
101
 
@@ -75,7 +110,8 @@
75
110
 
76
111
  %p The above code would tell StaticMatic to use the layout called 'contact.haml' when building and previewing the 'contact_us' page.
77
112
 
78
- %h3{:id => 'helpers'}
113
+
114
+ %h3{:id => 'helpers'} Helpers
79
115
 
80
116
  %p StaticMatic provides a number of 'helpers' on top of those in Haml to handle common code and reduce code.
81
117
 
@@ -89,6 +125,14 @@ produces:
89
125
 
90
126
  .code &lt;a href="contact_us.html"&gt;Contact Us&lt;/a&gt;"
91
127
 
128
+ %p It is also possible to specify a relative path in your url:
129
+
130
+ .code = link "../Contact Us"
131
+
132
+ produces:
133
+
134
+ .code &lt;a href="../contact_us.html"&gt;Contact Us&lt;/a&gt;"
135
+
92
136
  %p You can also specify a URL:
93
137
 
94
138
  .code = link "StaticMatic", "http://staticmatic.rubyforge.org"
@@ -99,10 +143,107 @@ produces:
99
143
  produces:
100
144
  .code &lt;img src="/images/me.jpg"/&gt;
101
145
 
146
+ %p It is also possible to specify a relative path in your url:
147
+
148
+ .code = img "../me.jpg"
149
+ produces:
150
+ .code &lt;img src="../me.jpg"/&gt;
151
+
102
152
  %h4 Stylesheets
103
153
 
104
154
  .code = stylesheets
105
155
 
106
- %p This will automatically insert links to any Sass stylesheets in your site source.
156
+ %p
157
+ This will automatically insert links to any
158
+ = link 'Sass', 'http://haml.hamptoncatlin.com/docs/sass'
159
+ stylesheets in your site source.
160
+
161
+ It will also link up any static stylesheets in your site/stylesheets/ directory
162
+
163
+ %p
164
+ You can also specify the files and the order explicitly along with setting attributes:
165
+
166
+ .code = stylesheets :reset, :application, :media => :screen
167
+
168
+ produces
169
+
170
+ .code
171
+ &lt;link href=&quot;stylesheets/reset.css&quot; media=&quot;screen&quot; rel=&quot;stylesheet&quot;/&gt;
172
+ %br
173
+ &lt;link href=&quot;stylesheets/application.css&quot; media=&quot;screen&quot; rel=&quot;stylesheet&quot;/&gt;
174
+
175
+ %h4 Javascript
176
+
177
+ .code = javascripts('test', :other)
178
+ produces:
179
+ .code
180
+ &lt;script language=&quot;javascript&quot; src=&quot;/javascripts/test.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
181
+ %br
182
+ &lt;script language=&quot;javascript&quot; src=&quot;/javascripts/other.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
183
+
184
+ %h4 Current page
185
+
186
+ %p
187
+ It can be very useful to know what page you're on in your layout and helpers
188
+ (ie: setting selected style on a menu item).
189
+
190
+ For the page src/pages/index.html
191
+ .code = current_page # =&gt; &quot;/index.html&quot;
192
+ %br
193
+ For the page src/pages/subdirectory/other.html
194
+ .code = current_page # =&gt; &quot;/subdirectory/other.html&quot;
195
+
196
+ %h4 urlify
197
+
198
+ %p Will convert a string to be usable in a url
199
+
200
+ .code
201
+ \= urlify(&quot;We love Haml&quot;) # =&gt; &quot;we_love_haml&quot;
202
+ %br
203
+ \= urlify(&quot;Elf &amp; Ham&quot;) # =&gt; &quot;elf_and_ham&quot;
204
+ %br
205
+ \= urlify(&quot;Stephen's gem&quot;) # =&gt; &quot;stephens_gem&quot;
206
+ %br
207
+ \= urlify(&quot;Test/Link&quot;) # =&gt; &quot;testlink&quot;
208
+
209
+ %h4 text_field
210
+
211
+ %p Generates a text input field
212
+
213
+ .code = text_field('first_name', 'bob')
214
+ produces:
215
+ .code &lt;input name=&quot;first_name&quot; type=&quot;text&quot; value=&quot;bob&quot;/&gt;
216
+
217
+
218
+ %h3{:id => 'partials'} Partials
219
+
220
+ %p
221
+ As with web frameworks like
222
+ = link("Ruby on Rails", "http://www.rubyonrails.com") + ","
223
+ StaticMatic uses partials to keep things
224
+ = link('DRY', 'http://en.wikipedia.org/wiki/DRY') + "."
225
+
226
+ .code = partial('mypartial')
227
+
228
+ %p
229
+ This will first look in the current page/partial's directory for a file called _mypartial.haml.
230
+ If not found there it will look for src/partials/mypartial.haml.
231
+
232
+ %h4 Specify the partial's local variables
233
+
234
+ .code = partial('mypartial', :locals => { :title => 'My Title' })
235
+
236
+ %p
237
+ This will locate the partial file as in the previous example above but now passes in a local variable called
238
+ %em title
239
+ that can be used in the partial like so:
240
+
241
+ .code %h1 title
242
+
243
+ %h4 Specify the partial's directory
244
+
245
+ .code = partial('shared/mypartial')
107
246
 
108
- - "It will also link up any static stylesheets in your site/stylesheets/ directory"
247
+ %p
248
+ This will look for the file src/pages/shared/_mypartial.haml first.
249
+ If not found there it will look for src/partials/mypartial.haml.