textile_manual 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 43468edb61d7c7b3c41eb59f12e96946b639c4ad
4
+ data.tar.gz: 138679d4e59681b5be3bde76ed55760bc69e602f
5
+ SHA512:
6
+ metadata.gz: e3ef29b9be10ad55ac86a8dab9380fa40134e63ca9f98aa46f104d45ce2eba65b7417c63f871484b63254801a3b531f76b59efd105b6263bfe553ff9aa823a41
7
+ data.tar.gz: 68c2097972ec98188b6c6b3b8e6b343e0acacf93bede67bb8c35a0d8cd980fabb905a4be1cb46069042e47c847c1c2964f55dfcc3159248e524a29575c138103
data/.bowerrc ADDED
@@ -0,0 +1,3 @@
1
+ {
2
+ "directory" : "source/bower_components"
3
+ }
data/.gitignore ADDED
@@ -0,0 +1,24 @@
1
+ # Ignore bundler lock file
2
+ /Gemfile.lock
3
+
4
+ # Ignore test temp directory
5
+ /tmp
6
+
7
+ # Ignore pkg folder
8
+ /pkg
9
+
10
+ # Ignore bundler config
11
+ /.bundle
12
+
13
+ # Ignore the build directory
14
+ /build
15
+
16
+ /source/bower_components
17
+
18
+ # Ignore cache
19
+ /.sass-cache
20
+ /.cache
21
+
22
+ # Ignore .DS_store file
23
+ .DS_Store
24
+
data/Gemfile ADDED
@@ -0,0 +1,27 @@
1
+ # If you do not have OpenSSL installed, update
2
+ # the following line to use "http://" instead
3
+ source 'https://rubygems.org'
4
+
5
+ # Specify your gem's dependencies in textile.gemspec
6
+ gemspec
7
+
8
+ gem 'rake'
9
+ gem 'rdoc'
10
+ gem 'yard'
11
+ gem "middleman", "~>4.2.1"
12
+ gem "middleman-sprockets", "~> 4.0.0.rc"
13
+ gem "middleman-compass"
14
+ gem 'middleman-syntax', '~> 3.0'
15
+
16
+ # Vendor prefixes for sass
17
+ gem 'middleman-autoprefixer'
18
+
19
+ # Live-reloading plugin
20
+ gem "middleman-livereload", "~> 3.4"
21
+
22
+ group :test do
23
+ gem 'cucumber'
24
+ gem 'capybara'
25
+ gem 'aruba'
26
+ gem 'rspec'
27
+ end
data/README.md ADDED
@@ -0,0 +1,13 @@
1
+ # RedCloth 4 Textile Reference
2
+
3
+ This is the official Textile Reference for RedCloth 4.
4
+
5
+ ## Running
6
+
7
+ 1. $ `bundle install`
8
+ 1. $ `bower install`
9
+ 1. $ `bundle exec middleman`
10
+
11
+ ## Bugs
12
+
13
+ Issues and pull requests are welcome on [GitHub](https://www.github.com/promptworks/textile-manual).
data/Rakefile ADDED
@@ -0,0 +1,14 @@
1
+ require 'bundler'
2
+ Bundler::GemHelper.install_tasks
3
+
4
+ require 'cucumber/rake/task'
5
+
6
+ Cucumber::Rake::Task.new(:cucumber, 'Run features that should pass') do |t|
7
+ t.cucumber_opts = '--color --tags ~@wip --strict'
8
+ end
9
+
10
+ require 'rake/clean'
11
+
12
+ task test: ['cucumber']
13
+
14
+ task default: :test
data/bower.json ADDED
@@ -0,0 +1,9 @@
1
+ {
2
+ "name": "foundation_six_middleman",
3
+ "version": "0.0.1",
4
+ "private": true,
5
+ "dependencies": {
6
+ "foundation-sites": "~6.2.3",
7
+ "modernizr": "~2.8.3"
8
+ }
9
+ }
data/config.rb ADDED
@@ -0,0 +1,102 @@
1
+ activate :textile_manual
2
+ activate :syntax, line_numbers: false
3
+
4
+ ###
5
+ # Compass
6
+ ###
7
+
8
+ # Change Compass configuration
9
+ compass_config do |config|
10
+ config.add_import_path "bower_components/foundation-sites/scss/"
11
+ config.output_style = :compact
12
+
13
+ # Set this to the root of your project when deployed:
14
+ config.http_path = "/"
15
+ config.css_dir = "stylesheets"
16
+ config.sass_dir = "stylesheets"
17
+ config.images_dir = "images"
18
+ config.javascripts_dir = "javascripts"
19
+ end
20
+
21
+ ###
22
+ # Page options, layouts, aliases and proxies
23
+ ###
24
+
25
+ # Per-page layout changes:
26
+ #
27
+ # With no layout
28
+ # page "/path/to/file.html", :layout => false
29
+ #
30
+ # With alternative layout
31
+ # page "/path/to/file.html", :layout => :otherlayout
32
+ #
33
+ # A path which all have the same layout
34
+ # with_layout :admin do
35
+ # page "/admin/*"
36
+ # end
37
+
38
+ # Proxy pages (https://middlemanapp.com/advanced/dynamic_pages/)
39
+ # proxy "/this-page-has-no-template.html", "/template-file.html", :locals => {
40
+ # :which_fake_page => "Rendering a fake page with a local variable" }
41
+
42
+ ###
43
+ # Helpers
44
+ ###
45
+
46
+ # Automatic image dimensions on image_tag helper
47
+ # activate :automatic_image_sizes
48
+
49
+ # Reload the browser automatically whenever files change
50
+ configure :development do
51
+ activate :livereload
52
+ end
53
+
54
+ # Methods defined in the helpers block are available in templates
55
+ # helpers do
56
+ # def some_helper
57
+ # "Helping"
58
+ # end
59
+ # end
60
+
61
+ # Activate sprockets
62
+ activate :sprockets
63
+ # Add bower's directory to sprockets asset path
64
+ after_configuration do
65
+ @bower_config = JSON.parse(IO.read("#{root}/.bowerrc"))
66
+ sprockets.append_path File.join "#{root}", @bower_config["directory"]
67
+ end
68
+
69
+ # Use the correct vendor prefixes for foundation
70
+ activate :autoprefixer do |config|
71
+ config.browsers = ['last 2 versions', 'ie >= 9', 'and_chr >= 2.3']
72
+ end
73
+
74
+ set :css_dir, 'stylesheets'
75
+
76
+ set :js_dir, 'javascripts'
77
+
78
+ set :images_dir, 'images'
79
+
80
+ ignore "bower_components/*"
81
+
82
+ ignore "javascripts/app.js"
83
+
84
+ ignore "javascripts/script.js"
85
+
86
+ # Build-specific configuration
87
+ configure :build do
88
+ # For example, change the Compass output style for deployment
89
+ # activate :minify_css
90
+
91
+ # Minify Javascript on build
92
+ # activate :minify_javascript
93
+
94
+ # Enable cache buster
95
+ # activate :asset_hash
96
+
97
+ # Use relative URLs
98
+ # activate :relative_assets
99
+
100
+ # Or use a different image path
101
+ # set :http_prefix, "/Content/images/"
102
+ end
data/config.ru ADDED
@@ -0,0 +1,13 @@
1
+ require 'middleman-core/load_paths'
2
+ ::Middleman.setup_load_paths
3
+
4
+ require 'middleman-core'
5
+ require 'middleman-core/rack'
6
+
7
+ require 'fileutils'
8
+ FileUtils.mkdir('log') unless File.exist?('log')
9
+ ::Middleman::Logger.singleton("log/#{ENV['RACK_ENV']}.log")
10
+
11
+ app = ::Middleman::Application.new
12
+
13
+ run ::Middleman::Rack.new(app).to_app
data/data/textile.yml ADDED
@@ -0,0 +1,665 @@
1
+ ---
2
+ :writing-paragraph-text:
3
+ :title: Writing Paragraph Text
4
+ :sections:
5
+ :simple-paragraphs:
6
+ Simple paragraphs:
7
+ desc: <p>Paragraphs are separated by a blank line.</p>
8
+ input: |-
9
+ This is a paragraph.
10
+
11
+ This is another paragraph
12
+ output: |-
13
+ <p>This is a paragraph.</p>
14
+ <p>This is another paragraph</p>
15
+ Explicit paragraphs:
16
+ desc: <p>You can explicitly identify a paragraph with <code>p. </code> (p-period-space)
17
+ before the paragraph.</p>
18
+ input: |-
19
+ p. This is one paragraph.
20
+
21
+ p. This is another.
22
+ output: |-
23
+ <p>This is one paragraph.</p>
24
+ <p>This is another.</p>
25
+ :line-breaks:
26
+ Line breaks:
27
+ desc: <p>Lines that don&#8217;t have a blank line in between are part of the
28
+ same paragraph.</p>
29
+ input: |-
30
+ Roses are red,
31
+ Violets are blue,
32
+ I'd like a sandwich;
33
+ Perhaps even two.
34
+ output: |-
35
+ <p>Roses are red,<br />
36
+ Violets are blue,<br />
37
+ I&#8217;d like a sandwich;<br />
38
+ Perhaps even two.</p>
39
+ Line breaks in code:
40
+ desc: <p>Line breaks in preformatted sections don&#8217;t become <span class="caps">HTML</span>
41
+ breaks.</p>
42
+ input: |-
43
+ <pre>
44
+ Mirror mirror
45
+ on the wall...
46
+ </pre>
47
+ output: |-
48
+ <pre>
49
+ Mirror mirror
50
+ on the wall...
51
+ </pre>
52
+ :typographers-quotes:
53
+ Typographer's quotes:
54
+ desc: <p>Straight quotation marks are converted into <abbr title='a.k.a. "curly
55
+ quotes"'>typographer&#8217;s quotes</abbr>, which are easier on the eyes.</p>
56
+ input: '"I said, ''hold the mayo'' twice!"'
57
+ output: <p>&#8220;I said, &#8216;hold the mayo&#8217; twice!&#8221;</p>
58
+ Curly apostrophes:
59
+ desc: <p>Apostrophes are also made curly.</p>
60
+ input: We went to Steven's mother's house for a party.
61
+ output: <p>We went to Steven&#8217;s mother&#8217;s house for a party.</p>
62
+ :dashes:
63
+ Dashes:
64
+ desc: <p>Single hyphens between words become en dashes; double hyphens become
65
+ em dashes. Hyphenated words are left alone.</p>
66
+ input: I could be happy--fantastically happy--on twenty-one thousand a year
67
+ if I only had to work 9 am - 1 pm.
68
+ output: <p>I could be happy&#8212;fantastically happy&#8212;on twenty-one
69
+ thousand a year if I only had to work 9 am &#8211; 1 pm.</p>
70
+ En dash must have spaces:
71
+ desc: <p>A dash, when it appears between words, must be surrounded by spaces.</p>
72
+ input: June - July 1967
73
+ output: <p>June &#8211; July 1967</p>
74
+ Em dash spaces optional:
75
+ desc: |-
76
+ <p>Em dashes may be set open or closed.</p>
77
+ <blockquote cite="http://en.wikipedia.org/wiki/Dash#Em_dash">
78
+ <p>According to most American sources (e.g., <a href="http://en.wikipedia.org/wiki/The_Chicago_Manual_of_Style">The Chicago Manual of Style</a>) and to some British sources (e.g., <a href="http://en.wikipedia.org/wiki/Hart%27s_Rules">The Oxford Guide to Style</a>), an em dash should always be set closed (not surrounded by spaces). But the practice in many parts of the English-speaking world, also the style recommended by <a href="http://en.wikipedia.org/wiki/The_New_York_Times_Manual_of_Style_and_Usage">The New York Times Manual of Style and Usage</a>, sets it open (separates it from its surrounding words by using spaces) when it is being used parenthetically.</p>
79
+ </blockquote>
80
+ input: Please use the em dash closed--or open if you must -- but I prefer
81
+ it closed.
82
+ output: <p>Please use the em dash closed&#8212;or open if you must &#8212;
83
+ but I prefer it closed.</p>
84
+ :ellipses:
85
+ Ellipses:
86
+ desc: <p>Three periods become the ellipsis character.</p>
87
+ input: He thought and thought ... and then thought some more.
88
+ output: <p>He thought and thought &#8230; and then thought some more.</p>
89
+ Ellipses without leading space:
90
+ desc: <p>Consult your style manual for proper use of ellipses in conjunction
91
+ with spaces and other punctuation.</p>
92
+ input: '"Four score and seven years ago our fathers brought forth...a new
93
+ nation...dedicated to the proposition that all men are created equal...."'
94
+ output: <p>&#8220;Four score and seven years ago our fathers brought forth&#8230;a
95
+ new nation&#8230;dedicated to the proposition that all men are created equal&#8230;.&#8221;</p>
96
+ :dimension-sign:
97
+ Dimension sign:
98
+ desc: <p>The lowercase letter x between numbers becomes a dimension sign.</p>
99
+ input: 4 x 4 = 16
100
+ output: <p>4 &#215; 4 = 16</p>
101
+ Dimension with quotes:
102
+ desc: <p>In RedCloth, quotes may be applied to the dimensions to represent
103
+ feet and inches.</p>
104
+ input: My office measures 5' x 5'6".
105
+ output: <p>My office measures 5&#8242; &#215; 5&#8242;6&quot;.</p>
106
+ Dimension spaces optional:
107
+ desc: <p>Spaces between the numbers and the x are optional.</p>
108
+ input: 4x4=16
109
+ output: <p>4&#215;4=16</p>
110
+ :registered-trademark-and-copyright-symbols:
111
+ Registered, trademark, and copyright symbols:
112
+ desc: <p>The copyright, registered, and trademark symbols can be produced
113
+ by placing the letters in parentheses.</p>
114
+ input: RegisteredTrademark(r), Trademark(tm), and Copyright (c) 2008
115
+ output: <p>RegisteredTrademark&#174;, Trademark&#8482;, and Copyright &#169;
116
+ 2008</p>
117
+ :acronyms:
118
+ Acronyms:
119
+ desc: <p>You can provide the definition for acronyms inside parentheses.</p>
120
+ input: The EPA(Environmental Protection Agency) is measuring GHG(greenhouse
121
+ gas) emissions.
122
+ output: <p>The <acronym title="Environmental Protection Agency"><span class="caps">EPA</span></acronym>
123
+ is measuring <acronym title="greenhouse gas"><span class="caps">GHG</span></acronym>
124
+ emissions.</p>
125
+ :uppercase:
126
+ Uppercase:
127
+ desc: <p>Uppercase words are enclosed in a span element that can be styled
128
+ to your liking. Administrators can disable this feature with <code>:no_span_caps</code>.</p>
129
+ input: Many NASDAQ companies are ISO certified.
130
+ output: <p>Many <span class="caps">NASDAQ</span> companies are <span class="caps">ISO</span>
131
+ certified.</p>
132
+ :page-layout:
133
+ :title: Page Layout
134
+ :sections:
135
+ :headings:
136
+ Headings:
137
+ desc: <p>Headings convey a hierarchy of information on the page. They structure
138
+ the document like an outline. Heading 1 is the most important or general
139
+ and Heading 6 is the least important or most specific. Leave a blank line
140
+ after every heading.</p>
141
+ input: |-
142
+ h1. This is a Heading 1
143
+
144
+ This might be an introductory paragraph on the general topic.
145
+
146
+ h2. Heading 2 gets more specific
147
+
148
+ Now we're getting into the details.
149
+ output: |-
150
+ <h1>This is a Heading 1</h1>
151
+ <p>This might be an introductory paragraph on the general topic.</p>
152
+ <h2>Heading 2 gets more specific</h2>
153
+ <p>Now we&#8217;re getting into the details.</p>
154
+ :block-quotations:
155
+ Block quotations:
156
+ desc: <p>Block quotations designate long quotations where a paragraph break
157
+ is appropriate. It ends with a blank line.</p>
158
+ input: |-
159
+ Even Mr. Sedaris, a noted luddite, has finally succumbed to doing his writing on a computer. The Internet, however, remains an idiotic trifle:
160
+
161
+ bq. I've never seen the Internet. I don't have email. I just enjoy lying on the couch and reading a magazine. When people say, "You should visit my Web page," I'm always perplexed by it. Why? What do you do there?
162
+
163
+ Haven't we all pondered that at one time or another?
164
+ output: |-
165
+ <p>Even Mr. Sedaris, a noted luddite, has finally succumbed to doing his writing on a computer. The Internet, however, remains an idiotic trifle:</p>
166
+ <blockquote>
167
+ <p>I&#8217;ve never seen the Internet. I don&#8217;t have email. I just enjoy lying on the couch and reading a magazine. When people say, &#8220;You should visit my Web page,&#8221; I&#8217;m always perplexed by it. Why? What do you do there?</p>
168
+ </blockquote>
169
+ <p>Haven&#8217;t we all pondered that at one time or another?</p>
170
+ Citing block quotations:
171
+ desc: <p>Block quotations may include a citation <acronym title="Uniform Resource
172
+ Locator"><span class="caps">URL</span></acronym> immediately following the
173
+ period.</p>
174
+ input: |-
175
+ A standard Lorem Ipsum passage has been used since the 1500s:
176
+
177
+ bq.:http://www.lipsum.com/ Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
178
+ output: |-
179
+ <p>A standard Lorem Ipsum passage has been used since the 1500s:</p>
180
+ <blockquote cite="http://www.lipsum.com/">
181
+ <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</p>
182
+ </blockquote>
183
+ Extended block quotations:
184
+ desc: <p>If your block quotation needs to go on for more than one paragraph,
185
+ use two periods. The block quotation ends when a paragraph of a different
186
+ type (such as an explicit paragraph or a header) is encountered.</p>
187
+ input: |-
188
+ bq.. This is one paragraph.
189
+
190
+ Another paragraph, also part of the quote.
191
+
192
+ p. A normal paragraph ends the quote.
193
+ output: |-
194
+ <blockquote>
195
+ <p>This is one paragraph.</p>
196
+ <p>Another paragraph, also part of the quote.</p>
197
+ </blockquote>
198
+ <p>A normal paragraph ends the quote.</p>
199
+ :bullet-lists:
200
+ Bullet lists:
201
+ desc: <p>Make a bullet list with asterisks. Use more asterisks to make nested
202
+ lists.</p>
203
+ input: |-
204
+ Textile has several advantages over HTML:
205
+
206
+ * It's easier on the eyes
207
+ * You don't have to write all those HTML tags
208
+ ** By not writing the tags yourself, you're less likely to make coding mistakes
209
+ ** It requires fewer keystrokes
210
+ *** You don't wear out the keys on your keyboard as fast
211
+ *** You won't wear out your fingers as fast
212
+ * You can write it much quicker
213
+ output: "<p>Textile has several advantages over <span class=\"caps\">HTML</span>:</p>\n<ul>\n\t<li>It&#8217;s
214
+ easier on the eyes</li>\n\t<li>You don&#8217;t have to write all those <span
215
+ class=\"caps\">HTML</span> tags\n\t<ul>\n\t\t<li>By not writing the tags
216
+ yourself, you&#8217;re less likely to make coding mistakes</li>\n\t\t<li>It
217
+ requires fewer keystrokes\n\t\t<ul>\n\t\t\t<li>You don&#8217;t wear out
218
+ the keys on your keyboard as fast</li>\n\t\t\t<li>You won&#8217;t wear out
219
+ your fingers as fast</li>\n\t\t</ul></li>\n\t</ul></li>\n\t<li>You can write
220
+ it much quicker</li>\n</ul>"
221
+ :numbered-lists:
222
+ Numbered lists:
223
+ desc: <p>Start each item in your numbered list with a number sign. For nested
224
+ lists, use more number signs.</p>
225
+ input: |-
226
+ How to make a PB&J:
227
+
228
+ # Gather bread, peanut butter, and jelly
229
+ # Slice the bread if necessary
230
+ # Assemble the sandwich
231
+ ## Spread peanut butter on one slice of bread
232
+ ## Put jelly on another slice
233
+ ## Put the two slices together
234
+ # Enjoy
235
+ output: "<p>How to make a PB&amp;J:</p>\n<ol>\n\t<li>Gather bread, peanut
236
+ butter, and jelly</li>\n\t<li>Slice the bread if necessary</li>\n\t<li>Assemble
237
+ the sandwich\n\t<ol>\n\t\t<li>Spread peanut butter on one slice of bread</li>\n\t\t<li>Put
238
+ jelly on another slice</li>\n\t\t<li>Put the two slices together</li>\n\t</ol></li>\n\t<li>Enjoy</li>\n</ol>"
239
+ :mixed-nested-lists:
240
+ Mixed nested lists:
241
+ desc: <p>You can nest ordered lists inside unordered lists and vice-versa.</p>
242
+ input: |-
243
+ Three reasons to walk to work:
244
+
245
+ # It saves fuel
246
+ # It's good for your health
247
+ ** Walking burns calories
248
+ ** Time outside means lower stress
249
+ # It's good for the environment
250
+ output: "<p>Three reasons to walk to work:</p>\n<ol>\n\t<li>It saves fuel</li>\n\t<li>It&#8217;s
251
+ good for your health\n\t<ul>\n\t\t<li>Walking burns calories</li>\n\t\t<li>Time
252
+ outside means lower stress</li>\n\t</ul></li>\n\t<li>It&#8217;s good for
253
+ the environment</li>\n</ol>"
254
+ :definition-lists:
255
+ Definition lists:
256
+ desc: <p>Each term in a definition list starts with a dash. Put a <code>:=</code>
257
+ between the term and the definition. If your definition spans multiple
258
+ lines, end the definition with <code>=:</code></p>
259
+ input: |-
260
+ - coffee := Hot and black
261
+ - tea := Also hot, but a little less black
262
+ - milk :=
263
+ Nourishing beverage for baby cows.
264
+
265
+ Cold drink that goes great with cookies. =:
266
+ output: "<dl>\n\t<dt>coffee</dt>\n\t<dd>Hot and black</dd>\n\t<dt>tea</dt>\n\t<dd>Also
267
+ hot, but a little less black</dd>\n\t<dt>milk</dt>\n\t<dd><p>Nourishing
268
+ beverage for baby cows.</p>\n<p>Cold drink that goes great with cookies.</p></dd>\n</dl>"
269
+ :footnotes:
270
+ Footnotes:
271
+ desc: <p>To reference a footnote, place the footnote number in square brackets.
272
+ Don&#8217;t forget the corresponding footnote at the bottom of the page.</p>
273
+ input: |-
274
+ 42.7% of all statistics are made up on the spot.[1]
275
+
276
+ fn1. "Dr. Katz":http://en.wikiquote.org/wiki/Steven_Wright
277
+ output: |-
278
+ <p>42.7% of all statistics are made up on the spot.<sup class="footnote" id="fnr1"><a href="#fn1">1</a></sup></p>
279
+ <p class="footnote" id="fn1"><a href="#fnr1"><sup>1</sup></a> <a href="http://en.wikiquote.org/wiki/Steven_Wright">Dr. Katz</a></p>
280
+ :tables:
281
+ Tables:
282
+ desc: <p>Simple tables are made by separating each cell with vertical pipes. Begin
283
+ the cell with <code>_.</code> to indicate the cell is a heading.</p>
284
+ input: |-
285
+ |_. name|_. age|
286
+ |Walter|5|
287
+ |Florence|6|
288
+ output: "<table>\n\t<tr>\n\t\t<th>name</th>\n\t\t<th>age</th>\n\t</tr>\n\t<tr>\n\t\t<td>Walter</td>\n\t\t<td>5</td>\n\t</tr>\n\t<tr>\n\t\t<td>Florence</td>\n\t\t<td>6</td>\n\t</tr>\n</table>"
289
+ Table cell attributes:
290
+ desc: <p>You can make a table cell span rows or columns with a slash or backslash
291
+ and the number to span. Classes, IDs, style, and alignment are also possible
292
+ on table cells as with other elements.</p>
293
+ input: "|{background:#ddd}. Cell with background|Normal|\n|\x02. Cell spanning
294
+ 2 columns|\n|/2. Cell spanning 2 rows|one|\n|two|\n|>. Right-aligned cell|<.
295
+ Left-aligned cell|"
296
+ output: "<table>\n\t<tr>\n\t\t<td style=\"background:#ddd;\">Cell with background</td>\n\t\t<td>Normal</td>\n\t</tr>\n\t<tr>\n\t\t<td
297
+ colspan=\"2\">Cell spanning 2 columns</td>\n\t</tr>\n\t<tr>\n\t\t<td rowspan=\"2\">Cell
298
+ spanning 2 rows</td>\n\t\t<td>one</td>\n\t</tr>\n\t<tr>\n\t\t<td>two</td>\n\t</tr>\n\t<tr>\n\t\t<td
299
+ style=\"text-align:right;\">Right-aligned cell</td>\n\t\t<td style=\"text-align:left;\">Left-aligned
300
+ cell</td>\n\t</tr>\n</table>"
301
+ Table attributes:
302
+ desc: <p>To apply attributes to the entire table, use the <code>table.</code>
303
+ signature on a line by itself before the table data.</p>
304
+ input: |-
305
+ table(#prices).
306
+ |Adults|$5|
307
+ |Children|$2|
308
+ output: "<table id=\"prices\">\n\t<tr>\n\t\t<td>Adults</td>\n\t\t<td>$5</td>\n\t</tr>\n\t<tr>\n\t\t<td>Children</td>\n\t\t<td>$2</td>\n\t</tr>\n</table>"
309
+ :divisions:
310
+ Divisions:
311
+ desc: <p><code>DIV</code> tags are used to define a division or section in
312
+ an <span class="caps">HTML</span> document. It has no inherent meaning,
313
+ but is often used by designers and developers to group or style part of
314
+ a page differently than another. You can easily create a <code>div</code>
315
+ with Textile but most people who need a <code>div</code> just use <a href="/textile/html-integration-and-escapement/#block-html"><span
316
+ class="caps">HTML</span> tags</a> in their Textile.</p>
317
+ input: div. A simple div.
318
+ output: <div>A simple div.</div>
319
+ :phrase-modifiers:
320
+ :title: Phrase modifiers
321
+ :sections:
322
+ :strong-importance:
323
+ Strong importance:
324
+ desc: <p>Strong importance can be given to the text by surrounding it with
325
+ asterisks. The strong text is commonly styled as <b>bold</b>.</p>
326
+ input: Don't *ever* pull this lever.
327
+ output: <p>Don&#8217;t <strong>ever</strong> pull this lever.</p>
328
+ :stress-emphasis:
329
+ Stress emphasis:
330
+ desc: <p>To add emphasis to a stressed word or phrase, surround it with underscores. Emphasized
331
+ text is typically styled as <i>italics</i>.</p>
332
+ input: You didn't actually _believe_ her, did you?
333
+ output: <p>You didn&#8217;t actually <em>believe</em> her, did you?</p>
334
+ :stylistic-offset:
335
+ Stylistic offset:
336
+ desc: <p>To stylistically differentiate a word or phrase from the surrounding
337
+ text <strong>without conveying any extra importance</strong>, place two
338
+ asterisks on either side. Uses are key words in a document abstract, product
339
+ names in a review, or other spans of text whose typical typographic presentation
340
+ is boldened.</p>
341
+ input: |-
342
+ Search results for **Textile**:
343
+
344
+ h4. ["**Textile** (markup language) - Wikipedia":http://en.wikipedia.org/wiki/Textile_(markup_language)]
345
+
346
+ **Textile** is a lightweight markup language originally developed by Dean Allen and billed as a "humane Web text generator". **Textile** converts its marked-up text ...
347
+ output: |-
348
+ <p>Search results for <b>Textile</b>:</p>
349
+ <h4><a href="http://en.wikipedia.org/wiki/Textile_(markup_language)"><b>Textile</b> (markup language) &#8211; Wikipedia</a></h4>
350
+ <p><b>Textile</b> is a lightweight markup language originally developed by Dean Allen and billed as a &#8220;humane Web text generator&#8221;. <b>Textile</b> converts its marked-up text &#8230;</p>
351
+ :alternate-voice:
352
+ Alternate voice:
353
+ desc: <p>Double underscores surround a span of text in an alternate mood or
354
+ voice, a technical term, an idiomatic phrase from another language, a thought,
355
+ a ship name, or some other prose whose typical typographic presentation
356
+ is italicized.</p>
357
+ input: I just got the weirdest feeling of __déjà vu__.
358
+ output: <p>I just got the weirdest feeling of <i>déjà vu</i>.</p>
359
+ :citation:
360
+ Citation:
361
+ desc: <p>Cite the title of a work (e.g. a book, paper, essay, poem, score,
362
+ song, script, film, TV show, game, sculpture, painting, theater production,
363
+ play, opera, musical, exhibition, or anything other work whose title is
364
+ italicized in traditional style guides) by surrounding it with two question
365
+ marks on either side. This can be a work that is being quoted or referenced
366
+ in detail (i.e. a citation), or it can just be a work that is mentioned
367
+ in passing.</p>
368
+ input: My wife's favorite book is ??The Count of Monte Cristo?? by Dumas.
369
+ output: <p>My wife&#8217;s favorite book is <cite>The Count of Monte Cristo</cite>
370
+ by Dumas.</p>
371
+ :insertions-and-deletions:
372
+ Insertions and deletions:
373
+ desc: <p>To indicate a passage which has been deleted, surround it with minuses. To
374
+ indicate an insertion, use pluses.</p>
375
+ input: The news networks declared -Al Gore- +George W. Bush+ the winner in
376
+ Florida.
377
+ output: <p>The news networks declared <del>Al Gore</del> <ins>George W. Bush</ins>
378
+ the winner in Florida.</p>
379
+ Explicit insertion and deletion:
380
+ desc: <p>If your insertion or deletion isn&#8217;t being recognized or is
381
+ being confused with another modifier, you can make it more explicit by surrounding
382
+ it with square brackets.</p>
383
+ input: '[-this was deleted-][+this was added+] to the paragraph'
384
+ output: <p><del>this was deleted</del><ins>this was added</ins> to the paragraph</p>
385
+ :superscript-and-subscript:
386
+ Superscript and subscript:
387
+ desc: <p>Superscript and subscript phrases are surrounded with caret and tilde
388
+ characters, respectively.</p>
389
+ input: |
390
+ f(x, n) = log ~4~ x ^n^
391
+ output: <p>f(x, n) = log <sub>4</sub> x <sup>n</sup></p>
392
+ Tight superscript and subscript:
393
+ desc: <p>If you want it without spaces around the super- and subscripted text,
394
+ use square brackets.</p>
395
+ input: f(x, n) = log[~4~]x[^n^]
396
+ output: <p>f(x, n) = log<sub>4</sub>x<sup>n</sup></p>
397
+ :links:
398
+ Links:
399
+ desc: <p>Links have the text of the link in quotes, followed by a colon and
400
+ the <span class="caps">URL</span>.</p>
401
+ input: Learn more "about the company":/about and our "board of directors":../about#board.
402
+ output: <p>Learn more <a href="/about">about the company</a> and our <a href="../about#board">board
403
+ of directors</a>.</p>
404
+ Link title:
405
+ desc: <p>A title may be placed in parentheses at the end of the link text. Link
406
+ titles help users predict where they are going. <a href="http://www.useit.com/alertbox/980111.html"
407
+ title="Nielsen&#39;s guidelines for link titles">Jakob Nielsen</a> recommends
408
+ you use them sparingly and not assume the user will see them at all.</p>
409
+ input: Visit our "parent company (Example Corporation)":http://example.com.
410
+ output: <p>Visit our <a href="http://example.com" title="Example Corporation">parent
411
+ company</a>.</p>
412
+ Bracketed link:
413
+ desc: <p>When the link isn&#8217;t surrounded by spaces or punctuation, or
414
+ when the <span class="caps">URL</span> ending may be ambiguous, surround
415
+ the link with square brackets.</p>
416
+ input: This is a link to a ["Wikipedia article about Textile":http://en.wikipedia.org/wiki/Textile_(markup_language)].
417
+ output: <p>This is a link to a <a href="http://en.wikipedia.org/wiki/Textile_(markup_language)">Wikipedia
418
+ article about Textile</a>.</p>
419
+ Link alias:
420
+ desc: <p>If you link to a <span class="caps">URL</span> repeatedly, you can
421
+ replace the <span class="caps">URL</span> with a link alias defined elsewhere
422
+ in the Textile document.</p>
423
+ input: |-
424
+ I'm really excited about "RedCloth":redcloth. I love it so much, I think I'll name my first child "RedCloth":redcloth.
425
+
426
+ [redcloth]http://redcloth.org
427
+ output: <p>I&#8217;m really excited about <a href="http://redcloth.org">RedCloth</a>. I
428
+ love it so much, I think I&#8217;ll name my first child <a href="http://redcloth.org">RedCloth</a>.</p>
429
+ Link attributes:
430
+ desc: <p>Link <a href="../attributes">attributes</a> can be specified at the
431
+ beginning of the link text followed by a period and space.</p>
432
+ input: '"(my-class). This is a link with class":http://redcloth.org'
433
+ output: <p><a href="http://redcloth.org" class="my-class">This is a link with
434
+ class</a></p>
435
+ :images:
436
+ Images:
437
+ desc: <p>Include an image by surrounding its <span class="caps">URL</span>
438
+ with exclamation marks. Alt text can be provided in parentheses.</p>
439
+ input: '!http://www.w3.org/Icons/valid-html401(This page is valid HTML)!'
440
+ output: <p><img src="http://www.w3.org/Icons/valid-html401" title="This page
441
+ is valid HTML" alt="This page is valid HTML" /></p>
442
+ Image links:
443
+ desc: <p>Images can be linked by putting a colon and the link <span class="caps">URL</span>
444
+ after the image.</p>
445
+ input: '!http://www.w3.org/Icons/valid-html401!:http://validator.w3.org/check?uri=referer'
446
+ output: <p><a href="http://validator.w3.org/check?uri=referer"><img src="http://www.w3.org/Icons/valid-html401"
447
+ alt="" /></a></p>
448
+ :attributes:
449
+ :title: Attributes
450
+ :sections:
451
+ :css-classes-and-ids:
452
+ CSS classes and IDs:
453
+ desc: <p>You can apply <span class="caps">CSS</span> classes and IDs to phrase
454
+ modifiers or block modifiers.</p>
455
+ input: p(my-class). This is a paragraph that has a class and this *(#special-phrase)emphasized
456
+ phrase* has an id.
457
+ output: <p class="my-class">This is a paragraph that has a class and this
458
+ <strong id="special-phrase">emphasized phrase</strong> has an id.</p>
459
+ CSS IDs:
460
+ desc: ''
461
+ input: p(#my-paragraph). This is a paragraph that has an id.
462
+ output: <p id="my-paragraph">This is a paragraph that has an id.</p>
463
+ CSS classes and IDs combined:
464
+ desc: <p>You can specify both class and ID, but the class must always come
465
+ first.</p>
466
+ input: div(myclass#myid). This div has both a CSS class and ID.
467
+ output: <div class="myclass" id="myid">This div has both a <span class="caps">CSS</span>
468
+ class and ID.</div>
469
+ :css-styles:
470
+ CSS styles:
471
+ desc: <p>Apply <span class="caps">CSS</span> styles directly to block or phrase
472
+ modifiers by putting the style rules in curly braces.</p>
473
+ input: p{color:blue;letter-spacing:.5em}. Spacey blue
474
+ output: <p style="color:blue;letter-spacing:.5em;">Spacey blue</p>
475
+ :language:
476
+ Language:
477
+ desc: <p>Specify the language of text with square brackets.</p>
478
+ input: p[fr]. Parlez-vous français ?
479
+ output: <p lang="fr">Parlez-vous français ?</p>
480
+ :alignment:
481
+ Alignment:
482
+ desc: <p>Text inside blocks can be aligned in four ways:</p>
483
+ input: |-
484
+ p<. align left
485
+
486
+ p>. align right
487
+
488
+ p=. centered
489
+
490
+ p<>. justified justified justified justified justified justified justified justified justified
491
+ output: |-
492
+ <p style="text-align:left;">align left</p>
493
+ <p style="text-align:right;">align right</p>
494
+ <p style="text-align:center;">centered</p>
495
+ <p style="text-align:justify;">justified justified justified justified justified justified justified justified justified</p>
496
+ :indentation:
497
+ Indentation:
498
+ desc: <p>Text can be indented with single parentheses. For each left paren,
499
+ left pad 1em. For each right paren, right pad 1em. They may be combined
500
+ for left and right padding.</p>
501
+ input: |-
502
+ p(. Left pad 1em.
503
+
504
+ p)). Right pad 2em.
505
+
506
+ p(). Pad both left and right sides 1em.
507
+ output: |-
508
+ <p style="padding-left:1em;">Left pad 1em.</p>
509
+ <p style="padding-right:2em;">Right pad 2em.</p>
510
+ <p style="padding-left:1em;padding-right:1em;">Pad both left and right sides 1em.</p>
511
+ :html-integration-and-escapement:
512
+ :title: HTML Integration and Escapement
513
+ :sections:
514
+ :html-spans:
515
+ HTML spans:
516
+ desc: <p>You can enclose a bit of text in an <span class="caps">HTML</span>
517
+ span tag by enclosing it in percent signs. Then you can apply attributes
518
+ to the span (see <a href="/textile/attributes">attributes</a>).</p>
519
+ input: I can put in a %(myclass)span with a class% like this.
520
+ output: <p>I can put in a <span class="myclass">span with a class</span> like
521
+ this.</p>
522
+ :inline-code:
523
+ Inline code:
524
+ desc: <p>To mark code in your text, surround the code with at signs.</p>
525
+ input: On the command line, you can just type @redcloth@.
526
+ output: <p>On the command line, you can just type <code>redcloth</code>.</p>
527
+ :block-code:
528
+ Block code:
529
+ desc: <p>You can insert a block of code with the <code>bc.</code> block signature.</p>
530
+ input: |-
531
+ bc. # Output "I love Ruby"
532
+ say = "I love Ruby"
533
+ puts say
534
+ output: |-
535
+ <pre><code># Output "I love Ruby"
536
+ say = "I love Ruby"
537
+ puts say</code></pre>
538
+ Extended block code:
539
+ desc: <p>Use <code>bc..</code> and the block of code will continue to include
540
+ blank lines until it encounters another block signature such as <code>p.</code></p>
541
+ input: |-
542
+ bc.. # Output "I love Ruby"
543
+ say = "I love Ruby"
544
+ puts say
545
+
546
+ # Output "I *LOVE* RUBY"
547
+ say['love'] = "*love*"
548
+ puts say.upcase
549
+
550
+ p. And that is how you do it.
551
+ output: |-
552
+ <pre><code># Output "I love Ruby"
553
+ say = "I love Ruby"
554
+ puts say</code>
555
+
556
+ <code># Output "I *LOVE* RUBY"
557
+ say['love'] = "*love*"
558
+ puts say.upcase</code></pre>
559
+ <p>And that is how you do it.</p>
560
+ :inline-html:
561
+ Inline HTML:
562
+ desc: <p>You can use <span class="caps">HTML</span> right in your paragraph
563
+ text, presuming the site administrator has not set :filter_html or :sanitize_html
564
+ restrictions.</p>
565
+ input: I can use HTML directly in my <span class="youbetcha">Textile</span>.
566
+ output: <p>I can use <span class="caps">HTML</span> directly in my <span class="youbetcha">Textile</span>.</p>
567
+ :block-html:
568
+ Block HTML:
569
+ desc: <p>You can use <span class="caps">HTML</span> freely within your RedCloth
570
+ 4 Textile. <span class="caps">HTML</span> tags on a line by themselves
571
+ will not be mangled. Don&#8217;t forget to leave a blank line after any
572
+ Textile, just like usual.</p>
573
+ input: |-
574
+ <div id="shopping-cart">
575
+ <form action="/" method="get">
576
+ h3. Your cart
577
+
578
+ * Item one
579
+ * Item two
580
+
581
+ <p><input type="submit" value="Check Out" /></p>
582
+
583
+ </form>
584
+ </div>
585
+ output: "<div id=\"shopping-cart\">\n<form action=\"/\" method=\"get\">\n<h3>Your
586
+ cart</h3>\n<ul>\n\t<li>Item one</li>\n\t<li>Item two</li>\n</ul>\n<p><input
587
+ type=\"submit\" value=\"Check Out\" /></p>\n</form>\n</div>"
588
+ :no-textile:
589
+ No Textile:
590
+ desc: <p>You can have RedCloth skip a chunk of text with the <code>&lt;notextile&gt;</code>
591
+ tag or double-equals.</p>
592
+ input: |-
593
+ <notextile>
594
+ Don't touch this!
595
+ </notextile>
596
+
597
+ Use ==*asterisks*== to say something *strongly*.
598
+ output: |-
599
+ Don't touch this!
600
+ <p>Use *asterisks* to say something <strong>strongly</strong>.</p>
601
+ Notextile block:
602
+ desc: <p>Notextile can also be used as a normal or extended Textile block.</p>
603
+ input: |-
604
+ notextile. This has *no* textile formatting, see?
605
+
606
+ notextile.. And this notextile block
607
+
608
+ Just keeps going and going.
609
+
610
+ p. Until you end it with another block.
611
+ output: |-
612
+ This has *no* textile formatting, see?
613
+
614
+ And this notextile block
615
+
616
+ Just keeps going and going.<p>Until you end it with another block.</p>
617
+ :preformatted-text:
618
+ Preformatted text:
619
+ desc: <p>Preformatted text can be put in a <code>pre.</code> block and its
620
+ whitespace will be preserved. <code>pre.</code> is almost identical to
621
+ <code>bc.</code>, except that <code>&lt;code&gt;...&lt;/code&gt;</code>
622
+ tags are not used within the <code>&lt;pre&gt;</code> block.</p>
623
+ input: |-
624
+ pre. Text in a pre block
625
+ is displayed in a fixed-width
626
+ font. It preserves
627
+ s p a c e s, line breaks
628
+ and ascii bunnies.
629
+ _ _
630
+ \`\ /`/
631
+ \ V /
632
+ /. .\
633
+ =\ T /=
634
+ / ^ \
635
+ {}/\\ //\
636
+ __\ " " /__
637
+ (____/^\____)
638
+ output: |-
639
+ <pre> Text in a pre block
640
+ is displayed in a fixed-width
641
+ font. It preserves
642
+ s p a c e s, line breaks
643
+ and ascii bunnies.
644
+ _ _
645
+ \`\ /`/
646
+ \ V /
647
+ /. .\
648
+ =\ T /=
649
+ / ^ \
650
+ {}/\\ //\
651
+ __\ " " /__
652
+ (____/^\____)</pre>
653
+ Extended preformatted:
654
+ desc: <p>Use <code>pre..</code> to make a block of extended preformatted text
655
+ that continues until it encounters another block signature, like <code>p.</code></p>
656
+ input: |-
657
+ pre.. All monospaced
658
+
659
+ Even the blank lines
660
+
661
+ p. But now a paragraph
662
+ output: |-
663
+ <pre>All monospaced</pre>
664
+ <pre>Even the blank lines</pre>
665
+ <p>But now a paragraph</p>