markdown-service 1.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (34) hide show
  1. checksums.yaml +7 -0
  2. data/HISTORY.md +3 -0
  3. data/Manifest.txt +32 -0
  4. data/README.md +38 -0
  5. data/Rakefile +31 -0
  6. data/lib/markdown/service.rb +170 -0
  7. data/lib/markdown/service/docs/welcome.md +23 -0
  8. data/lib/markdown/service/public/css/markdown/note.css +70 -0
  9. data/lib/markdown/service/public/css/markdown/themes/basic.css +57 -0
  10. data/lib/markdown/service/public/i/dots-white.gif +0 -0
  11. data/lib/markdown/service/public/js/lib3rd/jquery-2.0.1.min.js +6 -0
  12. data/lib/markdown/service/public/js/lib3rd/pagedown.js +1412 -0
  13. data/lib/markdown/service/public/js/lib3rd/showdown.min.js +62 -0
  14. data/lib/markdown/service/public/js/markdown.api.js +99 -0
  15. data/lib/markdown/service/public/js/markdown.lib.js +82 -0
  16. data/lib/markdown/service/public/js/markdown.note.js +173 -0
  17. data/lib/markdown/service/public/note.html +72 -0
  18. data/lib/markdown/service/public/style.css +51 -0
  19. data/lib/markdown/service/version.rb +23 -0
  20. data/lib/markdown/service/views/_about.erb +23 -0
  21. data/lib/markdown/service/views/_debug.erb +27 -0
  22. data/lib/markdown/service/views/_editor.erb +47 -0
  23. data/lib/markdown/service/views/_editor_head.erb +12 -0
  24. data/lib/markdown/service/views/_editor_setup.erb +26 -0
  25. data/lib/markdown/service/views/_libs.erb +14 -0
  26. data/lib/markdown/service/views/_libs_service.erb +27 -0
  27. data/lib/markdown/service/views/_service.erb +75 -0
  28. data/lib/markdown/service/views/_version.erb +6 -0
  29. data/lib/markdown/service/views/debug.erb +3 -0
  30. data/lib/markdown/service/views/editor.erb +8 -0
  31. data/lib/markdown/service/views/index.erb +18 -0
  32. data/lib/markdown/service/views/layout.erb +17 -0
  33. data/lib/markdown/service/views/service.erb +10 -0
  34. metadata +137 -0
@@ -0,0 +1,51 @@
1
+ body {
2
+ font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; }
3
+
4
+ a, a:visited {
5
+ color: #8B0000;
6
+ text-decoration: none; }
7
+
8
+ a:hover {
9
+ color: #8B0000;
10
+ background-color: gold;
11
+ text-decoration: underline; }
12
+
13
+ .params {
14
+ color: green;
15
+ font-style: italic;
16
+ font-weight: bold; }
17
+
18
+ pre {
19
+ background-color: #F3F3F3;
20
+ border-bottom: 1px solid #BBBBBB;
21
+ border-top: 1px solid #BBBBBB;
22
+ padding: 4px; }
23
+
24
+
25
+ h3 {
26
+ border-bottom: 1px solid black;
27
+ }
28
+
29
+ /****************
30
+ * api
31
+ */
32
+
33
+ .api a, .api a:visited {
34
+ color: black;
35
+ }
36
+
37
+
38
+ /**********
39
+ * version / powered by
40
+ */
41
+
42
+ .version {
43
+ text-align: center;
44
+ margin-top: 10px;
45
+ color: grey; }
46
+ .version a,
47
+ .version a:visited,
48
+ .version span {
49
+ font-size: 12px;
50
+ color: grey; }
51
+
@@ -0,0 +1,23 @@
1
+ # encoding: utf-8
2
+
3
+ module MarkdownService
4
+
5
+ MAJOR = 1
6
+ MINOR = 2
7
+ PATCH = 0
8
+ VERSION = [MAJOR,MINOR,PATCH].join('.')
9
+
10
+ def self.version
11
+ VERSION
12
+ end
13
+
14
+ def self.banner
15
+ "markdown-service/#{VERSION} on Ruby #{RUBY_VERSION} (#{RUBY_RELEASE_DATE}) [#{RUBY_PLATFORM}] on Sinatra/#{Sinatra::VERSION} (#{ENV['RACK_ENV']})"
16
+ end
17
+
18
+ def self.root
19
+ "#{File.expand_path( File.dirname(File.dirname(File.dirname(File.dirname(__FILE__)))) )}"
20
+ end
21
+
22
+ end # module MarkdownService
23
+
@@ -0,0 +1,23 @@
1
+
2
+
3
+ <h3>Markdown Gem / About</h3>
4
+
5
+ <p><b>
6
+ What's the <code>markdown</code> gem?
7
+ </b>
8
+
9
+ The Markdown Engine Wrapper (<code>markdown</code>) Ruby gem lets you use
10
+ your markdown library of choice in Ruby.
11
+ <a href='https://github.com/geraldb/markdown'>Find out more »</a>
12
+ </p>
13
+
14
+ <p>
15
+ <b>Questions? Comments?</b>
16
+ Send them along to the <a href='http://groups.google.com/group/webslideshow'>Free Web Slide Show Alternatives (S5, S6, S9, Slidy And Friends) Forum/Mailing List</a>.
17
+ Thanks!
18
+ </p>
19
+
20
+ <p><b>License</b>
21
+ The markdown scripts are dedicated to the public domain.
22
+ Use it as you please with no restrictions whatsoever.
23
+ </p>
@@ -0,0 +1,27 @@
1
+
2
+ <h3>Debug</h3>
3
+
4
+ <h4>Params</h4>
5
+
6
+ <pre>
7
+ <%= params.inspect %>
8
+ </pre>
9
+
10
+
11
+ <h4>Request</h4>
12
+
13
+ <pre>
14
+ request.scheme <%= request.scheme %>
15
+ request.script_name <%= request.script_name %>
16
+ request.path_info <%= request.path_info %>
17
+ request.port <%= request.port %>
18
+ request.request_method <%= request.request_method %>
19
+ request.query_string <%= request.query_string %>
20
+ request.host <%= request.host %>
21
+ request.referrer <%= request.referrer %>
22
+ request.user_agent <%= request.user_agent %>
23
+ request.url <%= request.url %>
24
+ request.path <%= request.path %>
25
+ request.ip <%= request.ip %>
26
+ </pre>
27
+
@@ -0,0 +1,47 @@
1
+
2
+ <%= erb :'_editor_setup' %>
3
+
4
+
5
+ <table width='100%'>
6
+ <colgroup>
7
+ <col width='50%'>
8
+ <col width='50%'>
9
+ </colgroup>
10
+ <tr>
11
+ <td>
12
+ <!-- first column -->
13
+
14
+ <div id='input'>
15
+ <textarea id='note' class='black'></textarea>
16
+ </div>
17
+
18
+ </td>
19
+ <td style='vertical-align: top;'>
20
+ <!-- second column -->
21
+
22
+ <div id='output' class='markdown'></div>
23
+ <textarea id='output-source' readonly='readonly'></textarea>
24
+
25
+ </td>
26
+ </tr>
27
+ <tr>
28
+ <td>
29
+ <!-- first column -->
30
+
31
+ <span>
32
+ Use <select id='note-lib'></select>
33
+ </span>
34
+
35
+ <a id='output-update' href='#'>[ Update ]</a>
36
+ <a id='input-toggle' href='#'>[ Use White Color Theme ]</a>
37
+
38
+ <!-- nb: div will break/start new line -->
39
+ <div id='output-loading'></div>
40
+ </td>
41
+ <td style='vertical-align: top;'>
42
+ <!-- second column -->
43
+ <a id='output-toggle' href='#'>[ Show HTML ]</a>
44
+
45
+ </td>
46
+ </tr>
47
+ </table>
@@ -0,0 +1,12 @@
1
+
2
+ <link href="<%= url('/css/markdown/note.css') %>" rel='stylesheet'>
3
+ <link href="<%= url('/css/markdown/themes/basic.css') %>" rel='stylesheet'>
4
+
5
+ <script src="<%= url('/js/lib3rd/jquery-2.0.1.min.js') %>"></script>
6
+ <script src="<%= url('/js/lib3rd/showdown.min.js') %>"></script>
7
+ <script src="<%= url('/js/lib3rd/pagedown.js') %>"></script>
8
+
9
+ <script src="<%= url('/js/markdown.api.js') %>"></script>
10
+ <script src="<%= url('/js/markdown.lib.js') %>"></script>
11
+
12
+ <script src="<%= url('/js/markdown.note.js') %>"></script>
@@ -0,0 +1,26 @@
1
+ <script>
2
+
3
+ $(document).ready( function () {
4
+
5
+ /* NB: we need to use to_json (to escape newlines in string if present etc.)
6
+ */
7
+
8
+ markdown_note_new( {
9
+ welcome: {
10
+ markdown: <%= @welcome_markdown.to_json %>,
11
+ html: <%= @welcome_html.to_json %>
12
+ }
13
+ } );
14
+
15
+ });
16
+
17
+ /*
18
+ <% Markdown.libs.each_with_index do |lib,i| %>
19
+ <%= "[#{i}] - #{lib}" %>
20
+ <% end %>
21
+ */
22
+
23
+ /* todo: check if loading image w/ relative path works ??
24
+ */
25
+
26
+ </script>
@@ -0,0 +1,14 @@
1
+
2
+ <h3>Markdown Libs</h3>
3
+
4
+ <table>
5
+ <% Markdown.libs.each do |lib|
6
+ conv = Markdown.create_converter( lib )
7
+ %>
8
+ <tr>
9
+ <td><%= lib %></td>
10
+ <td><%= conv.version %></td>
11
+ <td><!-- defaults to be done --></td>
12
+ </tr>
13
+ <% end %>
14
+ </table>
@@ -0,0 +1,27 @@
1
+
2
+ <h3>Markdown Libs / Live Examples</h3>
3
+
4
+ <table class='api'>
5
+ <% Markdown.libs.each do |lib|
6
+ conv = Markdown.create_converter( lib )
7
+ %>
8
+ <tr>
9
+ <td><%= lib %></td>
10
+ <td> / <%= conv.version %></td>
11
+ <td> -
12
+ <code>GET
13
+ <a href='view-source:<%= url("/markdown?lib=#{lib}&text=Hello+World!") %>'>
14
+ /markdown?<span class='params'>lib=<em><%= lib %></em></span>&text=<em>Hello+World!</em>
15
+ </a>
16
+ </code>
17
+ </td>
18
+ <td>
19
+ <code>&bull; GET
20
+ <a href='<%= url("/dingus?lib=#{lib}&text=Hello+World!") %>'>
21
+ /dingus?<span class='params'>lib=<em><%= lib %></em></span>&text=<em>Hello+World!</em>
22
+ </a>
23
+ </code>
24
+ </td>
25
+ </tr>
26
+ <% end %>
27
+ </table>
@@ -0,0 +1,75 @@
1
+
2
+ <h3>Markdown Web Service / HTTP JSON(P) API</h1>
3
+
4
+ <h4>Render Markdown</h4>
5
+
6
+ <pre><code>GET /markdown
7
+ </code></pre>
8
+
9
+ <p>
10
+ Input:
11
+ </p>
12
+
13
+ <ul>
14
+ <li><b>text</b> - <em>Required</em> string - The Markdown text to render</li>
15
+ <li><b>lib</b> - <em>Optional</em> string - The Markdown library/engine to use
16
+ (e.g. <code>kramdown</code>, <code>redcarpet</code>, etc)</li>
17
+ </ul>
18
+
19
+ <p class='api'>
20
+ Example:
21
+ <code>GET
22
+ <a href='view-source:<%= url("/markdown?text=Hello+World!") %>'>
23
+ /markdown?<span class='params'>text=<em>Hello+World!</em></span>
24
+ </a>
25
+ </code>
26
+ </p>
27
+
28
+ <p>
29
+ Response:
30
+ </p>
31
+
32
+ <pre><code>Status: 200 OK
33
+ Content-Type: text/html
34
+
35
+ &lt;p&gt;Hello World!&lt;p&gt;
36
+ </code></pre>
37
+
38
+
39
+ <h4>Render Markdown (Babelmark2-Style)</h4>
40
+
41
+ <pre><code>GET /dingus
42
+ </code></pre>
43
+
44
+ <p>
45
+ Input:
46
+ </p>
47
+
48
+ <ul>
49
+ <li><b>text</b> - <em>Required</em> string - The Markdown text to render</li>
50
+ <li><b>lib</b> - <em>Optional</em> string - The Markdown library/engine to use
51
+ (e.g. <code>kramdown</code>, <code>redcarpet</code>, etc)</li>
52
+ </ul>
53
+
54
+
55
+ <p class='api'>Example:
56
+ <code>GET
57
+ <a href='<%= url("/dingus?text=Hello+World!") %>'>
58
+ /dingus?<span class='params'>text=<em>Hello+World!</em></span>
59
+ </a>
60
+ </code>
61
+ </p>
62
+
63
+ <p>
64
+ Response:
65
+ </p>
66
+
67
+ <pre><code>Status: 200 OK
68
+ Content-Type: application/json
69
+
70
+ {
71
+ 'name': 'kramdown',
72
+ 'html': '&lt;p&gt;Hello World!&lt;p&gt;',
73
+ 'version': '1.0.2'
74
+ }
75
+ </code></pre>
@@ -0,0 +1,6 @@
1
+ <div class='version'>
2
+ <a href="http://groups.google.com/group/webslideshow">Questions? Comments?</a> |
3
+ <a href="https://github.com/geraldb/markdown">markdown/<%= Markdown::VERSION %></a> -
4
+ <span>Ruby/<%= "#{RUBY_VERSION} (#{RUBY_RELEASE_DATE}/#{RUBY_PLATFORM})" %> on</span>
5
+ <span>Sinatra/<%= Sinatra::VERSION %> (<%= ENV['RACK_ENV'] %>)</span>
6
+ </div>
@@ -0,0 +1,3 @@
1
+
2
+ <%= erb :'_debug' %>
3
+
@@ -0,0 +1,8 @@
1
+
2
+ <%= erb :'_editor' %>
3
+
4
+ <!--
5
+ <hr>
6
+
7
+ <%= erb :'_debug' %>
8
+ -->
@@ -0,0 +1,18 @@
1
+
2
+
3
+ <%= erb :'_editor' %>
4
+
5
+
6
+ <%= erb :'_libs' %>
7
+
8
+
9
+ <%= erb :'_service' %>
10
+
11
+
12
+ <%= erb :'_about' %>
13
+
14
+ <!--
15
+ <hr>
16
+
17
+ <%= erb :'_debug' %>
18
+ -->
@@ -0,0 +1,17 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <meta charset='UTF-8'>
5
+ <title>markdown ruby gem - use your markdown library of choice in ruby</title>
6
+ <link href="<%= url('/style.css') %>" rel='stylesheet'>
7
+
8
+ <%= erb :'_editor_head' %>
9
+ </head>
10
+ <body>
11
+
12
+ <%= yield %>
13
+
14
+ <%= erb :'_version' %>
15
+
16
+ </body>
17
+ </html>
@@ -0,0 +1,10 @@
1
+
2
+ <%= erb :'_service' %>
3
+
4
+ <%= erb :'_libs_service' %>
5
+
6
+ <!--
7
+ <hr>
8
+
9
+ <%= erb :'_debug' %>
10
+ -->
metadata ADDED
@@ -0,0 +1,137 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: markdown-service
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.2.0
5
+ platform: ruby
6
+ authors:
7
+ - Gerald Bauer
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2014-12-06 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: markdown
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: '0'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: '0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: sinatra
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: rdoc
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: '4.0'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: '4.0'
55
+ - !ruby/object:Gem::Dependency
56
+ name: hoe
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - "~>"
60
+ - !ruby/object:Gem::Version
61
+ version: '3.13'
62
+ type: :development
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "~>"
67
+ - !ruby/object:Gem::Version
68
+ version: '3.13'
69
+ description: markdown-service gem - markdown HTTP JSON API service
70
+ email: webslideshow@googlegroups.com
71
+ executables: []
72
+ extensions: []
73
+ extra_rdoc_files:
74
+ - HISTORY.md
75
+ - Manifest.txt
76
+ - README.md
77
+ - lib/markdown/service/docs/welcome.md
78
+ files:
79
+ - HISTORY.md
80
+ - Manifest.txt
81
+ - README.md
82
+ - Rakefile
83
+ - lib/markdown/service.rb
84
+ - lib/markdown/service/docs/welcome.md
85
+ - lib/markdown/service/public/css/markdown/note.css
86
+ - lib/markdown/service/public/css/markdown/themes/basic.css
87
+ - lib/markdown/service/public/i/dots-white.gif
88
+ - lib/markdown/service/public/js/lib3rd/jquery-2.0.1.min.js
89
+ - lib/markdown/service/public/js/lib3rd/pagedown.js
90
+ - lib/markdown/service/public/js/lib3rd/showdown.min.js
91
+ - lib/markdown/service/public/js/markdown.api.js
92
+ - lib/markdown/service/public/js/markdown.lib.js
93
+ - lib/markdown/service/public/js/markdown.note.js
94
+ - lib/markdown/service/public/note.html
95
+ - lib/markdown/service/public/style.css
96
+ - lib/markdown/service/version.rb
97
+ - lib/markdown/service/views/_about.erb
98
+ - lib/markdown/service/views/_debug.erb
99
+ - lib/markdown/service/views/_editor.erb
100
+ - lib/markdown/service/views/_editor_head.erb
101
+ - lib/markdown/service/views/_editor_setup.erb
102
+ - lib/markdown/service/views/_libs.erb
103
+ - lib/markdown/service/views/_libs_service.erb
104
+ - lib/markdown/service/views/_service.erb
105
+ - lib/markdown/service/views/_version.erb
106
+ - lib/markdown/service/views/debug.erb
107
+ - lib/markdown/service/views/editor.erb
108
+ - lib/markdown/service/views/index.erb
109
+ - lib/markdown/service/views/layout.erb
110
+ - lib/markdown/service/views/service.erb
111
+ homepage: https://github.com/rubylibs/markdown-service
112
+ licenses:
113
+ - Public Domain
114
+ metadata: {}
115
+ post_install_message:
116
+ rdoc_options:
117
+ - "--main"
118
+ - README.md
119
+ require_paths:
120
+ - lib
121
+ required_ruby_version: !ruby/object:Gem::Requirement
122
+ requirements:
123
+ - - ">="
124
+ - !ruby/object:Gem::Version
125
+ version: 1.9.2
126
+ required_rubygems_version: !ruby/object:Gem::Requirement
127
+ requirements:
128
+ - - ">="
129
+ - !ruby/object:Gem::Version
130
+ version: '0'
131
+ requirements: []
132
+ rubyforge_project:
133
+ rubygems_version: 2.4.2
134
+ signing_key:
135
+ specification_version: 4
136
+ summary: markdown-service gem - markdown HTTP JSON API service
137
+ test_files: []