rtfmd 0.10301.17

Sign up to get free protection for your applications and to get access to all the features.
Files changed (40) hide show
  1. data/HISTORY.md +93 -0
  2. data/LICENSE +21 -0
  3. data/README.md +393 -0
  4. data/bin/rtfm +0 -0
  5. data/bin/rtfmd +4 -0
  6. data/config/rtfmd.ru +33 -0
  7. data/docs/sanitization.md +32 -0
  8. data/lib/gollum.rb +39 -0
  9. data/lib/gollum/blob_entry.rb +78 -0
  10. data/lib/gollum/committer.rb +217 -0
  11. data/lib/gollum/file.rb +64 -0
  12. data/lib/gollum/frontend/app.rb +96 -0
  13. data/lib/gollum/frontend/indexapp.rb +17 -0
  14. data/lib/gollum/frontend/public/css/gollum.css +660 -0
  15. data/lib/gollum/frontend/public/css/ie7.css +69 -0
  16. data/lib/gollum/frontend/public/css/ronn.css +40 -0
  17. data/lib/gollum/frontend/public/css/template.css +381 -0
  18. data/lib/gollum/frontend/public/images/icon-sprite.png +0 -0
  19. data/lib/gollum/frontend/public/javascript/gollum.js +137 -0
  20. data/lib/gollum/frontend/public/javascript/gollum.placeholder.js +54 -0
  21. data/lib/gollum/frontend/public/javascript/jquery.color.js +123 -0
  22. data/lib/gollum/frontend/public/javascript/jquery.js +7179 -0
  23. data/lib/gollum/frontend/templates/error.mustache +8 -0
  24. data/lib/gollum/frontend/templates/index.mustache +25 -0
  25. data/lib/gollum/frontend/templates/layout.mustache +28 -0
  26. data/lib/gollum/frontend/templates/page.mustache +34 -0
  27. data/lib/gollum/frontend/templates/pages.mustache +31 -0
  28. data/lib/gollum/frontend/views/error.rb +7 -0
  29. data/lib/gollum/frontend/views/index.rb +21 -0
  30. data/lib/gollum/frontend/views/layout.rb +28 -0
  31. data/lib/gollum/frontend/views/page.rb +53 -0
  32. data/lib/gollum/frontend/views/pages.rb +19 -0
  33. data/lib/gollum/git_access.rb +248 -0
  34. data/lib/gollum/markup.rb +389 -0
  35. data/lib/gollum/page.rb +374 -0
  36. data/lib/gollum/pagination.rb +61 -0
  37. data/lib/gollum/sanitization.rb +161 -0
  38. data/lib/gollum/wiki.rb +378 -0
  39. data/rtfmd.gemspec +47 -0
  40. metadata +291 -0
@@ -0,0 +1,69 @@
1
+ /* IE7-specific styles */
2
+
3
+ .ie #head #searchbar #searchbar-fauxtext input#search-query {
4
+ border: 0;
5
+ float: left;
6
+ padding: 0.4em 0 0 0.5em;
7
+ }
8
+
9
+ .ie #head #searchbar #searchbar-fauxtext #search-submit span {
10
+ height: 2.25em;
11
+ }
12
+
13
+ #head #searchbar,
14
+ #head ul.actions {
15
+ margin: 1em 0 0 0;
16
+ }
17
+
18
+ ul.actions {
19
+ margin-left: 0;
20
+ }
21
+
22
+ .compare #footer ul.actions {
23
+ margin-top: 1em;
24
+ }
25
+
26
+ .compare div.data {
27
+ overflow: auto;
28
+ }
29
+
30
+ .history #version-form {
31
+ margin: -0.5em 0 -0.5em !important;
32
+ }
33
+
34
+ #gollum-editor {
35
+ padding-bottom: 0;
36
+ }
37
+
38
+ #gollum-editor-help-parent li a,
39
+ #gollum-editor-help-list li a {
40
+ height: auto;
41
+ }
42
+
43
+ #gollum-editor #gollum-editor-format-selector {
44
+ margin-top: 6px;
45
+ }
46
+
47
+ #gollum-editor .singleline input {
48
+ padding-top: 0.25em;
49
+ }
50
+
51
+ #gollum-editor .collapsed {
52
+ padding-bottom: 1.1em;
53
+ }
54
+
55
+ #gollum-editor #gollum-editor-submit {
56
+ padding: 0.5em 1em 0.3em !important;
57
+ }
58
+
59
+ #gollum-editor #gollum-editor-preview {
60
+ line-height: 1.3em;
61
+ }
62
+
63
+ #gollum-editor form {
64
+ margin: 0;
65
+ }
66
+
67
+ #gollum-editor #gollum-editor-format-selector label {
68
+ padding-top: 0.1em !important;
69
+ }
@@ -0,0 +1,40 @@
1
+ /* style: man */
2
+ body#manpage {margin:0}
3
+ .mp {max-width:100ex;padding:0 9ex 1ex 4ex}
4
+ .mp p,.mp pre,.mp ul,.mp ol,.mp dl {margin:0 0 20px 0}
5
+ .mp h2 {margin:10px 0 0 0}
6
+ .mp > p,.mp > pre,.mp > ul,.mp > ol,.mp > dl {margin-left:8ex}
7
+ .mp h3 {margin:0 0 0 4ex}
8
+ .mp dt {margin:0;clear:left}
9
+ .mp dt.flush {float:left;width:8ex}
10
+ .mp dd {margin:0 0 0 9ex}
11
+ .mp h1,.mp h2,.mp h3,.mp h4 {clear:left}
12
+ .mp pre {margin-bottom:20px}
13
+ .mp pre+h2,.mp pre+h3 {margin-top:22px}
14
+ .mp h2+pre,.mp h3+pre {margin-top:5px}
15
+ .mp img {display:block;margin:auto}
16
+ .mp h1.man-title {display:none}
17
+ .mp,.mp code,.mp pre,.mp tt,.mp kbd,.mp samp,.mp h3,.mp h4 {font-family:monospace;font-size:14px;line-height:1.42857142857143}
18
+ .mp h2 {font-size:16px;line-height:1.25}
19
+ .mp h1 {font-size:20px;line-height:2}
20
+ .mp {text-align:justify;background:#fff}
21
+ .mp,.mp code,.mp pre,.mp pre code,.mp tt,.mp kbd,.mp samp {color:#131211}
22
+ .mp h1,.mp h2,.mp h3,.mp h4 {color:#030201}
23
+ .mp u {text-decoration:underline}
24
+ .mp code,.mp strong,.mp b {font-weight:bold;color:#131211}
25
+ .mp em,.mp var {font-style:italic;color:#232221;text-decoration:none}
26
+ .mp a,.mp a:link,.mp a:hover,.mp a code,.mp a pre,.mp a tt,.mp a kbd,.mp a samp {color:#0000ff}
27
+ .mp b.man-ref {font-weight:normal;color:#434241}
28
+ .mp pre {padding:0 4ex}
29
+ .mp pre code {font-weight:normal;color:#434241}
30
+ .mp h2+pre,h3+pre {padding-left:0}
31
+ ol.man-decor,ol.man-decor li {margin:3px 0 10px 0;padding:0;float:left;width:33%;list-style-type:none;text-transform:uppercase;color:#999;letter-spacing:1px}
32
+ ol.man-decor {width:100%}
33
+ ol.man-decor li.tl {text-align:left}
34
+ ol.man-decor li.tc {text-align:center;letter-spacing:4px}
35
+ ol.man-decor li.tr {text-align:right;float:right}
36
+
37
+ /* style: toc */
38
+ .man-navigation {display:block !important;position:fixed;top:0;left:113ex;height:100%;width:100%;padding:48px 0 0 0;border-left:1px solid #dbdbdb;background:#eee}
39
+ .man-navigation a,.man-navigation a:hover,.man-navigation a:link,.man-navigation a:visited {display:block;margin:0;padding:5px 2px 5px 30px;color:#999;text-decoration:none}
40
+ .man-navigation a:hover {color:#111;text-decoration:underline}
@@ -0,0 +1,381 @@
1
+ /*
2
+ Gollum v3 Template
3
+ */
4
+
5
+ /* margin & padding reset*/
6
+ * {
7
+ margin: 0;
8
+ padding: 0;
9
+ }
10
+
11
+
12
+ html, body {
13
+ color: black;
14
+ }
15
+
16
+ body {
17
+ font: 13.34px helvetica,arial,freesans,clean,sans-serif;
18
+ line-height: 1.4;
19
+ }
20
+
21
+ img {
22
+ border: 0;
23
+ }
24
+
25
+ #template {
26
+ font-size: 14px;
27
+ line-height: 1.4;
28
+ margin-bottom: 40px;
29
+ }
30
+
31
+ /* Link Colors */
32
+ a.absent {
33
+ color: #c00;
34
+ }
35
+
36
+ /* Primary Body Copy */
37
+ #template p {
38
+ margin: 1em 0;
39
+ padding: 0;
40
+ }
41
+
42
+ /* ReST first graf in nested list */
43
+ #template * li p.first {
44
+ display: inline-block;
45
+ }
46
+
47
+ /* Headings */
48
+ #template h1, #template h2, #template h3,
49
+ #template h4, #template h5, #template h6 {
50
+ margin: 0;
51
+ padding: 0;
52
+ }
53
+
54
+ #template h1 {
55
+ border-bottom: 1px solid #ccc;
56
+ font-size: 33px; /* was 32, GH is 33px */
57
+ line-height: normal;
58
+ padding: .08em 0 0 0;
59
+ margin: 0;
60
+ }
61
+
62
+ #template h2 {
63
+ font-size: 22px;
64
+ line-height: normal;
65
+ margin: 22px 0 0;
66
+ padding: 7px 0 0;
67
+ }
68
+
69
+ #template h3 {
70
+ font-size: 16px;
71
+ line-height: 26px;
72
+ padding: 26px 0 0;
73
+ }
74
+
75
+ #template h4 {
76
+ font-size: 14px;
77
+ line-height: 26px;
78
+ padding: 18px 0 4px;
79
+ font-weight: bold;
80
+ text-transform: uppercase;
81
+ }
82
+
83
+ #template h5 {
84
+ font-size: 13px;
85
+ line-height: 26px;
86
+ margin-bottom: -19px;
87
+ padding: 14px 0 0;
88
+ font-weight: bold;
89
+ text-transform: uppercase;
90
+ }
91
+
92
+ #template h6 {
93
+ color: #666;
94
+ font-size: 14px;
95
+ line-height: 26px;
96
+ margin-bottom: -19px;
97
+ padding: 18px 0 0;
98
+ font-weight: normal;
99
+ font-variant: italic;
100
+ }
101
+
102
+ #template hr {
103
+ background-color: #ccc;
104
+ color: #ccc;
105
+ border: 2px solid #ccc;
106
+ margin: 20px 0;
107
+ padding: 0;
108
+ }
109
+
110
+ /* Border Reset for headers with horizontal rules */
111
+ #template > h2:first-child,
112
+ #template > h1:first-child {
113
+ margin: 12px 0 0;
114
+ padding: 10px 0 0;
115
+ }
116
+
117
+
118
+ /* Lists, Blockquotes & Such */
119
+ #template ul,
120
+ #template ol {
121
+ margin-top: 1.5em;
122
+ margin-left: 2.6em;
123
+ }
124
+
125
+ /* Nested Lists */
126
+ #template ul li,
127
+ #template ol li,
128
+ #template ul li ul,
129
+ #template ol li ol,
130
+ #template ul li ol,
131
+ #template ol li ul,
132
+ #template ul ul,
133
+ #template ol ol {
134
+ padding: 0;
135
+ margin: .5em 0;
136
+ }
137
+
138
+ #template dl {
139
+ margin: 0;
140
+ padding: 20px 0 0;
141
+ }
142
+
143
+ #template dl dt {
144
+ font-size: 14px;
145
+ font-weight: bold;
146
+ line-height: normal;
147
+ margin: 0;
148
+ padding: 20px 0 0;
149
+ }
150
+
151
+ #template dl dt:first-child {
152
+ padding: 0;
153
+ }
154
+
155
+ #template dl dd {
156
+ font-size: 13px;
157
+ margin: 0;
158
+ padding: 3px 0 0;
159
+ }
160
+
161
+ /* Tables */
162
+ #template table {
163
+ border-collapse: collapse;
164
+ margin: 20px 0 0;
165
+ padding: 0;
166
+ }
167
+
168
+ #template table * tr {
169
+ border-top: 1px solid #ccc;
170
+ background-color: #fff;
171
+ margin: 0;
172
+ padding: 0;
173
+ }
174
+
175
+ #template table * tr:nth-child(2n) {
176
+ background-color: #f8f8f8;
177
+ }
178
+
179
+ #template table * tr th,
180
+ #template table * tr td {
181
+ border: 1px solid #ccc;
182
+ text-align: left;
183
+ margin: 0;
184
+ padding: 6px 13px;
185
+ }
186
+
187
+ /* Images & Stuff */
188
+ #template img {
189
+ max-width: 100%;
190
+ }
191
+
192
+ /* Gollum Image Tags */
193
+
194
+ /* Framed */
195
+ #template span.frame {
196
+ display: block;
197
+ overflow: hidden;
198
+ }
199
+
200
+ #template span.frame > span {
201
+ border: 1px solid #ddd;
202
+ display: block;
203
+ float: left;
204
+ overflow: hidden;
205
+ margin: 13px 0 0;
206
+ padding: 7px;
207
+ width: auto;
208
+ }
209
+
210
+ #template span.frame span img {
211
+ display: block;
212
+ float: left;
213
+ }
214
+
215
+ #template span.frame span span {
216
+ clear: both;
217
+ color: #333;
218
+ display: block;
219
+ padding: 5px 0 0;
220
+ }
221
+
222
+ #template span.align-center {
223
+ display: block;
224
+ overflow: hidden;
225
+ clear: both;
226
+ }
227
+
228
+ #template span.align-center > span {
229
+ display: block;
230
+ overflow: hidden;
231
+ margin: 13px auto 0;
232
+ text-align: center;
233
+ }
234
+
235
+ #template span.align-center span img {
236
+ margin: 0 auto;
237
+ text-align: center;
238
+ }
239
+
240
+ #template span.align-right {
241
+ display: block;
242
+ overflow: hidden;
243
+ clear: both;
244
+ }
245
+
246
+ #template span.align-right > span {
247
+ display: block;
248
+ overflow: hidden;
249
+ margin: 13px 0 0;
250
+ text-align: right;
251
+ }
252
+
253
+ #template span.align-right span img {
254
+ margin: 0;
255
+ text-align: right;
256
+ }
257
+
258
+ #template span.float-left {
259
+ display: block;
260
+ margin-right: 13px;
261
+ overflow: hidden;
262
+ float: left;
263
+ }
264
+
265
+ #template span.float-left span {
266
+ margin: 13px 0 0;
267
+ }
268
+
269
+ #template span.float-right {
270
+ display: block;
271
+ margin-left: 13px;
272
+ overflow: hidden;
273
+ float: right;
274
+ }
275
+
276
+ #template span.float-right > span {
277
+ display: block;
278
+ overflow: hidden;
279
+ margin: 13px auto 0;
280
+ text-align: right;
281
+ }
282
+
283
+
284
+ /* Code */
285
+ #template code, #template tt {
286
+ background-color: #f8f8f8;
287
+ border: 1px solid #dedede;
288
+ font-size: 13px;
289
+ padding: 0;
290
+
291
+ -moz-border-radius: 3px;
292
+ -webkit-border-radius: 3px;
293
+ border-radius: 3px;
294
+ }
295
+
296
+ #template .highlight pre, #template pre {
297
+ background-color: #f8f8f8;
298
+ border: 1px solid #ccc;
299
+ font-size: 13px;
300
+ line-height: 19px;
301
+ overflow: auto;
302
+ padding: 6px 10px;
303
+
304
+ -moz-border-radius: 3px;
305
+ -webkit-border-radius: 3px;
306
+ border-radius: 3px;
307
+ }
308
+
309
+ pre, code {
310
+ font: 12px 'Bitstream Vera Sans Mono','Courier',monospace
311
+ }
312
+
313
+ #template pre code, #template pre tt {
314
+ background-color: transparent;
315
+ border: none;
316
+ }
317
+
318
+ /*
319
+ Highlight rules from pull req 191
320
+ https://github.com/eboto/gollum/commit/5df09477abf4a04c82c7fcaa2bd7ee2a85e7ec82
321
+ */
322
+ #template .highlight { background:#fff; }
323
+ #template .highlight .c { color:#998;font-style:italic; }
324
+ #template .highlight .err { color:#a61717;background-color:#e3d2d2; }
325
+ #template .highlight .k { font-weight:bold; }
326
+ #template .highlight .o { font-weight:bold; }
327
+ #template .highlight .cm { color:#998;font-style:italic; }
328
+ #template .highlight .cp { color:#999;font-weight:bold; }
329
+ #template .highlight .c1 { color:#998;font-style:italic; }
330
+ #template .highlight .cs { color:#999;font-weight:bold;font-style:italic; }
331
+ #template .highlight .gd { color:#000;background-color:#fdd; }
332
+ #template .highlight .gd .x { color:#000;background-color:#faa; }
333
+ #template .highlight .ge { font-style:italic; }
334
+ #template .highlight .gr { color:#a00; }
335
+ #template .highlight .gh { color:#999; }
336
+ #template .highlight .gi { color:#000;background-color:#dfd; }
337
+ #template .highlight .gi .x { color:#000;background-color:#afa; }
338
+ #template .highlight .go { color:#888; }
339
+ #template .highlight .gp { color:#555; }
340
+ #template .highlight .gs { font-weight:bold; }
341
+ #template .highlight .gu { color:#800080;font-weight:bold; }
342
+ #template .highlight .gt { color:#a00; }
343
+ #template .highlight .kc { font-weight:bold; }
344
+ #template .highlight .kd { font-weight:bold; }
345
+ #template .highlight .kp { font-weight:bold; }
346
+ #template .highlight .kr { font-weight:bold; }
347
+ #template .highlight .kt { color:#458;font-weight:bold; }
348
+ #template .highlight .m { color:#099; }
349
+ #template .highlight .s { color:#d14; }
350
+ #template .highlight .na { color:#008080; }
351
+ #template .highlight .nb { color:#0086B3; }
352
+ #template .highlight .nc { color:#458;font-weight:bold; }
353
+ #template .highlight .no { color:#008080; }
354
+ #template .highlight .ni { color:#800080; }
355
+ #template .highlight .ne { color:#900;font-weight:bold; }
356
+ #template .highlight .nf { color:#900;font-weight:bold; }
357
+ #template .highlight .nn { color:#555; }
358
+ #template .highlight .nt { color:#000080; }
359
+ #template .highlight .nv { color:#008080; }
360
+ #template .highlight .ow { font-weight:bold; }
361
+ #template .highlight .w { color:#bbb; }
362
+ #template .highlight .mf { color:#099; }
363
+ #template .highlight .mh { color:#099; }
364
+ #template .highlight .mi { color:#099; }
365
+ #template .highlight .mo { color:#099; }
366
+ #template .highlight .sb { color:#d14; }
367
+ #template .highlight .sc { color:#d14; }
368
+ #template .highlight .sd { color:#d14; }
369
+ #template .highlight .s2 { color:#d14; }
370
+ #template .highlight .se { color:#d14; }
371
+ #template .highlight .sh { color:#d14; }
372
+ #template .highlight .si { color:#d14; }
373
+ #template .highlight .sx { color:#d14; }
374
+ #template .highlight .sr { color:#009926; }
375
+ #template .highlight .s1 { color:#d14; }
376
+ #template .highlight .ss { color:#990073; }
377
+ #template .highlight .bp { color:#999; }
378
+ #template .highlight .vc { color:#008080; }
379
+ #template .highlight .vg { color:#008080; }
380
+ #template .highlight .vi { color:#008080; }
381
+ #template .highlight .il { color:#099; }