Merge with upstream.

This commit is contained in:
bootstraponline
2012-05-08 13:13:36 -06:00
30 changed files with 982 additions and 780 deletions
+10 -1
View File
@@ -106,6 +106,13 @@ are named `_Sidebar.ext` where the extension is one of the supported formats.
Sidebars affect all pages in their directory and any subdirectories that do not
have a sidebar file of their own.
## HEADER FILES
Header files allow you to add a simple header to your wiki. Header files must
be named `_Header.ext` where the extension is one of the supported formats.
Like sidebars, headers affect all pages in their directory and any
subdirectories that do not have a header file of their own.
## FOOTER FILES
Footer files allow you to add a simple footer to your wiki. Footer files must
@@ -113,7 +120,6 @@ be named `_Footer.ext` where the extension is one of the supported formats.
Like sidebars, footers affect all pages in their directory and any
subdirectories that do not have a footer file of their own.
## HTML SANITIZATION
For security and compatibility reasons Gollum wikis may not contain custom CSS
@@ -466,6 +472,9 @@ like Rack::Auth, OmniAuth, etc.
Precious::App.set(:default_markup, :markdown) # set your favorite markup language
run Precious::App
## Windows Filename Validation
Note that filenames on windows must not contain any of the following characters `\ / : * ? " < > |`. See [this support article](http://support.microsoft.com/kb/177506) for details.
## Testing
[![Build Status](https://secure.travis-ci.org/github/gollum.png?branch=master)](http://travis-ci.org/github/gollum)
+4 -79
View File
@@ -4,8 +4,8 @@ Gem::Specification.new do |s|
s.rubygems_version = '1.3.5'
s.name = 'gollum'
s.version = '1.4.3'
s.date = '2012-05-03'
s.version = '2.0.0'
s.date = '2012-05-06'
s.rubyforge_project = 'gollum'
s.summary = "A simple, Git-powered wiki."
@@ -22,7 +22,7 @@ Gem::Specification.new do |s|
s.rdoc_options = ["--charset=UTF-8"]
s.extra_rdoc_files = %w[README.md LICENSE]
s.add_dependency('grit', "~> 2.4.1")
s.add_dependency('grit', "~> 2.5.0")
s.add_dependency('github-markup', [">= 0.7.0", "< 1.0.0"])
s.add_dependency('github-markdown')
s.add_dependency('pygments.rb', "~> 0.2.0")
@@ -37,7 +37,7 @@ Gem::Specification.new do |s|
s.add_development_dependency('org-ruby', '~>0.6.2')
s.add_development_dependency('shoulda')
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')
# = MANIFEST =
@@ -75,80 +75,6 @@ Gem::Specification.new do |s|
lib/gollum/frontend/public/gollum/javascript/gollum.placeholder.js
lib/gollum/frontend/public/gollum/javascript/jquery.color.js
lib/gollum/frontend/public/gollum/javascript/jquery.js
lib/gollum/frontend/public/gollum/livepreview/css/custom.css
lib/gollum/frontend/public/gollum/livepreview/css/gollum/template.css
lib/gollum/frontend/public/gollum/livepreview/css/highlightjs/github.css
lib/gollum/frontend/public/gollum/livepreview/images/lr_24.png
lib/gollum/frontend/public/gollum/livepreview/images/save_24.png
lib/gollum/frontend/public/gollum/livepreview/index.html
lib/gollum/frontend/public/gollum/livepreview/js/ace/ace.js
lib/gollum/frontend/public/gollum/livepreview/js/ace/mode-markdown.js
lib/gollum/frontend/public/gollum/livepreview/js/ace/theme-twilight.js
lib/gollum/frontend/public/gollum/livepreview/js/highlightjs/highlight.pack.js
lib/gollum/frontend/public/gollum/livepreview/js/highlightjs/languages/1c.js
lib/gollum/frontend/public/gollum/livepreview/js/highlightjs/languages/actionscript.js
lib/gollum/frontend/public/gollum/livepreview/js/highlightjs/languages/apache.js
lib/gollum/frontend/public/gollum/livepreview/js/highlightjs/languages/avrasm.js
lib/gollum/frontend/public/gollum/livepreview/js/highlightjs/languages/axapta.js
lib/gollum/frontend/public/gollum/livepreview/js/highlightjs/languages/bash.js
lib/gollum/frontend/public/gollum/livepreview/js/highlightjs/languages/cmake.js
lib/gollum/frontend/public/gollum/livepreview/js/highlightjs/languages/coffeescript.js
lib/gollum/frontend/public/gollum/livepreview/js/highlightjs/languages/cpp.js
lib/gollum/frontend/public/gollum/livepreview/js/highlightjs/languages/cs.js
lib/gollum/frontend/public/gollum/livepreview/js/highlightjs/languages/css.js
lib/gollum/frontend/public/gollum/livepreview/js/highlightjs/languages/d.js
lib/gollum/frontend/public/gollum/livepreview/js/highlightjs/languages/delphi.js
lib/gollum/frontend/public/gollum/livepreview/js/highlightjs/languages/diff.js
lib/gollum/frontend/public/gollum/livepreview/js/highlightjs/languages/django.js
lib/gollum/frontend/public/gollum/livepreview/js/highlightjs/languages/dos.js
lib/gollum/frontend/public/gollum/livepreview/js/highlightjs/languages/erlang-repl.js
lib/gollum/frontend/public/gollum/livepreview/js/highlightjs/languages/erlang.js
lib/gollum/frontend/public/gollum/livepreview/js/highlightjs/languages/go.js
lib/gollum/frontend/public/gollum/livepreview/js/highlightjs/languages/haskell.js
lib/gollum/frontend/public/gollum/livepreview/js/highlightjs/languages/http.js
lib/gollum/frontend/public/gollum/livepreview/js/highlightjs/languages/ini.js
lib/gollum/frontend/public/gollum/livepreview/js/highlightjs/languages/java.js
lib/gollum/frontend/public/gollum/livepreview/js/highlightjs/languages/javascript.js
lib/gollum/frontend/public/gollum/livepreview/js/highlightjs/languages/lisp.js
lib/gollum/frontend/public/gollum/livepreview/js/highlightjs/languages/lua.js
lib/gollum/frontend/public/gollum/livepreview/js/highlightjs/languages/markdown.js
lib/gollum/frontend/public/gollum/livepreview/js/highlightjs/languages/matlab.js
lib/gollum/frontend/public/gollum/livepreview/js/highlightjs/languages/mel.js
lib/gollum/frontend/public/gollum/livepreview/js/highlightjs/languages/nginx.js
lib/gollum/frontend/public/gollum/livepreview/js/highlightjs/languages/objectivec.js
lib/gollum/frontend/public/gollum/livepreview/js/highlightjs/languages/parser3.js
lib/gollum/frontend/public/gollum/livepreview/js/highlightjs/languages/perl.js
lib/gollum/frontend/public/gollum/livepreview/js/highlightjs/languages/php.js
lib/gollum/frontend/public/gollum/livepreview/js/highlightjs/languages/profile.js
lib/gollum/frontend/public/gollum/livepreview/js/highlightjs/languages/python.js
lib/gollum/frontend/public/gollum/livepreview/js/highlightjs/languages/r.js
lib/gollum/frontend/public/gollum/livepreview/js/highlightjs/languages/renderman.js
lib/gollum/frontend/public/gollum/livepreview/js/highlightjs/languages/ruby.js
lib/gollum/frontend/public/gollum/livepreview/js/highlightjs/languages/rust.js
lib/gollum/frontend/public/gollum/livepreview/js/highlightjs/languages/scala.js
lib/gollum/frontend/public/gollum/livepreview/js/highlightjs/languages/smalltalk.js
lib/gollum/frontend/public/gollum/livepreview/js/highlightjs/languages/sql.js
lib/gollum/frontend/public/gollum/livepreview/js/highlightjs/languages/tex.js
lib/gollum/frontend/public/gollum/livepreview/js/highlightjs/languages/vala.js
lib/gollum/frontend/public/gollum/livepreview/js/highlightjs/languages/vbscript.js
lib/gollum/frontend/public/gollum/livepreview/js/highlightjs/languages/vhdl.js
lib/gollum/frontend/public/gollum/livepreview/js/highlightjs/languages/xml.js
lib/gollum/frontend/public/gollum/livepreview/js/jquery/jquery-1.7.2.min.js
lib/gollum/frontend/public/gollum/livepreview/js/pagedown/Markdown.Converter.js
lib/gollum/frontend/public/gollum/livepreview/js/pagedown/Markdown.Sanitizer.js
lib/gollum/frontend/public/gollum/livepreview/licenses/ace/LICENSE.txt
lib/gollum/frontend/public/gollum/livepreview/licenses/bootstraponline_gollum/LICENSE.txt
lib/gollum/frontend/public/gollum/livepreview/licenses/gollum/LICENSE.txt
lib/gollum/frontend/public/gollum/livepreview/licenses/highlightjs/AUTHORS.en.txt
lib/gollum/frontend/public/gollum/livepreview/licenses/highlightjs/AUTHORS.ru.txt
lib/gollum/frontend/public/gollum/livepreview/licenses/highlightjs/LICENSE.txt
lib/gollum/frontend/public/gollum/livepreview/licenses/jquery/MIT-LICENSE.txt
lib/gollum/frontend/public/gollum/livepreview/licenses/licenses.txt
lib/gollum/frontend/public/gollum/livepreview/licenses/notepages/LICENSE.txt
lib/gollum/frontend/public/gollum/livepreview/licenses/pagedown/LICENSE.txt
lib/gollum/frontend/public/gollum/livepreview/licenses/retina_display_icon_set/by_sa_3.0_unported_legalcode.txt
lib/gollum/frontend/public/gollum/livepreview/licenses/sizzle/LICENSE.txt
lib/gollum/frontend/public/gollum/livepreview/readme.md
lib/gollum/frontend/templates/compare.mustache
lib/gollum/frontend/templates/create.mustache
lib/gollum/frontend/templates/edit.mustache
@@ -160,7 +86,6 @@ Gem::Specification.new do |s|
lib/gollum/frontend/templates/pages.mustache
lib/gollum/frontend/templates/search.mustache
lib/gollum/frontend/templates/searchbar.mustache
lib/gollum/frontend/uri_encode_component.rb
lib/gollum/frontend/views/compare.rb
lib/gollum/frontend/views/create.rb
lib/gollum/frontend/views/edit.rb
+1 -1
View File
@@ -21,7 +21,7 @@ require File.expand_path('../gollum/tex', __FILE__)
require File.expand_path('../gollum/web_sequence_diagram', __FILE__)
module Gollum
VERSION = '1.4.3'
VERSION = '2.0.0'
def self.assets_path
::File.expand_path('gollum/frontend/public', ::File.dirname(__FILE__))
+2
View File
@@ -60,6 +60,7 @@ module Precious
redirect '/livepreview/index.html?page=' + encodeURIComponent(@name)
else
@page = page
@page.version = wiki.repo.log(wiki.ref, @page.path).first
@content = page.raw_data
mustache :edit
end
@@ -77,6 +78,7 @@ module Precious
update_wiki_page(wiki, page, params[:content], commit, name,
params[:format])
update_wiki_page(wiki, page.header, params[:header], commit) if params[:header]
update_wiki_page(wiki, page.footer, params[:footer], commit) if params[:footer]
update_wiki_page(wiki, page.sidebar, params[:sidebar], commit) if params[:sidebar]
committer.commit
@@ -30,6 +30,7 @@ a {
-webkit-border-radius: 1em;
}
.ff #gollum-editor,
.ie #gollum-editor {
padding-bottom: 1em;
}
@@ -51,9 +52,9 @@ a {
background: #fff;
border: 1px solid #ddd;
color: #000;
font-size: 1.3em;
font-size: 1.1em;
font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
line-height: 1.8em;
line-height: 1.5em;
margin: 1em 0 0.4em;
padding: 0.5em;
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 {
overflow: hidden;
padding: 0 0 1.1em 0;
padding: .2em 0 .5em 0;
}
#gollum-editor #gollum-editor-function-bar
#gollum-editor-format-selector select {
background-color: #f9f9f9;
border: 1px solid transparent;
border: 1px solid #ddd;
color: #333;
float: right;
font-size: 1.1em;
font-size: 1em;
font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
font-weight: bold;
line-height: 1.6em;
padding: 0.5em 0.7em;
margin-bottom: 0;
padding: 0.3em 0.4em;
border-radius: 0.5em;
-moz-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-format-selector label {
color: #999;
float: right;
font-size: 1.1em;
font-size: 1em;
font-weight: bold;
line-height: 1.6em;
padding: 0.6em 0.5em 0 0;
padding: .3em 0.5em 0 0;
}
#gollum-editor #gollum-editor-function-bar
@@ -240,12 +233,13 @@ a#function-help:hover span { background-position: -405px -28px; }
/* @section form-fields */
#gollum-editor textarea#gollum-editor-sidebar,
#gollum-editor textarea#gollum-editor-body {
background: #fff;
border: 1px solid #ddd;
font-size: 1.3em;
font-size: 1em;
font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
line-height: 1.8em;
line-height: 1.4em;
margin: 1em 0 0.4em;
padding: 0.5em; /* I don't really like mixing pct & em here… */
width: 98%;
@@ -259,7 +253,7 @@ a#function-help:hover span { background-position: -405px -28px; }
cursor: pointer;
display: block;
float: left;
font-size: 1.2em;
font-size: 1em;
font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
font-weight: bold;
margin: 0;
@@ -337,12 +331,15 @@ a#function-help:hover span { background-position: -405px -28px; }
font-size: 1.6em;
float: left;
margin: 0;
padding: 0.4em 0 0 0.3em;
padding: 0.15em 0 0 0.3em;
text-shadow: 0 -1px 0 #fff;
}
#gollum-editor .collapsed h4 {
color: #bbb;
}
#gollum-editor .collapsed a.button:hover,
#gollum-editor .expanded h4 a.button:hover {
#gollum-editor .expanded a.button:hover {
color: #fff;
text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.3);
text-decoration: none;
@@ -403,7 +400,7 @@ a#function-help:hover span { background-position: -405px -28px; }
color: #333;
cursor: pointer;
display: block;
font-size: 1.2em;
font-size: 1em;
font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
font-weight: bold;
line-height: 1.2em;
+354 -356
View File
@@ -37,18 +37,18 @@ a:hover, a:visited {
/* @section head */
#head {
border-bottom: 1px solid #ddd;
margin: 4.5em 0 0.5em;
padding: 0.5em 0;
overflow: hidden;
}
#head h1 {
display: none;
}
#head h1 {
display: none;
}
#head ul.actions {
float: right;
}
#head ul.actions {
float: right;
}
/* @section content */
#wiki-content {
@@ -56,171 +56,152 @@ a:hover, a:visited {
overflow: visible;
}
#wiki-content .wrap {
height: 1%;
overflow: auto;
}
#wiki-content .wrap {
height: 1%;
overflow: auto;
}
/* @section comments */
#wiki-body #inline-comment {
display: none; /* todo */
}
/* @section comments */
#wiki-body #inline-comment {
display: none; /* todo */
}
/* @section body */
#wiki-body {
display: block;
float: left;
margin-right: 3%;
width: 100%;
}
/* @section body */
#wiki-body {
display: block;
float: left;
margin-right: 3%;
margin-bottom: 40px;
width: 100%;
}
.has-rightbar #wiki-body {
width: 68%;
}
.has-rightbar #wiki-body {
width: 68%;
}
/* @section rightbar */
#wiki-rightbar {
background-color: #f7f7f7;
border: 1px solid #ddd;
font-size: 13px;
float: right;
padding: 7px;
width: 25%;
/* @section rightbar */
#wiki-rightbar {
background-color: #f7f7f7;
border: 1px solid #ddd;
font-size: 13px;
float: right;
padding: 7px;
width: 25%;
color: #555;
border-radius: 0.5em;
-moz-border-radius: 0.5em;
-webkit-border-radius: 0.5em;
}
border-radius: 0.5em;
-moz-border-radius: 0.5em;
-webkit-border-radius: 0.5em;
}
#wiki-rightbar p {
margin: 13px 0 0;
}
#wiki-rightbar p {
margin: 13px 0 0;
}
#wiki-rightbar > p:first-child {
margin-top: 0;
}
#wiki-rightbar > p:first-child {
margin-top: 10px;
}
#wiki-rightbar p.parent {
border-bottom: 1px solid #bbb;
font-weight: bold;
margin: 0 0 0.5em 0;
padding: 0 0 0.5em 0;
text-shadow: 0 1px 0 #fff;
}
#wiki-rightbar p.parent {
border-bottom: 1px solid #bbb;
font-weight: bold;
margin: 0 0 0.5em 0;
padding: 0 0 0.5em 0;
text-shadow: 0 1px 0 #fff;
}
/* Back arrow */
#wiki-rightbar p.parent:before {
color: #666;
content: "← ";
}
/* Back arrow */
#wiki-rightbar p.parent:before {
color: #666;
content: "← ";
}
#wiki-rightbar h3 {
font-size: 1.2em;
color: #333;
margin: 1.2em 0 0;
padding: 0;
text-shadow: 0 1px 0 #fff;
}
/* @section footer */
#wiki-rightbar ul {
margin: 0.5em 0 1em;
padding: 0;
}
#wiki-footer {
clear: both;
margin: 2em 0 5em;
}
#wiki-rightbar ul li {
color: #bbb;
margin: 0 0 0 1em;
padding: 0;
line-height: 1.75em;
list-style-position: inside;
list-style-type: round;
}
.has-rightbar #wiki-footer {
width: 70%;
}
#wiki-rightbar #nav ul li a {
font-weight: bold;
text-shadow: 0 1px 0 #fff;
}
#wiki-header #header-content,
#wiki-footer #footer-content {
background-color: #f7f7f7;
border: 1px solid #ddd;
padding: 1em;
/* @section footer */
#wiki-footer {
clear: both;
margin: 2em 0 5em;
}
border-radius: 0.5em;
-moz-border-radius: 0.5em;
-webkit-border-radius: 0.5em;
}
#wiki-header #header-content {
margin-bottom: 1.5em;
}
#wiki-footer #footer-content {
margin-top: 1.5em;
}
.has-rightbar #wiki-footer {
width: 70%;
}
#wiki-footer #footer-content h3 {
font-size: 1.2em;
color: #333;
margin: 0;
padding: 0 0 0.2em;
text-shadow: 0 1px 0 #fff;
}
#wiki-footer #footer-content {
background-color: #f7f7f7;
border: 1px solid #ddd;
font-size: 1.2em;
line-height: 1.5em;
margin-top: 1.5em;
padding: 1em;
#wiki-footer #footer-content p {
margin: 0.5em 0 0;
padding: 0;
}
border-radius: 0.5em;
-moz-border-radius: 0.5em;
-webkit-border-radius: 0.5em;
}
#wiki-footer #footer-content ul.links {
margin: 0.5em 0 0;
overflow: hidden;
padding: 0;
}
#wiki-footer #footer-content h3 {
font-size: 1.2em;
color: #333;
margin: 0;
padding: 0 0 0.2em;
text-shadow: 0 1px 0 #fff;
}
#wiki-footer #footer-content ul.links li {
color: #999;
float: left;
list-style-position: inside;
list-style-type: square;
padding: 0;
margin-left: 0.75em;
}
#wiki-footer #footer-content p {
margin: 0.5em 0 0;
padding: 0;
}
#wiki-footer #footer-content ul.links li a {
font-weight: bold;
text-shadow: 0 1px 0 #fff;
}
#wiki-footer #footer-content ul.links {
margin: 0.5em 0 0;
overflow: hidden;
padding: 0;
}
#wiki-footer #footer-content ul.links li:first-child {
list-style-type: none;
margin: 0;
}
#wiki-footer #footer-content ul.links li {
color: #999;
float: left;
list-style-position: inside;
list-style-type: square;
padding: 0;
margin-left: 0.75em;
}
.ff #wiki-footer #footer-content ul.links li:first-child {
margin: 0 -0.75em 0 0;
}
#wiki-footer #footer-content ul.links li a {
font-weight: bold;
text-shadow: 0 1px 0 #fff;
}
/* @section page-footer */
.page #footer {
border-top: 1px solid #ddd;
margin: 1em 0 7em;
}
#wiki-footer #footer-content ul.links li:first-child {
list-style-type: none;
margin: 0;
}
#footer p#last-edit {
font-size: .9em;
line-height: 1.6em;
color: #999;
margin: 0.9em 0;
}
.ff #wiki-footer #footer-content ul.links li:first-child {
margin: 0 -0.75em 0 0;
}
/* @section page-footer */
.page #footer {
margin: 1em 0 7em;
}
#footer p#last-edit {
font-size: .9em;
line-height: 1.6em;
color: #999;
margin: 0.9em 0;
}
#footer p#last-edit span.username {
font-weight: bold;
}
#footer p#last-edit span.username {
font-weight: bold;
}
/* @section history */
@@ -229,107 +210,113 @@ a:hover, a:visited {
font-weight: normal;
}
.history h1 strong {
color: #000;
font-weight: bold;
}
#wiki-history {
margin-top: 3em;
.history h1 strong {
color: #000;
font-weight: bold;
}
#wiki-history fieldset {
border: 0;
margin: 2em 0;
padding: 0;
}
#wiki-history {
margin-top: 2em;
}
#wiki-history table, #wiki-history tbody {
border-collapse: collapse;
padding: 0;
margin: 0;
width: 100%;
}
#wiki-history fieldset {
border: 0;
margin: 1em 0;
padding: 0;
}
#wiki-history table tr {
padding: 0;
margin: 0;
}
#wiki-history table, #wiki-history tbody {
border-collapse: collapse;
padding: 0;
margin: 0;
width: 100%;
}
#wiki-history table tr {
background-color: #ebf2f6;
}
#wiki-history table tr {
padding: 0;
margin: 0;
}
#wiki-history table tr td {
border: 1px solid #c0dce9;
font-size: 1.2em;
line-height: 1.6em;
margin: 0;
padding: 0.3em 0.7em;
}
#wiki-history table tr {
background-color: #ebf2f6;
}
#wiki-history table tr td.checkbox {
min-width: 2em;
padding: 0.3em;
}
#wiki-history table tr td {
border: 1px solid #c0dce9;
font-size: 1em;
line-height: 1.6em;
margin: 0;
padding: 0.3em 0.7em;
}
#wiki-history table tr td.checkbox input {
cursor: pointer;
display: block;
padding-right: 0;
padding-top: 0.4em;
margin-right: -0.2em;
}
#wiki-history table tr td.checkbox {
width: 4em;
padding: 0.3em;
}
#wiki-history table tr:nth-child(2n),
#wiki-history table tr.alt-row {
background-color: #f3f7fa;
}
#wiki-history table tr td.checkbox input {
cursor: pointer;
display: block;
padding-right: 0;
padding-top: 0.4em;
margin: 0 auto;
width: 1.2em;
height: 1.2em;
}
#wiki-history table tr.selected {
background-color: #ffffea !important;
z-index: 100;
}
#wiki-history table tr:nth-child(2n),
#wiki-history table tr.alt-row {
background-color: #f3f7fa;
}
#wiki-history table tr td.commit-name {
border-left: 0;
}
#wiki-history table tr.selected {
background-color: #ffffea !important;
z-index: 100;
}
#wiki-history table tr td.commit-name span.time-elapsed {
color: #999;
}
#wiki-history table tr td.commit-name {
border-left: 0;
}
#wiki-history table tr td.author {
width: 20%;
}
#wiki-history table tr td.commit-name span.time-elapsed {
color: #999;
}
#wiki-history table tr td.author a {
color: #000;
font-weight: bold;
}
#wiki-history table tr td.author {
width: 20%;
}
#wiki-history table tr td.author a span.username {
display: block;
padding-top: 3px;
}
#wiki-history table tr td.author a {
color: #000;
font-weight: bold;
}
#wiki-history table tr td img {
background-color: #fff;
border: 1px solid #999;
display: block;
float: left;
height: 18px;
overflow: hidden;
margin: 0 0.5em 0 0;
width: 18px;
padding: 2px;
}
#wiki-history table tr td.author a span.username {
display: block;
padding-top: 3px;
}
#wiki-history table tr td.commit-name a {
font-size: 0.9em;
font-family: 'Monaco', 'Andale Mono', Consolas, 'Courier New', monospace;
padding: 0 0.2em;
}
#wiki-history table tr td img {
background-color: #fff;
border: 1px solid #999;
display: block;
float: left;
height: 18px;
overflow: hidden;
margin: 0 0.5em 0 0;
width: 18px;
padding: 2px;
}
#wiki-history table tr td.commit-name a {
font-size: 0.9em;
font-family: 'Monaco', 'Andale Mono', Consolas, 'Courier New', monospace;
padding: 0 0.2em;
}
.history #footer {
margin-bottom: 7em;
}
.history #wiki-history ul.actions li,
.history #footer ul.actions li {
@@ -343,10 +330,10 @@ a:hover, a:visited {
font-weight: normal;
}
.edit h1 strong {
color: #000;
font-weight: bold;
}
.edit h1 strong {
color: #000;
font-weight: bold;
}
/* @section search */
@@ -355,42 +342,42 @@ a:hover, a:visited {
font-weight: normal;
}
.results h1 strong {
color: #000;
font-weight: bold;
}
.results h1 strong {
color: #000;
font-weight: bold;
}
.results #results {
border-bottom: 1px solid #ccc;
margin-bottom: 2em;
padding-bottom: 2em;
}
.results #results {
border-bottom: 1px solid #ccc;
margin-bottom: 2em;
padding-bottom: 2em;
}
.results #results ul {
margin: 2em 0 0 0;
padding: 0;
}
.results #results ul {
margin: 2em 0 0 0;
padding: 0;
}
.results #results ul li {
font-size: 1.2em;
line-height: 1.6em;
list-style-position: outside;
padding: 0.2em 0;
}
.results #results ul li {
font-size: 1.2em;
line-height: 1.6em;
list-style-position: outside;
padding: 0.2em 0;
}
.results #results ul li span.count {
color: #999;
}
.results #results ul li span.count {
color: #999;
}
.results p#no-results {
font-size: 1.2em;
line-height: 1.6em;
margin-top: 2em;
}
.results p#no-results {
font-size: 1.2em;
line-height: 1.6em;
margin-top: 2em;
}
.results #footer ul.actions li {
margin: 0 1em 0 0;
}
.results #footer ul.actions li {
margin: 0 1em 0 0;
}
/* @section compare */
@@ -399,44 +386,52 @@ a:hover, a:visited {
font-weight: normal;
}
.compare h1 strong {
color: #000;
font-weight: bold;
}
.compare h1 strong {
color: #000;
font-weight: bold;
}
.compare #compare-content {
margin-top: 3em;
}
.compare #compare-content {
margin-top: 3em;
}
.compare .data {
border: 1px solid #ddd;
margin-top: 1em;
overflow: auto;
}
.compare .data {
border: 1px solid #ddd;
margin: 1em 0 2em;
overflow: auto;
}
.compare .data pre {
margin: 0;
padding: 0;
}
.compare .data table {
width: 100%;
}
.compare .data pre div {
padding: 0 0 0 1em;
}
.compare .data pre {
margin: 0;
padding: 0;
}
.compare .data tr td {
font-family: "Consolas", "Monaco", "Andale Mono", "Courier New", monospace;
font-size: 1.2em;
line-height: 1.8em;
margin: 0;
padding: 0;
}
.compare .data pre div {
padding: 0 0 0 1em;
}
.compare .data td.line_numbers {
background: #f7f7f7;
border-right: 1px solid #999;
color: #999;
padding: 0 0 0 0.5em;
}
.compare .data tr td {
font-family: "Consolas", "Monaco", "Andale Mono", "Courier New", monospace;
font-size: 1.2em;
line-height: 1.2em;
margin: 0;
padding: 0;
}
.compare .data tr td + td + td {
width: 100%;
}
.compare .data td.line_numbers {
background: #f7f7f7;
border-right: 1px solid #999;
color: #999;
padding: 0 0 0 0.5em;
}
.compare #compare-content ul.actions li,
.compare #footer ul.actions li {
@@ -444,6 +439,10 @@ a:hover, a:visited {
margin-right: 0.6em;
}
.compare #footer {
margin-bottom: 7em;
}
/* @control syntax */
@@ -481,8 +480,9 @@ ul.actions {
ul.actions li {
float: left;
font-size: 1.2em;
font-size: 0.9em;
margin-left: 0.6em;
margin-bottom: 0.6em;
}
.minibutton a {
@@ -590,70 +590,68 @@ ul.actions {
overflow: hidden;
}
#head #searchbar #searchbar-fauxtext {
background: #fff;
border: 1px solid #d4d4d4;
overflow: hidden;
#head #searchbar #searchbar-fauxtext {
background: #fff;
border: 1px solid #d4d4d4;
overflow: hidden;
height: 2.2em;
border-radius: 0.3em;
-moz-border-radius: 0.3em;
-webkit-border-radius: 0.3em;
}
border-radius: 0.3em;
-moz-border-radius: 0.3em;
-webkit-border-radius: 0.3em;
}
#head #searchbar #searchbar-fauxtext input#search-query {
border: none;
color: #000;
float: left;
font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
font-size: 1.2em;
height: 2.15em;
#head #searchbar #searchbar-fauxtext input#search-query {
border: none;
color: #000;
float: left;
font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
font-size: 1em;
height: inherit;
padding: 0 .5em;
-webkit-focus-ring: none;
}
-webkit-focus-ring: none;
}
.ff #head #searchbar #searchbar-fauxtext input#search-query {
padding: 0.2em 0 0.2em 0.5em;
}
.ie8 #head #searchbar #searchbar-fauxtext input#search-query {
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 {
color: #999;
}
#head #searchbar #searchbar-fauxtext input#search-query.ph {
color: #999;
}
#head #searchbar #searchbar-fauxtext #search-submit {
border: 0;
border-left: 1px solid #d4d4d4;
cursor: pointer;
margin: 0 !important;
padding: 0;
float: right;
height: inherit;
#head #searchbar #searchbar-fauxtext #search-submit {
border: 0;
border-left: 1px solid #d4d4d4;
cursor: pointer;
margin: 0 !important;
padding: 0;
float: right;
font-size: 1.2em;
border-radius: 0 3px 3px 0;
-moz-border-radius: 0 3px 3px 0;
-webkit-border-radius: 0 3px 3px 0;
}
border-radius: 0 3px 3px 0;
-moz-border-radius: 0 3px 3px 0;
-webkit-border-radius: 0 3px 3px 0;
}
#head #searchbar #searchbar-fauxtext #search-submit span {
background-image: url(/images/icon-sprite.png);
background-position: -431px -1px;
background-repeat: no-repeat;
display: block;
height: inherit;
overflow: hidden;
text-indent: -5000px;
width: 28px;
}
#head #searchbar #searchbar-fauxtext #search-submit span {
background-image: url(/images/icon-sprite.png);
background-position: -431px 4px;
background-repeat: no-repeat;
display: block;
height: 2.15em;
overflow: hidden;
text-indent: -5000px;
width: 28px;
}
.ff #head #searchbar #searchbar-fauxtext #search-submit span,
.ie #head #searchbar #searchbar-fauxtext #search-submit span {
height: 2.2em;
}
.ff #head #searchbar #searchbar-fauxtext #search-submit span,
.ie #head #searchbar #searchbar-fauxtext #search-submit span {
height: 2.2em;
}
#head #searchbar #searchbar-fauxtext #search-submit:hover span {
background-position: -431px -28px;
padding: 0;
}
#head #searchbar #searchbar-fauxtext #search-submit:hover span {
background-position: -431px -28px;
padding: 0;
}
+487 -296
View File
@@ -10,7 +10,7 @@
html, body {
color: black;
color: #333;
}
body {
@@ -22,360 +22,551 @@ img {
border: 0;
}
#template {
font-size: 14px;
line-height: 1.4;
margin-bottom: 40px;
}
/* Link Colors */
a.absent {
color: #c00;
}
/* Primary Body Copy */
#template p {
margin: 1em 0;
padding: 0;
.markdown-body {
font-size: 14px;
line-height: 1.6;
}
/* ReST first graf in nested list */
#template * li p.first {
display: inline-block;
}
/* Headings */
#template h1, #template h2, #template h3,
#template h4, #template h5, #template h6 {
margin: 0;
padding: 0;
.markdown-body>*:first-child {
margin-top: 0!important
}
#template h1 {
.markdown-body>*:last-child {
margin-bottom: 0!important
}
.markdown-body a.absent {
color: #c00
}
.markdown-body a.anchor {
display: block;
padding-left: 30px;
margin-left: -30px;
cursor: pointer;
position: absolute;
top: 0;
left: 0;
bottom: 0;
}
.markdown-body h1,
.markdown-body h2,
.markdown-body h3,
.markdown-body h4,
.markdown-body h5,
.markdown-body h6 {
margin: 20px 0 10px;
padding: 0;
font-weight: bold;
-webkit-font-smoothing: antialiased;
cursor: text;
position: relative;
}
.markdown-body h1:hover a.anchor,
.markdown-body h2:hover a.anchor,
.markdown-body h3:hover a.anchor,
.markdown-body h4:hover a.anchor,
.markdown-body h5:hover a.anchor,
.markdown-body h6:hover a.anchor {
background: url('/images/para.png') no-repeat 10px center;
text-decoration: none;
}
.markdown-body h1 tt,
.markdown-body h1 code,
.markdown-body h2 tt,
.markdown-body h2 code,
.markdown-body h3 tt,
.markdown-body h3 code,
.markdown-body h4 tt,
.markdown-body h4 code,
.markdown-body h5 tt,
.markdown-body h5 code,
.markdown-body h6 tt,
.markdown-body h6 code {
font-size: inherit
}
.markdown-body h1 {
font-size: 28px;
color: #000;
}
.markdown-body h2 {
font-size: 24px;
border-bottom: 1px solid #ccc;
font-size: 33px; /* was 32, GH is 33px */
line-height: normal;
padding: .08em 0 0 0;
margin: 0;
color: #000;
}
#template h2 {
font-size: 22px;
line-height: normal;
margin: 22px 0 0;
padding: 7px 0 0;
.markdown-body h3 {
font-size: 18px
}
#template h3 {
font-size: 16px;
line-height: 26px;
padding: 26px 0 0;
.markdown-body h4 {
font-size: 16px
}
#template h4 {
.markdown-body h5 {
font-size: 14px
}
.markdown-body h6 {
color: #777;
font-size: 14px;
line-height: 26px;
padding: 18px 0 4px;
font-weight: bold;
text-transform: uppercase;
}
#template h5 {
font-size: 13px;
line-height: 26px;
margin-bottom: -19px;
padding: 14px 0 0;
font-weight: bold;
text-transform: uppercase;
.markdown-body p,
.markdown-body blockquote,
.markdown-body ul,
.markdown-body ol,
.markdown-body dl,
.markdown-body li,
.markdown-body table,
.markdown-body pre {
margin: 15px 0
}
#template h6 {
color: #666;
font-size: 14px;
line-height: 26px;
margin-bottom: -19px;
padding: 18px 0 0;
font-weight: normal;
font-variant: italic;
}
#template hr {
background-color: #ccc;
.markdown-body hr {
background: transparent url('/images/dirty-shade.png') repeat-x 0 0;
border: 0 none;
color: #ccc;
border: 2px solid #ccc;
margin: 20px 0;
height: 4px;
padding: 0;
}
/* Border Reset for headers with horizontal rules */
#template > h2:first-child,
#template > h1:first-child {
margin: 12px 0 0;
padding: 10px 0 0;
}
/* Lists, Blockquotes & Such */
#template ul,
#template ol {
margin-top: 1.5em;
margin-left: 2.6em;
.markdown-body>h2:first-child,
.markdown-body>h1:first-child,
.markdown-body>h1:first-child+h2,
.markdown-body>h3:first-child,
.markdown-body>h4:first-child,
.markdown-body>h5:first-child,
.markdown-body>h6:first-child {
margin-top: 0;
padding-top: 0;
}
/* Nested Lists */
#template ul li,
#template ol li,
#template ul li ul,
#template ol li ol,
#template ul li ol,
#template ol li ul,
#template ul ul,
#template ol ol {
padding: 0;
margin: .5em 0;
}
#template dl {
margin: 0;
padding: 20px 0 0;
.markdown-body a:first-child h1,
.markdown-body a:first-child h2,
.markdown-body a:first-child h3,
.markdown-body a:first-child h4,
.markdown-body a:first-child h5,
.markdown-body a:first-child h6 {
margin-top: 0;
padding-top: 0;
}
#template dl dt {
font-size: 14px;
font-weight: bold;
line-height: normal;
margin: 0;
padding: 20px 0 0;
}
#template dl dt:first-child {
padding: 0;
}
#template dl dd {
font-size: 13px;
margin: 0;
padding: 3px 0 0;
}
/* Tables */
#template table {
border-collapse: collapse;
margin: 20px 0 0;
.markdown-body h1+p,
.markdown-body h2+p,
.markdown-body h3+p,
.markdown-body h4+p,
.markdown-body h5+p,
.markdown-body h6+p {
margin-top: 0
}
.markdown-body li p.first {
display: inline-block
}
.markdown-body ul,
.markdown-body ol {
padding-left: 30px
}
.markdown-body ul li>:first-child,
.markdown-body ol li>:first-child {
margin-top: 0
}
.markdown-body ul li>:last-child,
.markdown-body ol li>:last-child {
margin-bottom: 0
}
.markdown-body dl {
padding: 0
}
.markdown-body dl dt {
font-size: 14px;
font-weight: bold;
font-style: italic;
padding: 0;
margin: 15px 0 5px;
}
#template table * tr {
.markdown-body dl dt:first-child {
padding: 0
}
.markdown-body dl dt>:first-child {
margin-top: 0
}
.markdown-body dl dt>:last-child {
margin-bottom: 0
}
.markdown-body dl dd {
margin: 0 0 15px;
padding: 0 15px;
}
.markdown-body dl dd>:first-child {
margin-top: 0
}
.markdown-body dl dd>:last-child {
margin-bottom: 0
}
.markdown-body blockquote {
border-left: 4px solid #DDD;
padding: 0 15px;
color: #777;
}
.markdown-body blockquote>:first-child {
margin-top: 0
}
.markdown-body blockquote>:last-child {
margin-bottom: 0
}
.markdown-body table {
padding: 0
}
.markdown-body table tr {
border-top: 1px solid #ccc;
background-color: #fff;
margin: 0;
padding: 0;
}
#template table * tr:nth-child(2n) {
background-color: #f8f8f8;
}
#template table * tr th,
#template table * tr td {
border: 1px solid #ccc;
text-align: left;
margin: 0;
padding: 6px 13px;
}
/* Images & Stuff */
#template img {
max-width: 100%;
.markdown-body table tr:nth-child(2n) {
background-color: #f8f8f8
}
/* Gollum Image Tags */
/* Framed */
#template span.frame {
.markdown-body table tr th {
font-weight: bold
}
.markdown-body table tr th,
.markdown-body table tr td {
border: 1px solid #ccc;
text-align: left;
margin: 0;
padding: 6px 13px;
}
.markdown-body table tr th>:first-child,
.markdown-body table tr td>:first-child {
margin-top: 0
}
.markdown-body table tr th>:last-child,
.markdown-body table tr td>:last-child {
margin-bottom: 0
}
.markdown-body img {
max-width: 100%
}
.markdown-body span.frame {
display: block;
overflow: hidden;
}
#template span.frame > span {
border: 1px solid #ddd;
display: block;
float: left;
overflow: hidden;
margin: 13px 0 0;
padding: 7px;
width: auto;
}
#template span.frame span img {
display: block;
float: left;
}
#template span.frame span span {
clear: both;
color: #333;
display: block;
padding: 5px 0 0;
}
#template span.align-center {
.markdown-body span.frame>span {
border: 1px solid #ddd;
display: block;
float: left;
overflow: hidden;
margin: 13px 0 0;
padding: 7px;
width: auto;
}
.markdown-body span.frame span img {
display: block;
float: left;
}
.markdown-body span.frame span span {
clear: both;
color: #333;
display: block;
padding: 5px 0 0;
}
.markdown-body span.align-center {
display: block;
overflow: hidden;
clear: both;
}
#template span.align-center > span {
display: block;
overflow: hidden;
margin: 13px auto 0;
text-align: center;
}
#template span.align-center span img {
margin: 0 auto;
text-align: center;
}
#template span.align-right {
.markdown-body span.align-center>span {
display: block;
overflow: hidden;
margin: 13px auto 0;
text-align: center;
}
.markdown-body span.align-center span img {
margin: 0 auto;
text-align: center;
}
.markdown-body span.align-right {
display: block;
overflow: hidden;
clear: both;
}
#template span.align-right > span {
display: block;
overflow: hidden;
margin: 13px 0 0;
text-align: right;
}
#template span.align-right span img {
margin: 0;
text-align: right;
}
#template span.float-left {
.markdown-body span.align-right>span {
display: block;
overflow: hidden;
margin: 13px 0 0;
text-align: right;
}
.markdown-body span.align-right span img {
margin: 0;
text-align: right;
}
.markdown-body span.float-left {
display: block;
margin-right: 13px;
overflow: hidden;
float: left;
}
#template span.float-left span {
margin: 13px 0 0;
}
#template span.float-right {
.markdown-body span.float-left span {
margin: 13px 0 0
}
.markdown-body span.float-right {
display: block;
margin-left: 13px;
overflow: hidden;
float: right;
}
#template span.float-right > span {
display: block;
overflow: hidden;
margin: 13px auto 0;
text-align: right;
}
/* Code */
#template code, #template tt {
.markdown-body span.float-right>span {
display: block;
overflow: hidden;
margin: 13px auto 0;
text-align: right;
}
.markdown-body code,
.markdown-body tt {
margin: 0 2px;
padding: 0 5px;
white-space: nowrap;
border: 1px solid #ddd;
background-color: #f8f8f8;
border: 1px solid #dedede;
font-size: 13px;
padding: 0;
-moz-border-radius: 3px;
-webkit-border-radius: 3px;
border-radius: 3px;
}
#template .highlight pre, #template pre {
.markdown-body pre>code {
margin: 0;
padding: 0;
white-space: pre;
border: none;
background: transparent;
}
.markdown-body .highlight pre,
.markdown-body pre {
background-color: #f8f8f8;
border: 1px solid #ccc;
font-size: 13px;
line-height: 19px;
overflow: auto;
padding: 6px 10px;
-moz-border-radius: 3px;
-webkit-border-radius: 3px;
border-radius: 3px;
}
pre, code {
font: 12px 'Bitstream Vera Sans Mono','Courier',monospace
}
#template pre code, #template pre tt {
.markdown-body pre code,
.markdown-body pre tt {
background-color: transparent;
border: none;
}
/*
Highlight rules from pull req 191
https://github.com/eboto/gollum/commit/5df09477abf4a04c82c7fcaa2bd7ee2a85e7ec82
*/
#template .highlight { background:#fff; }
#template .highlight .c { color:#998;font-style:italic; }
#template .highlight .err { color:#a61717;background-color:#e3d2d2; }
#template .highlight .k { font-weight:bold; }
#template .highlight .o { font-weight:bold; }
#template .highlight .cm { color:#998;font-style:italic; }
#template .highlight .cp { color:#999;font-weight:bold; }
#template .highlight .c1 { color:#998;font-style:italic; }
#template .highlight .cs { color:#999;font-weight:bold;font-style:italic; }
#template .highlight .gd { color:#000;background-color:#fdd; }
#template .highlight .gd .x { color:#000;background-color:#faa; }
#template .highlight .ge { font-style:italic; }
#template .highlight .gr { color:#a00; }
#template .highlight .gh { color:#999; }
#template .highlight .gi { color:#000;background-color:#dfd; }
#template .highlight .gi .x { color:#000;background-color:#afa; }
#template .highlight .go { color:#888; }
#template .highlight .gp { color:#555; }
#template .highlight .gs { font-weight:bold; }
#template .highlight .gu { color:#800080;font-weight:bold; }
#template .highlight .gt { color:#a00; }
#template .highlight .kc { font-weight:bold; }
#template .highlight .kd { font-weight:bold; }
#template .highlight .kp { font-weight:bold; }
#template .highlight .kr { font-weight:bold; }
#template .highlight .kt { color:#458;font-weight:bold; }
#template .highlight .m { color:#099; }
#template .highlight .s { color:#d14; }
#template .highlight .na { color:#008080; }
#template .highlight .nb { color:#0086B3; }
#template .highlight .nc { color:#458;font-weight:bold; }
#template .highlight .no { color:#008080; }
#template .highlight .ni { color:#800080; }
#template .highlight .ne { color:#900;font-weight:bold; }
#template .highlight .nf { color:#900;font-weight:bold; }
#template .highlight .nn { color:#555; }
#template .highlight .nt { color:#000080; }
#template .highlight .nv { color:#008080; }
#template .highlight .ow { font-weight:bold; }
#template .highlight .w { color:#bbb; }
#template .highlight .mf { color:#099; }
#template .highlight .mh { color:#099; }
#template .highlight .mi { color:#099; }
#template .highlight .mo { color:#099; }
#template .highlight .sb { color:#d14; }
#template .highlight .sc { color:#d14; }
#template .highlight .sd { color:#d14; }
#template .highlight .s2 { color:#d14; }
#template .highlight .se { color:#d14; }
#template .highlight .sh { color:#d14; }
#template .highlight .si { color:#d14; }
#template .highlight .sx { color:#d14; }
#template .highlight .sr { color:#009926; }
#template .highlight .s1 { color:#d14; }
#template .highlight .ss { color:#990073; }
#template .highlight .bp { color:#999; }
#template .highlight .vc { color:#008080; }
#template .highlight .vg { color:#008080; }
#template .highlight .vi { color:#008080; }
#template .highlight .il { color:#099; }
.highlight {
background: #fff
}
.highlight .c {
color: #998;
font-style: italic;
}
.highlight .err {
color: #a61717;
background-color: #e3d2d2;
}
.highlight .k {
font-weight: bold
}
.highlight .o {
font-weight: bold
}
.highlight .cm {
color: #998;
font-style: italic;
}
.highlight .cp {
color: #999;
font-weight: bold;
}
.highlight .c1 {
color: #998;
font-style: italic;
}
.highlight .cs {
color: #999;
font-weight: bold;
font-style: italic;
}
.highlight .gd {
color: #000;
background-color: #fdd;
}
.highlight .gd .x {
color: #000;
background-color: #faa;
}
.highlight .ge {
font-style: italic
}
.highlight .gr {
color: #a00
}
.highlight .gh {
color: #999
}
.highlight .gi {
color: #000;
background-color: #dfd;
}
.highlight .gi .x {
color: #000;
background-color: #afa;
}
.highlight .go {
color: #888
}
.highlight .gp {
color: #555
}
.highlight .gs {
font-weight: bold
}
.highlight .gu {
color: #800080;
font-weight: bold;
}
.highlight .gt {
color: #a00
}
.highlight .kc {
font-weight: bold
}
.highlight .kd {
font-weight: bold
}
.highlight .kn {
font-weight: bold
}
.highlight .kp {
font-weight: bold
}
.highlight .kr {
font-weight: bold
}
.highlight .kt {
color: #458;
font-weight: bold;
}
.highlight .m {
color: #099
}
.highlight .s {
color: #d14
}
.highlight .na {
color: #008080
}
.highlight .nb {
color: #0086B3
}
.highlight .nc {
color: #458;
font-weight: bold;
}
.highlight .no {
color: #008080
}
.highlight .ni {
color: #800080
}
.highlight .ne {
color: #900;
font-weight: bold;
}
.highlight .nf {
color: #900;
font-weight: bold;
}
.highlight .nn {
color: #555
}
.highlight .nt {
color: #000080
}
.highlight .nv {
color: #008080
}
.highlight .ow {
font-weight: bold
}
.highlight .w {
color: #bbb
}
.highlight .mf {
color: #099
}
.highlight .mh {
color: #099
}
.highlight .mi {
color: #099
}
.highlight .mo {
color: #099
}
.highlight .sb {
color: #d14
}
.highlight .sc {
color: #d14
}
.highlight .sd {
color: #d14
}
.highlight .s2 {
color: #d14
}
.highlight .se {
color: #d14
}
.highlight .sh {
color: #d14
}
.highlight .si {
color: #d14
}
.highlight .sx {
color: #d14
}
.highlight .sr {
color: #009926
}
.highlight .s1 {
color: #d14
}
.highlight .ss {
color: #990073
}
.highlight .bp {
color: #999
}
.highlight .vc {
color: #008080
}
.highlight .vg {
color: #008080
}
.highlight .vi {
color: #008080
}
.highlight .il {
color: #099
}
.highlight .gc {
color: #999;
background-color: #EAF2F5;
}
.type-csharp .highlight .k {
color: #00F
}
.type-csharp .highlight .kt {
color: #00F
}
.type-csharp .highlight .nf {
color: #000;
font-weight: normal;
}
.type-csharp .highlight .nc {
color: #2B91AF
}
.type-csharp .highlight .nn {
color: #000
}
.type-csharp .highlight .s {
color: #A31515
}
.type-csharp .highlight .sc {
color: #A31515
}
Binary file not shown.

After

Width:  |  Height:  |  Size: 939 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 KiB

+13 -3
View File
@@ -3,10 +3,16 @@
<h1>History for <strong>{{path}}</strong></h1>
<ul class="actions">
<li class="minibutton">
{{>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">Back to Page History</a></li>
class="action-page-history">Page History</a></li>
</ul>
{{>searchbar}}
</div>
{{#message}}
@@ -17,6 +23,8 @@
{{#show_revert}}
<ul class="actions">
<li class="minibutton"><a href="/history/{{escaped_name}}"
class="action-page-history">Back to Page History</a></li>
<li class="minibutton">
<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>
@@ -41,6 +49,8 @@
</div>
<div id="footer">
<ul class="actions">
<li class="minibutton"><a href="/history/{{escaped_name}}"
class="action-page-history">Back to Page History</a></li>
{{#show_revert}}
<li class="minibutton">
<a href="#" class="gollum-revert-button">Revert Changes</a>
@@ -50,4 +60,4 @@
</ul>
</div>
</div>
</div>
</div>
@@ -2,12 +2,14 @@
<div id="head">
<h1>History for <strong>{{title}}</strong></h1>
<ul class="actions">
<li class="minibutton">
{{>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>
</ul>
{{>searchbar}}
</div>
<div id="wiki-history">
@@ -57,4 +59,4 @@
class="action-back-to-top">Back to Top</a></li>
</ul>
</div>
</div>
</div>
+15 -4
View File
@@ -2,6 +2,9 @@
<div id="head">
<h1>{{title}}</h1>
<ul class="actions">
<li class="minibutton">
{{>searchbar}}
</li>
<li class="minibutton"><a href="/pages"
class="action-all-pages">All Pages</a></li>
<li class="minibutton" class="jaws">
@@ -13,23 +16,31 @@
<li class="minibutton"><a href="/history/{{escaped_name}}"
class="action-page-history">Page History</a></li>
</ul>
{{>searchbar}}
</div>
<div id="wiki-content">
<div class="wrap {{#has_footer}} has-footer {{/has_footer}} {{#has_sidebar}} has-rightbar{{/has_sidebar}}">
<div id="wiki-body" class="gollum-{{format}}-content">
<div id="template">
{{#has_header}}
<div id="wiki-header" class="gollum-{{header_format}}-content">
<div id="header-content" class="markdown-body">
{{{header_content}}}
</div>
</div>
{{/has_header}}
<div class="markdown-body">
{{{content}}}
</div>
</div>
{{#has_sidebar}}
<div id="wiki-rightbar" class="gollum-{{sidebar_format}}-content">
{{{sidebar_content}}}
<div id="sidebar-content" class="markdown-body">
{{{sidebar_content}}}
</div>
</div>
{{/has_sidebar}}
{{#has_footer}}
<div id="wiki-footer" class="gollum-{{footer_format}}-content">
<div id="footer-content">
<div id="footer-content" class="markdown-body">
{{{footer_content}}}
</div>
</div>
+3 -1
View File
@@ -2,10 +2,12 @@
<div id="head">
<h1>{{title}}</h1>
<ul class="actions">
<li class="minibutton">
{{>searchbar}}
</li>
<li class="minibutton"><a href="/"
class="action-edit-page">Home</a></li>
</ul>
{{>searchbar}}
</div>
<div id="results">
@@ -2,10 +2,12 @@
<div id="head">
<h1>Search Results for <strong>{{query}}</strong></h1>
<ul class="actions">
<li class="minibutton">
{{>searchbar}}
</li>
<li class="minibutton"><a href="/"
class="action-edit-page">Home</a></li>
</ul>
{{>searchbar}}
</div>
<div id="results">
+5
View File
@@ -27,6 +27,11 @@ module Precious
!!@footer
end
def has_header
@header = (@page.header || false) if @header.nil? && @page
!!@header
end
def has_sidebar
@sidebar = (@page.sidebar || false) if @sidebar.nil? && @page
!!@sidebar
+11
View File
@@ -13,6 +13,17 @@ module Precious
@name.gsub('-', ' ')
end
def header
if @header.nil?
if page = @page.header
@header = page.raw_data
else
@header = false
end
end
@header
end
def footer
if @footer.nil?
if page = @page.footer
+14 -1
View File
@@ -1,7 +1,7 @@
module Precious
module Views
class Page < Layout
attr_reader :content, :page, :footer
attr_reader :content, :page, :header, :footer
DATE_FORMAT = "%Y-%m-%d %H:%M:%S"
DEFAULT_AUTHOR = 'you'
@@ -27,6 +27,19 @@ module Precious
@editable
end
def has_header
@header = (@page.header || false) if @header.nil?
!!@header
end
def header_content
has_header && @header.formatted_data
end
def header_format
has_header && @header.format.to_s
end
def has_footer
@footer = (@page.footer || false) if @footer.nil?
!!@footer
+2 -1
View File
@@ -38,8 +38,9 @@ module Gollum
@wiki.history_sanitizer :
@wiki.sanitizer
data = extract_tex(@data.dup)
data = @data.dup
data = extract_code(data)
data = extract_tex(data)
data = extract_wsd(data)
data = extract_tags(data)
begin
+8 -1
View File
@@ -99,7 +99,7 @@ module Gollum
# Returns a newly initialized Gollum::Page.
def initialize(wiki)
@wiki = wiki
@blob = @footer = @sidebar = nil
@blob = @header = @footer = @sidebar = nil
end
# Public: The on-disk filename of the page including extension.
@@ -209,6 +209,13 @@ module Gollum
end
end
# Public: The header Page.
#
# Returns the header Page or nil if none exists.
def header
@header ||= find_sub_page(:header)
end
# Public: The footer Page.
#
# Returns the footer Page or nil if none exists.
+6 -6
View File
@@ -43,7 +43,7 @@ module Gollum
# Default whitelisted protocols for URLs.
PROTOCOLS = {
'a' => {'href' => ['http', 'https', 'mailto', 'ftp', 'irc', :relative]},
'a' => {'href' => ['http', 'https', 'mailto', 'ftp', 'irc', 'apt', :relative]},
'img' => {'src' => ['http', 'https', :relative]}
}.freeze
@@ -120,12 +120,12 @@ module Gollum
attr_writer :allow_comments
def initialize
@elements = ELEMENTS
@attributes = ATTRIBUTES
@protocols = PROTOCOLS
@transformers = TRANSFORMERS
@elements = ELEMENTS.dup
@attributes = ATTRIBUTES.dup
@protocols = PROTOCOLS.dup
@transformers = TRANSFORMERS.dup
@add_attributes = {}
@remove_contents = REMOVE_CONTENTS
@remove_contents = REMOVE_CONTENTS.dup
@allow_comments = false
@id_prefix = 'wiki-'
yield self if block_given?
+1 -1
View File
@@ -1 +1 @@
add footer and sidebar
Add header.
Binary file not shown.
+1
View File
@@ -1,2 +1,3 @@
0000000000000000000000000000000000000000 7c45b5f16ff3bae2a0063191ef832701214d4df5 rick <technoweenie@gmail.com> 1291942707 -0800 clone: from /Users/rick/p/gollum/test/examples/revert.git
7c45b5f16ff3bae2a0063191ef832701214d4df5 f403b791119f8232b7cb0ba455c624ac6435f433 rick <technoweenie@gmail.com> 1291942743 -0800 commit: add footer and sidebar
f403b791119f8232b7cb0ba455c624ac6435f433 ed6c9f63b98acf73c25b5ffbb38da557d3682023 bootstraponline <cafe@bootstraponline.com> 1336421777 -0600 commit: Add header.
@@ -1,2 +1,3 @@
0000000000000000000000000000000000000000 7c45b5f16ff3bae2a0063191ef832701214d4df5 rick <technoweenie@gmail.com> 1291942707 -0800 clone: from /Users/rick/p/gollum/test/examples/revert.git
7c45b5f16ff3bae2a0063191ef832701214d4df5 f403b791119f8232b7cb0ba455c624ac6435f433 rick <technoweenie@gmail.com> 1291942743 -0800 commit: add footer and sidebar
f403b791119f8232b7cb0ba455c624ac6435f433 ed6c9f63b98acf73c25b5ffbb38da557d3682023 bootstraponline <cafe@bootstraponline.com> 1336421777 -0600 commit: Add header.
@@ -0,0 +1,3 @@
x¥ŽK @]s
.`3ç‰1z”†´‰- âýíÚ­où//·m[‡6D—ÑE4‚ñÑe2€±F0Î…
®$ XéÄJ,œ9©ƒ»ìCW›ÂŒˆsÆšr‚Ää\ö†8{²®’µŠ?ci]§ÖÆ{t>ÚþZwÑ·ÌU?vÊm»k´Ö“Á‚¾‚P§=_‡üWQÏRô"\¤Oê ziN¹
+1 -1
View File
@@ -1 +1 @@
f403b791119f8232b7cb0ba455c624ac6435f433
ed6c9f63b98acf73c25b5ffbb38da557d3682023
+6 -2
View File
@@ -29,13 +29,14 @@ context "Frontend" do
assert_not_equal page_1.version.sha, page_2.version.sha
end
test "edits page footer and sidebar" do
test "edits page header footer and sidebar" do
commits = @wiki.repo.commits('master').size
page_1 = @wiki.page('A')
header_1 = page_1.header
foot_1 = page_1.footer
side_1 = page_1.sidebar
post "/edit/A",
post "/edit/A", :header => 'header',
:footer => 'footer', :page => "A", :sidebar => 'sidebar', :message => 'def'
follow_redirect!
assert_equal "/A", last_request.fullpath
@@ -43,13 +44,16 @@ context "Frontend" do
@wiki.clear_cache
page_2 = @wiki.page(page_1.name)
header_2 = page_2.header
foot_2 = page_2.footer
side_2 = page_2.sidebar
assert_equal page_1.raw_data, page_2.raw_data
assert_equal 'header', header_2.raw_data
assert_equal 'footer', foot_2.raw_data
assert_equal 'def', foot_2.version.message
assert_not_equal foot_1.version.sha, foot_2.version.sha
assert_not_equal header_1.version.sha, header_2.version.sha
assert_equal 'sidebar', side_2.raw_data
assert_equal 'def', side_2.version.message
+7
View File
@@ -495,6 +495,13 @@ np.array([[2,2],[1,3]],np.float)
compare(content, output)
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
content = "<style>body { color: red }</style>foobar"
output = "<p>foobar</p>"