Update vendored Sqlite3-ruby to 1.3.0
Also, some tweaks to Maruku.
This commit is contained in:
parent
9a80cacc34
commit
4f8759cdf3
55 changed files with 3071 additions and 8028 deletions
145
vendor/plugins/sqlite3-ruby/faq/faq.rb
vendored
Normal file
145
vendor/plugins/sqlite3-ruby/faq/faq.rb
vendored
Normal file
|
@ -0,0 +1,145 @@
|
|||
require 'yaml'
|
||||
require 'redcloth'
|
||||
|
||||
def process_faq_list( faqs )
|
||||
puts "<ul>"
|
||||
faqs.each do |faq|
|
||||
process_faq_list_item faq
|
||||
end
|
||||
puts "</ul>"
|
||||
end
|
||||
|
||||
def process_faq_list_item( faq )
|
||||
question = faq.keys.first
|
||||
answer = faq.values.first
|
||||
|
||||
print "<li>"
|
||||
|
||||
question_text = RedCloth.new(question).to_html.gsub( %r{</?p>},"" )
|
||||
if answer.is_a?( Array )
|
||||
puts question_text
|
||||
process_faq_list answer
|
||||
else
|
||||
print "<a href='##{question.object_id}'>#{question_text}</a>"
|
||||
end
|
||||
|
||||
puts "</li>"
|
||||
end
|
||||
|
||||
def process_faq_descriptions( faqs, path=nil )
|
||||
faqs.each do |faq|
|
||||
process_faq_description faq, path
|
||||
end
|
||||
end
|
||||
|
||||
def process_faq_description( faq, path )
|
||||
question = faq.keys.first
|
||||
path = ( path ? path + " " : "" ) + question
|
||||
answer = faq.values.first
|
||||
|
||||
if answer.is_a?( Array )
|
||||
process_faq_descriptions( answer, path )
|
||||
else
|
||||
title = RedCloth.new( path ).to_html.gsub( %r{</?p>}, "" )
|
||||
answer = RedCloth.new( answer || "" )
|
||||
|
||||
puts "<a name='#{question.object_id}'></a>"
|
||||
puts "<div class='faq-title'>#{title}</div>"
|
||||
puts "<div class='faq-answer'>#{add_api_links(answer.to_html)}</div>"
|
||||
end
|
||||
end
|
||||
|
||||
API_OBJECTS = [ "Database", "Statement", "ResultSet",
|
||||
"ParsedStatement", "Pragmas", "Translator" ].inject( "(" ) { |acc,name|
|
||||
acc << "|" if acc.length > 1
|
||||
acc << name
|
||||
acc
|
||||
} + ")"
|
||||
|
||||
def add_api_links( text )
|
||||
text.gsub( /#{API_OBJECTS}(#(\w+))?/ ) do
|
||||
disp_obj = obj = $1
|
||||
|
||||
case obj
|
||||
when "Pragmas"; disp_obj = "Database"
|
||||
end
|
||||
|
||||
method = $3
|
||||
s = "<a href='http://sqlite-ruby.rubyforge.org/classes/SQLite/#{obj}.html'>#{disp_obj}"
|
||||
s << "##{method}" if method
|
||||
s << "</a>"
|
||||
s
|
||||
end
|
||||
end
|
||||
|
||||
faqs = YAML.load( File.read( "faq.yml" ) )
|
||||
|
||||
puts <<-EOF
|
||||
<html>
|
||||
<head>
|
||||
<title>SQLite3/Ruby FAQ</title>
|
||||
<style type="text/css">
|
||||
a, a:visited, a:active {
|
||||
color: #00F;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
a:hover {
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
.faq-list {
|
||||
color: #000;
|
||||
font-family: vera-sans, verdana, arial, sans-serif;
|
||||
}
|
||||
|
||||
.faq-title {
|
||||
background: #007;
|
||||
color: #FFF;
|
||||
font-family: vera-sans, verdana, arial, sans-serif;
|
||||
padding-left: 1em;
|
||||
padding-top: 0.5em;
|
||||
padding-bottom: 0.5em;
|
||||
font-weight: bold;
|
||||
font-size: large;
|
||||
border: 1px solid #000;
|
||||
}
|
||||
|
||||
.faq-answer {
|
||||
margin-left: 1em;
|
||||
color: #000;
|
||||
font-family: vera-sans, verdana, arial, sans-serif;
|
||||
}
|
||||
|
||||
.faq-answer pre {
|
||||
margin-left: 1em;
|
||||
color: #000;
|
||||
background: #FFE;
|
||||
font-size: normal;
|
||||
border: 1px dotted #CCC;
|
||||
padding: 1em;
|
||||
}
|
||||
|
||||
h1 {
|
||||
background: #005;
|
||||
color: #FFF;
|
||||
font-family: vera-sans, verdana, arial, sans-serif;
|
||||
padding-left: 1em;
|
||||
padding-top: 1em;
|
||||
padding-bottom: 1em;
|
||||
font-weight: bold;
|
||||
font-size: x-large;
|
||||
border: 1px solid #00F;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<h1>SQLite/Ruby FAQ</h1>
|
||||
<div class="faq-list">
|
||||
EOF
|
||||
|
||||
process_faq_list( faqs )
|
||||
puts "</div>"
|
||||
process_faq_descriptions( faqs )
|
||||
|
||||
puts "</body></html>"
|
Loading…
Add table
Add a link
Reference in a new issue