read-only-gollum 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (176) hide show
  1. data/Gemfile +4 -0
  2. data/HISTORY.md +102 -0
  3. data/Home.md +3 -0
  4. data/LICENSE +21 -0
  5. data/README.md +477 -0
  6. data/Rakefile +142 -0
  7. data/bin/read-only-gollum +126 -0
  8. data/docs/sanitization.md +32 -0
  9. data/lib/gollum.rb +41 -0
  10. data/lib/gollum/blob_entry.rb +78 -0
  11. data/lib/gollum/committer.rb +218 -0
  12. data/lib/gollum/file.rb +64 -0
  13. data/lib/gollum/frontend/app.rb +225 -0
  14. data/lib/gollum/frontend/public/css/dialog.css +141 -0
  15. data/lib/gollum/frontend/public/css/editor.css +537 -0
  16. data/lib/gollum/frontend/public/css/gollum.css +660 -0
  17. data/lib/gollum/frontend/public/css/ie7.css +69 -0
  18. data/lib/gollum/frontend/public/css/template.css +381 -0
  19. data/lib/gollum/frontend/public/images/icon-sprite.png +0 -0
  20. data/lib/gollum/frontend/public/javascript/editor/gollum.editor.js +1096 -0
  21. data/lib/gollum/frontend/public/javascript/editor/langs/asciidoc.js +167 -0
  22. data/lib/gollum/frontend/public/javascript/editor/langs/creole.js +104 -0
  23. data/lib/gollum/frontend/public/javascript/editor/langs/markdown.js +211 -0
  24. data/lib/gollum/frontend/public/javascript/editor/langs/org.js +173 -0
  25. data/lib/gollum/frontend/public/javascript/editor/langs/pod.js +111 -0
  26. data/lib/gollum/frontend/public/javascript/editor/langs/rdoc.js +74 -0
  27. data/lib/gollum/frontend/public/javascript/editor/langs/textile.js +175 -0
  28. data/lib/gollum/frontend/public/javascript/gollum.dialog.js +263 -0
  29. data/lib/gollum/frontend/public/javascript/gollum.js +161 -0
  30. data/lib/gollum/frontend/public/javascript/gollum.placeholder.js +54 -0
  31. data/lib/gollum/frontend/public/javascript/jquery.color.js +123 -0
  32. data/lib/gollum/frontend/public/javascript/jquery.js +7179 -0
  33. data/lib/gollum/frontend/templates/compare.mustache +38 -0
  34. data/lib/gollum/frontend/templates/create.mustache +17 -0
  35. data/lib/gollum/frontend/templates/edit.mustache +17 -0
  36. data/lib/gollum/frontend/templates/editor.mustache +116 -0
  37. data/lib/gollum/frontend/templates/error.mustache +8 -0
  38. data/lib/gollum/frontend/templates/history.mustache +58 -0
  39. data/lib/gollum/frontend/templates/layout.mustache +28 -0
  40. data/lib/gollum/frontend/templates/page.mustache +37 -0
  41. data/lib/gollum/frontend/templates/pages.mustache +35 -0
  42. data/lib/gollum/frontend/templates/search.mustache +36 -0
  43. data/lib/gollum/frontend/templates/searchbar.mustache +10 -0
  44. data/lib/gollum/frontend/views/compare.rb +94 -0
  45. data/lib/gollum/frontend/views/create.rb +48 -0
  46. data/lib/gollum/frontend/views/edit.rb +52 -0
  47. data/lib/gollum/frontend/views/editable.rb +13 -0
  48. data/lib/gollum/frontend/views/error.rb +7 -0
  49. data/lib/gollum/frontend/views/history.rb +44 -0
  50. data/lib/gollum/frontend/views/layout.rb +20 -0
  51. data/lib/gollum/frontend/views/page.rb +57 -0
  52. data/lib/gollum/frontend/views/pages.rb +19 -0
  53. data/lib/gollum/frontend/views/search.rb +20 -0
  54. data/lib/gollum/git_access.rb +248 -0
  55. data/lib/gollum/markup.rb +489 -0
  56. data/lib/gollum/page.rb +430 -0
  57. data/lib/gollum/pagination.rb +61 -0
  58. data/lib/gollum/sanitization.rb +174 -0
  59. data/lib/gollum/tex.rb +89 -0
  60. data/lib/gollum/web_sequence_diagram.rb +43 -0
  61. data/lib/gollum/wiki.rb +636 -0
  62. data/read-only-gollum.gemspec +224 -0
  63. data/templates/formatting.html +92 -0
  64. data/test/examples/empty.git/HEAD +1 -0
  65. data/test/examples/empty.git/config +5 -0
  66. data/test/examples/empty.git/description +1 -0
  67. data/test/examples/empty.git/hooks/applypatch-msg.sample +15 -0
  68. data/test/examples/empty.git/hooks/commit-msg.sample +24 -0
  69. data/test/examples/empty.git/hooks/post-commit.sample +8 -0
  70. data/test/examples/empty.git/hooks/post-receive.sample +15 -0
  71. data/test/examples/empty.git/hooks/post-update.sample +8 -0
  72. data/test/examples/empty.git/hooks/pre-applypatch.sample +14 -0
  73. data/test/examples/empty.git/hooks/pre-commit.sample +46 -0
  74. data/test/examples/empty.git/hooks/pre-rebase.sample +169 -0
  75. data/test/examples/empty.git/hooks/prepare-commit-msg.sample +36 -0
  76. data/test/examples/empty.git/hooks/update.sample +128 -0
  77. data/test/examples/empty.git/info/exclude +6 -0
  78. data/test/examples/empty.git/objects/info/.gitkeep +0 -0
  79. data/test/examples/empty.git/objects/pack/.gitkeep +0 -0
  80. data/test/examples/empty.git/refs/heads/.gitkeep +0 -0
  81. data/test/examples/lotr.git/COMMIT_EDITMSG +1 -0
  82. data/test/examples/lotr.git/HEAD +1 -0
  83. data/test/examples/lotr.git/ORIG_HEAD +1 -0
  84. data/test/examples/lotr.git/config +12 -0
  85. data/test/examples/lotr.git/description +1 -0
  86. data/test/examples/lotr.git/index +0 -0
  87. data/test/examples/lotr.git/info/exclude +6 -0
  88. data/test/examples/lotr.git/logs/HEAD +3 -0
  89. data/test/examples/lotr.git/logs/refs/heads/master +3 -0
  90. data/test/examples/lotr.git/objects/06/131480411710c92a82fe2d1e76932c70feb2e5 +0 -0
  91. data/test/examples/lotr.git/objects/0a/de1e2916346d4c1f2fb63b863fd3c16808fe44 +0 -0
  92. data/test/examples/lotr.git/objects/0e/d8cbe0a25235bd867e65193c7d837c66b328ef +3 -0
  93. data/test/examples/lotr.git/objects/12/629d666c5e3178f82f533f543d61b53dc78c0b +0 -0
  94. data/test/examples/lotr.git/objects/1d/b89ebba7e2c14d93b94ff98cfa3708a4f0d4e3 +2 -0
  95. data/test/examples/lotr.git/objects/24/49c2681badfd3c189e8ed658dacffe8ba48fe5 +0 -0
  96. data/test/examples/lotr.git/objects/25/4bdc1ba27d8b8a794538a8522d9a2b56ec2dd9 +0 -0
  97. data/test/examples/lotr.git/objects/2c/b9156ad383914561a8502fc70f5a1d887e48ad +4 -0
  98. data/test/examples/lotr.git/objects/5d/cac289a8603188d2c5caf481dcba2985126aaa +0 -0
  99. data/test/examples/lotr.git/objects/60/f12f4254f58801b9ee7db7bca5fa8aeefaa56b +0 -0
  100. data/test/examples/lotr.git/objects/71/4323c104239440a5c66ab12a67ed07a83c404f +0 -0
  101. data/test/examples/lotr.git/objects/84/0ec5b1ba1320e8ec443f28f99566f615d5af10 +0 -0
  102. data/test/examples/lotr.git/objects/93/6b83ee0dd8837adb82511e40d5e4ebe59bb675 +0 -0
  103. data/test/examples/lotr.git/objects/94/523d7ae48aeba575099dd12926420d8fd0425d +2 -0
  104. data/test/examples/lotr.git/objects/96/97dc65e095658bbd1b8e8678e08881e86d32f1 +0 -0
  105. data/test/examples/lotr.git/objects/a3/1ca2a7c352c92531a8b99815d15843b259e814 +0 -0
  106. data/test/examples/lotr.git/objects/a6/59b3763b822dd97544621fd0beef162ea37b14 +4 -0
  107. data/test/examples/lotr.git/objects/a8/ad3c09dd842a3517085bfadd37718856dee813 +0 -0
  108. data/test/examples/lotr.git/objects/aa/b61fe89d56f8614c0a8151da34f939dcedfa68 +0 -0
  109. data/test/examples/lotr.git/objects/bc/4b5fc0ce2c2ba3acef6647e4f67256ee45ab60 +0 -0
  110. data/test/examples/lotr.git/objects/c3/b43e9f08966b088e7a0192e436b7a884542e05 +0 -0
  111. data/test/examples/lotr.git/objects/dc/596d6b2dd89ab05c66f4abd7d5eb706bc17f19 +0 -0
  112. data/test/examples/lotr.git/objects/ec/da3205bee14520aab5a7bb307392064b938e83 +0 -0
  113. data/test/examples/lotr.git/objects/f4/84ebb1f40f8eb20d1bcd8d1d71934d2b8ae961 +0 -0
  114. data/test/examples/lotr.git/objects/fa/e7ef5344202bba4129abdc13060d9297d99465 +3 -0
  115. data/test/examples/lotr.git/objects/info/packs +2 -0
  116. data/test/examples/lotr.git/objects/pack/pack-dcbeaf3f6ff6c5eb08ea2b0a2d83626e8763546b.idx +0 -0
  117. data/test/examples/lotr.git/objects/pack/pack-dcbeaf3f6ff6c5eb08ea2b0a2d83626e8763546b.pack +0 -0
  118. data/test/examples/lotr.git/packed-refs +2 -0
  119. data/test/examples/lotr.git/refs/heads/master +1 -0
  120. data/test/examples/lotr.git/refs/remotes/origin/HEAD +1 -0
  121. data/test/examples/page_file_dir.git/COMMIT_EDITMSG +1 -0
  122. data/test/examples/page_file_dir.git/HEAD +1 -0
  123. data/test/examples/page_file_dir.git/config +6 -0
  124. data/test/examples/page_file_dir.git/description +1 -0
  125. data/test/examples/page_file_dir.git/index +0 -0
  126. data/test/examples/page_file_dir.git/info/exclude +6 -0
  127. data/test/examples/page_file_dir.git/logs/HEAD +1 -0
  128. data/test/examples/page_file_dir.git/logs/refs/heads/master +1 -0
  129. data/test/examples/page_file_dir.git/objects/0c/7d27db1f575263efdcab3dc650f4502a2dbcbf +0 -0
  130. data/test/examples/page_file_dir.git/objects/22/b404803c966dd92865614d86ff22ca12e50c1e +0 -0
  131. data/test/examples/page_file_dir.git/objects/25/7cc5642cb1a054f08cc83f2d943e56fd3ebe99 +0 -0
  132. data/test/examples/page_file_dir.git/objects/57/16ca5987cbf97d6bb54920bea6adde242d87e6 +0 -0
  133. data/test/examples/page_file_dir.git/objects/5b/43e14e0a15fb6f08feab1773d1c0991e9f71e2 +0 -0
  134. data/test/examples/page_file_dir.git/refs/heads/master +1 -0
  135. data/test/examples/revert.git/COMMIT_EDITMSG +1 -0
  136. data/test/examples/revert.git/HEAD +1 -0
  137. data/test/examples/revert.git/config +12 -0
  138. data/test/examples/revert.git/description +1 -0
  139. data/test/examples/revert.git/index +0 -0
  140. data/test/examples/revert.git/info/exclude +6 -0
  141. data/test/examples/revert.git/logs/HEAD +2 -0
  142. data/test/examples/revert.git/logs/refs/heads/master +2 -0
  143. data/test/examples/revert.git/objects/20/2ced67cea93c7b6bd2928aa1daef8d1d55a20d +0 -0
  144. data/test/examples/revert.git/objects/41/76394bfa11222363c66ce7e84b5f154095b6d9 +0 -0
  145. data/test/examples/revert.git/objects/6a/69f92020f5df77af6e8813ff1232493383b708 +0 -0
  146. data/test/examples/revert.git/objects/b4/785957bc986dc39c629de9fac9df46972c00fc +0 -0
  147. data/test/examples/revert.git/objects/f4/03b791119f8232b7cb0ba455c624ac6435f433 +0 -0
  148. data/test/examples/revert.git/objects/info/packs +2 -0
  149. data/test/examples/revert.git/objects/pack/pack-a561f8437234f74d0bacb9e0eebe52d207f5770d.idx +0 -0
  150. data/test/examples/revert.git/objects/pack/pack-a561f8437234f74d0bacb9e0eebe52d207f5770d.pack +0 -0
  151. data/test/examples/revert.git/packed-refs +2 -0
  152. data/test/examples/revert.git/refs/heads/master +1 -0
  153. data/test/examples/revert.git/refs/remotes/origin/HEAD +1 -0
  154. data/test/examples/yubiwa.git/HEAD +1 -0
  155. data/test/examples/yubiwa.git/config +5 -0
  156. data/test/examples/yubiwa.git/description +1 -0
  157. data/test/examples/yubiwa.git/info/exclude +6 -0
  158. data/test/examples/yubiwa.git/objects/10/fa2ddc4e3b4009d8a453aace10bd6148c1ad00 +0 -0
  159. data/test/examples/yubiwa.git/objects/52/4b82874327ea7cbf730389964ba7cb3de966de +0 -0
  160. data/test/examples/yubiwa.git/objects/58/3fc201cb457fb3f1480f3e1e5999b119633835 +0 -0
  161. data/test/examples/yubiwa.git/objects/87/bc1dd46ab3d3874d4e898d45dd512cc20a7cc8 +1 -0
  162. data/test/examples/yubiwa.git/objects/89/64ed1b4e21aa90e831763bbce9034bfda81b70 +0 -0
  163. data/test/examples/yubiwa.git/objects/9f/f6dd0660da5fba2d3374adb2b84fa653bb538b +0 -0
  164. data/test/examples/yubiwa.git/objects/ac/e97abf2b177815a1972d7db22f229f58c83309 +0 -0
  165. data/test/examples/yubiwa.git/objects/b1/f443863a4816628807fbf86141ebef055dda34 +0 -0
  166. data/test/examples/yubiwa.git/refs/heads/master +1 -0
  167. data/test/helper.rb +66 -0
  168. data/test/test_app.rb +169 -0
  169. data/test/test_committer.rb +64 -0
  170. data/test/test_file.rb +27 -0
  171. data/test/test_git_access.rb +52 -0
  172. data/test/test_markup.rb +628 -0
  173. data/test/test_page.rb +166 -0
  174. data/test/test_page_revert.rb +45 -0
  175. data/test/test_wiki.rb +462 -0
  176. metadata +470 -0
@@ -0,0 +1,64 @@
1
+ module Gollum
2
+ class File
3
+ Wiki.file_class = self
4
+
5
+ # Public: Initialize a file.
6
+ #
7
+ # wiki - The Gollum::Wiki in question.
8
+ #
9
+ # Returns a newly initialized Gollum::File.
10
+ def initialize(wiki)
11
+ @wiki = wiki
12
+ @blob = nil
13
+ @path = nil
14
+ end
15
+
16
+ # Public: The on-disk filename of the file.
17
+ #
18
+ # Returns the String name.
19
+ def name
20
+ @blob && @blob.name
21
+ end
22
+
23
+ # Public: The raw contents of the page.
24
+ #
25
+ # Returns the String data.
26
+ def raw_data
27
+ @blob && @blob.data
28
+ end
29
+
30
+ # Public: The Grit::Commit version of the file.
31
+ attr_reader :version
32
+
33
+ # Public: The String path of the file.
34
+ attr_reader :path
35
+
36
+ # Public: The String mime type of the file.
37
+ def mime_type
38
+ @blob.mime_type
39
+ end
40
+
41
+ #########################################################################
42
+ #
43
+ # Internal Methods
44
+ #
45
+ #########################################################################
46
+
47
+ # Find a file in the given Gollum repo.
48
+ #
49
+ # name - The full String path.
50
+ # version - The String version ID to find.
51
+ #
52
+ # Returns a Gollum::File or nil if the file could not be found.
53
+ def find(name, version)
54
+ checked = name.downcase
55
+ map = @wiki.tree_map_for(version)
56
+ if entry = map.detect { |entry| entry.path.downcase == checked }
57
+ @path = name
58
+ @blob = entry.blob(@wiki.repo)
59
+ @version = version.is_a?(Grit::Commit) ? version : @wiki.commit_for(version)
60
+ self
61
+ end
62
+ end
63
+ end
64
+ end
@@ -0,0 +1,225 @@
1
+ require 'cgi'
2
+ require 'sinatra'
3
+ require 'gollum'
4
+ require 'mustache/sinatra'
5
+
6
+ require 'gollum/frontend/views/layout'
7
+ require 'gollum/frontend/views/editable'
8
+
9
+ module Precious
10
+ class App < Sinatra::Base
11
+ register Mustache::Sinatra
12
+
13
+ dir = File.dirname(File.expand_path(__FILE__))
14
+
15
+ # We want to serve public assets for now
16
+ set :public_folder, "#{dir}/public"
17
+ set :static, true
18
+ set :default_markup, :markdown
19
+
20
+ set :mustache, {
21
+ # Tell mustache where the Views constant lives
22
+ :namespace => Precious,
23
+
24
+ # Mustache templates live here
25
+ :templates => "#{dir}/templates",
26
+
27
+ # Tell mustache where the views are
28
+ :views => "#{dir}/views"
29
+ }
30
+
31
+ # Sinatra error handling
32
+ configure :development, :staging do
33
+ enable :show_exceptions, :dump_errors
34
+ disable :raise_errors, :clean_trace
35
+ end
36
+
37
+ configure :test do
38
+ enable :logging, :raise_errors, :dump_errors
39
+ end
40
+
41
+ get '/' do
42
+ show_page_or_file('Home')
43
+ end
44
+
45
+ get '/edit/*' do
46
+ halt 404
47
+ # @name = params[:splat].first
48
+ # wiki = Gollum::Wiki.new(settings.gollum_path, settings.wiki_options)
49
+ # if page = wiki.page(@name)
50
+ # @page = page
51
+ # @content = page.raw_data
52
+ # mustache :edit
53
+ # else
54
+ # mustache :create
55
+ # end
56
+ end
57
+
58
+ post '/edit/*' do
59
+ halt 404
60
+ # wiki = Gollum::Wiki.new(settings.gollum_path, settings.wiki_options)
61
+ # page = wiki.page(params[:splat].first)
62
+ # name = params[:rename] || page.name
63
+ # committer = Gollum::Committer.new(wiki, commit_message)
64
+ # commit = {:committer => committer}
65
+
66
+ # update_wiki_page(wiki, page, params[:content], commit, name,
67
+ # params[:format])
68
+ # update_wiki_page(wiki, page.footer, params[:footer], commit) if params[:footer]
69
+ # update_wiki_page(wiki, page.sidebar, params[:sidebar], commit) if params[:sidebar]
70
+ # committer.commit
71
+
72
+ # redirect "/#{CGI.escape(Gollum::Page.cname(name))}"
73
+ end
74
+
75
+ post '/create' do
76
+ halt 404
77
+ # name = params[:page]
78
+ # wiki = Gollum::Wiki.new(settings.gollum_path, settings.wiki_options)
79
+
80
+ # format = params[:format].intern
81
+
82
+ # begin
83
+ # wiki.write_page(name, format, params[:content], commit_message)
84
+ # redirect "/#{CGI.escape(Gollum::Page.cname(name))}"
85
+ # rescue Gollum::DuplicatePageError => e
86
+ # @message = "Duplicate page: #{e.message}"
87
+ # mustache :error
88
+ # end
89
+ end
90
+
91
+ post '/revert/:page/*' do
92
+ halt 404
93
+ # wiki = Gollum::Wiki.new(settings.gollum_path, settings.wiki_options)
94
+ # @name = params[:page]
95
+ # @page = wiki.page(@name)
96
+ # shas = params[:splat].first.split("/")
97
+ # sha1 = shas.shift
98
+ # sha2 = shas.shift
99
+
100
+ # if wiki.revert_page(@page, sha1, sha2, commit_message)
101
+ # redirect "/#{CGI.escape(@name)}"
102
+ # else
103
+ # sha2, sha1 = sha1, "#{sha1}^" if !sha2
104
+ # @versions = [sha1, sha2]
105
+ # diffs = wiki.repo.diff(@versions.first, @versions.last, @page.path)
106
+ # @diff = diffs.first
107
+ # @message = "The patch does not apply."
108
+ # mustache :compare
109
+ # end
110
+ end
111
+
112
+ post '/preview' do
113
+ wiki = Gollum::Wiki.new(settings.gollum_path, settings.wiki_options)
114
+ @name = "Preview"
115
+ @page = wiki.preview_page(@name, params[:content], params[:format])
116
+ @content = @page.formatted_data
117
+ @editable = false
118
+ mustache :page
119
+ end
120
+
121
+ get '/history/:name' do
122
+ @name = params[:name]
123
+ wiki = Gollum::Wiki.new(settings.gollum_path, settings.wiki_options)
124
+ @page = wiki.page(@name)
125
+ @page_num = [params[:page].to_i, 1].max
126
+ @versions = @page.versions :page => @page_num
127
+ mustache :history
128
+ end
129
+
130
+ post '/compare/:name' do
131
+ @versions = params[:versions] || []
132
+ if @versions.size < 2
133
+ redirect "/history/#{CGI.escape(params[:name])}"
134
+ else
135
+ redirect "/compare/%s/%s...%s" % [
136
+ CGI.escape(params[:name]),
137
+ @versions.last,
138
+ @versions.first]
139
+ end
140
+ end
141
+
142
+ get '/compare/:name/:version_list' do
143
+ @name = params[:name]
144
+ @versions = params[:version_list].split(/\.{2,3}/)
145
+ wiki = Gollum::Wiki.new(settings.gollum_path, settings.wiki_options)
146
+ @page = wiki.page(@name)
147
+ diffs = wiki.repo.diff(@versions.first, @versions.last, @page.path)
148
+ @diff = diffs.first
149
+ mustache :compare
150
+ end
151
+
152
+ get '/_tex.png' do
153
+ content_type 'image/png'
154
+ formula = Base64.decode64(params[:data])
155
+ Gollum::Tex.render_formula(formula)
156
+ end
157
+
158
+ get %r{^/(javascript|css|images)} do
159
+ halt 404
160
+ end
161
+
162
+ get %r{/(.+?)/([0-9a-f]{40})} do
163
+ name = params[:captures][0]
164
+ wiki = Gollum::Wiki.new(settings.gollum_path, settings.wiki_options)
165
+ if page = wiki.page(name, params[:captures][1])
166
+ @page = page
167
+ @name = name
168
+ @content = page.formatted_data
169
+ @editable = false
170
+ mustache :page
171
+ else
172
+ halt 404
173
+ end
174
+ end
175
+
176
+ get '/search' do
177
+ @query = params[:q]
178
+ wiki = Gollum::Wiki.new(settings.gollum_path, settings.wiki_options)
179
+ @results = wiki.search @query
180
+ @name = @query
181
+ mustache :search
182
+ end
183
+
184
+ get '/pages' do
185
+ wiki = Gollum::Wiki.new(settings.gollum_path, settings.wiki_options)
186
+ @results = wiki.pages
187
+ @ref = wiki.ref
188
+ mustache :pages
189
+ end
190
+
191
+ get '/*' do
192
+ show_page_or_file(params[:splat].first)
193
+ end
194
+
195
+ def show_page_or_file(name)
196
+ wiki = Gollum::Wiki.new(settings.gollum_path, settings.wiki_options)
197
+ if page = wiki.page(name)
198
+ @page = page
199
+ @name = name
200
+ @content = page.formatted_data
201
+ @editable = false
202
+ mustache :page
203
+ elsif file = wiki.file(name)
204
+ content_type file.mime_type
205
+ file.raw_data
206
+ else
207
+ @name = name
208
+ mustache :create
209
+ end
210
+ end
211
+
212
+ def update_wiki_page(wiki, page, content, commit_message, name = nil, format = nil)
213
+ return if !page ||
214
+ ((!content || page.raw_data == content) && page.format == format)
215
+ name ||= page.name
216
+ format = (format || page.format).to_sym
217
+ content ||= page.raw_data
218
+ wiki.update_page(page, name, format, content.to_s, commit_message)
219
+ end
220
+
221
+ def commit_message
222
+ { :message => params[:message] }
223
+ end
224
+ end
225
+ end
@@ -0,0 +1,141 @@
1
+ /* @control dialog */
2
+
3
+ #gollum-dialog-dialog {
4
+ display: block;
5
+ overflow: visible;
6
+ position: absolute;
7
+ top: 50%;
8
+ left: 50%;
9
+ }
10
+
11
+ #gollum-dialog-dialog.active {
12
+ display: block;
13
+ }
14
+
15
+ #gollum-dialog-dialog-inner {
16
+ margin: 0 0 0 -225px;
17
+ position: relative;
18
+ width: 450px;
19
+
20
+ border: 7px solid #999;
21
+ border: 7px solid rgba(0, 0, 0, 0.3);
22
+ border-radius: 5px;
23
+ -moz-border-radius: 5px;
24
+ -webkit-border-radius: 5px;
25
+ }
26
+
27
+ #gollum-dialog-dialog-bg {
28
+ background-color: #fff;
29
+ overflow: hidden;
30
+ padding: 1em;
31
+
32
+ background: -webkit-gradient(linear, left top, left bottom, from(#f7f7f7), to(#ffffff));
33
+ background: -moz-linear-gradient(top, #f7f7f7, #ffffff);
34
+ }
35
+
36
+ #gollum-dialog-dialog-inner h4 {
37
+ border-bottom: 1px solid #ddd;
38
+ color: #000;
39
+ font-size: 1.8em;
40
+ line-height: normal;
41
+ font-weight: bold;
42
+ margin: 0 0 0.75em 0;
43
+ padding: 0 0 0.3em 0;
44
+ }
45
+
46
+ #gollum-dialog-dialog-body {
47
+ font-size: 1.2em;
48
+ line-height: 1.6em;
49
+ }
50
+
51
+ #gollum-dialog-dialog-body fieldset {
52
+ display: block;
53
+ border: 0;
54
+ margin: 0;
55
+ overflow: hidden;
56
+ padding: 0;
57
+ }
58
+
59
+ #gollum-dialog-dialog-body fieldset .field {
60
+ margin: 0 0 1.5em 0;
61
+ padding: 0;
62
+ }
63
+
64
+ #gollum-dialog-dialog-body fieldset .field label {
65
+ color: #000;
66
+ display: block;
67
+ font-size: 1.2em;
68
+ font-weight: bold;
69
+ line-height: 1.6em;
70
+ margin: 0;
71
+ padding: 0;
72
+ min-width: 80px;
73
+ }
74
+
75
+ #gollum-dialog-dialog-body fieldset .field input[type="text"] {
76
+ border: 1px solid #ddd;
77
+ display: block;
78
+ font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
79
+ font-size: 1.2em;
80
+ line-height: 1.6em;
81
+ margin: 0.3em 0 0 0;
82
+ padding: 0.3em 0.5em;
83
+ width: 96.5%;
84
+ }
85
+
86
+ #gollum-dialog-dialog-body fieldset .field input.code {
87
+ font-family: 'Monaco', 'Courier New', Courier, monospace;
88
+ }
89
+
90
+ #gollum-dialog-dialog-body fieldset .field:last-child {
91
+ margin: 0 0 1em 0;
92
+ }
93
+
94
+ #gollum-dialog-dialog-buttons {
95
+ border-top: 1px solid #ddd;
96
+ overflow: hidden;
97
+ margin: 1.5em 0 0 0;
98
+ padding: 1em 0 0 0;
99
+ }
100
+
101
+ #gollum-dialog-dialog a.minibutton {
102
+ float: right;
103
+ margin-right: 0.5em;
104
+ width: auto;
105
+ }
106
+
107
+ #gollum-dialog-dialog a.minibutton,
108
+ #gollum-dialog-dialog a.minibutton:visited {
109
+ background-color: #f7f7f7;
110
+ border: 1px solid #d4d4d4;
111
+ color: #333;
112
+ cursor: pointer;
113
+ display: block;
114
+ font-size: 1.2em;
115
+ font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
116
+ font-weight: bold;
117
+ margin: 0 0 0 0.8em;
118
+ padding: 0.4em 1em;
119
+
120
+ text-shadow: 0 1px 0 #fff;
121
+
122
+ filter:progid:DXImageTransform.Microsoft.gradient(GradientType=0, startColorstr='#f4f4f4', endColorstr='#ececec');
123
+ background: -webkit-gradient(linear, left top, left bottom, from(#f4f4f4), to(#ececec));
124
+ background: -moz-linear-gradient(top, #f4f4f4, #ececec);
125
+
126
+ border-radius: 3px;
127
+ -moz-border-radius: 3px;
128
+ -webkit-border-radius: 3px;
129
+ }
130
+
131
+ #gollum-dialog-dialog a.minibutton:hover {
132
+ background: #3072b3;
133
+ border-color: #518cc6 #518cc6 #2a65a0;
134
+ color: #fff;
135
+ text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.3);
136
+ text-decoration: none;
137
+
138
+ filter:progid:DXImageTransform.Microsoft.gradient(GradientType=0, startColorstr='#599bdc', endColorstr='#3072b3');
139
+ background: -webkit-gradient(linear, left top, left bottom, from(#599bdc), to(#3072b3));
140
+ background: -moz-linear-gradient(top, #599bdc, #3072b3);
141
+ }
@@ -0,0 +1,537 @@
1
+ /*
2
+ editor.css
3
+ Wiki editor formatting
4
+ */
5
+
6
+ a {
7
+ -moz-outline: none !important;
8
+ }
9
+
10
+ .jaws {
11
+ /* JAWS should see it, but you can't */
12
+ display: block;
13
+ height: 1px;
14
+ left: -5000px;
15
+ overflow: hidden;
16
+ position: absolute;
17
+ top: -5000px;
18
+ width: 1px;
19
+ }
20
+
21
+ #gollum-editor {
22
+ border: 1px solid #e4e4e4;
23
+ background: #f9f9f9;
24
+ margin: 1em 0 5em;
25
+ overflow: hidden;
26
+ padding: 1em 1em 0.4em;
27
+
28
+ border-radius: 1em;
29
+ -moz-border-radius: 1em;
30
+ -webkit-border-radius: 1em;
31
+ }
32
+
33
+ .ie #gollum-editor {
34
+ padding-bottom: 1em;
35
+ }
36
+
37
+ #gollum-editor form fieldset {
38
+ border: 0;
39
+ margin: 0;
40
+ padding: 0;
41
+ width: 100%;
42
+ }
43
+
44
+ #gollum-editor .singleline {
45
+ display: block;
46
+ margin: 0 0 0.7em 0;
47
+ overflow: hidden;
48
+ }
49
+
50
+ #gollum-editor .singleline input {
51
+ background: #fff;
52
+ border: 1px solid #ddd;
53
+ color: #000;
54
+ font-size: 1.3em;
55
+ font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
56
+ line-height: 1.8em;
57
+ margin: 1em 0 0.4em;
58
+ padding: 0.5em;
59
+ width: 98%;
60
+ }
61
+
62
+ #gollum-editor .singleline input.ph {
63
+ color: #999;
64
+ }
65
+
66
+ #gollum-editor-title-field input#gollum-editor-page-title {
67
+ font-weight: bold;
68
+ margin-top: 0;
69
+ }
70
+
71
+ #gollum-editor-title-field.active {
72
+ border-bottom: 1px solid #ddd;
73
+ display: block;
74
+ margin: 0 0 0.3em 0;
75
+ padding: 0 0 0.5em 0;
76
+ }
77
+
78
+ #gollum-editor-title-field input#gollum-editor-page-title.ph {
79
+ color: #000;
80
+ }
81
+
82
+ /* @control editor-view-tab */
83
+ #gollum-editor #gollum-editor-type-switcher {
84
+ display: none;
85
+ }
86
+
87
+ /* @control function-bar */
88
+ #gollum-editor #gollum-editor-function-bar {
89
+ border-bottom: 1px solid #ddd;
90
+ overflow: hidden;
91
+ padding: 0;
92
+ }
93
+
94
+
95
+ #gollum-editor-title-field + #gollum-editor-function-bar {
96
+ margin-top: 0.6em;
97
+ }
98
+
99
+ #gollum-editor #gollum-editor-function-bar #gollum-editor-function-buttons {
100
+ display: none;
101
+ }
102
+
103
+ #gollum-editor #gollum-editor-function-bar.active #gollum-editor-function-buttons {
104
+ display: block;
105
+ float: left;
106
+ overflow: hidden;
107
+ padding: 0 0 1.1em 0;
108
+ }
109
+
110
+ #gollum-editor #gollum-editor-function-bar a.function-button {
111
+ background: #f7f7f7;
112
+ border: 1px solid #ddd;
113
+ color: #333;
114
+ display: block;
115
+ float: left;
116
+ height: 25px;
117
+ overflow: hidden;
118
+ margin: 0.2em 0.5em 0 0;
119
+ /* text-indent: -5000px; */
120
+ text-shadow: 0 1px 0 #fff;
121
+ width: 25px;
122
+
123
+ border-radius: 0.3em;
124
+ -moz-border-radius: 0.3em;
125
+ -webkit-border-radius: 0.3em;
126
+
127
+ filter:progid:DXImageTransform.Microsoft.gradient(GradientType=0, startColorstr='#f4f4f4', endColorstr='#ececec');
128
+ background: -webkit-gradient(linear, left top, left bottom, from(#f4f4f4), to(#ececec));
129
+ background: -moz-linear-gradient(top, #f4f4f4, #ececec);
130
+ }
131
+
132
+ #gollum-editor #gollum-editor-function-bar a.function-button:hover {
133
+ color: #fff;
134
+ text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.3);
135
+ text-decoration: none;
136
+
137
+ filter:progid:DXImageTransform.Microsoft.gradient(GradientType=0, startColorstr='#599bdc', endColorstr='#3072b3');
138
+ background: -webkit-gradient(linear, left top, left bottom, from(#599bdc), to(#3072b3));
139
+ background: -moz-linear-gradient(top, #599bdc, #3072b3);
140
+ }
141
+
142
+ #gollum-editor #gollum-editor-function-bar a span {
143
+ background-image: url(../images/icon-sprite.png);
144
+ background-repeat: no-repeat;
145
+ display: block;
146
+ height: 25px;
147
+ overflow: hidden;
148
+ text-indent: -5000px;
149
+ width: 25px;
150
+ }
151
+
152
+ a#function-bold span { background-position: 0 0; }
153
+ a#function-italic span { background-position: -27px 0; }
154
+ a#function-underline span { background-position: -54px 0; }
155
+ a#function-code span { background-position: -82px 0; }
156
+ a#function-ul span { background-position: -109px 0; }
157
+ a#function-ol span { background-position: -136px 0; }
158
+ a#function-blockquote span { background-position: -163px 0; }
159
+ a#function-hr span { background-position: -190px 0; }
160
+ a#function-h1 span { background-position: -217px 0; }
161
+ a#function-h2 span { background-position: -244px 0; }
162
+ a#function-h3 span { background-position: -271px 0; }
163
+ a#function-link span { background-position: -298px 0; }
164
+ a#function-image span { background-position: -324px 0; }
165
+ a#function-help span { background-position: -405px 0; }
166
+
167
+ a#function-bold:hover span { background-position: 0 -28px; }
168
+ a#function-italic:hover span { background-position: -27px -28px; }
169
+ a#function-underline:hover span { background-position: -54px -28px; }
170
+ a#function-code:hover span { background-position: -82px -28px; }
171
+ a#function-ul:hover span { background-position: -109px -28px; }
172
+ a#function-ol:hover span { background-position: -136px -28px; }
173
+ a#function-blockquote:hover span { background-position: -163px -28px; }
174
+ a#function-hr:hover span { background-position: -190px -28px; }
175
+ a#function-h1:hover span { background-position: -217px -28px; }
176
+ a#function-h2:hover span { background-position: -244px -28px; }
177
+ a#function-h3:hover span { background-position: -271px -28px; }
178
+ a#function-link:hover span { background-position: -298px -28px; }
179
+ a#function-image:hover span { background-position: -324px -28px; }
180
+ a#function-help:hover span { background-position: -405px -28px; }
181
+
182
+
183
+ #gollum-editor #gollum-editor-function-bar a.disabled {
184
+ display: none;
185
+ }
186
+
187
+ #gollum-editor #gollum-editor-function-bar span.function-divider {
188
+ display: block;
189
+ float: left;
190
+ width: 0.5em;
191
+ }
192
+
193
+ #gollum-editor #gollum-editor-function-bar #gollum-editor-format-selector {
194
+ overflow: hidden;
195
+ padding: 0 0 1.1em 0;
196
+ }
197
+
198
+ #gollum-editor #gollum-editor-function-bar
199
+ #gollum-editor-format-selector select {
200
+ background-color: #f9f9f9;
201
+ border: 1px solid transparent;
202
+
203
+ float: right;
204
+ font-size: 1.1em;
205
+ font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
206
+ font-weight: bold;
207
+ line-height: 1.6em;
208
+ padding: 0.5em 0.7em;
209
+ margin-bottom: 0;
210
+
211
+
212
+ border-radius: 0.5em;
213
+ -moz-border-radius: 0.5em;
214
+ -webkit-border-radius: 0.5em;
215
+ -moz-outline: none;
216
+ }
217
+
218
+ #gollum-editor #gollum-editor-function-bar
219
+ #gollum-editor-format-selector select:hover {
220
+ background-color: #fff;
221
+ border: 1px solid #ddd;
222
+ -moz-outline: none;
223
+ }
224
+
225
+ #gollum-editor #gollum-editor-function-bar
226
+ #gollum-editor-format-selector label {
227
+ color: #999;
228
+ float: right;
229
+ font-size: 1.1em;
230
+ font-weight: bold;
231
+ line-height: 1.6em;
232
+ padding: 0.6em 0.5em 0 0;
233
+ }
234
+
235
+ #gollum-editor #gollum-editor-function-bar
236
+ #gollum-editor-format-selector label:after {
237
+ content: ':';
238
+ }
239
+
240
+
241
+ /* @section form-fields */
242
+
243
+ #gollum-editor textarea#gollum-editor-body {
244
+ background: #fff;
245
+ border: 1px solid #ddd;
246
+ font-size: 1.3em;
247
+ font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
248
+ line-height: 1.8em;
249
+ margin: 1em 0 0.4em;
250
+ padding: 0.5em; /* I don't really like mixing pct & em here… */
251
+ width: 98%;
252
+ height: 20em;
253
+ }
254
+
255
+ #gollum-editor input#gollum-editor-submit {
256
+ background-color: #f7f7f7;
257
+ border: 1px solid #d4d4d4;
258
+ color: #333;
259
+ cursor: pointer;
260
+ display: block;
261
+ float: left;
262
+ font-size: 1.2em;
263
+ font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
264
+ font-weight: bold;
265
+ margin: 0;
266
+ padding: 0.4em 1em;
267
+
268
+ text-shadow: 0 1px 0 #fff;
269
+
270
+ filter:progid:DXImageTransform.Microsoft.gradient(GradientType=0, startColorstr='#f4f4f4', endColorstr='#ececec');
271
+ background: -webkit-gradient(linear, left top, left bottom, from(#f4f4f4), to(#ececec));
272
+ background: -moz-linear-gradient(top, #f4f4f4, #ececec);
273
+
274
+ border-radius: 3px;
275
+ -moz-border-radius: 3px;
276
+ -webkit-border-radius: 3px;
277
+ }
278
+
279
+ .webkit #gollum-editor input#gollum-editor-submit {
280
+ padding: 0.5em 1em 0.45em;
281
+ }
282
+
283
+ .ie #gollum-editor input#gollum-editor-submit {
284
+ padding: 0.4em 1em 0.5em;
285
+ }
286
+
287
+ #gollum-editor input#gollum-editor-submit:hover {
288
+ background: #3072b3;
289
+ border-color: #518cc6 #518cc6 #2a65a0;
290
+ color: #fff;
291
+ text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.3);
292
+ text-decoration: none;
293
+
294
+ filter:progid:DXImageTransform.Microsoft.gradient(GradientType=0, startColorstr='#599bdc', endColorstr='#3072b3');
295
+ background: -webkit-gradient(linear, left top, left bottom, from(#599bdc), to(#3072b3));
296
+ background: -moz-linear-gradient(top, #599bdc, #3072b3);
297
+ }
298
+
299
+ #gollum-editor .collapsed,
300
+ #gollum-editor .expanded {
301
+ border-bottom: 1px solid #ddd;
302
+ display: block;
303
+ overflow: hidden;
304
+ padding: 1em 0 0.5em;
305
+ }
306
+
307
+ #gollum-editor #gollum-editor-body + .collapsed,
308
+ #gollum-editor #gollum-editor-body + .expanded {
309
+ border-top: 1px solid #ddd;
310
+ margin-top: 0.7em;
311
+ }
312
+
313
+ #gollum-editor .collapsed a.button,
314
+ #gollum-editor .expanded a.button {
315
+ background: #f7f7f7;
316
+ border: 1px solid #ddd;
317
+ color: #333;
318
+ display: block;
319
+ float: left;
320
+ height: 25px;
321
+ overflow: hidden;
322
+ margin: 0.2em 0.5em 0.75em 0;
323
+ text-shadow: 0 1px 0 #fff;
324
+ width: 25px;
325
+
326
+ border-radius: 0.3em;
327
+ -moz-border-radius: 0.3em;
328
+ -webkit-border-radius: 0.3em;
329
+
330
+ filter:progid:DXImageTransform.Microsoft.gradient(GradientType=0, startColorstr='#f4f4f4', endColorstr='#ececec');
331
+ background: -webkit-gradient(linear, left top, left bottom, from(#f4f4f4), to(#ececec));
332
+ background: -moz-linear-gradient(top, #f4f4f4, #ececec);
333
+ }
334
+
335
+ #gollum-editor .collapsed h4,
336
+ #gollum-editor .expanded h4 {
337
+ font-size: 1.6em;
338
+ float: left;
339
+ margin: 0;
340
+ padding: 0.4em 0 0 0.3em;
341
+ text-shadow: 0 -1px 0 #fff;
342
+ }
343
+
344
+ #gollum-editor .collapsed a.button:hover,
345
+ #gollum-editor .expanded h4 a.button:hover {
346
+ color: #fff;
347
+ text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.3);
348
+ text-decoration: none;
349
+
350
+ filter:progid:DXImageTransform.Microsoft.gradient(GradientType=0, startColorstr='#599bdc', endColorstr='#3072b3');
351
+ background: -webkit-gradient(linear, left top, left bottom, from(#599bdc), to(#3072b3));
352
+ background: -moz-linear-gradient(top, #599bdc, #3072b3);
353
+ }
354
+
355
+ #gollum-editor .collapsed a span,
356
+ #gollum-editor .expanded a span {
357
+ background-image: url(../images/icon-sprite.png);
358
+ background-position: -351px -1px;
359
+ background-repeat: no-repeat;
360
+ display: block;
361
+ height: 25px;
362
+ overflow: hidden;
363
+ text-indent: -5000px;
364
+ width: 25px;
365
+ }
366
+
367
+ #gollum-editor .collapsed a:hover span {
368
+ background-position: -351px -28px;
369
+ }
370
+
371
+ #gollum-editor .expanded a span {
372
+ background-position: -378px 0;
373
+ }
374
+
375
+ #gollum-editor .expanded a:hover span {
376
+ background-position: -378px -28px;
377
+ }
378
+
379
+ #gollum-editor .collapsed textarea {
380
+ display: none;
381
+ }
382
+
383
+ #gollum-editor .expanded textarea {
384
+ background-color: #fff;
385
+ border: 1px solid #ddd;
386
+ clear: both;
387
+ display: block;
388
+ font-size: 1.3em;
389
+ font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
390
+ height: 7em;
391
+ line-height: 1.8em;
392
+ margin: 0.7em 0;
393
+ padding: 0.5em;
394
+ width: 98%;
395
+ }
396
+
397
+ /* @control minibutton */
398
+
399
+ #gollum-editor a.minibutton,
400
+ #gollum-editor a.minibutton:visited {
401
+ background-color: #f7f7f7;
402
+ border: 1px solid #d4d4d4;
403
+ color: #333;
404
+ cursor: pointer;
405
+ display: block;
406
+ font-size: 1.2em;
407
+ font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
408
+ font-weight: bold;
409
+ line-height: 1.2em;
410
+ margin: 0 0 0 0.8em;
411
+ padding: 0.5em 1em;
412
+
413
+ text-shadow: 0 1px 0 #fff;
414
+
415
+ filter:progid:DXImageTransform.Microsoft.gradient(GradientType=0, startColorstr='#f4f4f4', endColorstr='#ececec');
416
+ background: -webkit-gradient(linear, left top, left bottom, from(#f4f4f4), to(#ececec));
417
+ background: -moz-linear-gradient(top, #f4f4f4, #ececec);
418
+
419
+ border-radius: 3px;
420
+ -moz-border-radius: 3px;
421
+ -webkit-border-radius: 3px;
422
+ }
423
+
424
+ #gollum-editor a.minibutton:hover {
425
+ background: #3072b3;
426
+ border-color: #518cc6 #518cc6 #2a65a0;
427
+ color: #fff;
428
+ text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.3);
429
+ text-decoration: none;
430
+
431
+ filter:progid:DXImageTransform.Microsoft.gradient(GradientType=0, startColorstr='#599bdc', endColorstr='#3072b3');
432
+ background: -webkit-gradient(linear, left top, left bottom, from(#599bdc), to(#3072b3));
433
+ background: -moz-linear-gradient(top, #599bdc, #3072b3);
434
+ }
435
+
436
+
437
+ #gollum-editor #gollum-editor-preview {
438
+ float: left;
439
+ font-weight: normal;
440
+ padding: left;
441
+ }
442
+
443
+
444
+ /* @section help */
445
+ #gollum-editor-help {
446
+ margin: 0;
447
+ overflow: hidden;
448
+ padding: 0;
449
+ border: 1px solid #ddd;
450
+ border-width: 0 1px 1px 1px;
451
+ }
452
+
453
+ #gollum-editor-help-parent,
454
+ #gollum-editor-help-list {
455
+ display: block;
456
+ float: left;
457
+ height: 17em;
458
+ list-style-type: none;
459
+ overflow: auto;
460
+ margin: 0;
461
+ padding: 1em 0;
462
+ width: 18%;
463
+ }
464
+
465
+ #gollum-editor-help-parent {
466
+ border-right: 1px solid #eee;
467
+ }
468
+
469
+ #gollum-editor-help-list {
470
+ background: #fafafa;
471
+ border-right: 1px solid #eee;
472
+ }
473
+
474
+ #gollum-editor-help-parent li,
475
+ #gollum-editor-help-list li {
476
+ font-size: 1.2em;
477
+ line-height: 1.6em;
478
+ margin: 0;
479
+ padding: 0;
480
+ }
481
+
482
+ #gollum-editor-help-parent li a,
483
+ #gollum-editor-help-list li a {
484
+ border: 1px solid transparent;
485
+ border-width: 1px 0;
486
+ display: block;
487
+ font-weight: bold;
488
+ height: 100%;
489
+ width: auto;
490
+ padding: 0.2em 1em;
491
+ text-shadow: 0 -1px 0 #fff;
492
+ }
493
+
494
+ #gollum-editor-help-parent li a:hover,
495
+ #gollum-editor-help-list li a:hover {
496
+ background: #fff;
497
+ border-color: #f0f0f0;
498
+ text-decoration: none;
499
+
500
+ box-shadow: none;
501
+ }
502
+
503
+ #gollum-editor-help-parent li a.selected,
504
+ #gollum-editor-help-list li a.selected {
505
+ border: 1px solid #eee;
506
+ border-bottom-color: #e7e7e7;
507
+ border-width: 1px 0;
508
+ background: #fff;
509
+ color: #000;
510
+
511
+ box-shadow: 0 1px 2px #f0f0f0;
512
+ }
513
+
514
+ #gollum-editor-help-wrapper {
515
+ background: #fff;
516
+ overflow: auto;
517
+ height: 17em;
518
+ padding: 1em;
519
+ }
520
+
521
+ #gollum-editor-help-content {
522
+ font-size: 1.2em;
523
+ margin: 0 1em 0 0.5em;
524
+ padding: 0;
525
+ line-height: 1.8em;
526
+ }
527
+
528
+ #gollum-editor-help-content p {
529
+ margin: 0 0 1em 0;
530
+ padding: 0;
531
+ }
532
+
533
+ /* IE */
534
+ .ie #gollum-editor .singleline input {
535
+ padding-top: 0.25em;
536
+ padding-bottom: 0.75em;
537
+ }