Compare commits
48 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| d817a4fdb6 | |||
| 19635b06cf | |||
| 872776660b | |||
| 9644d4b00e | |||
| 9a1dddaccf | |||
| 4110ab5a82 | |||
| 5d1844e491 | |||
| 6a126d46ee | |||
| f834a0c84f | |||
| 9dfeb237e7 | |||
| b769ba2974 | |||
| fc1feb280f | |||
| bface83af7 | |||
| 2bea800a37 | |||
| 4c1ff7deb7 | |||
| 5a7cb129bb | |||
| b29d22e99b | |||
| 12cf102543 | |||
| 3d95730880 | |||
| c5d807dd58 | |||
| d40df79dce | |||
| 3cfa297b49 | |||
| e435769345 | |||
| 9a73877b3e | |||
| e2cd8d93f4 | |||
| afc6ec468f | |||
| 391838cfc3 | |||
| 36a11ded4f | |||
| f540ef2e06 | |||
| b061e0f859 | |||
| 4972fbbc7b | |||
| 1f318de812 | |||
| 0ceeadd75b | |||
| b9dad32707 | |||
| d1cf698b45 | |||
| 9dba3f9c58 | |||
| 8fbbe40300 | |||
| f73c925ad9 | |||
| b7fb4c5950 | |||
| fed49bb98b | |||
| 6aa4e382b2 | |||
| 8051d4f9b0 | |||
| 31a49601b1 | |||
| 4a50635fe1 | |||
| 9b92e9d325 | |||
| 833953d658 | |||
| 198dc8a8e2 | |||
| 02073f827b |
+2
-2
@@ -1,6 +1,6 @@
|
|||||||
rvm:
|
rvm:
|
||||||
- 1.8.7
|
- 1.8.7
|
||||||
- 1.9.2
|
|
||||||
- rbx-2.0
|
|
||||||
notifications:
|
notifications:
|
||||||
disabled: true
|
disabled: true
|
||||||
|
before_install:
|
||||||
|
- sudo apt-get install -y asciidoc
|
||||||
|
|||||||
@@ -311,6 +311,7 @@ backticks.
|
|||||||
|
|
||||||
## MATHEMATICAL EQUATIONS
|
## MATHEMATICAL EQUATIONS
|
||||||
|
|
||||||
|
|
||||||
Page files may contain mathematic equations in TeX syntax that will be nicely
|
Page files may contain mathematic equations in TeX syntax that will be nicely
|
||||||
typeset into the expected output. A block-style equation is delimited by `\[`
|
typeset into the expected output. A block-style equation is delimited by `\[`
|
||||||
and `\]`. For example:
|
and `\]`. For example:
|
||||||
@@ -322,6 +323,13 @@ inline with regular text. For example:
|
|||||||
|
|
||||||
The Pythagorean theorem is \( a^2 + b^2 = c^2 \).
|
The Pythagorean theorem is \( a^2 + b^2 = c^2 \).
|
||||||
|
|
||||||
|
### INSTALLATION REQUIREMENTS
|
||||||
|
|
||||||
|
In order to get the mathematical equations rendering to work, you need the following binaries:
|
||||||
|
|
||||||
|
* LaText, TeTex or MacTex/BasicTeX (latex, dvips)
|
||||||
|
* ImageMagick (convert)
|
||||||
|
* Ghostscript (gs)
|
||||||
|
|
||||||
## SEQUENCE DIAGRAMS
|
## SEQUENCE DIAGRAMS
|
||||||
|
|
||||||
@@ -454,9 +462,14 @@ like Rack::Auth, OmniAuth, etc.
|
|||||||
require 'gollum/frontend/app'
|
require 'gollum/frontend/app'
|
||||||
|
|
||||||
gollum_path = File.expand_path(File.dirname(__FILE__)) # CHANGE THIS TO POINT TO YOUR OWN WIKI REPO
|
gollum_path = File.expand_path(File.dirname(__FILE__)) # CHANGE THIS TO POINT TO YOUR OWN WIKI REPO
|
||||||
|
Precious::App.set(:gollum_path, gollum_path)
|
||||||
Precious::App.set(:default_markup, :markdown) # set your favorite markup language
|
Precious::App.set(:default_markup, :markdown) # set your favorite markup language
|
||||||
run Precious::App
|
run Precious::App
|
||||||
|
|
||||||
|
## Testing
|
||||||
|
|
||||||
|
[](http://travis-ci.org/github/gollum)
|
||||||
|
|
||||||
## CONTRIBUTE
|
## CONTRIBUTE
|
||||||
|
|
||||||
If you'd like to hack on Gollum, start by forking my repo on GitHub:
|
If you'd like to hack on Gollum, start by forking my repo on GitHub:
|
||||||
@@ -475,3 +488,9 @@ your changes merged back into core is as follows:
|
|||||||
1. If necessary, rebase your commits into logical chunks, without errors
|
1. If necessary, rebase your commits into logical chunks, without errors
|
||||||
1. Push the branch up to GitHub
|
1. Push the branch up to GitHub
|
||||||
1. Send a pull request to the github/gollum project.
|
1. Send a pull request to the github/gollum project.
|
||||||
|
|
||||||
|
## RELEASING
|
||||||
|
|
||||||
|
$ rake gemspec
|
||||||
|
$ gem build gollum.gemspec
|
||||||
|
$ gem push gollum-X.Y.Z.gem
|
||||||
|
|||||||
+22
-22
@@ -4,8 +4,8 @@ Gem::Specification.new do |s|
|
|||||||
s.rubygems_version = '1.3.5'
|
s.rubygems_version = '1.3.5'
|
||||||
|
|
||||||
s.name = 'gollum'
|
s.name = 'gollum'
|
||||||
s.version = '1.4.1'
|
s.version = '2.0.0'
|
||||||
s.date = '2012-04-10'
|
s.date = '2012-05-06'
|
||||||
s.rubyforge_project = 'gollum'
|
s.rubyforge_project = 'gollum'
|
||||||
|
|
||||||
s.summary = "A simple, Git-powered wiki."
|
s.summary = "A simple, Git-powered wiki."
|
||||||
@@ -37,7 +37,7 @@ Gem::Specification.new do |s|
|
|||||||
s.add_development_dependency('org-ruby', '~>0.6.2')
|
s.add_development_dependency('org-ruby', '~>0.6.2')
|
||||||
s.add_development_dependency('shoulda')
|
s.add_development_dependency('shoulda')
|
||||||
s.add_development_dependency('rack-test')
|
s.add_development_dependency('rack-test')
|
||||||
s.add_development_dependency('wikicloth', '~> 0.6.3')
|
s.add_development_dependency('wikicloth', '~>0.8.0')
|
||||||
s.add_development_dependency('rake', '~> 0.9.2')
|
s.add_development_dependency('rake', '~> 0.9.2')
|
||||||
|
|
||||||
# = MANIFEST =
|
# = MANIFEST =
|
||||||
@@ -56,25 +56,25 @@ Gem::Specification.new do |s|
|
|||||||
lib/gollum/committer.rb
|
lib/gollum/committer.rb
|
||||||
lib/gollum/file.rb
|
lib/gollum/file.rb
|
||||||
lib/gollum/frontend/app.rb
|
lib/gollum/frontend/app.rb
|
||||||
lib/gollum/frontend/public/css/dialog.css
|
lib/gollum/frontend/public/gollum/css/dialog.css
|
||||||
lib/gollum/frontend/public/css/editor.css
|
lib/gollum/frontend/public/gollum/css/editor.css
|
||||||
lib/gollum/frontend/public/css/gollum.css
|
lib/gollum/frontend/public/gollum/css/gollum.css
|
||||||
lib/gollum/frontend/public/css/ie7.css
|
lib/gollum/frontend/public/gollum/css/ie7.css
|
||||||
lib/gollum/frontend/public/css/template.css
|
lib/gollum/frontend/public/gollum/css/template.css
|
||||||
lib/gollum/frontend/public/images/icon-sprite.png
|
lib/gollum/frontend/public/gollum/images/icon-sprite.png
|
||||||
lib/gollum/frontend/public/javascript/editor/gollum.editor.js
|
lib/gollum/frontend/public/gollum/javascript/editor/gollum.editor.js
|
||||||
lib/gollum/frontend/public/javascript/editor/langs/asciidoc.js
|
lib/gollum/frontend/public/gollum/javascript/editor/langs/asciidoc.js
|
||||||
lib/gollum/frontend/public/javascript/editor/langs/creole.js
|
lib/gollum/frontend/public/gollum/javascript/editor/langs/creole.js
|
||||||
lib/gollum/frontend/public/javascript/editor/langs/markdown.js
|
lib/gollum/frontend/public/gollum/javascript/editor/langs/markdown.js
|
||||||
lib/gollum/frontend/public/javascript/editor/langs/org.js
|
lib/gollum/frontend/public/gollum/javascript/editor/langs/org.js
|
||||||
lib/gollum/frontend/public/javascript/editor/langs/pod.js
|
lib/gollum/frontend/public/gollum/javascript/editor/langs/pod.js
|
||||||
lib/gollum/frontend/public/javascript/editor/langs/rdoc.js
|
lib/gollum/frontend/public/gollum/javascript/editor/langs/rdoc.js
|
||||||
lib/gollum/frontend/public/javascript/editor/langs/textile.js
|
lib/gollum/frontend/public/gollum/javascript/editor/langs/textile.js
|
||||||
lib/gollum/frontend/public/javascript/gollum.dialog.js
|
lib/gollum/frontend/public/gollum/javascript/gollum.dialog.js
|
||||||
lib/gollum/frontend/public/javascript/gollum.js
|
lib/gollum/frontend/public/gollum/javascript/gollum.js
|
||||||
lib/gollum/frontend/public/javascript/gollum.placeholder.js
|
lib/gollum/frontend/public/gollum/javascript/gollum.placeholder.js
|
||||||
lib/gollum/frontend/public/javascript/jquery.color.js
|
lib/gollum/frontend/public/gollum/javascript/jquery.color.js
|
||||||
lib/gollum/frontend/public/javascript/jquery.js
|
lib/gollum/frontend/public/gollum/javascript/jquery.js
|
||||||
lib/gollum/frontend/templates/compare.mustache
|
lib/gollum/frontend/templates/compare.mustache
|
||||||
lib/gollum/frontend/templates/create.mustache
|
lib/gollum/frontend/templates/create.mustache
|
||||||
lib/gollum/frontend/templates/edit.mustache
|
lib/gollum/frontend/templates/edit.mustache
|
||||||
|
|||||||
+5
-1
@@ -21,7 +21,11 @@ require File.expand_path('../gollum/tex', __FILE__)
|
|||||||
require File.expand_path('../gollum/web_sequence_diagram', __FILE__)
|
require File.expand_path('../gollum/web_sequence_diagram', __FILE__)
|
||||||
|
|
||||||
module Gollum
|
module Gollum
|
||||||
VERSION = '1.4.1'
|
VERSION = '2.0.0'
|
||||||
|
|
||||||
|
def self.assets_path
|
||||||
|
::File.expand_path('gollum/frontend/public', ::File.dirname(__FILE__))
|
||||||
|
end
|
||||||
|
|
||||||
class Error < StandardError; end
|
class Error < StandardError; end
|
||||||
|
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ module Precious
|
|||||||
dir = File.dirname(File.expand_path(__FILE__))
|
dir = File.dirname(File.expand_path(__FILE__))
|
||||||
|
|
||||||
# We want to serve public assets for now
|
# We want to serve public assets for now
|
||||||
set :public_folder, "#{dir}/public"
|
set :public_folder, "#{dir}/public/gollum"
|
||||||
set :static, true
|
set :static, true
|
||||||
set :default_markup, :markdown
|
set :default_markup, :markdown
|
||||||
|
|
||||||
@@ -47,6 +47,7 @@ module Precious
|
|||||||
wiki = Gollum::Wiki.new(settings.gollum_path, settings.wiki_options)
|
wiki = Gollum::Wiki.new(settings.gollum_path, settings.wiki_options)
|
||||||
if page = wiki.page(@name)
|
if page = wiki.page(@name)
|
||||||
@page = page
|
@page = page
|
||||||
|
@page.version = wiki.repo.log(wiki.ref, @page.path).first
|
||||||
@content = page.raw_data
|
@content = page.raw_data
|
||||||
mustache :edit
|
mustache :edit
|
||||||
else
|
else
|
||||||
|
|||||||
+14
-21
@@ -30,6 +30,7 @@ a {
|
|||||||
-webkit-border-radius: 1em;
|
-webkit-border-radius: 1em;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.ff #gollum-editor,
|
||||||
.ie #gollum-editor {
|
.ie #gollum-editor {
|
||||||
padding-bottom: 1em;
|
padding-bottom: 1em;
|
||||||
}
|
}
|
||||||
@@ -51,9 +52,9 @@ a {
|
|||||||
background: #fff;
|
background: #fff;
|
||||||
border: 1px solid #ddd;
|
border: 1px solid #ddd;
|
||||||
color: #000;
|
color: #000;
|
||||||
font-size: 1.3em;
|
font-size: 1.1em;
|
||||||
font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
|
font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
|
||||||
line-height: 1.8em;
|
line-height: 1.5em;
|
||||||
margin: 1em 0 0.4em;
|
margin: 1em 0 0.4em;
|
||||||
padding: 0.5em;
|
padding: 0.5em;
|
||||||
width: 98%;
|
width: 98%;
|
||||||
@@ -192,44 +193,36 @@ a#function-help:hover span { background-position: -405px -28px; }
|
|||||||
|
|
||||||
#gollum-editor #gollum-editor-function-bar #gollum-editor-format-selector {
|
#gollum-editor #gollum-editor-function-bar #gollum-editor-format-selector {
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
padding: 0 0 1.1em 0;
|
padding: .2em 0 .5em 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
#gollum-editor #gollum-editor-function-bar
|
#gollum-editor #gollum-editor-function-bar
|
||||||
#gollum-editor-format-selector select {
|
#gollum-editor-format-selector select {
|
||||||
background-color: #f9f9f9;
|
background-color: #f9f9f9;
|
||||||
border: 1px solid transparent;
|
border: 1px solid #ddd;
|
||||||
|
color: #333;
|
||||||
|
|
||||||
float: right;
|
float: right;
|
||||||
font-size: 1.1em;
|
font-size: 1em;
|
||||||
font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
|
font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
line-height: 1.6em;
|
line-height: 1.6em;
|
||||||
padding: 0.5em 0.7em;
|
padding: 0.3em 0.4em;
|
||||||
margin-bottom: 0;
|
|
||||||
|
|
||||||
|
|
||||||
border-radius: 0.5em;
|
border-radius: 0.5em;
|
||||||
-moz-border-radius: 0.5em;
|
-moz-border-radius: 0.5em;
|
||||||
-webkit-border-radius: 0.5em;
|
-webkit-border-radius: 0.5em;
|
||||||
-moz-outline: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
#gollum-editor #gollum-editor-function-bar
|
|
||||||
#gollum-editor-format-selector select:hover {
|
|
||||||
background-color: #fff;
|
|
||||||
border: 1px solid #ddd;
|
|
||||||
-moz-outline: none;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#gollum-editor #gollum-editor-function-bar
|
#gollum-editor #gollum-editor-function-bar
|
||||||
#gollum-editor-format-selector label {
|
#gollum-editor-format-selector label {
|
||||||
color: #999;
|
color: #999;
|
||||||
float: right;
|
float: right;
|
||||||
font-size: 1.1em;
|
font-size: 1em;
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
line-height: 1.6em;
|
line-height: 1.6em;
|
||||||
padding: 0.6em 0.5em 0 0;
|
padding: .3em 0.5em 0 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
#gollum-editor #gollum-editor-function-bar
|
#gollum-editor #gollum-editor-function-bar
|
||||||
@@ -243,9 +236,9 @@ a#function-help:hover span { background-position: -405px -28px; }
|
|||||||
#gollum-editor textarea#gollum-editor-body {
|
#gollum-editor textarea#gollum-editor-body {
|
||||||
background: #fff;
|
background: #fff;
|
||||||
border: 1px solid #ddd;
|
border: 1px solid #ddd;
|
||||||
font-size: 1.3em;
|
font-size: 1em;
|
||||||
font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
|
font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
|
||||||
line-height: 1.8em;
|
line-height: 1.4em;
|
||||||
margin: 1em 0 0.4em;
|
margin: 1em 0 0.4em;
|
||||||
padding: 0.5em; /* I don't really like mixing pct & em here… */
|
padding: 0.5em; /* I don't really like mixing pct & em here… */
|
||||||
width: 98%;
|
width: 98%;
|
||||||
@@ -259,7 +252,7 @@ a#function-help:hover span { background-position: -405px -28px; }
|
|||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
display: block;
|
display: block;
|
||||||
float: left;
|
float: left;
|
||||||
font-size: 1.2em;
|
font-size: 1em;
|
||||||
font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
|
font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
margin: 0;
|
margin: 0;
|
||||||
@@ -403,7 +396,7 @@ a#function-help:hover span { background-position: -405px -28px; }
|
|||||||
color: #333;
|
color: #333;
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
display: block;
|
display: block;
|
||||||
font-size: 1.2em;
|
font-size: 1em;
|
||||||
font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
|
font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
line-height: 1.2em;
|
line-height: 1.2em;
|
||||||
+38
-20
@@ -37,8 +37,8 @@ a:hover, a:visited {
|
|||||||
|
|
||||||
/* @section head */
|
/* @section head */
|
||||||
#head {
|
#head {
|
||||||
|
border-bottom: 1px solid #ddd;
|
||||||
margin: 4.5em 0 0.5em;
|
margin: 4.5em 0 0.5em;
|
||||||
padding: 0.5em 0;
|
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -142,6 +142,7 @@ a:hover, a:visited {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* @section footer */
|
/* @section footer */
|
||||||
|
|
||||||
#wiki-footer {
|
#wiki-footer {
|
||||||
clear: both;
|
clear: both;
|
||||||
margin: 2em 0 5em;
|
margin: 2em 0 5em;
|
||||||
@@ -208,6 +209,7 @@ a:hover, a:visited {
|
|||||||
|
|
||||||
/* @section page-footer */
|
/* @section page-footer */
|
||||||
.page #footer {
|
.page #footer {
|
||||||
|
border-top: 1px solid #ddd;
|
||||||
margin: 1em 0 7em;
|
margin: 1em 0 7em;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -235,12 +237,12 @@ a:hover, a:visited {
|
|||||||
}
|
}
|
||||||
|
|
||||||
#wiki-history {
|
#wiki-history {
|
||||||
margin-top: 3em;
|
margin-top: 2em;
|
||||||
}
|
}
|
||||||
|
|
||||||
#wiki-history fieldset {
|
#wiki-history fieldset {
|
||||||
border: 0;
|
border: 0;
|
||||||
margin: 2em 0;
|
margin: 1em 0;
|
||||||
padding: 0;
|
padding: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -262,14 +264,14 @@ a:hover, a:visited {
|
|||||||
|
|
||||||
#wiki-history table tr td {
|
#wiki-history table tr td {
|
||||||
border: 1px solid #c0dce9;
|
border: 1px solid #c0dce9;
|
||||||
font-size: 1.2em;
|
font-size: 1em;
|
||||||
line-height: 1.6em;
|
line-height: 1.6em;
|
||||||
margin: 0;
|
margin: 0;
|
||||||
padding: 0.3em 0.7em;
|
padding: 0.3em 0.7em;
|
||||||
}
|
}
|
||||||
|
|
||||||
#wiki-history table tr td.checkbox {
|
#wiki-history table tr td.checkbox {
|
||||||
min-width: 2em;
|
width: 4em;
|
||||||
padding: 0.3em;
|
padding: 0.3em;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -278,7 +280,9 @@ a:hover, a:visited {
|
|||||||
display: block;
|
display: block;
|
||||||
padding-right: 0;
|
padding-right: 0;
|
||||||
padding-top: 0.4em;
|
padding-top: 0.4em;
|
||||||
margin-right: -0.2em;
|
margin: 0 auto;
|
||||||
|
width: 1.2em;
|
||||||
|
height: 1.2em;
|
||||||
}
|
}
|
||||||
|
|
||||||
#wiki-history table tr:nth-child(2n),
|
#wiki-history table tr:nth-child(2n),
|
||||||
@@ -331,6 +335,10 @@ a:hover, a:visited {
|
|||||||
padding: 0 0.2em;
|
padding: 0 0.2em;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.history #footer {
|
||||||
|
margin-bottom: 7em;
|
||||||
|
}
|
||||||
|
|
||||||
.history #wiki-history ul.actions li,
|
.history #wiki-history ul.actions li,
|
||||||
.history #footer ul.actions li {
|
.history #footer ul.actions li {
|
||||||
margin: 0 0.6em 0 0;
|
margin: 0 0.6em 0 0;
|
||||||
@@ -410,10 +418,14 @@ a:hover, a:visited {
|
|||||||
|
|
||||||
.compare .data {
|
.compare .data {
|
||||||
border: 1px solid #ddd;
|
border: 1px solid #ddd;
|
||||||
margin-top: 1em;
|
margin: 1em 0 2em;
|
||||||
overflow: auto;
|
overflow: auto;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.compare .data table {
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
.compare .data pre {
|
.compare .data pre {
|
||||||
margin: 0;
|
margin: 0;
|
||||||
padding: 0;
|
padding: 0;
|
||||||
@@ -426,11 +438,15 @@ a:hover, a:visited {
|
|||||||
.compare .data tr td {
|
.compare .data tr td {
|
||||||
font-family: "Consolas", "Monaco", "Andale Mono", "Courier New", monospace;
|
font-family: "Consolas", "Monaco", "Andale Mono", "Courier New", monospace;
|
||||||
font-size: 1.2em;
|
font-size: 1.2em;
|
||||||
line-height: 1.8em;
|
line-height: 1.2em;
|
||||||
margin: 0;
|
margin: 0;
|
||||||
padding: 0;
|
padding: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.compare .data tr td + td + td {
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
.compare .data td.line_numbers {
|
.compare .data td.line_numbers {
|
||||||
background: #f7f7f7;
|
background: #f7f7f7;
|
||||||
border-right: 1px solid #999;
|
border-right: 1px solid #999;
|
||||||
@@ -444,6 +460,10 @@ a:hover, a:visited {
|
|||||||
margin-right: 0.6em;
|
margin-right: 0.6em;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.compare #footer {
|
||||||
|
margin-bottom: 7em;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/* @control syntax */
|
/* @control syntax */
|
||||||
@@ -481,8 +501,9 @@ ul.actions {
|
|||||||
|
|
||||||
ul.actions li {
|
ul.actions li {
|
||||||
float: left;
|
float: left;
|
||||||
font-size: 1.2em;
|
font-size: 0.9em;
|
||||||
margin-left: 0.6em;
|
margin-left: 0.6em;
|
||||||
|
margin-bottom: 0.6em;
|
||||||
}
|
}
|
||||||
|
|
||||||
.minibutton a {
|
.minibutton a {
|
||||||
@@ -586,7 +607,6 @@ ul.actions {
|
|||||||
/* @control searchbar */
|
/* @control searchbar */
|
||||||
#head #searchbar {
|
#head #searchbar {
|
||||||
float: right;
|
float: right;
|
||||||
margin: 1em 0 0 0;
|
|
||||||
padding: 0;
|
padding: 0;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
}
|
}
|
||||||
@@ -595,6 +615,7 @@ ul.actions {
|
|||||||
background: #fff;
|
background: #fff;
|
||||||
border: 1px solid #d4d4d4;
|
border: 1px solid #d4d4d4;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
|
height: 2.2em;
|
||||||
|
|
||||||
border-radius: 0.3em;
|
border-radius: 0.3em;
|
||||||
-moz-border-radius: 0.3em;
|
-moz-border-radius: 0.3em;
|
||||||
@@ -606,18 +627,15 @@ ul.actions {
|
|||||||
color: #000;
|
color: #000;
|
||||||
float: left;
|
float: left;
|
||||||
font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
|
font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
|
||||||
font-size: 1.2em;
|
font-size: 1em;
|
||||||
height: 1.8em;
|
height: inherit;
|
||||||
|
padding: 0 .5em;
|
||||||
|
|
||||||
-webkit-focus-ring: none;
|
-webkit-focus-ring: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
.ff #head #searchbar #searchbar-fauxtext input#search-query {
|
.ie8 #head #searchbar #searchbar-fauxtext input#search-query {
|
||||||
padding: 0.2em 0 0.2em 0.5em;
|
padding: 0.5em 0 0 0.5em;
|
||||||
}
|
|
||||||
|
|
||||||
.ie #head #searchbar #searchbar-fauxtext input#search-query {
|
|
||||||
padding: 0.4em 0 0 0.5em;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#head #searchbar #searchbar-fauxtext input#search-query.ph {
|
#head #searchbar #searchbar-fauxtext input#search-query.ph {
|
||||||
@@ -631,7 +649,7 @@ ul.actions {
|
|||||||
margin: 0 !important;
|
margin: 0 !important;
|
||||||
padding: 0;
|
padding: 0;
|
||||||
float: right;
|
float: right;
|
||||||
font-size: 1.2em;
|
height: inherit;
|
||||||
|
|
||||||
border-radius: 0 3px 3px 0;
|
border-radius: 0 3px 3px 0;
|
||||||
-moz-border-radius: 0 3px 3px 0;
|
-moz-border-radius: 0 3px 3px 0;
|
||||||
@@ -643,7 +661,7 @@ ul.actions {
|
|||||||
background-position: -431px -1px;
|
background-position: -431px -1px;
|
||||||
background-repeat: no-repeat;
|
background-repeat: no-repeat;
|
||||||
display: block;
|
display: block;
|
||||||
height: 2em;
|
height: inherit;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
text-indent: -5000px;
|
text-indent: -5000px;
|
||||||
width: 28px;
|
width: 28px;
|
||||||
+16
-15
@@ -10,7 +10,7 @@
|
|||||||
|
|
||||||
|
|
||||||
html, body {
|
html, body {
|
||||||
color: black;
|
color: #333;
|
||||||
}
|
}
|
||||||
|
|
||||||
body {
|
body {
|
||||||
@@ -24,7 +24,7 @@ img {
|
|||||||
|
|
||||||
#template {
|
#template {
|
||||||
font-size: 14px;
|
font-size: 14px;
|
||||||
line-height: 1.4;
|
line-height: 1.6;
|
||||||
margin-bottom: 40px;
|
margin-bottom: 40px;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -35,7 +35,7 @@ a.absent {
|
|||||||
|
|
||||||
/* Primary Body Copy */
|
/* Primary Body Copy */
|
||||||
#template p {
|
#template p {
|
||||||
margin: 1em 0;
|
margin: 1.4em 0;
|
||||||
padding: 0;
|
padding: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -52,17 +52,17 @@ a.absent {
|
|||||||
}
|
}
|
||||||
|
|
||||||
#template h1 {
|
#template h1 {
|
||||||
border-bottom: 1px solid #ccc;
|
font-size: 28px;
|
||||||
font-size: 33px; /* was 32, GH is 33px */
|
|
||||||
line-height: normal;
|
line-height: normal;
|
||||||
padding: .08em 0 0 0;
|
padding: 10px 0 0 0;
|
||||||
margin: 0;
|
margin: 30px 0 10px;
|
||||||
}
|
}
|
||||||
|
|
||||||
#template h2 {
|
#template h2 {
|
||||||
|
border-bottom: 1px solid #ddd;
|
||||||
font-size: 22px;
|
font-size: 22px;
|
||||||
line-height: normal;
|
line-height: 1.6;
|
||||||
margin: 22px 0 0;
|
margin: 22px 0 10px;
|
||||||
padding: 7px 0 0;
|
padding: 7px 0 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -110,16 +110,16 @@ a.absent {
|
|||||||
/* Border Reset for headers with horizontal rules */
|
/* Border Reset for headers with horizontal rules */
|
||||||
#template > h2:first-child,
|
#template > h2:first-child,
|
||||||
#template > h1:first-child {
|
#template > h1:first-child {
|
||||||
margin: 12px 0 0;
|
margin: 12px 0 10px;
|
||||||
padding: 10px 0 0;
|
padding: 10px 0 10px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/* Lists, Blockquotes & Such */
|
/* Lists, Blockquotes & Such */
|
||||||
#template ul,
|
#template ul,
|
||||||
#template ol {
|
#template ol {
|
||||||
margin-top: 1.5em;
|
margin: 15px 0;
|
||||||
margin-left: 2.6em;
|
padding-left: 30px;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Nested Lists */
|
/* Nested Lists */
|
||||||
@@ -132,7 +132,7 @@ a.absent {
|
|||||||
#template ul ul,
|
#template ul ul,
|
||||||
#template ol ol {
|
#template ol ol {
|
||||||
padding: 0;
|
padding: 0;
|
||||||
margin: .5em 0;
|
margin: 15px 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
#template dl {
|
#template dl {
|
||||||
@@ -286,7 +286,7 @@ a.absent {
|
|||||||
background-color: #f8f8f8;
|
background-color: #f8f8f8;
|
||||||
border: 1px solid #dedede;
|
border: 1px solid #dedede;
|
||||||
font-size: 13px;
|
font-size: 13px;
|
||||||
padding: 0;
|
padding: 1px 5px;
|
||||||
|
|
||||||
-moz-border-radius: 3px;
|
-moz-border-radius: 3px;
|
||||||
-webkit-border-radius: 3px;
|
-webkit-border-radius: 3px;
|
||||||
@@ -313,6 +313,7 @@ pre, code {
|
|||||||
#template pre code, #template pre tt {
|
#template pre code, #template pre tt {
|
||||||
background-color: transparent;
|
background-color: transparent;
|
||||||
border: none;
|
border: none;
|
||||||
|
padding: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
Before Width: | Height: | Size: 9.3 KiB After Width: | Height: | Size: 9.3 KiB |
Executable → Regular
+13
-3
@@ -3,10 +3,16 @@
|
|||||||
<h1>History for <strong>{{path}}</strong></h1>
|
<h1>History for <strong>{{path}}</strong></h1>
|
||||||
|
|
||||||
<ul class="actions">
|
<ul class="actions">
|
||||||
<li class="minibutton"><a href="/history/{{escaped_name}}"
|
<li class="minibutton">
|
||||||
class="action-page-history">Back to Page History</a></li>
|
|
||||||
</ul>
|
|
||||||
{{>searchbar}}
|
{{>searchbar}}
|
||||||
|
</li>
|
||||||
|
<li class="minibutton"><a href="/{{escaped_name}}"
|
||||||
|
class="action-view-page">View Page</a></li>
|
||||||
|
<li class="minibutton"><a href="/edit/{{escaped_name}}"
|
||||||
|
class="action-edit-page">Edit Page</a></li>
|
||||||
|
<li class="minibutton"><a href="/history/{{escaped_name}}"
|
||||||
|
class="action-page-history">Page History</a></li>
|
||||||
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
{{#message}}
|
{{#message}}
|
||||||
@@ -17,6 +23,8 @@
|
|||||||
|
|
||||||
{{#show_revert}}
|
{{#show_revert}}
|
||||||
<ul class="actions">
|
<ul class="actions">
|
||||||
|
<li class="minibutton"><a href="/history/{{escaped_name}}"
|
||||||
|
class="action-page-history">Back to Page History</a></li>
|
||||||
<li class="minibutton">
|
<li class="minibutton">
|
||||||
<form name="gollum-revert" action="/revert/{{escaped_name}}/{{before}}/{{after}}" method="post" id="gollum-revert-form">
|
<form name="gollum-revert" action="/revert/{{escaped_name}}/{{before}}/{{after}}" method="post" id="gollum-revert-form">
|
||||||
<a href="#" class="gollum-revert-button">Revert Changes</a>
|
<a href="#" class="gollum-revert-button">Revert Changes</a>
|
||||||
@@ -41,6 +49,8 @@
|
|||||||
</div>
|
</div>
|
||||||
<div id="footer">
|
<div id="footer">
|
||||||
<ul class="actions">
|
<ul class="actions">
|
||||||
|
<li class="minibutton"><a href="/history/{{escaped_name}}"
|
||||||
|
class="action-page-history">Back to Page History</a></li>
|
||||||
{{#show_revert}}
|
{{#show_revert}}
|
||||||
<li class="minibutton">
|
<li class="minibutton">
|
||||||
<a href="#" class="gollum-revert-button">Revert Changes</a>
|
<a href="#" class="gollum-revert-button">Revert Changes</a>
|
||||||
|
|||||||
Executable → Regular
Executable → Regular
+3
-1
@@ -2,12 +2,14 @@
|
|||||||
<div id="head">
|
<div id="head">
|
||||||
<h1>History for <strong>{{title}}</strong></h1>
|
<h1>History for <strong>{{title}}</strong></h1>
|
||||||
<ul class="actions">
|
<ul class="actions">
|
||||||
|
<li class="minibutton">
|
||||||
|
{{>searchbar}}
|
||||||
|
</li>
|
||||||
<li class="minibutton"><a href="/{{escaped_name}}"
|
<li class="minibutton"><a href="/{{escaped_name}}"
|
||||||
class="action-view-page">View Page</a></li>
|
class="action-view-page">View Page</a></li>
|
||||||
<li class="minibutton"><a href="/edit/{{escaped_name}}"
|
<li class="minibutton"><a href="/edit/{{escaped_name}}"
|
||||||
class="action-edit-page">Edit Page</a></li>
|
class="action-edit-page">Edit Page</a></li>
|
||||||
</ul>
|
</ul>
|
||||||
{{>searchbar}}
|
|
||||||
</div>
|
</div>
|
||||||
<div id="wiki-history">
|
<div id="wiki-history">
|
||||||
|
|
||||||
|
|||||||
Executable → Regular
Executable → Regular
+3
-1
@@ -2,6 +2,9 @@
|
|||||||
<div id="head">
|
<div id="head">
|
||||||
<h1>{{title}}</h1>
|
<h1>{{title}}</h1>
|
||||||
<ul class="actions">
|
<ul class="actions">
|
||||||
|
<li class="minibutton">
|
||||||
|
{{>searchbar}}
|
||||||
|
</li>
|
||||||
<li class="minibutton"><a href="/pages"
|
<li class="minibutton"><a href="/pages"
|
||||||
class="action-all-pages">All Pages</a></li>
|
class="action-all-pages">All Pages</a></li>
|
||||||
<li class="minibutton" class="jaws">
|
<li class="minibutton" class="jaws">
|
||||||
@@ -13,7 +16,6 @@
|
|||||||
<li class="minibutton"><a href="/history/{{escaped_name}}"
|
<li class="minibutton"><a href="/history/{{escaped_name}}"
|
||||||
class="action-page-history">Page History</a></li>
|
class="action-page-history">Page History</a></li>
|
||||||
</ul>
|
</ul>
|
||||||
{{>searchbar}}
|
|
||||||
</div>
|
</div>
|
||||||
<div id="wiki-content">
|
<div id="wiki-content">
|
||||||
<div class="wrap {{#has_footer}} has-footer {{/has_footer}} {{#has_sidebar}} has-rightbar{{/has_sidebar}}">
|
<div class="wrap {{#has_footer}} has-footer {{/has_footer}} {{#has_sidebar}} has-rightbar{{/has_sidebar}}">
|
||||||
|
|||||||
@@ -2,10 +2,12 @@
|
|||||||
<div id="head">
|
<div id="head">
|
||||||
<h1>{{title}}</h1>
|
<h1>{{title}}</h1>
|
||||||
<ul class="actions">
|
<ul class="actions">
|
||||||
|
<li class="minibutton">
|
||||||
|
{{>searchbar}}
|
||||||
|
</li>
|
||||||
<li class="minibutton"><a href="/"
|
<li class="minibutton"><a href="/"
|
||||||
class="action-edit-page">Home</a></li>
|
class="action-edit-page">Home</a></li>
|
||||||
</ul>
|
</ul>
|
||||||
{{>searchbar}}
|
|
||||||
</div>
|
</div>
|
||||||
<div id="results">
|
<div id="results">
|
||||||
|
|
||||||
|
|||||||
@@ -2,10 +2,12 @@
|
|||||||
<div id="head">
|
<div id="head">
|
||||||
<h1>Search Results for <strong>{{query}}</strong></h1>
|
<h1>Search Results for <strong>{{query}}</strong></h1>
|
||||||
<ul class="actions">
|
<ul class="actions">
|
||||||
|
<li class="minibutton">
|
||||||
|
{{>searchbar}}
|
||||||
|
</li>
|
||||||
<li class="minibutton"><a href="/"
|
<li class="minibutton"><a href="/"
|
||||||
class="action-edit-page">Home</a></li>
|
class="action-edit-page">Home</a></li>
|
||||||
</ul>
|
</ul>
|
||||||
{{>searchbar}}
|
|
||||||
</div>
|
</div>
|
||||||
<div id="results">
|
<div id="results">
|
||||||
|
|
||||||
|
|||||||
@@ -38,8 +38,9 @@ module Gollum
|
|||||||
@wiki.history_sanitizer :
|
@wiki.history_sanitizer :
|
||||||
@wiki.sanitizer
|
@wiki.sanitizer
|
||||||
|
|
||||||
data = extract_tex(@data.dup)
|
data = @data.dup
|
||||||
data = extract_code(data)
|
data = extract_code(data)
|
||||||
|
data = extract_tex(data)
|
||||||
data = extract_wsd(data)
|
data = extract_wsd(data)
|
||||||
data = extract_tags(data)
|
data = extract_tags(data)
|
||||||
begin
|
begin
|
||||||
@@ -116,6 +117,9 @@ module Gollum
|
|||||||
#
|
#
|
||||||
# Returns the placeholder'd String data.
|
# Returns the placeholder'd String data.
|
||||||
def extract_tags(data)
|
def extract_tags(data)
|
||||||
|
if @format == :asciidoc
|
||||||
|
return data
|
||||||
|
end
|
||||||
data.gsub!(/(.?)\[\[(.+?)\]\]([^\[]?)/m) do
|
data.gsub!(/(.?)\[\[(.+?)\]\]([^\[]?)/m) do
|
||||||
if $1 == "'" && $3 != "'"
|
if $1 == "'" && $3 != "'"
|
||||||
"[[#{$2}]]#{$3}"
|
"[[#{$2}]]#{$3}"
|
||||||
|
|||||||
+2
-24
@@ -124,35 +124,13 @@ module Gollum
|
|||||||
self.class.canonicalize_filename(filename)
|
self.class.canonicalize_filename(filename)
|
||||||
end
|
end
|
||||||
|
|
||||||
# Public: If the first element of a formatted page is an <h1> tag it can
|
# Public: The title will be constructed from the
|
||||||
# be considered the title of the page and used in the display. If the
|
|
||||||
# first element is NOT an <h1> tag, the title will be constructed from the
|
|
||||||
# filename by stripping the extension and replacing any dashes with
|
# filename by stripping the extension and replacing any dashes with
|
||||||
# spaces.
|
# spaces.
|
||||||
#
|
#
|
||||||
# Returns the fully sanitized String title.
|
# Returns the fully sanitized String title.
|
||||||
def title
|
def title
|
||||||
doc = Nokogiri::HTML(%{<div id="gollum-root">} + self.formatted_data + %{</div>})
|
header = Sanitize.clean(name).strip
|
||||||
|
|
||||||
header =
|
|
||||||
case self.format
|
|
||||||
when :asciidoc
|
|
||||||
doc.css("div#gollum-root > div#header > h1:first-child")
|
|
||||||
when :org
|
|
||||||
doc.css("div#gollum-root > p.title:first-child")
|
|
||||||
when :pod
|
|
||||||
doc.css("div#gollum-root > a.dummyTopAnchor:first-child + h1")
|
|
||||||
when :rest
|
|
||||||
doc.css("div#gollum-root > div > div > h1:first-child")
|
|
||||||
else
|
|
||||||
doc.css("div#gollum-root > h1:first-child")
|
|
||||||
end
|
|
||||||
|
|
||||||
if !header.empty?
|
|
||||||
Sanitize.clean(header.to_html)
|
|
||||||
else
|
|
||||||
Sanitize.clean(name)
|
|
||||||
end.strip
|
|
||||||
end
|
end
|
||||||
|
|
||||||
# Public: The path of the page within the repo.
|
# Public: The path of the page within the repo.
|
||||||
|
|||||||
@@ -30,7 +30,7 @@ module Gollum
|
|||||||
'compact', 'coords', 'datetime', 'dir',
|
'compact', 'coords', 'datetime', 'dir',
|
||||||
'disabled', 'enctype', 'for', 'frame',
|
'disabled', 'enctype', 'for', 'frame',
|
||||||
'headers', 'height', 'hreflang',
|
'headers', 'height', 'hreflang',
|
||||||
'hspace', 'ismap', 'label', 'lang',
|
'hspace', 'id', 'ismap', 'label', 'lang',
|
||||||
'longdesc', 'maxlength', 'media', 'method',
|
'longdesc', 'maxlength', 'media', 'method',
|
||||||
'multiple', 'name', 'nohref', 'noshade',
|
'multiple', 'name', 'nohref', 'noshade',
|
||||||
'nowrap', 'prompt', 'readonly', 'rel', 'rev',
|
'nowrap', 'prompt', 'readonly', 'rel', 'rev',
|
||||||
@@ -43,7 +43,7 @@ module Gollum
|
|||||||
|
|
||||||
# Default whitelisted protocols for URLs.
|
# Default whitelisted protocols for URLs.
|
||||||
PROTOCOLS = {
|
PROTOCOLS = {
|
||||||
'a' => {'href' => ['http', 'https', 'mailto', 'ftp', 'irc', :relative]},
|
'a' => {'href' => ['http', 'https', 'mailto', 'ftp', 'irc', 'apt', :relative]},
|
||||||
'img' => {'src' => ['http', 'https', :relative]}
|
'img' => {'src' => ['http', 'https', :relative]}
|
||||||
}.freeze
|
}.freeze
|
||||||
|
|
||||||
@@ -120,12 +120,12 @@ module Gollum
|
|||||||
attr_writer :allow_comments
|
attr_writer :allow_comments
|
||||||
|
|
||||||
def initialize
|
def initialize
|
||||||
@elements = ELEMENTS
|
@elements = ELEMENTS.dup
|
||||||
@attributes = ATTRIBUTES
|
@attributes = ATTRIBUTES.dup
|
||||||
@protocols = PROTOCOLS
|
@protocols = PROTOCOLS.dup
|
||||||
@transformers = TRANSFORMERS
|
@transformers = TRANSFORMERS.dup
|
||||||
@add_attributes = {}
|
@add_attributes = {}
|
||||||
@remove_contents = REMOVE_CONTENTS
|
@remove_contents = REMOVE_CONTENTS.dup
|
||||||
@allow_comments = false
|
@allow_comments = false
|
||||||
@id_prefix = 'wiki-'
|
@id_prefix = 'wiki-'
|
||||||
yield self if block_given?
|
yield self if block_given?
|
||||||
|
|||||||
@@ -8,8 +8,8 @@ context "Wiki" do
|
|||||||
|
|
||||||
test "normalizes commit hash" do
|
test "normalizes commit hash" do
|
||||||
commit = {:message => 'abc'}
|
commit = {:message => 'abc'}
|
||||||
name = @wiki.repo.config['user.name']
|
name = @wiki.repo.config['user.name'] || @wiki.default_committer_name
|
||||||
email = @wiki.repo.config['user.email']
|
email = @wiki.repo.config['user.email'] || @wiki.default_committer_email
|
||||||
committer = Gollum::Committer.new(@wiki, commit)
|
committer = Gollum::Committer.new(@wiki, commit)
|
||||||
assert_equal name, committer.actor.name
|
assert_equal name, committer.actor.name
|
||||||
assert_equal email, committer.actor.email
|
assert_equal email, committer.actor.email
|
||||||
|
|||||||
+41
-21
@@ -495,6 +495,13 @@ np.array([[2,2],[1,3]],np.float)
|
|||||||
compare(content, output)
|
compare(content, output)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
test "allows apt uri schemes" do
|
||||||
|
content = "[Hack me](apt:gettext)"
|
||||||
|
output = "<p><a href=\"apt:gettext\">Hackme</a></p>"
|
||||||
|
compare(content, output)
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
test "removes style blocks completely" do
|
test "removes style blocks completely" do
|
||||||
content = "<style>body { color: red }</style>foobar"
|
content = "<style>body { color: red }</style>foobar"
|
||||||
output = "<p>foobar</p>"
|
output = "<p>foobar</p>"
|
||||||
@@ -546,29 +553,29 @@ np.array([[2,2],[1,3]],np.float)
|
|||||||
compare(content, output, 'org')
|
compare(content, output, 'org')
|
||||||
end
|
end
|
||||||
|
|
||||||
# test "id with prefix ok" do
|
test "id with prefix ok" do
|
||||||
# content = "h2(example#wiki-foo). xxxx"
|
content = "h2(example#wiki-foo). xxxx"
|
||||||
# output = %(<h2 class="example" id="wiki-foo">xxxx</h2>)
|
output = %(<h2 class="example" id="wiki-foo">xxxx</h2>)
|
||||||
# compare(content, output, :textile)
|
compare(content, output, :textile)
|
||||||
# end
|
end
|
||||||
|
|
||||||
# test "id prefix added" do
|
test "id prefix added" do
|
||||||
# content = "h2(#foo). xxxx[1]\n\nfn1.footnote"
|
content = "h2(#foo). xxxx[1]\n\nfn1.footnote"
|
||||||
# output = "<h2 id=\"wiki-foo\">xxxx" +
|
output = "<h2 id=\"wiki-foo\">xxxx" +
|
||||||
# "<sup class=\"footnote\" id=\"wiki-fnr1\"><a href=\"#wiki-fn1\">1</a></sup></h2>" +
|
"<sup class=\"footnote\" id=\"wiki-fnr1\"><a href=\"#wiki-fn1\">1</a></sup></h2>" +
|
||||||
# "\n<p class=\"footnote\" id=\"wiki-fn1\"><a href=\"#wiki-fnr1\"><sup>1</sup></a> footnote</p>"
|
"\n<p class=\"footnote\" id=\"wiki-fn1\"><a href=\"#wiki-fnr1\"><sup>1</sup></a> footnote</p>"
|
||||||
# compare(content, output, :textile)
|
compare(content, output, :textile)
|
||||||
# end
|
end
|
||||||
|
|
||||||
# test "name prefix added" do
|
test "name prefix added" do
|
||||||
# content = "abc\n\n__TOC__\n\n==Header==\n\nblah"
|
content = "abc\n\n__TOC__\n\n==Header==\n\nblah"
|
||||||
# compare content, '', :mediawiki, [
|
compare content, '', :mediawiki, [
|
||||||
# /id="wiki-toc"/,
|
/id="wiki-toc"/,
|
||||||
# /href="#wiki-Header"/,
|
/href="#wiki-Header"/,
|
||||||
# /id="wiki-Header"/,
|
/id="wiki-Header"/,
|
||||||
# /name="wiki-Header"/
|
/name="wiki-Header"/
|
||||||
# ]
|
]
|
||||||
# end
|
end
|
||||||
|
|
||||||
#########################################################################
|
#########################################################################
|
||||||
#
|
#
|
||||||
@@ -588,6 +595,19 @@ np.array([[2,2],[1,3]],np.float)
|
|||||||
compare(content, output, 'md')
|
compare(content, output, 'md')
|
||||||
end
|
end
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# Asciidoc
|
||||||
|
#########################################################################
|
||||||
|
|
||||||
|
test "asciidoc header" do
|
||||||
|
compare("= Book Title\n\n== Heading", '<div class="sect1"><h2 id="wiki-_heading">Heading</h2><div class="sectionbody"></div></div>', 'asciidoc')
|
||||||
|
end
|
||||||
|
|
||||||
|
test "internal links with asciidoc" do
|
||||||
|
compare("= Book Title\n\n[[anid]]\n== Heading", '<div class="sect1"><h2 id="wiki-anid">Heading</h2><div class="sectionbody"></div></div>', 'asciidoc')
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
#########################################################################
|
#########################################################################
|
||||||
#
|
#
|
||||||
# Helpers
|
# Helpers
|
||||||
|
|||||||
+3
-3
@@ -104,12 +104,12 @@ context "Page" do
|
|||||||
assert_equal 'My Precious', page.title
|
assert_equal 'My Precious', page.title
|
||||||
end
|
end
|
||||||
|
|
||||||
test "title from h1 with normal contents" do
|
test "title from filename with normal contents" do
|
||||||
page = @wiki.page('Home')
|
page = @wiki.page('Home')
|
||||||
assert_equal "The LOTR Wiki", page.title
|
assert_equal "Home", page.title
|
||||||
end
|
end
|
||||||
|
|
||||||
test "title from h1 with html contents" do
|
test "title from filename with html contents" do
|
||||||
page = @wiki.page('Eye Of Sauron')
|
page = @wiki.page('Eye Of Sauron')
|
||||||
assert_equal "Eye Of Sauron", page.title
|
assert_equal "Eye Of Sauron", page.title
|
||||||
end
|
end
|
||||||
|
|||||||
Reference in New Issue
Block a user