CSS to SCSS (#1247)

* CSS to SCSS

* Fix travis

* Use sprockets

* Use Sprockets helpers

* Fix gollum.editor.js error when changing language

* Fix fileview styles, use same style as Pages View.

* Add keybinding files required by ace and some ace ext files that are required or might be useful.
This commit is contained in:
Dawa Ometto
2018-01-14 16:47:47 +01:00
committed by GitHub
parent a75b003c78
commit dac91e9998
37 changed files with 2915 additions and 3114 deletions
+34 -5
View File
@@ -3,11 +3,16 @@ require 'cgi'
require 'sinatra'
require 'gollum-lib'
require 'mustache/sinatra'
require 'useragent'
require 'stringex'
require 'json'
require 'sprockets'
require 'sprockets-helpers'
require 'uglifier'
require 'sass'
require 'gollum'
require 'gollum/assets'
require 'gollum/views/helpers'
require 'gollum/views/layout'
require 'gollum/views/editable'
require 'gollum/views/has_page'
@@ -49,9 +54,8 @@ module Precious
dir = File.dirname(File.expand_path(__FILE__))
# We want to serve public assets for now
set :public_folder, "#{dir}/public/gollum"
set :static, true
set :sprockets, ::Precious::Assets.sprockets(dir)
set :default_markup, :markdown
set :mustache, {
@@ -87,12 +91,37 @@ module Precious
@css = settings.wiki_options[:css]
@js = settings.wiki_options[:js]
@mathjax_config = settings.wiki_options[:mathjax_config]
@use_static_assets = settings.wiki_options.fetch(:static, settings.environment == :production || settings.environment == :staging)
@static_assets_path = settings.wiki_options.fetch(:static_assets_path, './public/assets')
Sprockets::Helpers.configure do |config|
config.environment = settings.sprockets
config.prefix = "#{@base_url}/#{Precious::Assets::ASSET_URL}"
config.digest = @use_static_assets
if @use_static_assets
config.public_path = @static_assets_path
config.manifest = Sprockets::Manifest.new(settings.sprockets, @static_assets_path)
end
end
end
get '/' do
redirect clean_url(::File.join(@base_url, @page_dir, wiki_new.index_page))
end
get '/assets/*' do
env['PATH_INFO'].sub!("/#{Precious::Assets::ASSET_URL}", '')
if @use_static_assets
env['PATH_INFO'].sub!(Sprockets::Helpers.prefix, '') if @base_url
not_found_msg = "Not found."
not_found = Proc.new {[404, {'Content-Type' => 'text/html', 'Content-Length' => not_found_msg.length.to_s}, [not_found_msg]]}
Rack::Static.new(not_found, {:root => @static_assets_path, :urls => ['']}).call(env)
else
settings.sprockets.call(env)
end
end
get '/last-commit-info' do
content_type :json
if page = wiki_page(params[:path]).page
@@ -458,7 +487,7 @@ module Precious
# --show-all and --collapse-tree can be set.
@results = Gollum::FileView.new(content, options).render_files
@ref = wiki.ref
mustache :file_view, { :layout => false }
mustache :file_view
end
get '/*' do
+18
View File
@@ -0,0 +1,18 @@
module Precious
module Assets
MANIFEST = %w(app.js app.css fileview.css ie7.css print.css *.png *.jpg *.svg *.eot *.ttf *.woff *.woff2)
ASSET_URL = 'assets'
def self.sprockets(dir = File.dirname(File.expand_path(__FILE__)))
env = Sprockets::Environment.new
env.append_path ::File.join(dir, 'public/gollum/stylesheets/')
env.append_path ::File.join(dir, 'public/gollum/javascript')
env.append_path ::File.join(dir, 'public/gollum/images')
env.append_path ::File.join(dir, 'public/gollum/fonts')
env.js_compressor = :uglify
env.css_compressor = :scss
env
end
end
end
-143
View File
@@ -1,143 +0,0 @@
*, html {
font-family: Verdana, Arial, Helvetica, sans-serif;
}
#results a:hover {
background-color: #4c4c4c;
}
#home_button {
position: absolute;
top: 10px;
left: 50%;
}
#home_button .minibutton {
font-size: 1em;
text-align: center;
}
#results {
position: absolute;
top: 60px;
left: 10px;
}
body, form, ul, li, p, h1, h2, h3, h4, h5 {
margin: 0;
padding: 0;
}
body {
background-color: #606061;
color: #ffffff;
margin: 0;
}
img {
border: none;
}
p {
font-size: 1em;
margin: 0 0 1em 0;
}
html { font-size: 100%; /* IE hack */ }
body { font-size: 1em; /* Sets base font size to 16px */ }
table { font-size: 100%; /* IE hack */ }
input, select, textarea, th, td { font-size: 1em; }
/* Prevent wrapping on large file names. */
li.file {
white-space: nowrap;
}
/* CSS Tree menu styles */
ol.tree
{
padding: 0 0 0 30px;
width: 300px;
}
li
{
position: relative;
margin-left: -15px;
list-style: none;
}
li.file
{
margin-left: -1px !important;
height: 1.5em;
}
li.file a
{
color: #fff;
text-decoration: none;
display: inline-block;
}
li.file a span.icon
{
width: 14px;
height: 18px;
background: url(../images/fileview/document.png) 0 0 no-repeat;
display: inline-block;
margin-right: 7px;
vertical-align: text-top;
}
li.file form
{
vertical-align:middle;
display: inline-block;
}
li.file form button
{
vertical-align:middle;
height: 20px;
padding-left: 36px;
padding-right: 10px;
border: 0px solid #000000;
background: url("../images/fileview/trashcan.png") no-repeat 16px center;
cursor: pointer;
}
}
li.file a[href *= '.pdf'] span.icon { background: url(../images/fileview/document.png) 0 0 no-repeat; }
li.file a[href *= '.html'] span.icon { background: url(../images/fileview/document.png) 0 0 no-repeat; }
li.file a[href $= '.css'] span.icon { background: url(../images/fileview/document.png) 0 0 no-repeat; }
li.file a[href $= '.js'] span.icon { background: url(../images/fileview/document.png) 0 0 no-repeat; }
li input
{
position: absolute;
left: 0;
margin-left: 0;
opacity: 0;
z-index: 2;
cursor: pointer;
height: 1em;
width: 1em;
top: 0;
}
li input + ol
{
background: url(../images/fileview/toggle-small-expand.png) 40px 0 no-repeat;
margin: -1.188em 0 0 -44px; /* 15px */
height: 1.5em;
}
li input + ol > li { display: none; margin-left: -14px !important; padding-left: 1px; }
li label
{
background: url(../images/fileview/folder-horizontal.png) 15px 1px no-repeat;
cursor: pointer;
display: block;
padding-left: 37px;
}
li input:checked + ol
{
background: url(../images/fileview/toggle-small.png) 40px 5px no-repeat;
margin: -1.5em 0 0 -44px; /* 20px */
padding: 1.563em 0 0 80px;
height: auto;
}
li input:checked + ol > li { display: block; margin: 0 0 0.125em; /* 2px */}
li input:checked + ol > li:last-child { margin: 0 0 0.063em; /* 1px */ }
-253
View File
@@ -1,253 +0,0 @@
/* @control dialog */
#gollum-dialog-dialog {
display: block;
overflow: visible;
position: absolute;
top: 0;
left: 0;
z-index: 999999;
width: 100%;
height: 100%;
}
#gollum-dialog-dialog.active {
display: block;
}
#gollum-dialog-dialog-inner {
margin: 0px;
top: 0px;
right: 0px;
bottom: 0px;
left: 0px;
width: 100%;
height: 100%;
}
#gollum-dialog-dialog-bg {
background-color: #fff;
padding: 1em;
height: 100%;
box-sizing: border-box;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
}
@media all and (min-width: 480px) {
#gollum-dialog-dialog {
display: block;
overflow: visible;
position: absolute;
position: fixed;
top: 0;
left: 0;
z-index: 999999;
width: auto;
height: auto;
}
#gollum-dialog-dialog.active {
display: block;
}
#gollum-dialog-dialog-inner {
margin: auto;
position: fixed;
width: auto;
height: auto;
min-width: 280px;
min-height: 380px;
max-width: 450px;
max-height: 450px;
top: 10px;
right: 10px;
bottom: 10px;
left: 10px;
border: 7px solid #999;
border: 7px solid rgba(0, 0, 0, 0.3);
border-radius: 5px;
-moz-border-radius: 5px;
-webkit-border-radius: 5px;
}
#gollum-dialog-dialog-bg {
background-color: #fff;
overflow: hidden;
padding: 1em;
background: -webkit-gradient(linear, left top, left bottom, from(#f7f7f7), to(#ffffff));
background: -moz-linear-gradient(top, #f7f7f7, #ffffff);
height: 100%;
box-sizing: border-box;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
}
}
@media all and (min-width: 940px) {
#gollum-dialog-dialog {
position: absolute;
top: 50%;
left: 50%;
width: auto;
height: auto;
}
#gollum-dialog-dialog-inner {
margin: 0 0 0 -225px;
position: relative;
width: 450px;
height: auto;
top: auto;
right: auto;
bottom: auto;
left: auto;
border: 7px solid #999;
border: 7px solid rgba(0, 0, 0, 0.3);
border-radius: 5px;
-moz-border-radius: 5px;
-webkit-border-radius: 5px;
}
#gollum-dialog-dialog-bg {
height: auto;
box-sizing: content-box;
-moz-box-sizing: content-box;
-webkit-box-sizing: content-box;
}
}
#gollum-dialog-dialog-inner h4 {
border-bottom: 1px solid #ddd;
color: #000;
font-size: 1.8em;
line-height: normal;
font-weight: bold;
margin: 0 0 0.75em 0;
padding: 0 0 0.3em 0;
}
#gollum-dialog-dialog-body {
font-size: 1.2em;
line-height: 1.6em;
}
#gollum-dialog-dialog-body fieldset {
display: block;
border: 0;
margin: 0;
padding: 0;
}
#gollum-dialog-dialog-body fieldset:after {
content: ".";
display: block;
clear: both;
visibility: hidden;
}
#gollum-dialog-dialog-body fieldset .field {
margin: 0 0 1.5em 0;
padding: 0;
}
#gollum-dialog-dialog-body fieldset .field label {
color: #000;
display: block;
font-size: 1.2em;
font-weight: bold;
line-height: 1.6em;
margin: 0;
padding: 0;
min-width: 80px;
}
#gollum-dialog-dialog-body fieldset .field input[type="text"] {
border: 1px solid #ddd;
display: block;
font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
font-size: 1.2em;
line-height: 1.6em;
margin: 0.3em 0 0 0;
padding: 0.3em 0.5em;
width: 94%;
}
#gollum-dialog-dialog-body fieldset .field input.code {
font-family: 'Monaco', 'Courier New', Courier, monospace;
}
#gollum-dialog-dialog-body fieldset .field span.context {
font-size: .9em;
color: #666;
}
#gollum-dialog-dialog-body fieldset .field span.context span.path {
font-family: 'Monaco', 'Courier New', Courier, monospace;
font-weight: bold;
}
#gollum-dialog-dialog-body fieldset .field:last-child {
margin: 0 0 1em 0;
}
#gollum-dialog-dialog-buttons {
border-top: 1px solid #ddd;
overflow: hidden;
margin: 1.5em 0 0 0;
padding: 1em 0 0 0;
}
#gollum-dialog-dialog a.minibutton {
float: right;
margin-right: 0.5em;
width: auto;
}
#gollum-dialog-dialog a.minibutton,
#gollum-dialog-dialog a.minibutton:visited {
background-color: #f7f7f7;
border: 1px solid #d4d4d4;
color: #333;
cursor: pointer;
display: block;
font-size: 1.2em;
font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
font-weight: bold;
margin: 0 0 0 0.8em;
padding: 0.4em 1em;
text-shadow: 0 1px 0 #fff;
filter:progid:DXImageTransform.Microsoft.gradient(GradientType=0, startColorstr='#f4f4f4', endColorstr='#ececec');
background: -webkit-gradient(linear, left top, left bottom, from(#f4f4f4), to(#ececec));
background: -moz-linear-gradient(top, #f4f4f4, #ececec);
border-radius: 3px;
-moz-border-radius: 3px;
-webkit-border-radius: 3px;
}
#gollum-dialog-dialog a.minibutton:hover {
background: #3072b3;
border-color: #518cc6 #518cc6 #2a65a0;
color: #fff;
text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.3);
text-decoration: none;
filter:progid:DXImageTransform.Microsoft.gradient(GradientType=0, startColorstr='#599bdc', endColorstr='#3072b3');
background: -webkit-gradient(linear, left top, left bottom, from(#599bdc), to(#3072b3));
background: -moz-linear-gradient(top, #599bdc, #3072b3);
}
-708
View File
@@ -1,708 +0,0 @@
/*
editor.css
Wiki editor formatting
*/
a {
-moz-outline: none !important;
}
.jaws {
/* JAWS should see it, but you can't */
display: block;
height: 1px;
left: -5000px;
overflow: hidden;
position: absolute;
top: -5000px;
width: 1px;
}
.disabled {
color: lightgray;
}
#gollum-editor {
margin: 0 0 5em;
padding: 0em 1em 0.4em;
}
#gollum-editor:after {
content: ".";
display: block;
visibility: hidden;
clear: both;
}
.ff #gollum-editor,
.ie #gollum-editor {
padding-bottom: 1em;
}
@media all and (min-width: 940px) {
#gollum-editor {
border: 1px solid #e4e4e4;
background: #f9f9f9;
margin: 1em 0 5em;
border-radius: 1em;
-moz-border-radius: 1em;
-webkit-border-radius: 1em;
}
}
#gollum-editor form fieldset {
border: 0;
margin: 0;
padding: 0;
width: 100%;
}
#gollum-editor .singleline {
display: block;
margin: 0 0 0.7em 0;
}
#gollum-editor .singleline:after {
content: ".";
display: block;
visibility: hidden;
clear: both;
}
#gollum-editor .singleline input {
background: #fff;
border: 1px solid #ddd;
color: #000;
font-size: 1.1em;
font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
line-height: 1.5em;
margin: 1em 0 0.4em;
padding: 0.5em;
width: 98%;
}
#gollum-editor .singleline input.ph {
color: #999;
}
#gollum-editor .path_note {
text-align: right;
font-size: small;
padding-right: 5px;
}
#gollum-editor-title-field input#gollum-editor-page-title {
font-weight: bold;
margin-top: 0;
}
#gollum-editor-title-field.active {
border-bottom: 1px solid #ddd;
display: block;
margin: 0 0 0.3em 0;
padding: 0 0 0.5em 0;
}
#gollum-editor-title-field input#gollum-editor-page-title.ph {
color: #000;
}
/* @control editor-view-tab */
#gollum-editor #gollum-editor-type-switcher {
display: none;
}
/* @control function-bar */
#gollum-editor #gollum-editor-function-bar {
border-bottom: 1px solid #ddd;
padding: 0;
}
#gollum-editor-title-field + #gollum-editor-function-bar {
margin-top: 0.6em;
}
#gollum-editor #gollum-editor-function-bar #gollum-editor-function-buttons {
display: none;
}
#gollum-editor #gollum-editor-function-bar.active #gollum-editor-function-buttons {
display: block;
margin: 0;
padding: 0;
}
@media all and (min-width: 940px) {
#gollum-editor #gollum-editor-function-bar {
overflow: hidden;
}
#gollum-editor #gollum-editor-function-bar.active #gollum-editor-function-buttons {
overflow: hidden;
margin: 0;
padding: 0 0 1.1em 0;
float: left;
}
}
#gollum-editor #gollum-editor-function-bar a.function-button {
background: #f7f7f7;
border: 1px solid #ddd;
color: #333;
display: block;
float: left;
height: 32px;
overflow: hidden;
margin: 1px 1px 0 0;
/* text-indent: -5000px; */
text-shadow: 0 1px 0 #fff;
width: 32px;
border-radius: 0.3em;
-moz-border-radius: 0.3em;
-webkit-border-radius: 0.3em;
filter:progid:DXImageTransform.Microsoft.gradient(GradientType=0, startColorstr='#f4f4f4', endColorstr='#ececec');
background: -webkit-gradient(linear, left top, left bottom, from(#f4f4f4), to(#ececec));
background: -moz-linear-gradient(top, #f4f4f4, #ececec);
}
#gollum-editor #gollum-editor-function-bar a.function-button:hover {
color: #fff;
text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.3);
text-decoration: none;
filter:progid:DXImageTransform.Microsoft.gradient(GradientType=0, startColorstr='#599bdc', endColorstr='#3072b3');
background: -webkit-gradient(linear, left top, left bottom, from(#599bdc), to(#3072b3));
background: -moz-linear-gradient(top, #599bdc, #3072b3);
}
#gollum-editor #gollum-editor-function-bar a span {
background-image: url(../images/icon-sprite.png);
background-repeat: no-repeat;
display: block;
height: 32px;
overflow: hidden;
text-indent: -5000px;
width: 32px;
}
a#function-bold span { background-position: 3px 3px; }
a#function-italic span { background-position: -24px 3px; }
a#function-underline span { background-position: -51px 3px; }
a#function-code span { background-position: -79px 3px; }
a#function-ul span { background-position: -106px 3px; }
a#function-ol span { background-position: -133px 3px; }
a#function-blockquote span { background-position: -160px 3px; }
a#function-hr span { background-position: -187px 3px; }
a#function-h1 span { background-position: -214px 3px; }
a#function-h2 span { background-position: -241px 3px; }
a#function-h3 span { background-position: -268px 3px; }
a#function-link span { background-position: -295px 3px; }
a#function-image span { background-position: -321px 3px; }
a#function-help span { background-position: -402px 3px; }
a#function-bold:hover span { background-position: 3px -25px; }
a#function-italic:hover span { background-position: -24px -25px; }
a#function-underline:hover span { background-position: -51px -25px; }
a#function-code:hover span { background-position: -79px -25px; }
a#function-ul:hover span { background-position: -106px -25px; }
a#function-ol:hover span { background-position: -133px -25px; }
a#function-blockquote:hover span { background-position: -160px -25px; }
a#function-hr:hover span { background-position: -187px -25px; }
a#function-h1:hover span { background-position: -214px -25px; }
a#function-h2:hover span { background-position: -241px -25px; }
a#function-h3:hover span { background-position: -268px -25px; }
a#function-link:hover span { background-position: -295px -25px; }
a#function-image:hover span { background-position: -321px -25px; }
a#function-help:hover span { background-position: -402px -25px; }
@media all and (min-width: 940px) {
#gollum-editor #gollum-editor-function-bar a.function-button {
height: 25px;
width: 25px;
margin: 0.2em 0.5em 0 0;
}
#gollum-editor #gollum-editor-function-bar a span {
width: 25px;
height: 25px;
}
a#function-bold span { background-position: 0 0; }
a#function-italic span { background-position: -27px 0; }
a#function-underline span { background-position: -54px 0; }
a#function-code span { background-position: -82px 0; }
a#function-ul span { background-position: -109px 0; }
a#function-ol span { background-position: -136px 0; }
a#function-blockquote span { background-position: -163px 0; }
a#function-hr span { background-position: -190px 0; }
a#function-h1 span { background-position: -217px 0; }
a#function-h2 span { background-position: -244px 0; }
a#function-h3 span { background-position: -271px 0; }
a#function-link span { background-position: -298px 0; }
a#function-image span { background-position: -324px 0; }
a#function-help span { background-position: -405px 0; }
a#function-bold:hover span { background-position: 0 -28px; }
a#function-italic:hover span { background-position: -27px -28px; }
a#function-underline:hover span { background-position: -54px -28px; }
a#function-code:hover span { background-position: -82px -28px; }
a#function-ul:hover span { background-position: -109px -28px; }
a#function-ol:hover span { background-position: -136px -28px; }
a#function-blockquote:hover span { background-position: -163px -28px; }
a#function-hr:hover span { background-position: -190px -28px; }
a#function-h1:hover span { background-position: -217px -28px; }
a#function-h2:hover span { background-position: -244px -28px; }
a#function-h3:hover span { background-position: -271px -28px; }
a#function-link:hover span { background-position: -298px -28px; }
a#function-image:hover span { background-position: -324px -28px; }
a#function-help:hover span { background-position: -405px -28px; }
}
#gollum-editor #gollum-editor-function-bar a.disabled {
display: none;
}
#gollum-editor #gollum-editor-function-bar span.function-divider {
display: none;
}
#gollum-editor #gollum-editor-function-bar #gollum-editor-format-selector {
padding: 0.2em 0 0.5em 0;
clear: both;
}
#gollum-editor #gollum-editor-function-bar #gollum-editor-format-selector:after {
content: ".";
display: block;
clear: both;
visibility: hidden;
}
#gollum-editor #gollum-editor-function-bar
#gollum-editor-format-selector select {
background-color: #f9f9f9;
border: 1px solid #ddd;
color: #333;
font-size: 1em;
font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
font-weight: bold;
line-height: 1.6em;
padding: 0.3em 0.4em;
display: inline-block;
border-radius: 0.5em;
-moz-border-radius: 0.5em;
-webkit-border-radius: 0.5em;
}
#gollum-editor #gollum-editor-function-bar
#gollum-editor-format-selector label {
color: #999;
font-size: 1em;
font-weight: bold;
line-height: 1.6em;
padding: .3em 0.5em 0 0;
display: inline-block;
}
#gollum-editor #gollum-editor-function-bar
#gollum-editor-format-selector label:after {
content: ':';
}
@media all and (min-width: 940px) {
#gollum-editor #gollum-editor-function-bar span.function-divider {
display: block;
width: 0.5em;
}
#gollum-editor #gollum-editor-function-bar span.function-divider {
float: left;
}
#gollum-editor #gollum-editor-function-bar
#gollum-editor-format-selector {
clear: none;
text-align: right;
}
#gollum-editor #gollum-editor-function-bar
#gollum-editor-format-selector select {
}
#gollum-editor #gollum-editor-function-bar
#gollum-editor-format-selector label {
}
}
/* @section uploads */
#gollum-editor-body.dragging {
box-shadow: 0 0 10px #AAE000;
}
#gollum-editor-body.uploading {
opacity: 0.5;
}
#gollum-editor-body + div {
display: none;
font-size: 1.5em;
}
#gollum-editor-body + div > i {
font-size: 1em;
}
#gollum-editor-body.uploading + div {
display: block;
}
#gollum-editor-body-ace {
overflow: scroll;
resize: vertical;
border: 1px solid #ddd;
font-family: Consolas, "Liberation Mono", Courier, monospace;
font-size: 1em;
height: 25em;
}
/* @section form-fields */
#gollum-editor textarea {
background: #fff;
border: 1px solid #ddd;
font-size: 1em;
font-family: Consolas, "Liberation Mono", Courier, monospace;
line-height: 1.4em;
margin: 0 0 0.4em;
padding: 0.5em;
width: 98%;
height: 25em;
}
@media all and (min-width: 940px) {
#gollum-editor textarea {
margin: 1em 0 0.4em;
}
}
#gollum-editor input#gollum-editor-submit {
background-color: #f7f7f7;
border: 1px solid #d4d4d4;
color: #333;
cursor: pointer;
display: block;
float: left;
font-size: 1em;
font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
font-weight: bold;
margin: 0;
padding: 0.4em 1em;
text-shadow: 0 1px 0 #fff;
filter:progid:DXImageTransform.Microsoft.gradient(GradientType=0, startColorstr='#f4f4f4', endColorstr='#ececec');
background: -webkit-gradient(linear, left top, left bottom, from(#f4f4f4), to(#ececec));
background: -moz-linear-gradient(top, #f4f4f4, #ececec);
border-radius: 3px;
-moz-border-radius: 3px;
-webkit-border-radius: 3px;
}
.webkit #gollum-editor input#gollum-editor-submit {
padding: 0.5em 1em 0.45em;
}
.ie #gollum-editor input#gollum-editor-submit {
padding: 0.4em 1em 0.5em;
}
#gollum-editor input#gollum-editor-submit:hover {
background: #3072b3;
border-color: #518cc6 #518cc6 #2a65a0;
color: #fff;
text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.3);
text-decoration: none;
filter:progid:DXImageTransform.Microsoft.gradient(GradientType=0, startColorstr='#599bdc', endColorstr='#3072b3');
background: -webkit-gradient(linear, left top, left bottom, from(#599bdc), to(#3072b3));
background: -moz-linear-gradient(top, #599bdc, #3072b3);
}
#gollum-editor .collapsed,
#gollum-editor .expanded {
border-bottom: 1px solid #ddd;
display: block;
overflow: hidden;
padding: 0.5em 0 0;
}
#gollum-editor #gollum-editor-body + .collapsed,
#gollum-editor #gollum-editor-body + .expanded {
border-top: 1px solid #ddd;
margin-top: 0.7em;
}
#gollum-editor .collapsed a.button,
#gollum-editor .expanded a.button {
background: #f7f7f7;
border: 1px solid #ddd;
color: #333;
display: block;
float: left;
height: 25px;
overflow: hidden;
margin: 0.2em 0.5em 0.75em 0;
text-shadow: 0 1px 0 #fff;
width: 25px;
border-radius: 0.3em;
-moz-border-radius: 0.3em;
-webkit-border-radius: 0.3em;
filter:progid:DXImageTransform.Microsoft.gradient(GradientType=0, startColorstr='#f4f4f4', endColorstr='#ececec');
background: -webkit-gradient(linear, left top, left bottom, from(#f4f4f4), to(#ececec));
background: -moz-linear-gradient(top, #f4f4f4, #ececec);
}
#gollum-editor .collapsed h4,
#gollum-editor .expanded h4 {
font-size: 1.6em;
float: left;
margin: 0;
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 a.button:hover {
color: #fff;
text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.3);
text-decoration: none;
filter:progid:DXImageTransform.Microsoft.gradient(GradientType=0, startColorstr='#599bdc', endColorstr='#3072b3');
background: -webkit-gradient(linear, left top, left bottom, from(#599bdc), to(#3072b3));
background: -moz-linear-gradient(top, #599bdc, #3072b3);
}
#gollum-editor .collapsed a span,
#gollum-editor .expanded a span {
background-image: url(../images/icon-sprite.png);
background-position: -351px -1px;
background-repeat: no-repeat;
display: block;
height: 25px;
overflow: hidden;
text-indent: -5000px;
width: 25px;
}
#gollum-editor .collapsed a:hover span {
background-position: -351px -28px;
}
#gollum-editor .expanded a span {
background-position: -378px 0;
}
#gollum-editor .expanded a:hover span {
background-position: -378px -28px;
}
#gollum-editor .collapsed textarea {
display: none;
}
#gollum-editor .expanded textarea {
background-color: #fff;
border: 1px solid #ddd;
clear: both;
display: block;
font-size: 1em;
font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
height: 7em;
line-height: 1.4em;
margin: 0.7em 0;
padding: 0.5em;
width: 98%;
}
/* @control minibutton */
#gollum-editor a.minibutton,
#gollum-editor a.minibutton:visited {
background-color: #f7f7f7;
border: 1px solid #d4d4d4;
color: #333;
cursor: pointer;
display: block;
font-size: 1em;
font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
font-weight: bold;
line-height: 1.2em;
margin: 0 0 0 0.8em;
padding: 0.5em 1em;
text-shadow: 0 1px 0 #fff;
filter:progid:DXImageTransform.Microsoft.gradient(GradientType=0, startColorstr='#f4f4f4', endColorstr='#ececec');
background: -webkit-gradient(linear, left top, left bottom, from(#f4f4f4), to(#ececec));
background: -moz-linear-gradient(top, #f4f4f4, #ececec);
border-radius: 3px;
-moz-border-radius: 3px;
-webkit-border-radius: 3px;
}
#gollum-editor a.minibutton:hover {
background: #3072b3;
border-color: #518cc6 #518cc6 #2a65a0;
color: #fff;
text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.3);
text-decoration: none;
filter:progid:DXImageTransform.Microsoft.gradient(GradientType=0, startColorstr='#599bdc', endColorstr='#3072b3');
background: -webkit-gradient(linear, left top, left bottom, from(#599bdc), to(#3072b3));
background: -moz-linear-gradient(top, #599bdc, #3072b3);
}
#gollum-editor #gollum-editor-preview {
float: left;
font-weight: normal;
padding: left;
}
/* @section help */
#gollum-editor-help {
clear: both;
margin: 0;
overflow: hidden;
padding: 0;
border: 1px solid #ddd;
border-width: 0 1px 1px 1px;
}
#gollum-editor-help-parent,
#gollum-editor-help-list {
display: block;
list-style-type: none;
margin: 0;
float: left;
width: 50%;
box-sizing: border-box;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
}
#gollum-editor-help-parent {
border-right: 1px solid #eee;
}
#gollum-editor-help-list {
background: #fafafa;
border-right: 1px solid #eee;
}
#gollum-editor-help-parent li,
#gollum-editor-help-list li {
font-size: 1.2em;
line-height: 1.6em;
margin: 0;
padding: 0;
}
#gollum-editor-help-parent li a,
#gollum-editor-help-list li a {
border: 1px solid transparent;
border-width: 1px 0;
display: block;
font-weight: bold;
height: 100%;
width: auto;
padding: 0.2em 1em;
text-shadow: 0 -1px 0 #fff;
font-size: 0.8em;
}
#gollum-editor-help-parent li a:hover,
#gollum-editor-help-list li a:hover {
background: #fff;
border-color: #f0f0f0;
text-decoration: none;
box-shadow: none;
}
#gollum-editor-help-parent li a.selected,
#gollum-editor-help-list li a.selected {
border: 1px solid #eee;
border-bottom-color: #e7e7e7;
border-width: 1px 0;
background: #fff;
color: #000;
box-shadow: 0 1px 2px #f0f0f0;
}
#gollum-editor-help-wrapper {
background: #fff;
overflow: auto;
height: 17em;
padding: 1em;
clear: both;
}
#gollum-editor-help-content {
font-size: 1.2em;
margin: 0 1em 0 0.5em;
padding: 0;
line-height: 1.8em;
}
#gollum-editor-help-content p {
margin: 0 0 1em 0;
padding: 0;
}
@media all and (min-width: 940px) {
#gollum-editor-help {
clear: none;
}
#gollum-editor-help-parent,
#gollum-editor-help-list {
height: 17em;
width: 18%;
overflow: auto;
padding: 1em 0;
}
#gollum-editor-help-parent li a,
#gollum-editor-help-list li a {
font-size: 1em;
}
#gollum-editor-help-wrapper {
clear: none;
}
}
/* IE */
.ie #gollum-editor .singleline input {
padding-top: 0.25em;
padding-bottom: 0.75em;
}
-857
View File
@@ -1,857 +0,0 @@
#wiki-wrapper #template blockquote {
margin: 1em 0;
border-left: 4px solid #ddd;
padding-left: .8em;
color: #555;
}
/*
gollum.css
A basic stylesheet for Gollum
*/
/* @section core */
body, html {
font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
font-size: 10px;
margin: 0;
padding: 0;
}
#wiki-wrapper {
margin: 0 auto;
overflow: visible;
width: 100%;
}
@media all and (min-width: 940px) {
#wiki-wrapper {
max-width: 920px;
padding-left:20px;
padding-right:20px;
}
}
a:link {
color: #4183c4;
text-decoration: none;
}
a:hover, a:visited {
color: #4183c4;
text-decoration: underline;
}
/* @section head */
#head {
margin: 1em 0 0;
padding: 0;
overflow: hidden;
}
#head h1 {
font-size: 1.5em;
float: left;
line-height: normal;
margin: 0;
padding: 0 0 0 0.667em;
}
#head ul.actions {
clear: both;
margin: 0 1em;
}
@media all and (min-width: 940px) {
#head {
border-bottom: 1px solid #ddd;
padding-bottom: 0.3em;
margin: 4em 0 1.5em;
}
#head h1 {
font-size: 2.5em;
padding: 2px 0 0 0;
}
#head ul.actions {
clear: none;
float: right;
margin: 0;
}
}
/* @section content */
#wiki-content {
height: 1%;
overflow: visible;
}
#wiki-content .wrap {
height: 1%;
overflow: auto;
}
/* @section comments */
#wiki-body #inline-comment {
display: none; /* todo */
}
/* @section body */
.has-leftbar #wiki-body {
float: right;
clear: right;
}
#wiki-body {
display: block;
float: left;
clear: left;
margin-right: 3%;
margin-bottom: 40px;
width: 100%;
}
#wiki-body table {
display: block;
overflow: auto;
border: 0;
}
.has-sidebar #wiki-body {
width: 68%;
}
/* @section toc */
#wiki-toc-main {
background-color: #F7F7F7;
border: 1px solid #DDD;
font-size: 13px;
padding: 0px 5px;
float: left;
margin-bottom: 20px;
min-width: 33%;
border-radius: 0.5em;
-moz-border-radius: 0.5em;
-webkit-border-radius: 0.5em;
}
#wiki-toc-main > div {
border: none;
}
/* @section sidebar */
.has-leftbar #wiki-sidebar {
float: left;
}
.has-rightbar #wiki-sidebar {
float: right;
}
#wiki-sidebar {
background-color: #f7f7f7;
border: 1px solid #ddd;
font-size: 13px;
padding: 7px;
width: 25%;
color: #555;
border-radius: 0.5em;
-moz-border-radius: 0.5em;
-webkit-border-radius: 0.5em;
}
#wiki-sidebar p {
margin: 13px 0 0;
}
#wiki-sidebar > p:first-child {
margin-top: 10px;
}
#wiki-sidebar 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-sidebar p.parent:before {
color: #666;
content: "← ";
}
/* @section footer */
#wiki-footer {
clear: both;
margin: 2em 0 5em;
}
.has-sidebar #wiki-footer {
width: 70%;
}
#wiki-header #header-content,
#wiki-footer #footer-content {
background-color: #f7f7f7;
border: 1px solid #ddd;
padding: 1em;
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;
}
#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 p {
margin: 0.5em 0 0;
padding: 0;
}
#wiki-footer #footer-content ul.links {
margin: 0.5em 0 0;
overflow: hidden;
padding: 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;
}
#wiki-footer #footer-content ul.links li a {
font-weight: bold;
text-shadow: 0 1px 0 #fff;
}
#wiki-footer #footer-content ul.links li:first-child {
list-style-type: none;
margin: 0;
}
.ff #wiki-footer #footer-content ul.links li:first-child {
margin: 0 -0.75em 0 0;
}
/* @section page-footer */
.page #footer {
clear: both;
border-top: 1px solid #ddd;
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 .actions {
margin-left: 1em;
}
@media all and (min-width: 940px) {
#footer .actions {
margin: 0;
}
}
/* @section history */
.history h1 {
color: #999;
font-weight: normal;
}
.history h1 strong {
color: #000;
font-weight: bold;
}
#wiki-history {
margin: 2em 1em 0 1em;
}
#wiki-history fieldset {
border: 0;
margin: 1em 0;
padding: 0;
}
#wiki-history table, #wiki-history tbody {
border-collapse: collapse;
padding: 0;
margin: 0;
width: 100%;
}
#wiki-history table tr {
padding: 0;
margin: 0;
}
#wiki-history table tr {
background-color: #ebf2f6;
}
#wiki-history table tr td {
border-top: 1px solid #c0dce9;
border-bottom: 1px solid #c0dce9;
font-size: 1em;
line-height: 1.6em;
margin: 0;
padding: 0.3em 0.7em;
}
#wiki-history table tr td.checkbox {
width: auto;
padding: 0 0.2em 0 0;
}
#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:nth-child(2n),
#wiki-history table tr.alt-row {
background-color: #f3f7fa;
}
#wiki-history table tr.selected {
background-color: #ffffea !important;
z-index: 100;
}
#wiki-history table tr td.commit-name {
border-left: 0;
}
#wiki-history table tr td.commit-name span.time-elapsed {
color: #999;
}
#wiki-history table tr td.author {
width: 20%;
}
#wiki-history table tr td.author a {
color: #000;
font-weight: bold;
}
#wiki-history table tr td.author a span.username {
display: block;
padding-top: 3px;
}
#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 {
margin: 0 0.6em 0 0;
}
@media all and (min-width: 940px) {
#wiki-history {
margin: 2em 0 0 0;
}
#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 {
width: 4em;
padding: 0.3em;
}
}
/* @section edit */
.edit h1 {
color: #999;
font-weight: normal;
}
.edit h1 strong {
color: #000;
font-weight: bold;
}
/* @section search */
.results h1 {
color: #999;
font-weight: normal;
}
.results h1 strong {
color: #000;
font-weight: bold;
}
.results #results {
border-bottom: 1px solid #ccc;
margin-left: 1em;
margin-right: 1em;
margin-bottom: 2em;
padding-bottom: 2em;
}
.results #results ul {
margin: 2em 0 0 0;
padding: 0;
}
.results #results ul li {
list-style: none;
padding: 0.2em 0;
}
.results #results ul li a {
word-wrap: break-word;
}
@media all and (min-width: 640px) {
.results #results ul li {
font-size: 1.2em;
}
}
@media all and (min-width: 940px) {
.results #results {
margin-left: 0;
margin-right: 0;
}
.results #results ul li {
list-style: disc;
list-style-position: outside;
line-height: 1.6em;
}
}
.results #results ul li span.count {
color: #999;
}
.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;
}
/* @section compare */
.compare h1 {
color: #999;
font-weight: normal;
}
.compare h1 strong {
color: #000;
font-weight: bold;
}
.compare #compare-content {
margin-top: 3em;
}
.compare .data {
border: 1px solid #ddd;
margin: 1em 0 2em;
overflow: auto;
}
.compare .data table {
width: 100%;
}
.compare .data pre {
margin: 0;
padding: 0;
}
.compare .data pre div {
padding: 0 0 0 1em;
}
.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 {
margin-left: 0;
margin-right: 0.6em;
}
.compare #footer {
margin-bottom: 7em;
}
/* @control syntax */
.highlight { background: #ffffff; }
.highlight .c { color: #999988; font-style: italic }
.highlight .err { color: #a61717; background-color: #e3d2d2 }
.highlight .k { font-weight: bold }
.highlight .o { font-weight: bold }
.highlight .cm { color: #999988; font-style: italic }
.highlight .cp { color: #999999; font-weight: bold }
.highlight .c1 { color: #999988; font-style: italic }
.highlight .cs { color: #999999; font-weight: bold; font-style: italic }
.highlight .gd { color: #000000; background-color: #ffdddd }
.highlight .gd .x { color: #000000; background-color: #ffaaaa }
.highlight .ge { font-style: italic }
.highlight .gr { color: #aa0000 }
.highlight .gh { color: #999999 }
.highlight .gi { color: #000000; background-color: #ddffdd }
.highlight .gi .x { color: #000000; background-color: #aaffaa }
.highlight .gc { color: #999; background-color: #EAF2F5 }
.highlight .go { color: #888888 }
.highlight .gp { color: #555555 }
.highlight .gs { font-weight: bold }
.highlight .gu { color: #aaaaaa }
.highlight .gt { color: #aa0000 }
/* @control minibutton */
ul.actions {
display: block;
list-style-type: none;
overflow: hidden;
padding: 0;
}
ul.actions li {
float: left;
font-size: 0.9em;
margin-left: 1px;
margin-bottom: 1px;
}
.minibutton a {
background-color: #f7f7f7;
border: 1px solid #d4d4d4;
color: #333;
display: block;
font-weight: bold;
margin: 0;
padding: 0.6em 1em;
height: 1.4em;
text-shadow: 0 1px 0 #fff;
filter:progid:DXImageTransform.Microsoft.gradient(GradientType=0, startColorstr='#f4f4f4', endColorstr='#ececec');
background: -webkit-gradient(linear, left top, left bottom, from(#f4f4f4), to(#ececec));
background: -moz-linear-gradient(top, #f4f4f4, #ececec);
border-radius: 3px;
-moz-border-radius: 3px;
-webkit-border-radius: 3px;
}
@media all and (min-width: 940px) {
ul.actions li {
margin-left: 0.6em;
margin-bottom: 0.6em;
}
.minibutton a {
padding: 0.4em 1em;
height: 1.4em;
}
}
#search-submit {
background-color: #f7f7f7;
border: 1px solid #d4d4d4;
color: #333;
display: block;
font-weight: bold;
margin: 0;
padding: 0.4em 1em;
text-shadow: 0 1px 0 #fff;
filter:progid:DXImageTransform.Microsoft.gradient(GradientType=0, startColorstr='#f4f4f4', endColorstr='#ececec');
background: -webkit-gradient(linear, left top, left bottom, from(#f4f4f4), to(#ececec));
background: -moz-linear-gradient(top, #f4f4f4, #ececec);
border-radius: 3px;
-moz-border-radius: 3px;
-webkit-border-radius: 3px;
}
.minibutton a:hover,
#search-submit:hover {
background: #3072b3;
border-color: #518cc6 #518cc6 #2a65a0;
color: #fff;
text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.3);
text-decoration: none;
filter:progid:DXImageTransform.Microsoft.gradient(GradientType=0, startColorstr='#599bdc', endColorstr='#3072b3');
background: -webkit-gradient(linear, left top, left bottom, from(#599bdc), to(#3072b3));
background: -moz-linear-gradient(top, #599bdc, #3072b3);
}
.minibutton a:visited {
text-decoration: none;
}
/* @special error */
#wiki-wrapper.error {
height: 1px;
position: absolute;
overflow: visible;
top: 50%;
width: 100%;
}
#error {
background-color: #f9f9f9;
border: 1px solid #e4e4e4;
left: 50%;
overflow: hidden;
padding: 2%;
margin: -10% 0 0 -35%;
position: absolute;
width: 70%;
border-radius: 0.5em;
-moz-border-radius: 0.5em;
-webkit-border-radius: 0.5em;
}
#error h1 {
font-size: 3em;
line-height: normal;
margin: 0;
padding: 0;
}
#error p {
font-size: 1.2em;
line-height: 1.6em;
margin: 1em 0 0.5em;
padding: 0;
}
/* @control searchbar */
#head #searchbar {
float: right;
padding: 2px 0 0 0;
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;
}
#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;
}
.ie8 #head #searchbar #searchbar-fauxtext input#search-query {
padding: 0.5em 0 0 0.5em;
}
#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;
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: 32px;
}
.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;
}
@media all and (min-width: 940px) {
#head #searchbar {
padding: 0;
}
#head #searchbar #searchbar-fauxtext #search-submit span {
width: 28px;
}
#head #searchbar #searchbar-fauxtext #search-submit:hover span {
background-position: -431px -28px;
}
}
/* @section pages */
#pages {
font-size: 1.2em;
margin: 0 1em 20px 1em;
}
@media all and (min-width: 940px) {
#pages {
margin: 0 0 20px 0;
}
}
#pages ul {
list-style: none;
margin: 0;
padding: 0;
}
#pages li a.file,
#pages li a.folder {
background-image: url(../images/fileview/document.png);
background-position: 0 1px;
background-repeat: no-repeat;
padding-left: 20px;
}
#pages li a.folder {
background-image: url(../images/fileview/folder-horizontal.png);
}
#pages .breadcrumb {
border-top: 1px solid #ddd;
border-bottom: 1px solid #ddd;
margin: 1em 0;
padding: 0.25em;
}
.clearfloats {
clear: both;
}
.emoji {
width: 20px;
height: 20px;
vertical-align: -18%;
}
-75
View File
@@ -1,75 +0,0 @@
/* IE7-specific styles */
.ie #wiki-wrapper {
width: 920px;
padding-left:20px;
padding-right:20px;
}
.ie #head #searchbar #searchbar-fauxtext input#search-query {
border: 0;
float: left;
padding: 0.4em 0 0 0.5em;
}
.ie #head #searchbar #searchbar-fauxtext #search-submit span {
height: 2.25em;
}
#head #searchbar,
#head ul.actions {
margin: 1em 0 0 0;
}
ul.actions {
margin-left: 0;
}
.compare #footer ul.actions {
margin-top: 1em;
}
.compare div.data {
overflow: auto;
}
.history #version-form {
margin: -0.5em 0 -0.5em !important;
}
#gollum-editor {
padding-bottom: 0;
}
#gollum-editor-help-parent li a,
#gollum-editor-help-list li a {
height: auto;
}
#gollum-editor #gollum-editor-format-selector {
margin-top: 6px;
}
#gollum-editor .singleline input {
padding-top: 0.25em;
}
#gollum-editor .collapsed {
padding-bottom: 1.1em;
}
#gollum-editor #gollum-editor-submit {
padding: 0.5em 1em 0.3em !important;
}
#gollum-editor #gollum-editor-preview {
line-height: 1.3em;
}
#gollum-editor form {
margin: 0;
}
#gollum-editor #gollum-editor-format-selector label {
padding-top: 0.1em !important;
}
-14
View File
@@ -1,14 +0,0 @@
/*
print.css
Removes the action buttons at the top and
the delete link at the bottom for better printing.
*/
ul.actions {
display: none;
}
#delete-link {
display: none;
}
-884
View File
@@ -1,884 +0,0 @@
/*
Gollum v3 Template
*/
/*!
* Font Awesome 4.0.3 by @davegandy - http://fontawesome.io - @fontawesome
* License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
*/
@font-face {
font-family: 'FontAwesome';
src: url('../fonts/fontawesome-webfont.eot?v=4.0.3');
src: url('../fonts/fontawesome-webfont.eot?#iefix&v=4.0.3') format('embedded-opentype'), url('../fonts/fontawesome-webfont.woff?v=4.0.3') format('woff'), url('../fonts/fontawesome-webfont.ttf?v=4.0.3') format('truetype'), url('../fonts/fontawesome-webfont.svg?v=4.0.3#fontawesomeregular') format('svg');
font-weight: normal;
font-style: normal;
}
.fa {
display: inline-block;
font: normal normal 16px FontAwesome;
line-height: 1;
text-decoration: none;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
.fa-link:before {
content: "\f0c1";
}
.fa-spinner:before {
content: "\f110";
}
.fa-spin {
-webkit-animation: spin 2s infinite linear;
-moz-animation: spin 2s infinite linear;
-o-animation: spin 2s infinite linear;
animation: spin 2s infinite linear;
}
@-moz-keyframes spin {
0% {
-moz-transform: rotate(0deg);
}
100% {
-moz-transform: rotate(359deg);
}
}
@-webkit-keyframes spin {
0% {
-webkit-transform: rotate(0deg);
}
100% {
-webkit-transform: rotate(359deg);
}
}
@-o-keyframes spin {
0% {
-o-transform: rotate(0deg);
}
100% {
-o-transform: rotate(359deg);
}
}
@keyframes spin {
0% {
-webkit-transform: rotate(0deg);
transform: rotate(0deg);
}
100% {
-webkit-transform: rotate(359deg);
transform: rotate(359deg);
}
}
/* margin & padding reset*/
* {
margin: 0;
padding: 0;
}
div {
display: block;
}
html {
font-family: sans-serif;
-ms-text-size-adjust: 100%;
-webkit-text-size-adjust: 100%;
}
html, body {
color: #333;
}
body {
background-color: white;
font: 13.34px Helvetica, arial, freesans, clean, sans-serif;
font-size: small;
line-height: 1.4;
}
img {
border: 0;
}
a {
color: #4183C4;
text-decoration: none;
}
a.absent {
color: #c00;
}
a:focus {
outline: thin dotted;
}
a:active, a:hover {
outline: 0;
}
.markdown-body a.anchor:focus {
outline: none;
}
.markdown-body a[id].wiki-toc-anchor {
color: inherit;
text-decoration: none;
}
.markdown-body {
padding: 1em;
font-size: 15px;
line-height: 1.7;
overflow: hidden;
word-wrap: break-word;
}
@media all and (min-width: 940px) {
.markdown-body {
padding: 30px;
}
}
.markdown-body > *:first-child {
margin-top: 0 !important;
}
.markdown-body > *:last-child {
margin-bottom: 0 !important;
}
.markdown-body a.absent {
color: #c00;
}
.markdown-body a.anchor {
display: block;
padding-right: 6px;
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: 1em 0 15px;
padding: 0;
font-weight: bold;
line-height: 1.7;
cursor: text;
position: relative;
-webkit-font-smoothing: antialiased;
text-rendering: optimizeLegibility;
}
.markdown-body h1 .fa-link, .markdown-body h2 .fa-link, .markdown-body h3 .fa-link, .markdown-body h4 .fa-link, .markdown-body h5 .fa-link, .markdown-body h6 .fa-link {
display: none;
text-decoration: none;
color: #000;
}
.markdown-body h1:hover a.anchor .fa-link,
.markdown-body h2:hover a.anchor .fa-link,
.markdown-body h3:hover a.anchor .fa-link,
.markdown-body h4:hover a.anchor .fa-link,
.markdown-body h5:hover a.anchor .fa-link,
.markdown-body h6:hover a.anchor .fa-link {
text-decoration: none;
line-height: 1;
padding-left: 8px;
margin-left: -30px;
top: 15%;
display: inline-block;
}
.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: 2.5em;
border-bottom: 1px solid #ddd;
color: #000;
margin-top: 20px;
margin-bottom: 10px;
}
.markdown-body h2 {
font-size: 2em;
border-bottom: 1px solid #eee;
color: #000;
}
.markdown-body h3 {
font-size: 1.5em;
}
.markdown-body h4 {
font-size: 1.2em;
}
.markdown-body h5 {
font-size: 1em;
}
.markdown-body h6 {
color: #777;
font-size: 1em;
}
.markdown-body p,
.markdown-body blockquote,
.markdown-body ul,
.markdown-body ol,
.markdown-body dl,
.markdown-body table,
.markdown-body pre,
.markdown-body hr {
margin: 15px 0;
}
.markdown-body li {
margin: 0px;
}
.markdown-body hr {
background: transparent url(../images/dirty-shade.png) repeat-x 0 0;
border: 0 none;
color: #ccc;
height: 4px;
padding: 0;
}
.markdown-body > h1:first-child,
.markdown-body > h2:first-child,
.markdown-body > h3:first-child,
.markdown-body > h4:first-child,
.markdown-body > h5:first-child,
.markdown-body > h6:first-child {
}
.markdown-body h1 + h2 + h3 {
margin-top: 30px;
}
.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;
}
.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 dl {
padding: 0;
}
.markdown-body dl dt {
font-size: 14px;
font-weight: bold;
font-style: italic;
padding: 0;
margin: 15px 0 5px;
}
.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;
border-collapse: collapse;
border-spacing: 0;
}
.markdown-body table tr {
border-top: 1px solid #ccc;
background-color: #fff;
margin: 0;
padding: 0;
}
.markdown-body table tr:nth-child(2n) {
background-color: #f8f8f8;
}
.markdown-body table tr th {
font-weight: bold;
}
.markdown-body table tr th,
.markdown-body table tr td,
.markdown-body table tr td table,
.markdown-body table tr th table {
border: 1px solid #ccc;
text-align: none;
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;
}
.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;
}
.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;
}
.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;
}
.markdown-body span.float-left span {
margin: 13px 0 0;
}
.markdown-body span.float-right {
display: block;
margin-left: 13px;
overflow: hidden;
float: right;
}
.markdown-body span.float-right > span {
display: block;
overflow: hidden;
margin: 13px auto 0;
text-align: right;
}
.markdown-body code,
.markdown-body pre,
.markdown-body tt {
font-family: Consolas, "Liberation Mono", Courier, monospace;
font-size: 12px;
}
.markdown-body code,
.markdown-body tt {
margin: 0 2px;
padding: 0 5px;
white-space: nowrap;
border: 1px solid #ddd;
background-color: #f8f8f8;
border-radius: 3px;
}
.markdown-body pre > tt,
.markdown-body pre > code {
margin: 0;
padding: 0;
white-space: pre;
border: none;
background: transparent;
}
.markdown-body pre {
background-color: #f8f8f8;
border: 1px solid #ccc;
font-size: 13px;
line-height: 19px;
overflow: auto;
padding: 6px 10px;
border-radius: 3px;
}
.markdown-body pre pre,
.markdown-body pre code,
.markdown-body pre tt {
background-color: transparent;
border: none;
}
.markdown-body pre pre {
margin: 0;
padding: 0;
}
.toc {
background-color: #F7F7F7;
border: 1px solid #ddd;
padding: 5px 10px;
margin: 0;
border-radius: 3px;
}
.toc-title {
color: #888;
font-size: 14px;
line-height: 1.6;
padding: 2px;
border-bottom: 1px solid #ddd;
margin-bottom: 3px;
}
.toc ul {
padding-left: 10px;
margin: 0;
}
.toc > ul {
margin-left: 10px;
font-size: 17px;
}
.toc ul ul {
font-size: 15px;
}
.toc ul ul ul {
font-size: 14px;
}
.toc ul li {
margin: 0;
}
#header-content .toc,
#footer-content .toc,
#sidebar-content .toc {
border: none;
}
.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.

Before

Width:  |  Height:  |  Size: 9.3 KiB

After

Width:  |  Height:  |  Size: 3.9 KiB

@@ -0,0 +1,31 @@
//= require jquery-1.7.2.min
//= require mousetrap.min
//= require gollum
//= require gollum.dialog
//= require gollum.placeholder
//= require editor/gollum.editor
//= require_tree ./editor/langs
//= require ace-1.2.5/ace
//= require ace-1.2.5/mode-markdown
//= require ace-1.2.5/mode-asciidoc
//= require ace-1.2.5/mode-text
//= require ace-1.2.5/mode-rdoc
//= require ace-1.2.5/mode-textile
//= require ace-1.2.5/theme-tomorrow
//= require ace-1.2.5/keybinding-vim
//= require ace-1.2.5/keybinding-emacs
//= require ace-1.2.5/ext-elastic_tabstops_lite.js
//= require ace-1.2.5/ext-error_marker.js
//= require ace-1.2.5/ext-keybinding_menu.js
//= require ace-1.2.5/ext-language_tools.js
//= require ace-1.2.5/ext-linking.js
//= require ace-1.2.5/ext-searchbox.js
//= require ace-1.2.5/ext-settings_menu.js
//= require ace-1.2.5/ext-spellcheck.js
//= require ace-1.2.5/ext-split.js
//= require ace-1.2.5/ext-static_highlight.js
//= require ace-1.2.5/ext-statusbar.js
//= require ace-1.2.5/ext-textarea.js
//= require ace-1.2.5/ext-themelist.js
//= require ace-1.2.5/ext-whitespace.js
//= require jquery.resize
@@ -95,6 +95,7 @@
$("#wiki_format").change(function() {
var mode = $(this).val();
var editor = window.ace_editor;
window.ace_editor.getSession().setMode("ace/mode/" + AceMode[mode]);
FormatSelector.updateCommitMessage(mode);
editor.focus();
@@ -420,7 +421,7 @@
}
// attempt to load the definition for this language
var script_uri = baseUrl + '/javascript/editor/langs/' + markup_name + '.js';
var script_uri = baseUrl + '/assets/editor/langs/' + markup_name + '.js';
$.ajax({
url: script_uri,
dataType: 'script',
@@ -1,123 +0,0 @@
/*
* jQuery Color Animations
* Copyright 2007 John Resig
* Released under the MIT and GPL licenses.
*/
(function(jQuery){
// We override the animation for all of these color styles
jQuery.each(['backgroundColor', 'borderBottomColor', 'borderLeftColor', 'borderRightColor', 'borderTopColor', 'color', 'outlineColor'], function(i,attr){
jQuery.fx.step[attr] = function(fx){
if ( fx.state == 0 ) {
fx.start = getColor( fx.elem, attr );
fx.end = getRGB( fx.end );
}
fx.elem.style[attr] = "rgb(" + [
Math.max(Math.min( parseInt((fx.pos * (fx.end[0] - fx.start[0])) + fx.start[0]), 255), 0),
Math.max(Math.min( parseInt((fx.pos * (fx.end[1] - fx.start[1])) + fx.start[1]), 255), 0),
Math.max(Math.min( parseInt((fx.pos * (fx.end[2] - fx.start[2])) + fx.start[2]), 255), 0)
].join(",") + ")";
}
});
// Color Conversion functions from highlightFade
// By Blair Mitchelmore
// http://jquery.offput.ca/highlightFade/
// Parse strings looking for color tuples [255,255,255]
function getRGB(color) {
var result;
// Check if we're already dealing with an array of colors
if ( color && color.constructor == Array && color.length == 3 )
return color;
// Look for rgb(num,num,num)
if (result = /rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/.exec(color))
return [parseInt(result[1]), parseInt(result[2]), parseInt(result[3])];
// Look for rgb(num%,num%,num%)
if (result = /rgb\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*\)/.exec(color))
return [parseFloat(result[1])*2.55, parseFloat(result[2])*2.55, parseFloat(result[3])*2.55];
// Look for #a0b1c2
if (result = /#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/.exec(color))
return [parseInt(result[1],16), parseInt(result[2],16), parseInt(result[3],16)];
// Look for #fff
if (result = /#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/.exec(color))
return [parseInt(result[1]+result[1],16), parseInt(result[2]+result[2],16), parseInt(result[3]+result[3],16)];
// Otherwise, we're most likely dealing with a named color
return colors[jQuery.trim(color).toLowerCase()];
}
function getColor(elem, attr) {
var color;
do {
color = jQuery.curCSS(elem, attr);
// Keep going until we find an element that has color, or we hit the body
if ( color != '' && color != 'transparent' || jQuery.nodeName(elem, "body") )
break;
attr = "backgroundColor";
} while ( elem = elem.parentNode );
return getRGB(color);
};
// Some named colors to work with
// From Interface by Stefan Petre
// http://interface.eyecon.ro/
var colors = {
aqua:[0,255,255],
azure:[240,255,255],
beige:[245,245,220],
black:[0,0,0],
blue:[0,0,255],
brown:[165,42,42],
cyan:[0,255,255],
darkblue:[0,0,139],
darkcyan:[0,139,139],
darkgrey:[169,169,169],
darkgreen:[0,100,0],
darkkhaki:[189,183,107],
darkmagenta:[139,0,139],
darkolivegreen:[85,107,47],
darkorange:[255,140,0],
darkorchid:[153,50,204],
darkred:[139,0,0],
darksalmon:[233,150,122],
darkviolet:[148,0,211],
fuchsia:[255,0,255],
gold:[255,215,0],
green:[0,128,0],
indigo:[75,0,130],
khaki:[240,230,140],
lightblue:[173,216,230],
lightcyan:[224,255,255],
lightgreen:[144,238,144],
lightgrey:[211,211,211],
lightpink:[255,182,193],
lightyellow:[255,255,224],
lime:[0,255,0],
magenta:[255,0,255],
maroon:[128,0,0],
navy:[0,0,128],
olive:[128,128,0],
orange:[255,165,0],
pink:[255,192,203],
purple:[128,0,128],
violet:[128,0,128],
red:[255,0,0],
silver:[192,192,192],
white:[255,255,255],
yellow:[255,255,0]
};
})(jQuery);
@@ -0,0 +1,55 @@
// Describes basic parameters (colours, sizes, font stacks, etc.)
// Layout
$layout-body-width: 920px;
$layout-body-padding: 20px;
$layout-sidebar: 25%;
$layout-with-sidebar: 70%;
$layout-with-sidebar-leeway: 1%;
// Colors
$grey: #ddd;
$light-grey: #f7f7f7;
$blue: #4183c4;
$red: #c00;
$white: #fff;
$black: #000000;
$color-button-border: #d4d4d4;
$button-text: #333;
$color-button-border-hover: #518cc6;
$color-button-border-hover-hi: #2a65a0;
$color-button-background-hover: #3072b3;
$color-button-background-hover-hi: #599bdc;
$color-editor-element-border: #eee;
$color-editor-component-border: #e4e4e4;
$color-editor-component: #f9f9f9;
// Font stack
$font-default: "Helvetica Neue", Helvetica, Arial, freesans, clean, sans-serif;
$font-console: Inconsolata, Consolas, "Liberation Mono", 'Monaco', 'Andale Mono', 'Courier New', monospace;
// Borders
$border-standard: 1px solid $grey;
$border-editor-component: 1px solid $color-editor-component-border;
$border-editor-element: 1px solid $color-editor-element-border;
// Editor buttons
$editor-button-size: 32px;
$editor-button-desktop-size: 25px;
$editor-button-mobile-margin: 3px;
$editor-button-img-width: 27px;
$editor-button-img-height: 28px;
//urls
$img_fileview_doc: image-url('fileview/document.png');
$img_fileview_trash: image-url('fileview/trashcan.png');
$img_fileview_toggle_small: image-url('fileview/toggle-small.png');
$img_fileview_toggle_small_expand: image-url('fileview/toggle-small-expand.png');
$img_fileview_folder: image-url('fileview/folder-horizontal.png');
$img_icon_sprite: image-url('icon-sprite.png');
$img_dirty_shade: image-url('dirty-shade.png');
@@ -0,0 +1,22 @@
// Describes browser size breakpoints
// Desktop-sized displays
@mixin desktop-breakpoint {
@media all and (min-width: 940px) {
@content;
}
}
// Large mobile displays
@mixin largemobile-breakpoint {
@media all and (min-width: 640px) {
@content;
}
}
// Medium mobile displays
@mixin mediummobile-breakpoint {
@media all and (min-width: 480px) {
@content;
}
}
@@ -0,0 +1,124 @@
// Describes common component styles for Gollum pages
// Sets a reusable component container.
@mixin component-base {
background-color: $light-grey;
border: $border-standard;
border-radius: 0.5em;
}
// Sets a reusable section header component.
@mixin section-header {
h1 {
color: #999;
font-weight: normal;
strong {
color: #000;
font-weight: bold;
}
}
}
// Sets textarea styles.
@mixin component-textarea {
@include alt-box-model;
display: block;
clear: both;
background: #fff;
border: $border-standard;
font-size: 1em;
font-family: $font-console;
line-height: 1.4em;
margin: 0 0 0.4em;
padding: 0.5em;
width: 100%;
@include desktop-breakpoint {
margin: 1em 0 0.4em;
}
}
// Defines a common button style.
@mixin button-base {
display: block;
font-weight: bold;
color: $button-text;
background-color: $light-grey;
border: 1px solid $color-button-border;
text-shadow: 0 1px 0 #fff;
cursor: pointer;
@include vertical-gradient(#f4f4f4, #ececec);
border-radius: 3px;
&:hover {
color: #fff;
background: $color-button-background-hover;
border-color: $color-button-border-hover $color-button-border-hover $color-button-border-hover-hi;
text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.3);
text-decoration: none;
@include vertical-gradient($color-button-background-hover-hi, $color-button-background-hover);
}
&:visited {
text-decoration: none;
}
}
// Defines images for buttons.
@mixin button-sprites {
background-image: $img_icon_sprite;
background-repeat: no-repeat;
}
// Defines mobile and desktop editor button sizes.
@mixin editor-button-size {
width: $editor-button-size;
height: $editor-button-size;
@include desktop-breakpoint {
width: $editor-button-desktop-size;
height: $editor-button-desktop-size;
}
}
// Defines a common editor button style using image sprites.
@mixin editor-button($row-pos: 0) {
$left: $editor-button-img-width * -1 * $row-pos;
$left-mobile: $left + $editor-button-mobile-margin;
$top: 0;
$top-hover: -1 * $editor-button-img-height;
$top-mobile: $editor-button-mobile-margin;
$top-mobile-hover: -1 * $editor-button-img-height + $editor-button-mobile-margin;
span {
background-position: $left-mobile $top-mobile;
}
&:hover {
span {
background-position: $left-mobile $top-mobile-hover;
}
}
@include desktop-breakpoint {
span {
background-position: $left $top;
}
&:hover {
span {
background-position: $left $top-hover;
}
}
}
}
@@ -0,0 +1,91 @@
// Describes feature mixins
// Sets the basic desktop page layout.
// We made this reusable so the IE7/8 template can use it too.
@mixin desktop-page-layout {
max-width: $layout-body-width;
padding-left: $layout-body-padding;
padding-right: $layout-body-padding;
}
// Sets the alternative box model so borders are counted as part of the width.
@mixin alt-box-model {
box-sizing: border-box;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
}
// Reset box margin and padding.
@mixin reset-box-leave-border {
margin: 0;
padding: 0;
}
// Reset box margin, padding and border.
@mixin reset-box {
border: 0;
@include reset-box-leave-border;
}
// Uses a simple text concealment method.
@mixin text-conceal-simple {
overflow: hidden;
text-indent: -5000px;
}
// Defines position as equi-distant from the edge of the parent element.
@mixin four-edge-position($padding: 0px) {
top: $padding;
right: $padding;
bottom: $padding;
left: $padding;
}
// Sets box to clear internal floats without using overflow.
@mixin clearfix {
&:after {
content: ".";
display: block;
clear: both;
visibility: hidden;
}
}
// Top and bottom children of this element have their margins truncated.
@mixin children-truncate-margin {
> :first-child {
margin-top: 0;
}
> :last-child {
margin-bottom: 0;
}
}
// Defines a vertical gradient.
@mixin vertical-gradient($start-color, $end-color) {
filter:progid:DXImageTransform.Microsoft.gradient(GradientType=0, startColorstr='#{$start-color}', endColorstr='#{$end-color}');
background: -webkit-gradient(linear, left top, left bottom, from($start-color), to($end-color));
background: -moz-linear-gradient(top, $start-color, $end-color);
}
// Defines a common animation.
@mixin generic-animation($animation) {
-webkit-animation: $animation;
-moz-animation: $animation;
-o-animation: $animation;
animation: $animation;
}
// Defines font smoothing method.
// http://maximilianhoffmann.com/posts/better-font-rendering-on-osx
@mixin font-smoothing($value: on) {
@if $value == on {
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
@else {
-webkit-font-smoothing: subpixel-antialiased;
-moz-osx-font-smoothing: auto;
}
}
@@ -0,0 +1,71 @@
// Describes base page layout
/* @section wrapper */
#wiki-wrapper {
margin: 0 auto;
overflow: visible;
width: 100%;
@include desktop-breakpoint {
@include desktop-page-layout;
}
}
/* @section content */
#wiki-content {
height: 1%;
overflow: visible;
.wrap {
height: 1%;
overflow: auto;
}
}
/* @section body */
#wiki-body {
display: block;
width: 100%;
margin-right: 3%;
@include largemobile-breakpoint {
float: left;
clear: left;
.has-sidebar & {
width: $layout-with-sidebar - $layout-with-sidebar-leeway;
}
.has-leftbar & {
float: right;
clear: right;
}
}
}
/* @section sidebar */
#wiki-sidebar {
@include largemobile-breakpoint {
width: $layout-sidebar;
.has-leftbar & {
float: left;
}
.has-rightbar & {
float: right;
}
}
}
/* @section footer */
#wiki-footer {
clear: both;
@include largemobile-breakpoint {
.has-sidebar & {
width: $layout-with-sidebar;
}
}
}
@@ -0,0 +1,4 @@
//= require gollum
//= require editor
//= require dialog
//= require template
@@ -0,0 +1,176 @@
/* @control dialog */
@import "_base", "_features", "_breakpoint", "_component";
#gollum-dialog-dialog {
display: block;
overflow: visible;
position: absolute;
top: 0;
left: 0;
z-index: 999999;
width: 100%;
height: 100%;
@include mediummobile-breakpoint {
position: absolute;
position: fixed;
width: auto;
height: auto;
}
@include desktop-breakpoint {
position: absolute;
top: 50%;
left: 50%;
}
&.active {
display: block;
}
a.minibutton {
float: right;
margin-right: 0.5em;
width: auto;
font-size: 1.2em;
font-family: $font-default;
margin: 0 0 0 0.8em;
padding: 0.4em 1em;
@include button-base;
}
}
#gollum-dialog-dialog-inner {
margin: 0px;
width: 100%;
height: 100%;
@include four-edge-position(0px);
@include mediummobile-breakpoint {
margin: auto;
position: fixed;
width: auto;
height: auto;
min-width: 280px;
min-height: 380px;
max-width: 450px;
max-height: 450px;
@include four-edge-position(10px);
border: 7px solid #999;
border: 7px solid rgba(0, 0, 0, 0.3);
border-radius: 5px;
}
@include desktop-breakpoint {
margin: 0 0 0 -225px;
position: relative;
width: 450px;
@include four-edge-position(auto);
}
h4 {
border-bottom: $border-standard;
color: #000;
font-size: 1.8em;
line-height: normal;
font-weight: bold;
margin: 0 0 0.75em 0;
padding: 0 0 0.3em 0;
}
}
#gollum-dialog-dialog-bg {
background-color: #fff;
padding: 1em;
height: 100%;
@include alt-box-model;
@include mediummobile-breakpoint {
overflow: hidden;
@include vertical-gradient(#f7f7f7, #ffffff);
}
@include desktop-breakpoint {
height: auto;
}
}
#gollum-dialog-dialog-body {
font-size: 1.2em;
line-height: 1.6em;
fieldset {
display: block;
@include reset-box;
@include clearfix;
.field {
margin: 0 0 1.5em 0;
padding: 0;
&:last-child {
margin: 0 0 1em 0;
}
label {
color: #000;
display: block;
font-size: 1.2em;
font-weight: bold;
line-height: 1.6em;
margin: 0;
padding: 0;
min-width: 80px;
}
input {
&[type="text"] {
border: $border-standard;
display: block;
font-family: $font-default;
font-size: 1.2em;
line-height: 1.6em;
margin: 0.3em 0 0 0;
padding: 0.3em 0.5em;
width: 94%;
}
&.code {
font-family: $font-console;
}
}
span.context {
font-size: .9em;
color: #666;
span.path {
font-family: $font-console;
font-weight: bold;
}
}
}
}
}
#gollum-dialog-dialog-buttons {
border-top: $border-standard;
overflow: hidden;
margin: 1.5em 0 0 0;
padding: 1em 0 0 0;
}
@@ -0,0 +1,504 @@
// Wiki editor formatting
@import "_base", "_features", "_breakpoint", "_component";
a {
-moz-outline: none !important;
}
.jaws {
// JAWS should see it, but you can't
display: block;
height: 1px;
left: -5000px;
overflow: hidden;
position: absolute;
top: -5000px;
width: 1px;
}
.disabled {
color: lightgray;
}
#gollum-editor-body-ace {
overflow: scroll;
resize: vertical;
border: 1px solid #ddd;
font-family: Consolas, "Liberation Mono", Courier, monospace;
font-size: 1em;
height: 25em;
}
#gollum-editor {
margin: 0 0 5em;
padding: 0em 1em 0.4em;
@include clearfix;
.ff &, .ie & {
padding-bottom: 1em;
}
@include desktop-breakpoint {
border: $border-editor-component;
background: $color-editor-component;
margin: 1em 0 5em;
border-radius: 1em;
}
form {
fieldset {
width: 100%;
@include reset-box;
}
}
.singleline {
display: block;
margin: 0 0 0.7em 0;
@include clearfix;
input {
background: #fff;
border: $border-standard;
color: #000;
font-size: 1.1em;
font-family: $font-default;
line-height: 1.5em;
margin: 1em 0 0.4em;
padding: 0.5em;
width: 98%;
&.ph {
color: #999;
}
.ie & {
padding-top: 0.25em;
padding-bottom: 0.75em;
}
}
}
.path_note {
text-align: right;
font-size: small;
padding-right: 5px;
}
/* @control editor-view-tab */
#gollum-editor-type-switcher {
display: none;
}
/* @control function-bar */
#gollum-editor-function-bar {
border-bottom: $border-standard;
padding: 0;
@include desktop-breakpoint {
overflow: hidden;
}
#gollum-editor-function-buttons {
display: none;
}
&.active {
#gollum-editor-function-buttons {
display: block;
margin: 0;
padding: 0;
@include desktop-breakpoint {
overflow: hidden;
margin: 0;
padding: 0 0 1.1em 0;
float: left;
}
}
}
a {
&.function-button {
float: left;
overflow: hidden;
margin: 1px 1px 0 0;
@include editor-button-size;
@include button-base;
@include desktop-breakpoint {
margin: 0.2em 0.5em 0 0;
}
span {
display: block;
@include button-sprites;
@include text-conceal-simple;
@include editor-button-size;
}
}
&.disabled {
display: none;
}
}
span.function-divider {
display: none;
@include desktop-breakpoint {
display: block;
width: 0.5em;
float: left;
}
}
#gollum-editor-format-selector {
padding: 0.2em 0 0.5em 0;
clear: both;
@include clearfix;
@include desktop-breakpoint {
clear: none;
text-align: right;
}
select {
background-color: $color-editor-component;
border: $border-standard;
color: #333;
font-size: 1em;
font-family: $font-default;
font-weight: bold;
line-height: 1.6em;
padding: 0.3em 0.4em;
display: inline-block;
border-radius: 0.5em;
}
label {
color: #999;
font-size: 1em;
font-weight: bold;
line-height: 1.6em;
padding: .3em 0.5em 0 0;
display: inline-block;
&:after {
content: ':';
}
}
}
}
/* @section form-fields */
textarea {
@include component-textarea;
height: 25em;
}
input#gollum-editor-submit {
float: left;
font-size: 1em;
font-family: $font-default;
margin: 0;
padding: 0.4em 1em;
@include button-base;
@include alt-box-model;
.webkit & {
padding: 0.5em 1em 0.45em;
}
.ie & {
padding: 0.4em 1em 0.5em;
}
}
.collapsed, .expanded {
border-bottom: $border-standard;
display: block;
overflow: hidden;
padding: 0.5em 0 0;
a {
&.button {
float: left;
overflow: hidden;
margin: 0.2em 0.5em 0.75em 0;
@include editor-button-size;
@include button-base;
}
span {
display: block;
@include button-sprites;
@include editor-button-size;
@include text-conceal-simple;
}
}
h4 {
font-size: 1.6em;
float: left;
margin: 0;
padding: 0.25em 0 0 0.3em;
text-shadow: 0 -1px 0 #fff;
line-height: $editor-button-size;
@include desktop-breakpoint {
line-height: $editor-button-desktop-size;
}
}
}
.collapsed {
h4 {
color: #bbb;
}
a.button {
@include editor-button(13);
}
textarea {
display: none;
}
}
.expanded {
a.button {
@include editor-button(14);
}
textarea {
@include component-textarea;
height: 7em;
}
}
#gollum-editor-body {
& + .collapsed, & + .expanded {
border-top: $border-standard;
margin-top: 0.7em;
}
}
/* @control minibutton */
a.minibutton {
font-size: 1em;
font-family: $font-default;
line-height: 1.2em;
margin: 0 0 0 0.8em;
padding: 0.5em 1em;
@include button-base;
}
/* @control preview */
#gollum-editor-preview {
float: left;
font-weight: normal;
padding: left;
@include alt-box-model;
}
}
/* @control title */
#gollum-editor-title-field {
&.active {
border-bottom: $border-standard;
display: block;
margin: 0 0 0.3em 0;
padding: 0 0 0.5em 0;
}
input#gollum-editor-page-title {
font-weight: bold;
margin-top: 0;
&.ph {
color: #000;
}
}
& + #gollum-editor-function-bar {
margin-top: 0.6em;
}
}
/* @control editor-buttons */
a#function-bold { @include editor-button(0); }
a#function-italic { @include editor-button(1); }
a#function-underline { @include editor-button(2); }
a#function-code { @include editor-button(3); }
a#function-ul { @include editor-button(4); }
a#function-ol { @include editor-button(5); }
a#function-blockquote { @include editor-button(6); }
a#function-hr { @include editor-button(7); }
a#function-h1 { @include editor-button(8); }
a#function-h2 { @include editor-button(9); }
a#function-h3 { @include editor-button(10); }
a#function-link { @include editor-button(11); }
a#function-image { @include editor-button(12); }
a#function-plus { @include editor-button(13); }
a#function-minus { @include editor-button(14); }
a#function-help { @include editor-button(15); }
a#function-search { @include editor-button(16); }
/* @section uploads */
#gollum-editor-body {
& + div {
display: none;
font-size: 1.5em;
> i {
font-size: 1em;
}
}
&.dragging {
box-shadow: 0 0 10px #AAE000;
}
&.uploading {
opacity: 0.5;
& + div {
display: block;
}
}
}
/* @section help */
#gollum-editor-help {
clear: both;
margin: 0;
overflow: hidden;
padding: 0;
border: $border-standard;
border-width: 0 1px 1px 1px;
@include desktop-breakpoint {
clear: none;
}
}
#gollum-editor-help-parent,
#gollum-editor-help-list {
display: block;
list-style-type: none;
margin: 0;
float: left;
width: 50%;
box-sizing: border-box;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
@include desktop-breakpoint {
height: 17em;
width: 18%;
overflow: auto;
padding: 1em 0;
}
li {
font-size: 1.2em;
line-height: 1.6em;
margin: 0;
padding: 0;
a {
border: 1px solid transparent;
border-width: 1px 0;
display: block;
font-weight: bold;
height: 100%;
width: auto;
padding: 0.2em 1em;
text-shadow: 0 -1px 0 #fff;
font-size: 0.8em;
@include desktop-breakpoint {
font-size: 1em;
}
&:hover {
background: #fff;
border-color: #f0f0f0;
text-decoration: none;
box-shadow: none;
}
&.selected {
border: $border-editor-element;
border-bottom-color: #e7e7e7;
border-width: 1px 0;
background: #fff;
color: #000;
box-shadow: 0 1px 2px #f0f0f0;
}
}
}
}
#gollum-editor-help-parent {
border-right: $border-editor-element;
}
#gollum-editor-help-list {
background: #fafafa;
border-right: $border-editor-element;
}
#gollum-editor-help-wrapper {
background: #fff;
overflow: auto;
height: 17em;
padding: 1em;
clear: both;
@include desktop-breakpoint {
clear: none;
}
}
#gollum-editor-help-content {
font-size: 1.2em;
margin: 0 1em 0 0.5em;
padding: 0;
line-height: 1.8em;
p {
margin: 0 0 1em 0;
padding: 0;
}
}
@@ -0,0 +1,84 @@
@import "_base";
#pages {
li {
position: relative;
margin-left: -15px;
list-style: none;
&.file {
white-space: nowrap;
margin-left: -1px !important;
height: 1.5em;
a {
text-decoration: none;
display: inline-block;
span.icon {
width: 14px;
height: 18px;
background: $img_fileview_doc 0 0 no-repeat;
display: inline-block;
margin-right: 7px;
vertical-align: text-top;
}
}
form {
vertical-align: middle;
display: inline;
button {
vertical-align: middle;
height: 20px;
border: 0 solid $black;
background: $img_fileview_trash no-repeat 16px center;
cursor: pointer;
}
}
a span.icon {
background: $img_fileview_doc 0 0 no-repeat;
}
}
input {
position: absolute;
left: 0;
margin-left: 0;
opacity: 0;
z-index: 2;
cursor: pointer;
height: 1em;
width: 1em;
top: 0;
+ ol {
background: $img_fileview_toggle_small_expand 40px 0 no-repeat;
margin: -1.188em 0 0 -44px;
height: 1.5em;
> li {
display: none;
margin-left: -14px !important;
padding-left: 1px;
}
}
&:checked + ol {
background: $img_fileview_toggle_small 40px 5px no-repeat;
margin: -1.5em 0 0 -44px;
padding: 1.563em 0 0 80px;
height: auto;
> li {
display: block;
margin: 0 0 0.125em;
&:last-child {
margin: 0 0 0.063em;
}
}
}
}
label {
background: $img_fileview_folder 15px 1px no-repeat;
cursor: pointer;
display: block;
padding-left: 37px;
}
}
ol.tree {
padding: 0 0 0 30px;
width: 300px;
}
}
@@ -0,0 +1,712 @@
// Basic stylesheet for Gollum
@import "_base", "_breakpoint", "_features", "_layout", "_component";
/* @section core */
body, html {
font-family: $font-default;
font-size: 10px;
@include reset-box;
}
a {
&:link {
color: $blue;
text-decoration: none;
}
&:hover, &:visited {
color: $blue;
text-decoration: underline;
}
}
#wiki-wrapper {
#template blockquote {
margin: 1em 0;
border-left: 4px solid $grey;
padding-left: .8em;
color: #555;
}
}
/* @section head */
#head {
margin: 1em 0 0;
padding: 0;
overflow: hidden;
@include desktop-breakpoint {
border-bottom: $border-standard;
padding-bottom: 0.3em;
margin: 4em 0 1.5em;
}
h1 {
font-size: 1.5em;
float: left;
line-height: normal;
margin: 0;
padding: 0 0 0 0.667em;
@include desktop-breakpoint {
font-size: 2.5em;
padding: 2px 0 0 0;
}
}
ul.actions {
clear: both;
margin: 0 1em;
@include desktop-breakpoint {
clear: none;
float: right;
margin: 0;
}
}
}
/* @section body */
#wiki-body {
margin-bottom: 40px;
table {
display: block;
overflow: auto;
border: 0;
}
/* @section comments */
#inline-comment {
display: none; /* todo */
}
}
/* @section toc */
#wiki-toc-main {
@include component-base;
font-size: 13px;
padding: 0px 5px;
float: left;
margin-bottom: 20px;
min-width: 33%;
> div {
border: none;
}
}
/* @section sidebar */
#wiki-sidebar {
@include component-base;
font-size: 13px;
padding: 7px;
color: #555;
p {
margin: 13px 0 0;
&.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;
&:before {
color: #666;
content: "";
}
}
}
> p:first-child {
margin-top: 10px;
}
}
/* @section footer */
#wiki-footer {
margin: 2em 0 5em;
#header-content, #footer-content {
@include component-base;
padding: 1em;
}
#header-content {
margin-bottom: 1.5em;
}
#footer-content {
margin-top: 1.5em;
h3 {
font-size: 1.2em;
color: #333;
margin: 0;
padding: 0 0 0.2em;
text-shadow: 0 1px 0 #fff;
}
p {
margin: 0.5em 0 0;
padding: 0;
}
ul.links {
margin: 0.5em 0 0;
overflow: hidden;
padding: 0;
li {
color: #999;
float: left;
list-style-position: inside;
list-style-type: square;
padding: 0;
margin-left: 0.75em;
&:first-child {
list-style-type: none;
margin: 0;
.ff & {
margin: 0 -0.75em 0 0;
}
}
a {
font-weight: bold;
text-shadow: 0 1px 0 #fff;
}
}
}
}
}
/* @section page-footer */
.page #footer {
clear: both;
border-top: $border-standard;
margin: 1em 0 7em;
}
#footer {
p#last-edit {
font-size: .9em;
line-height: 1.6em;
color: #999;
margin: 0.9em 0;
span.username {
font-weight: bold;
}
}
.actions {
margin-left: 1em;
@include desktop-breakpoint {
margin: 0;
}
}
}
/* @section history */
.history {
@include section-header;
}
#wiki-history {
margin: 2em 1em 0 1em;
fieldset {
border: 0;
margin: 1em 0;
padding: 0;
}
table, tbody {
border-collapse: collapse;
padding: 0;
margin: 0;
width: 100%;
tr {
padding: 0;
margin: 0;
background-color: #ebf2f6;
&:nth-child(2n), &.alt-row {
background-color: #f3f7fa;
}
&.selected {
background-color: #ffffea !important;
z-index: 100;
}
td {
border-top: 1px solid #c0dce9;
border-bottom: 1px solid #c0dce9;
font-size: 1em;
line-height: 1.6em;
margin: 0;
padding: 0.3em 0.7em;
&.checkbox {
width: auto;
padding: 0 0.2em 0 0;
input {
cursor: pointer;
display: block;
padding-right: 0;
padding-top: 0.4em;
margin: 0 auto;
width: 1.2em;
height: 1.2em;
}
}
&.commit-name {
border-left: 0;
span.time-elapsed {
color: #999;
}
a {
font-size: 0.9em;
font-family: $font-console;
padding: 0 0.2em;
}
}
&.author {
width: 20%;
a {
color: #000;
font-weight: bold;
span.username {
display: block;
padding-top: 3px;
}
}
}
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;
}
}
}
}
}
.history #footer {
margin-bottom: 7em;
}
.history #wiki-history ul.actions li,
.history #footer ul.actions li {
margin: 0 0.6em 0 0;
}
@include desktop-breakpoint {
#wiki-history {
margin: 2em 0 0 0;
table tr td {
border: 1px solid #c0dce9;
font-size: 1em;
line-height: 1.6em;
margin: 0;
padding: 0.3em 0.7em;
&.checkbox {
width: 4em;
padding: 0.3em;
}
}
}
}
/* @section edit */
.edit {
@include section-header;
}
/* @section search */
.results {
@include section-header;
#results {
border-bottom: 1px solid #ccc;
margin-left: 1em;
margin-right: 1em;
margin-bottom: 2em;
padding-bottom: 2em;
@include desktop-breakpoint {
margin-left: 0;
margin-right: 0;
}
ul {
margin: 2em 0 0 0;
padding: 0;
li {
list-style: none;
padding: 0.2em 0;
@include largemobile-breakpoint {
font-size: 1.2em;
}
@include desktop-breakpoint {
list-style: disc;
list-style-position: outside;
line-height: 1.6em;
}
a {
word-wrap: break-word;
}
span.count {
color: #999;
}
}
}
}
p#no-results {
font-size: 1.2em;
line-height: 1.6em;
margin-top: 2em;
}
#footer ul.actions li {
margin: 0 1em 0 0;
}
}
/* @section compare */
.compare {
@include section-header;
#compare-content {
margin-top: 3em;
}
.data {
border: $border-standard;
margin: 1em 0 2em;
overflow: auto;
table {
width: 100%;
tr td {
font-family: $font-console;
font-size: 1.2em;
line-height: 1.2em;
margin: 0;
padding: 0;
& + td + td {
width: 100%;
}
&.line_numbers {
background: $light-grey;
border-right: 1px solid #999;
color: #999;
padding: 0 0 0 0.5em;
}
}
}
pre {
margin: 0;
padding: 0;
div {
padding: 0 0 0 1em;
}
}
}
#footer {
margin-bottom: 7em;
}
}
.compare #compare-content ul.actions li,
.compare #footer ul.actions li {
margin-left: 0;
margin-right: 0.6em;
}
/* @control syntax */
.highlight {
background: #ffffff;
.c, .cm, .c1 { color: #999988; font-style: italic }
.err { color: #a61717; background-color: #e3d2d2 }
.k, .o { font-weight: bold }
.cp { color: #999999; font-weight: bold }
.cs { color: #999999; font-weight: bold; font-style: italic }
.gd {
color: #000000;
background-color: #ffdddd;
.x {
color: #000000;
background-color: #ffaaaa;
}
}
.ge { font-style: italic }
.gr { color: #aa0000 }
.gh { color: #999999 }
.gi {
color: #000000;
background-color: #ddffdd;
.x {
color: #000000;
background-color: #aaffaa;
}
}
.gc { color: #999; background-color: #EAF2F5 }
.go { color: #888888 }
.gp { color: #555 }
.gs { font-weight: bold }
.gu { color: #aaaaaa }
.gt { color: #aa0000 }
}
/* @control minibutton */
ul.actions {
display: block;
list-style-type: none;
overflow: hidden;
padding: 0;
li {
float: left;
font-size: 0.9em;
margin-left: 1px;
margin-bottom: 1px;
@include desktop-breakpoint {
margin-left: 0.6em;
margin-bottom: 0.6em;
}
}
}
.minibutton a {
@include button-base;
margin: 0;
padding: 0.6em 1em;
height: 1.4em;
@include desktop-breakpoint {
padding: 0.4em 1em;
}
}
#search-submit {
@include button-base;
margin: 0;
padding: 0.4em 1em;
}
/* @special error */
#wiki-wrapper.error {
height: 1px;
position: absolute;
overflow: visible;
top: 50%;
width: 100%;
}
#error {
background-color: $color-editor-component;
border: $border-editor-component;
left: 50%;
overflow: hidden;
padding: 2%;
margin: -10% 0 0 -35%;
position: absolute;
width: 70%;
border-radius: 0.5em;
h1 {
font-size: 3em;
line-height: normal;
margin: 0;
padding: 0;
}
p {
font-size: 1.2em;
line-height: 1.6em;
margin: 1em 0 0.5em;
padding: 0;
}
}
/* @control searchbar */
#searchbar {
float: right;
overflow: hidden;
@include desktop-breakpoint {
padding: 0;
}
#searchbar-fauxtext {
background: #fff;
border: none;
overflow: hidden;
height: $editor-button-size;
@include desktop-breakpoint {
height: $editor-button-img-height;
}
input#search-query {
border: 1px solid $color-button-border;
border-radius: 3px 0 0 3px;
color: #000;
float: left;
font-family: $font-default;
font-size: 1em;
height: inherit;
padding: 0 .5em;
-webkit-focus-ring: none;
@include alt-box-model;
.ie8 & {
padding: 0.5em 0 0 0.5em;
}
&.ph {
color: #999;
}
}
#search-submit {
@include button-base;
border-left: none;
border-radius: 0 3px 3px 0;
margin: 0 !important;
padding: 0;
float: right;
height: inherit;
@include alt-box-model;
@include editor-button(16);
span {
@include button-sprites;
display: block;
height: inherit;
width: 32px;
text-align: center;
@include text-conceal-simple;
.ff &, .ie & {
height: 2.2em;
}
@include desktop-breakpoint {
width: 28px;
}
}
&:hover span {
padding: 0;
}
}
}
}
/* @section pages */
#pages {
font-size: 1.2em;
margin: 0 1em 20px 1em;
@include desktop-breakpoint {
margin: 0 0 20px 0;
}
ul {
list-style: none;
margin: 0;
padding: 0;
li {
a {
&.file, &.folder {
background-position: 0 1px;
background-repeat: no-repeat;
padding-left: 20px;
}
&.file {
background-image: $img_fileview_doc;
}
&.folder {
background-image: $img_fileview_folder;
}
}
}
}
.breadcrumb {
border-top: $border-standard;
border-bottom: $border-standard;
margin: 1em 0;
padding: 0.25em;
}
}
.clearfloats {
clear: both;
}
.emoji {
width: 20px;
height: 20px;
vertical-align: -18%;
}
@@ -0,0 +1,146 @@
// IE7/8-specific styles
@import "_base", "_features", "_breakpoint", "_component";
/* @section layout */
#wiki-wrapper {
@include desktop-page-layout;
}
#wiki-content {
height: 1%;
overflow: visible;
.wrap {
height: 1%;
overflow: auto;
}
}
#wiki-body {
display: block;
width: 100%;
margin-right: 3%;
float: left;
clear: left;
}
#wiki-sidebar {
width: $layout-sidebar;
}
#wiki-footer {
clear: both;
}
.has-sidebar {
#wiki-body {
width: $layout-with-sidebar - $layout-with-sidebar-leeway;
}
#wiki-footer {
width: $layout-with-sidebar;
}
}
.has-leftbar {
#wiki-body {
float: right;
clear: right;
}
#wiki-sidebar {
float: left;
}
}
.has-rightbar {
#wiki-sidebar {
float: right;
}
}
/* @section head */
#head {
#searchbar {
#searchbar-fauxtext {
input#search-query {
float: left;
}
#search-submit span {
height: 2.25em;
}
}
}
ul.actions {
margin: 1em 0 0 1em;
}
}
/*
ul.actions {
margin-left: 0;
}
*/
.compare {
#footer ul.actions {
margin-top: 1em;
}
div.data {
overflow: auto;
}
}
.history {
#version-form {
margin: -0.5em 0 -0.5em !important;
}
}
#gollum-editor {
padding-bottom: 0;
#gollum-editor-format-selector {
margin-top: 6px;
label {
padding-top: 0.1em !important;
}
}
.singleline input {
padding-top: 0.25em;
}
.collapsed {
padding-bottom: 1.1em;
}
#gollum-editor-submit {
padding: 0.55em 1em 0.55em;
height: 2.4em;
}
#gollum-editor-preview {
line-height: 1.3em;
}
form {
margin: 0;
}
textarea {
width: 98%;
}
}
#gollum-editor-help-parent,
#gollum-editor-help-list {
li a {
height: auto;
}
}
@@ -0,0 +1,10 @@
// Removes the action buttons at the top and the delete link at the bottom for
// better printing.
ul.actions {
display: none;
}
#delete-link {
display: none;
}
@@ -0,0 +1,712 @@
// Gollum v3 Template
@import "_base", "_breakpoint", "_features";
/*!
* Font Awesome 4.0.3 by @davegandy - http://fontawesome.io - @fontawesome
* License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
*/
@font-face {
font-family: 'FontAwesome';
src: asset-url('fontawesome-webfont.eot?v=4.0.3');
src: asset-url('fontawesome-webfont.eot?#iefix&v=4.0.3') format('embedded-opentype'), asset-url('fontawesome-webfont.woff?v=4.0.3') format('woff'), asset-url('fontawesome-webfont.ttf?v=4.0.3') format('truetype'), asset-url('fontawesome-webfont.svg?v=4.0.3#fontawesomeregular') format('svg');
font-weight: normal;
font-style: normal;
}
.fa {
display: inline-block;
font: normal normal 16px FontAwesome;
line-height: 1;
text-decoration: none;
@include font-smoothing(on);
}
.fa-link:before {
content: "\f0c1";
}
.fa-spinner:before {
content: "\f110";
}
.fa-spin {
@include generic-animation(spin 2s infinite linear);
}
@-moz-keyframes spin {
0% {
-moz-transform: rotate(0deg);
}
100% {
-moz-transform: rotate(359deg);
}
}
@-webkit-keyframes spin {
0% {
-webkit-transform: rotate(0deg);
}
100% {
-webkit-transform: rotate(359deg);
}
}
@-o-keyframes spin {
0% {
-o-transform: rotate(0deg);
}
100% {
-o-transform: rotate(359deg);
}
}
@keyframes spin {
0% {
-webkit-transform: rotate(0deg);
transform: rotate(0deg);
}
100% {
-webkit-transform: rotate(359deg);
transform: rotate(359deg);
}
}
/* margin & padding reset*/
* {
@include reset-box-leave-border;
}
div {
display: block;
}
html {
font-family: sans-serif;
-ms-text-size-adjust: 100%;
-webkit-text-size-adjust: 100%;
}
html, body {
color: #333;
}
body {
background-color: white;
font: 13.34px $font-default;
font-size: small;
line-height: 1.4;
}
img {
border: 0;
}
a {
color: $blue;
text-decoration: none;
&.absent {
color: $red;
}
&:focus {
outline: thin dotted;
}
&:active, &:hover {
outline: 0;
}
}
/* Markdown body */
.markdown-body {
padding: 1em;
font-size: 15px;
line-height: 1.7;
overflow: hidden;
word-wrap: break-word;
@include desktop-breakpoint {
padding: 30px;
}
a {
&.absent {
color: $red;
}
&.anchor {
display: block;
padding-right: 6px;
padding-left: 30px;
margin-left: -30px;
cursor: pointer;
position: absolute;
top: 0;
left: 0;
bottom: 0;
&:focus {
outline: none;
}
}
&[id].wiki-toc-anchor {
color: inherit;
text-decoration: none;
}
&:first-child {
h1, h2, h3, h4, h5, h6 {
margin-top: 0;
padding-top: 0;
}
}
}
> *:first-child {
margin-top: 0 !important;
}
> *:last-child {
margin-bottom: 0 !important;
}
h1, h2, h3, h4, h5, h6 {
margin: 1em 0 15px;
padding: 0;
font-weight: bold;
line-height: 1.7;
cursor: text;
position: relative;
text-rendering: optimizeLegibility;
@include font-smoothing(on);
.fa-link {
display: none;
text-decoration: none;
color: #000;
}
&:hover {
a.anchor .fa-link {
text-decoration: none;
line-height: 1;
padding-left: 8px;
margin-left: -30px;
top: 15%;
display: inline-block;
}
}
tt, code {
font-size: inherit;
}
& + p {
margin-top: 0;
}
}
h1 {
font-size: 2.5em;
border-bottom: $border-standard;
color: #000;
margin-top: 20px;
margin-bottom: 10px;
& + h2 + h3 {
margin-top: 30px;
}
}
h2 {
font-size: 2em;
border-bottom: 1px solid #eee;
color: #000;
}
h3 {
font-size: 1.5em;
}
h4 {
font-size: 1.2em;
}
h5 {
font-size: 1em;
}
h6 {
color: #777;
font-size: 1em;
}
p, blockquote, ul, ol, dl, table, pre {
margin: 15px 0;
}
ul, ol {
padding-left: 30px;
}
dl {
padding: 0;
dt {
font-size: 14px;
font-weight: bold;
font-style: italic;
padding: 0;
margin: 15px 0 5px;
&:first-child {
padding: 0;
}
@include children-truncate-margin;
}
dd {
margin: 0 0 15px;
padding: 0 15px;
@include children-truncate-margin;
}
}
li {
margin: 0px;
p.first {
display: inline-block;
}
}
hr {
background: transparent $img_dirty_shade repeat-x 0 0;
border: 0 none;
color: #ccc;
height: 4px;
padding: 0;
margin: 15px 0;
}
blockquote {
border-left: 4px solid #DDD;
padding: 0 15px;
color: #777;
@include children-truncate-margin;
}
table {
padding: 0;
border-collapse: collapse;
border-spacing: 0;
tr {
border-top: 1px solid #ccc;
background-color: #fff;
@include reset-box-leave-border;
&:nth-child(2n) {
background-color: #f8f8f8;
}
th, td, table {
border: 1px solid #ccc;
text-align: none;
margin: 0;
padding: 6px 13px;
@include children-truncate-margin;
}
th {
font-weight: bold;
}
}
}
img {
max-width: 100%;
}
span.frame {
display: block;
overflow: hidden;
> span {
border: $border-standard;
display: block;
float: left;
overflow: hidden;
margin: 13px 0 0;
padding: 7px;
width: auto;
}
span {
img {
display: block;
float: left;
}
span {
clear: both;
color: #333;
display: block;
padding: 5px 0 0;
}
}
}
span.align-center {
display: block;
overflow: hidden;
clear: both;
> span {
display: block;
overflow: hidden;
margin: 13px auto 0;
text-align: center;
}
span {
img {
margin: 0 auto;
text-align: center;
}
}
}
span.align-right {
display: block;
overflow: hidden;
clear: both;
> span {
display: block;
overflow: hidden;
margin: 13px 0 0;
text-align: right;
}
span {
img {
margin: 0;
text-align: right;
}
}
}
span.float-left {
display: block;
margin-right: 13px;
overflow: hidden;
float: left;
span {
margin: 13px 0 0;
}
}
span.float-right {
display: block;
margin-left: 13px;
overflow: hidden;
float: right;
> span {
display: block;
overflow: hidden;
margin: 13px auto 0;
text-align: right;
}
}
code, pre, tt {
font-family: $font-console;
font-size: 12px;
}
code, tt {
margin: 0 2px;
padding: 0 5px;
white-space: nowrap;
border: $border-standard;
background-color: #f8f8f8;
border-radius: 3px;
}
pre {
background-color: #f8f8f8;
border: 1px solid #ccc;
font-size: 13px;
line-height: 19px;
overflow: auto;
padding: 6px 10px;
border-radius: 3px;
> tt, > code {
margin: 0;
padding: 0;
white-space: pre;
border: none;
background: transparent;
}
pre, code, tt {
background-color: transparent;
border: none;
}
pre {
margin: 0;
padding: 0;
}
}
}
/* Table of contents */
.toc {
background-color: #F7F7F7;
border: $border-standard;
padding: 5px 10px;
margin: 0;
border-radius: 3px;
ul {
padding-left: 10px;
margin: 0;
li {
margin: 0;
}
ul {
font-size: 15px;
ul {
font-size: 14px;
}
}
}
> ul {
margin-left: 10px;
font-size: 17px;
}
}
.toc-title {
color: #888;
font-size: 14px;
line-height: 1.6;
padding: 2px;
border-bottom: $border-standard;
margin-bottom: 3px;
}
#header-content .toc,
#footer-content .toc,
#sidebar-content .toc {
border: none;
}
/* Highlights */
.highlight {
background: #fff;
.c {
color: #998;
font-style: italic;
}
.err {
color: #a61717;
background-color: #e3d2d2;
}
.k, .o {
font-weight: bold;
}
.cm, .c1 {
color: #998;
font-style: italic;
}
.cp {
color: #999;
font-weight: bold;
}
.cs {
color: #999;
font-weight: bold;
font-style: italic;
}
.gd {
color: #000;
background-color: #fdd;
.x {
color: #000;
background-color: #faa;
}
}
.ge {
font-style: italic;
}
.gr {
color: #a00;
}
.gh {
color: #999;
}
.gi {
color: #000;
background-color: #dfd;
.x {
color: #000;
background-color: #afa;
}
}
.go {
color: #888;
}
.gp {
color: #555;
}
.gs {
font-weight: bold;
}
.gt {
color: #a00;
}
.gu {
color: #800080;
font-weight: bold;
}
.kc, .kd, .kn, .kp, .kr {
font-weight: bold;
}
.kt {
color: #458;
font-weight: bold;
}
.m {
color: #099;
}
.s {
color: #d14;
}
.na, .no, .nv, .vc, .vg, .vi {
color: #008080;
}
.nb {
color: #0086B3;
}
.nc {
color: #458;
font-weight: bold;
}
.ni {
color: #800080;
}
.ne, .nf {
color: #900;
font-weight: bold;
}
.nn {
color: #555;
}
.nt {
color: #000080;
}
.ow {
font-weight: bold;
}
.w {
color: #bbb;
}
.mf, .mh, .mi, .mo, .il {
color: #099;
}
.sb, .sc, .sd, .s2, .se, .sh, .si, .sx, .s1 {
color: #d14;
}
.sr {
color: #009926;
}
.ss {
color: #990073;
}
.bp {
color: #999;
}
.gc {
color: #999;
background-color: #EAF2F5;
}
}
.type-csharp {
.highlight {
.k, .kt {
color: #00F;
}
.nf {
color: #000;
font-weight: normal;
}
.nc {
color: #2B91AF;
}
.nn {
color: #000;
}
.s, .sc {
color: #A31515;
}
}
}
+35 -31
View File
@@ -1,34 +1,38 @@
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-type" content="text/html;charset=utf-8">
<link rel="stylesheet" type="text/css" href="{{base_url}}/css/gollum.css" media="all">
<link rel="stylesheet" type="text/css" href="{{base_url}}/css/template.css" media="all">
<link rel="stylesheet" type="text/css" href="{{base_url}}/css/_styles.css" media="all">
{{#css}}<link rel="stylesheet" type="text/css" href="{{base_url}}/custom.css" media="all">{{/css}}
{{#js}}<script type="text/javascript" src="{{base_url}}/custom.js"></script>{{/js}}
<title>{{title}}</title>
</head>
<body>
{{#stylesheet_tag_mustache}}fileview media: :all{{/stylesheet_tag_mustache}}
<div id="home_button">
<ul class="actions">
<li class="minibutton">
<a href="{{base_url}}/" class="action-home-page">Home</a>
</li>
</ul>
</div>
{{#has_results}}
<div id="results">
{{{results}}}
<div id="wiki-wrapper" class="results">
<div id="head" style="border:none;">
<h1>{{title}}</h1>
<ul class="actions">
<li class="minibutton">
{{>searchbar}}
</li>
<li class="minibutton"><a href="{{base_url}}/"
class="action-home-page">Home</a></li>
{{#allow_editing}}
<li class="minibutton jaws">
<a href="#" id="minibutton-new-page">New</a></li>
{{/allow_editing}}
</ul>
</div>
{{/has_results}}
{{#no_results}}
<p id="no-results">
There are no pages in <strong>{{ref}}</strong>.
</p>
{{/no_results}}
</body>
</html>
<div id="pages">
{{#has_results}}
<div id="results">
{{{results}}}<i class="fa fa-trash" aria-hidden="true"></i>
</div>
{{/has_results}}
{{#no_results}}
<p id="no-results">
There are no pages in <strong>{{ref}}</strong>.
</p>
{{/no_results}}
</div>
<div id="footer">
<ul class="actions">
<li class="minibutton"><a href="#">Back to Top</a></li>
</ul>
</div>
</div>
@@ -1,5 +1,5 @@
<a href="javascript:void(0)">
<img src="{{base_url}}/images/man_24.png" alt="avatar: {{author}}"
<img src="{{#image_path_mustache}}man_24.png{{/image_path_mustache}}" alt="avatar: {{author}}"
class="mini-gravatar identicon" data-identicon="{{identicon}}"/>
<span class="username">{{author}}</span>
</a>
</a>
+6 -16
View File
@@ -5,16 +5,13 @@
<meta name="MobileOptimized" content="width">
<meta name="HandheldFriendly" content="true">
<meta name="viewport" content="width=device-width">
<link rel="stylesheet" type="text/css" href="{{base_url}}/css/gollum.css" media="all">
<link rel="stylesheet" type="text/css" href="{{base_url}}/css/editor.css" media="all">
<link rel="stylesheet" type="text/css" href="{{base_url}}/css/dialog.css" media="all">
<link rel="stylesheet" type="text/css" href="{{base_url}}/css/template.css" media="all">
<link rel="stylesheet" type="text/css" href="{{base_url}}/css/print.css" media="print">
{{#stylesheet_tag_mustache}}app media: :all{{/stylesheet_tag_mustache}}
{{#stylesheet_tag_mustache}}print media: :print{{/stylesheet_tag_mustache}}
{{#css}}<link rel="stylesheet" type="text/css" href="{{custom_path}}/custom.css" media="all">{{/css}}
{{#noindex}}<meta name="robots" content="noindex, nofollow" />{{/noindex}}
<!--[if IE 7]>
<link rel="stylesheet" type="text/css" href="{{base_url}}/css/ie7.css" media="all">
<!--[if lte IE 8]>
{{#stylesheet_tag_mustache}}ie7 media: :all{{/stylesheet_tag_mustache}}
<![endif]-->
<script>
@@ -24,16 +21,9 @@
var pageFullPath = '{{url_path}}';
{{/page}}
</script>
<script type="text/javascript" src="{{base_url}}/javascript/jquery-1.7.2.min.js"></script>
<script type="text/javascript" src="{{base_url}}/javascript/mousetrap.min.js"></script>
<script type="text/javascript" src="{{base_url}}/javascript/ace-1.2.5/ace.js"></script>
<script type="text/javascript" src="{{base_url}}/javascript/gollum.js"></script>
<script type="text/javascript" src="{{base_url}}/javascript/gollum.dialog.js"></script>
<script type="text/javascript" src="{{base_url}}/javascript/gollum.placeholder.js"></script>
<script type="text/javascript" src="{{base_url}}/javascript/jquery.resize.js"></script>
<script type="text/javascript" src="{{base_url}}/javascript/editor/gollum.editor.js"></script>
{{#javascript_tag_mustache}}app{{/javascript_tag_mustache}}
{{#use_identicon}}
<script type="text/javascript" src="{{base_url}}/javascript/identicon_canvas.js"></script>
{{#javascript_tag_mustache}}identicon_canvas{{/javascript_tag_mustache}}
{{/use_identicon}}
{{#mathjax}}
{{^mathjax_config}}
+3 -1
View File
@@ -1,7 +1,9 @@
module Precious
module Views
class FileView < Layout
attr_reader :results, :ref
include Sprockets::Helpers
include Precious::Views::SprocketsHelpers
attr_reader :results, :ref, :allow_editing
def title
"File view of #{@ref}"
+35
View File
@@ -0,0 +1,35 @@
require 'yaml'
module Precious
module Views
module SprocketsHelpers
def self.included(base)
def helper_proc_with_options(method)
Proc.new do |args|
args = args.split(' ')
if args.size > 1 then
options = args[1..-1].join(' ')
options = YAML.safe_load("---\n#{options}\n", [Symbol])
end
options = options.respond_to?(:to_h) ? options.to_h : {}
options = options.inject({}){|memo,(k,v)| memo[k.to_sym] = v; memo}
send(method, args[0], options)
end
end
['stylesheet_path','javascript_path', 'image_path'].each do |method|
define_method :"#{method}_mustache" do
Proc.new {|args| send(method.to_sym, args)}
end
end
['stylesheet_tag','javascript_tag'].each do |method|
define_method :"#{method}_mustache" do
helper_proc_with_options(method.to_sym)
end
end
end
end
end
end
+2
View File
@@ -2,6 +2,8 @@ module Precious
module Views
class History < Layout
include HasPage
include Sprockets::Helpers
include Precious::Views::SprocketsHelpers
attr_reader :page, :page_num, :allow_editing
+2
View File
@@ -4,6 +4,8 @@ module Precious
module Views
class Layout < Mustache
include Rack::Utils
include Sprockets::Helpers
include Precious::Views::SprocketsHelpers
alias_method :h, :escape_html
attr_reader :name, :path