textile_manual 0.0.2

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.
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>