You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@allura.apache.org by je...@apache.org on 2015/07/27 15:11:39 UTC
[18/49] allura git commit: [#7897] ticket:804 Add lepture/editor to
MarkdownEdit
[#7897] ticket:804 Add lepture/editor to MarkdownEdit
Project: http://git-wip-us.apache.org/repos/asf/allura/repo
Commit: http://git-wip-us.apache.org/repos/asf/allura/commit/89f575e3
Tree: http://git-wip-us.apache.org/repos/asf/allura/tree/89f575e3
Diff: http://git-wip-us.apache.org/repos/asf/allura/diff/89f575e3
Branch: refs/heads/ib/7897
Commit: 89f575e358747669aa5831b41e3a9cabce7fd601
Parents: 61ddcb7
Author: Igor Bondarenko <je...@gmail.com>
Authored: Thu Jun 18 15:16:54 2015 +0300
Committer: Igor Bondarenko <je...@gmail.com>
Committed: Mon Jul 27 14:23:54 2015 +0300
----------------------------------------------------------------------
Allura/allura/lib/widgets/form_fields.py | 3 +
.../resources/css/markdown_editor/editor.css | 421 +
.../css/markdown_editor/fonts/icomoon.dev.svg | 56 +
.../css/markdown_editor/fonts/icomoon.eot | Bin 0 -> 3440 bytes
.../css/markdown_editor/fonts/icomoon.svg | 56 +
.../css/markdown_editor/fonts/icomoon.ttf | Bin 0 -> 3276 bytes
.../css/markdown_editor/fonts/icomoon.woff | Bin 0 -> 3540 bytes
.../resources/js/markdown_editor/editor.js | 7395 ++++++++++++++++++
.../resources/js/markdown_editor/marked.js | 1165 +++
.../lib/widgets/resources/js/sf_markitup.js | 3 +
10 files changed, 9099 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/allura/blob/89f575e3/Allura/allura/lib/widgets/form_fields.py
----------------------------------------------------------------------
diff --git a/Allura/allura/lib/widgets/form_fields.py b/Allura/allura/lib/widgets/form_fields.py
index da4d98a..b201f6a 100644
--- a/Allura/allura/lib/widgets/form_fields.py
+++ b/Allura/allura/lib/widgets/form_fields.py
@@ -275,6 +275,9 @@ class MarkdownEdit(AutoResizeTextarea):
yield ew.JSLink('js/jquery.textarea.js')
yield ew.JSLink('js/sf_markitup.js')
yield ew.CSSLink('css/markitup_sf.css')
+ yield ew.CSSLink('css/markdown_editor/editor.css')
+ yield ew.JSLink('js/markdown_editor/editor.js')
+ yield ew.JSLink('js/markdown_editor/marked.js')
class PageList(ew_core.Widget):
http://git-wip-us.apache.org/repos/asf/allura/blob/89f575e3/Allura/allura/lib/widgets/resources/css/markdown_editor/editor.css
----------------------------------------------------------------------
diff --git a/Allura/allura/lib/widgets/resources/css/markdown_editor/editor.css b/Allura/allura/lib/widgets/resources/css/markdown_editor/editor.css
new file mode 100644
index 0000000..7ca5dd9
--- /dev/null
+++ b/Allura/allura/lib/widgets/resources/css/markdown_editor/editor.css
@@ -0,0 +1,421 @@
+@font-face {
+ font-family: 'icomoon';
+ src:url('fonts/icomoon.eot');
+ src:url('fonts/icomoon.eot?#iefix') format('embedded-opentype'),
+ url('fonts/icomoon.woff') format('woff'),
+ url('fonts/icomoon.ttf') format('truetype'),
+ url('fonts/icomoon.svg#icomoon') format('svg');
+ font-weight: normal;
+ font-style: normal;
+}
+
+/* Use the following CSS code if you want to use data attributes for inserting your icons */
+[data-icon]:before {
+ font-family: 'icomoon';
+ content: attr(data-icon);
+ speak: none;
+ font-weight: normal;
+ font-variant: normal;
+ text-transform: none;
+ line-height: 1;
+ -webkit-font-smoothing: antialiased;
+}
+
+/* Use the following CSS code if you want to have a class per icon */
+/*
+Instead of a list of all class selectors,
+you can use the generic selector below, but it's slower:
+[class*="icon-"] {
+*/
+.icon-bold, .icon-italic, .icon-quote, .icon-unordered-list, .icon-ordered-list, .icon-link, .icon-image, .icon-play, .icon-music, .icon-contract, .icon-fullscreen, .icon-question, .icon-info, .icon-undo, .icon-redo, .icon-code, .icon-preview {
+ font-family: 'icomoon';
+ speak: none;
+ font-style: normal;
+ font-weight: normal;
+ font-variant: normal;
+ text-transform: none;
+ line-height: 1;
+ -webkit-font-smoothing: antialiased;
+}
+.icon-bold:before {
+ content: "\e000";
+}
+.icon-italic:before {
+ content: "\e001";
+}
+.icon-quote:before {
+ content: "\e003";
+}
+.icon-unordered-list:before {
+ content: "\e004";
+}
+.icon-ordered-list:before {
+ content: "\e005";
+}
+.icon-link:before {
+ content: "\e006";
+}
+.icon-image:before {
+ content: "\e007";
+}
+.icon-play:before {
+ content: "\e008";
+}
+.icon-music:before {
+ content: "\e009";
+}
+.icon-contract:before {
+ content: "\e00a";
+}
+.icon-fullscreen:before {
+ content: "\e00b";
+}
+.icon-question:before {
+ content: "\e00c";
+}
+.icon-info:before {
+ content: "\e00d";
+}
+.icon-undo:before {
+ content: "\e00e";
+}
+.icon-redo:before {
+ content: "\e00f";
+}
+.icon-code:before {
+ content: "\e011";
+}
+.icon-preview:before {
+ content: "\e002";
+}
+/* BASICS */
+
+.CodeMirror {
+ height: 300px;
+}
+.CodeMirror-scroll {
+ /* Set scrolling behaviour here */
+ overflow: auto;
+}
+
+/* PADDING */
+
+.CodeMirror-lines {
+ padding: 4px 0; /* Vertical padding around content */
+}
+.CodeMirror pre {
+ padding: 0 4px; /* Horizontal padding of content */
+}
+
+.CodeMirror-scrollbar-filler {
+ background-color: white; /* The little square between H and V scrollbars */
+}
+
+/* CURSOR */
+.CodeMirror div.CodeMirror-cursor {
+ border-left: 1px solid black;
+ z-index: 3;
+}
+/* Shown when moving in bi-directional text */
+.CodeMirror div.CodeMirror-secondarycursor {
+ border-left: 1px solid silver;
+}
+.CodeMirror.cm-keymap-fat-cursor div.CodeMirror-cursor {
+ width: auto;
+ border: 0;
+ background: #7e7;
+ z-index: 1;
+}
+/* Can style cursor different in overwrite (non-insert) mode */
+.CodeMirror div.CodeMirror-cursor.CodeMirror-overwrite {}
+
+/* DEFAULT THEME */
+
+.cm-s-paper .cm-keyword {color: #555;}
+.cm-s-paper .cm-atom {color: #7f8c8d;}
+.cm-s-paper .cm-number {color: #7f8c8d;}
+.cm-s-paper .cm-def {color: #00f;}
+.cm-s-paper .cm-variable {color: black;}
+.cm-s-paper .cm-variable-2 {color: #555;}
+.cm-s-paper .cm-variable-3 {color: #085;}
+.cm-s-paper .cm-property {color: black;}
+.cm-s-paper .cm-operator {color: black;}
+.cm-s-paper .cm-comment {color: #959595;}
+.cm-s-paper .cm-string {color: #7f8c8d;}
+.cm-s-paper .cm-string-2 {color: #f50;}
+.cm-s-paper .cm-meta {color: #555;}
+.cm-s-paper .cm-error {color: #f00;}
+.cm-s-paper .cm-qualifier {color: #555;}
+.cm-s-paper .cm-builtin {color: #555;}
+.cm-s-paper .cm-bracket {color: #997;}
+.cm-s-paper .cm-tag {color: #7f8c8d;}
+.cm-s-paper .cm-attribute {color: #7f8c8d;}
+.cm-s-paper .cm-header {color: #000;}
+.cm-s-paper .cm-quote {color: #888;}
+.cm-s-paper .cm-hr {color: #999;}
+.cm-s-paper .cm-link {color: #7f8c8d;}
+
+.cm-negative {color: #d44;}
+.cm-positive {color: #292;}
+.cm-header, .cm-strong {font-weight: bold;}
+.cm-em {font-style: italic;}
+.cm-link {text-decoration: underline;}
+
+.cm-invalidchar {color: #f00;}
+
+div.CodeMirror span.CodeMirror-matchingbracket {color: #0f0;}
+div.CodeMirror span.CodeMirror-nonmatchingbracket {color: #f22;}
+
+
+/* STOP */
+
+/* The rest of this file contains styles related to the mechanics of
+ the editor. You probably shouldn't touch them. */
+
+.CodeMirror {
+ position: relative;
+ overflow: hidden;
+}
+
+.CodeMirror-scroll {
+ /* 30px is the magic margin used to hide the element's real scrollbars */
+ /* See overflow: hidden in .CodeMirror, and the paddings in .CodeMirror-sizer */
+ margin-bottom: -30px; margin-right: -30px;
+ padding-bottom: 30px; padding-right: 30px;
+ height: 100%;
+ outline: none; /* Prevent dragging from highlighting the element */
+ position: relative;
+}
+.CodeMirror-sizer {
+ position: relative;
+}
+
+/* The fake, visible scrollbars. Used to force redraw during scrolling
+ before actuall scrolling happens, thus preventing shaking and
+ flickering artifacts. */
+.CodeMirror-vscrollbar, .CodeMirror-hscrollbar, .CodeMirror-scrollbar-filler {
+ position: absolute;
+ z-index: 6;
+ display: none;
+}
+.CodeMirror-vscrollbar {
+ right: 0; top: 0;
+ overflow-x: hidden;
+ overflow-y: scroll;
+}
+.CodeMirror-hscrollbar {
+ bottom: 0; left: 0;
+ overflow-y: hidden;
+ overflow-x: scroll;
+}
+.CodeMirror-scrollbar-filler {
+ right: 0; bottom: 0;
+ z-index: 6;
+}
+
+.CodeMirror-lines {
+ cursor: text;
+}
+.CodeMirror pre {
+ /* Reset some styles that the rest of the page might have set */
+ -moz-border-radius: 0; -webkit-border-radius: 0; -o-border-radius: 0; border-radius: 0;
+ border-width: 0;
+ background: transparent;
+ font-family: inherit;
+ font-size: inherit;
+ margin: 0;
+ white-space: pre-wrap;
+ word-wrap: normal;
+ line-height: inherit;
+ color: inherit;
+ z-index: 2;
+ position: relative;
+ overflow: visible;
+}
+.CodeMirror-wrap pre {
+ word-wrap: break-word;
+ white-space: pre-wrap;
+ word-break: normal;
+}
+.CodeMirror-linebackground {
+ position: absolute;
+ left: 0; right: 0; top: 0; bottom: 0;
+ z-index: 0;
+}
+
+.CodeMirror-linewidget {
+ position: relative;
+ z-index: 2;
+ overflow: auto;
+}
+
+.CodeMirror-widget {
+ display: inline-block;
+}
+
+.CodeMirror-wrap .CodeMirror-scroll {
+ overflow-x: hidden;
+}
+
+.CodeMirror-measure {
+ position: absolute;
+ width: 100%; height: 0px;
+ overflow: hidden;
+ visibility: hidden;
+}
+.CodeMirror-measure pre { position: static; }
+
+.CodeMirror div.CodeMirror-cursor {
+ position: absolute;
+ visibility: hidden;
+ border-right: none;
+ width: 0;
+}
+.CodeMirror-focused div.CodeMirror-cursor {
+ visibility: visible;
+}
+
+.CodeMirror-selected { background: #d9d9d9; }
+.CodeMirror-focused .CodeMirror-selected { background: #BDC3C7; }
+
+.cm-searching {
+ background: #ffa;
+ background: rgba(255, 255, 0, .4);
+}
+
+/* IE7 hack to prevent it from returning funny offsetTops on the spans */
+.CodeMirror span { *vertical-align: text-bottom; }
+
+@media print {
+ /* Hide the cursor when printing */
+ .CodeMirror div.CodeMirror-cursor {
+ visibility: hidden;
+ }
+}
+.CodeMirror {
+ height: 450px;
+}
+:-webkit-full-screen {
+ background: #f9f9f5;
+ padding: 0.5em 1em;
+ width: 100%;
+ height: 100%;
+}
+:-moz-full-screen {
+ padding: 0.5em 1em;
+ background: #f9f9f5;
+ width: 100%;
+ height: 100%;
+}
+.editor-wrapper {
+ font: 16px/1.62 "Helvetica Neue", "Xin Gothic", "Hiragino Sans GB", "WenQuanYi Micro Hei", "Microsoft YaHei", sans-serif;
+ color: #2c3e50;
+}
+/* this is the title */
+.editor-wrapper input.title {
+ font: 18px "Helvetica Neue", "Xin Gothic", "Hiragino Sans GB", "WenQuanYi Micro Hei", "Microsoft YaHei", sans-serif;
+ background: transparent;
+ padding: 4px;
+ width: 100%;
+ border: none;
+ outline: none;
+ opacity: 0.6;
+}
+.editor-toolbar {
+ position: relative;
+ opacity: 0.6;
+ -webkit-user-select: none;
+ -moz-user-select: none;
+ -ms-user-select: none;
+ -o-user-select: none;
+ user-select: none;
+}
+.editor-toolbar:before, .editor-toolbar:after {
+ display: block;
+ content: ' ';
+ height: 1px;
+ background-color: #bdc3c7;
+ background: -moz-linear-gradient(45deg, #f9f9f9, #bdc3c7, #f9f9f9);
+ background: -webkit-linear-gradient(45deg, #f9f9f9, #bdc3c7, #f9f9f9);
+ background: -ms-linear-gradient(45deg, #f9f9f9, #bdc3c7, #f9f9f9);
+ background: linear-gradient(45deg, #f9f9f9, #bdc3c7, #f9f9f9);
+}
+.editor-toolbar:before {
+ margin-bottom: 8px;
+}
+.editor-toolbar:after {
+ margin-top: 8px;
+}
+.editor-wrapper input.title:hover, .editor-wrapper input.title:focus, .editor-toolbar:hover {
+ opacity: 0.8;
+}
+.editor-toolbar a {
+ display: inline-block;
+ text-align: center;
+ text-decoration: none !important;
+ color: #2c3e50 !important;
+ width: 24px;
+ height: 24px;
+ margin: 2px;
+ border: 1px solid transparent;
+ border-radius: 3px;
+ cursor: pointer;
+}
+.editor-toolbar a:hover, .editor-toolbar a.active {
+ background: #fcfcfc;
+ border-color: #95a5a6;
+}
+.editor-toolbar a:before {
+ line-height: 24px;
+}
+.editor-toolbar i.separator {
+ display: inline-block;
+ width: 0;
+ border-left: 1px solid #d9d9d9;
+ border-right: 1px solid white;
+ color: transparent;
+ text-indent: -10px;
+ margin: 0 6px;
+}
+.editor-toolbar a.icon-fullscreen {
+ position: absolute;
+ right: 0;
+}
+.editor-statusbar {
+ border-top: 1px solid #ece9e9;
+ padding: 8px 10px;
+ font-size: 12px;
+ color: #959694;
+ text-align: right;
+}
+.editor-statusbar span {
+ display: inline-block;
+ min-width: 4em;
+ margin-left: 1em;
+}
+.editor-statusbar .lines:before {
+ content: 'lines: ';
+}
+.editor-statusbar .words:before {
+ content: 'words: ';
+}
+.editor-preview {
+ position: absolute;
+ width: 100%;
+ height: 100%;
+ top: 0;
+ left: 100%;
+ background: #f9f9f5;
+ z-index: 9999;
+ overflow: auto;
+ -webkit-transition: left 0.2s ease;
+ -moz-transition: left 0.2s ease;
+ -ms-transition: left 0.2s ease;
+ transition: left 0.2s ease;
+}
+.editor-preview-active {
+ left: 0;
+}
+.editor-preview > p {
+ margin-top: 0;
+}
http://git-wip-us.apache.org/repos/asf/allura/blob/89f575e3/Allura/allura/lib/widgets/resources/css/markdown_editor/fonts/icomoon.dev.svg
----------------------------------------------------------------------
diff --git a/Allura/allura/lib/widgets/resources/css/markdown_editor/fonts/icomoon.dev.svg b/Allura/allura/lib/widgets/resources/css/markdown_editor/fonts/icomoon.dev.svg
new file mode 100644
index 0000000..ee61a97
--- /dev/null
+++ b/Allura/allura/lib/widgets/resources/css/markdown_editor/fonts/icomoon.dev.svg
@@ -0,0 +1,56 @@
+<?xml version="1.0" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
+<svg xmlns="http://www.w3.org/2000/svg">
+<metadata>
+This is a custom SVG font generated by IcoMoon.
+<iconset grid="16"></iconset>
+</metadata>
+<defs>
+<font id="icomoon" horiz-adv-x="512" >
+<font-face units-per-em="512" ascent="480" descent="-32" />
+<missing-glyph horiz-adv-x="512" />
+<glyph unicode="" d="M 353.94,237.674C 372.689,259.945, 384.00,288.678, 384.00,320.00c0.00,70.58-57.421,128.00-128.00,128.00l-64.00,0.00 l-64.00,0.00 L 96.00,448.00 l0.00-448.00 l 32.00,0.00 l 64.00,0.00 l 96.00,0.00
+ c 70.579,0.00, 128.00,57.421, 128.00,128.00C 416.00,174.478, 391.101,215.248, 353.94,237.674z M 192.00,384.00l 50.75,0.00 c 27.984,0.00, 50.75-28.71, 50.75-64.00
+ s-22.766-64.00-50.75-64.00L 192.00,256.00 L 192.00,384.00 z M 271.50,64.00L 192.00,64.00 L 192.00,192.00 l 79.50,0.00 c 29.225,0.00, 53.00-28.71, 53.00-64.00S 300.725,64.00, 271.50,64.00z" data-tags="bold, wysiwyg" />
+<glyph unicode="" d="M 448.00,448.00 L 448.00,416.00 L 384.00,416.00 L 224.00,32.00 L 288.00,32.00 L 288.00,0.00 L 64.00,0.00 L 64.00,32.00 L 128.00,32.00 L 288.00,416.00 L 224.00,416.00 L 224.00,448.00 Z" data-tags="italic, wysiwyg" />
+<glyph unicode="" d="M 112.50,256.00 C 174.356,256.00 224.50,205.855 224.50,144.00 C 224.50,82.144 174.356,32.00 112.50,32.00 C 50.644,32.00 0.50,82.144 0.50,144.00 L 0.00,160.00 C 0.00,283.712 100.288,384.00 224.00,384.00 L 224.00,320.00 C 181.263,320.00 141.083,303.357 110.863,273.137 C 105.046,267.319 99.737,261.129 94.948,254.627 C 100.667,255.527 106.528,256.00 112.50,256.00 ZM 400.50,256.00 C 462.355,256.00 512.50,205.855 512.50,144.00 C 512.50,82.144 462.355,32.00 400.50,32.00 C 338.645,32.00 288.50,82.144 288.50,144.00 L 288.00,160.00 C 288.00,283.712 388.288,384.00 512.00,384.00 L 512.00,320.00 C 469.263,320.00 429.083,303.357 398.863,273.137 C 393.045,267.319 387.736,261.129 382.947,254.627 C 388.667,255.527 394.527,256.00 400.50,256.00 Z" data-tags="quotes-left, ldquo" />
+<glyph unicode="" d="M 192.00,448.00l 320.00,0.00 l0.00-64.00 L 192.00,384.00 L 192.00,448.00 z M 192.00,256.00l 320.00,0.00 l0.00-64.00 L 192.00,192.00 L 192.00,256.00 z M 192.00,64.00l 320.00,0.00 l0.00-64.00 L 192.00,0.00 L 192.00,64.00 zM0.00,416.00A64.00,64.00 2700.00 1 1 128.00,416A64.00,64.00 2700.00 1 1 0.00,416zM0.00,224.00A64.00,64.00 2700.00 1 1 128.00,224A64.00,64.00 2700.00 1 1 0.00,224zM0.00,32.00A64.00,64.00 2700.00 1 1 128.00,32A64.00,64.00 2700.00 1 1 0.00,32z" data-tags="list, bullet, ul, todo, menu" />
+<glyph unicode="" d="M 192.00,64.00L 512.00,64.00L 512.00,0.00L 192.00,0.00zM 192.00,256.00L 512.00,256.00L 512.00,192.00L 192.00,192.00zM 192.00,448.00L 512.00,448.00L 512.00,384.00L 192.00,384.00zM 96.00,480.00 L 96.00,352.00 L 64.00,352.00 L 64.00,448.00 L 32.00,448.00 L 32.00,480.00 ZM 64.00,217.00 L 64.00,192.00 L 128.00,192.00 L 128.00,160.00 L 32.00,160.00 L 32.00,233.00 L 96.00,263.00 L 96.00,288.00 L 32.00,288.00 L 32.00,320.00 L 128.00,320.00 L 128.00,247.00 ZM 128.00,128.00 L 128.00-32.00 L 32.00-32.00 L 32.00,0.00 L 96.00,0.00 L 96.00,32.00 L 32.00,32.00 L 32.00,64.00 L 96.00,64.00 L 96.00,96.00 L 32.00,96.00 L 32.00,128.00 Z" data-tags="numbered-list, list, items, nl" />
+<glyph unicode="" d="M 476.698,442.679l-2.014,2.021c-47.074,47.067-124.097,47.067-171.163,0.00L 194.468,335.632
+ c-47.067-47.066-47.067-124.088,0.00-171.155l 2.013-2.013c 3.916-3.924, 8.073-7.462, 12.368-10.729l 39.924,39.925
+ c-4.651,2.747-9.063,6.036-13.058,10.03l-2.021,2.021c-25.557,25.549-25.557,67.136,0.00,92.695L 342.758,405.462
+ c 25.558,25.559, 67.137,25.559, 92.693,0.00l 2.021-2.012c 25.55-25.558, 25.55-67.146,0.00-92.695l-49.343-49.343
+ c 8.566-21.154, 12.624-43.70, 12.269-66.193l 76.302,76.302C 523.767,318.589, 523.767,395.61, 476.698,442.679zM 315.521,285.533c-3.916,3.916-8.073,7.461-12.368,10.72l-39.924-39.916c 4.652-2.748, 9.063-6.037, 13.058-10.031l 2.021-2.02
+ c 25.558-25.558, 25.558-67.136,0.00-92.694L 169.243,42.525c-25.559-25.551-67.138-25.551-92.694,0.00l-2.021,2.021
+ c-25.549,25.56-25.549,67.138,0.00,92.694l 49.344,49.343c-8.567,21.153-12.623,43.701-12.269,66.193l-76.301-76.299
+ c-47.068-47.066-47.068-124.089,0.00-171.162l 2.013-2.016c 47.076-47.064, 124.096-47.064, 171.164,0.00l 109.055,109.059
+ c 47.067,47.066, 47.067,124.097,0.00,171.163L 315.521,285.533z" data-tags="link, chain, url, uri, anchor" />
+<glyph unicode="" d="M 448.00,384.00 L 64.00,384.00 L 64.00,64.00 L 448.00,64.00 L 448.00,384.00 Z M 512.00,448.00 L 512.00,448.00 L 512.00,0.00 L 0.00,0.00 L 0.00,448.00 L 512.00,448.00 ZM 416.00,96.00 L 96.00,96.00 L 96.00,160.00 L 192.00,320.00 L 323.50,160.00 L 416.00,224.00 L 416.00,192.00 ZM 320.00,304.00A48.00,48.00 2700.00 1 1 416.00,304A48.00,48.00 2700.00 1 1 320.00,304z" data-tags="image, picture, photo, graphic" />
+<glyph unicode="" d="M 490.594,399.946C 418.778,410.271, 339.428,416.00, 256.001,416.00c-83.43,0.00-162.778-5.729-234.597-16.054
+ C 7.639,346.083,0.00,286.571,0.00,224.00c0.00-62.57, 7.639-122.083, 21.404-175.945C 93.223,37.729, 172.572,32.00, 256.001,32.00
+ c 83.427,0.00, 162.776,5.729, 234.593,16.055C 504.36,101.917, 512.00,161.43, 512.00,224.00C 512.00,286.571, 504.36,346.083, 490.594,399.946z
+ M 192.001,128.00L 192.001,320.00 l 160.00-96.00L 192.001,128.00z" data-tags="play, video, movie" />
+<glyph unicode="" d="M 160.00,384.00 L 512.00,480.00 L 512.00,448.00 L 512.00,384.00 L 512.00,112.00 C 512.00,67.817 461.855,32.00 400.00,32.00 C 338.145,32.00 288.00,67.817 288.00,112.00 C 288.00,156.183 338.145,192.00 400.00,192.00 C 417.179,192.00 433.451,189.234 448.00,184.297 L 448.00,349.091 L 224.00,288.00 L 224.00,48.00 C 224.00,3.817 173.856-32.00 112.00-32.00 C 50.144-32.00 0.00,3.817 0.00,48.00 C 0.00,92.183 50.144,128.00 112.00,128.00 C 129.179,128.00 145.451,125.234 160.00,120.297 L 160.00,288.00 L 160.00,384.00 Z" data-tags="music, song, audio, sound" />
+<glyph unicode="" d="M 224.00,192.00 L 224.00-16.00 L 144.00,64.00 L 48.00-32.00 L 0.00,16.00 L 96.00,112.00 L 16.00,192.00 ZM 512.00,432.00 L 416.00,336.00 L 496.00,256.00 L 288.00,256.00 L 288.00,464.00 L 368.00,384.00 L 464.00,480.00 Z" data-tags="contract, minimize, shrink, collapse" />
+<glyph unicode="" d="M 512.00,480.00 L 512.00,272.00 L 432.00,352.00 L 336.00,256.00 L 288.00,304.00 L 384.00,400.00 L 304.00,480.00 ZM 224.00,144.00 L 128.00,48.00 L 208.00-32.00 L 0.00-32.00 L 0.00,176.00 L 80.00,96.00 L 176.00,192.00 Z" data-tags="expand, enlarge, maximize, fullscreen" />
+<glyph unicode="" d="M 224.00,128.00L 288.00,128.00L 288.00,64.00L 224.00,64.00zM 352.00,352.00 C 369.673,352.00 384.00,337.673 384.00,320.00 L 384.00,224.00 L 288.00,160.00 L 224.00,160.00 L 224.00,192.00 L 320.00,256.00 L 320.00,288.00 L 160.00,288.00 L 160.00,352.00 L 352.00,352.00 ZM 256.00,432.00 C 200.441,432.00 148.208,410.364 108.922,371.078 C 69.636,331.792 48.00,279.559 48.00,224.00 C 48.00,168.441 69.636,116.208 108.922,76.922 C 148.208,37.636 200.441,16.00 256.00,16.00 C 311.559,16.00 363.792,37.636 403.078,76.922 C 442.364,116.208 464.00,168.441 464.00,224.00 C 464.00,279.559 442.364,331.792 403.078,371.078 C 363.792,410.364 311.559,432.00 256.00,432.00 Z M 256.00,480.00 L 256.00,480.00 C 397.385,480.00 512.00,365.385 512.00,224.00 C 512.00,82.615 397.385-32.00 256.00-32.00 C 114.615-32.00 0.00,82.615 0.00,224.00 C 0.00,365.385 114.615,480.00 256.00,480.00 Z" data-tags="question, help, support" />
+<glyph unicode="" d="M 256.00,480.00C 114.615,480.00,0.00,365.385,0.00,224.00s 114.615-256.00, 256.00-256.00s 256.00,114.615, 256.00,256.00S 397.385,480.00, 256.00,480.00z M 256.00,16.00
+ c-114.875,0.00-208.00,93.125-208.00,208.00S 141.125,432.00, 256.00,432.00s 208.00-93.125, 208.00-208.00S 370.875,16.00, 256.00,16.00zM 224.00,352.00L 288.00,352.00L 288.00,288.00L 224.00,288.00zM 320.00,96.00L 192.00,96.00L 192.00,128.00L 224.00,128.00L 224.00,224.00L 192.00,224.00L 192.00,256.00L 288.00,256.00L 288.00,128.00L 320.00,128.00 z" data-tags="info, information" />
+<glyph unicode="" d="M 380.931-32.00C 437.794,71.016, 447.375,228.153, 224.00,222.912L 224.00,96.00 L 32.00,288.00L 224.00,480.00l0.00-124.186
+ C 491.481,362.785, 521.285,119.707, 380.931-32.00z" data-tags="undo, arrow, left" />
+<glyph unicode="" d="M 288.00,355.814L 288.00,480.00 l 192.00-192.00L 288.00,96.00L 288.00,222.912 C 64.625,228.153, 74.206,71.016, 131.07-32.00
+ C-9.286,119.707, 20.52,362.785, 288.00,355.814z" data-tags="redo, arrow, right" />
+<glyph unicode="" d="M 64.00,224.00L 192.00,352.00L 128.00,352.00L0.00,224.00L 128.00,96.00L 192.00,96.00 zM 384.00,352.00L 320.00,352.00L 448.00,224.00L 320.00,96.00L 384.00,96.00L 512.00,224.00 zM 272.00,416.00L 192.00,32.00L 240.00,32.00L 320.00,416.00 z" data-tags="code, embed" />
+<glyph unicode="" d="M 256.00,320.00C 151.316,320.00, 58.378,269.722,0.00,192.00c 58.378-77.723, 151.316-128.00, 256.00-128.00c 104.684,0.00, 197.622,50.277, 256.00,128.00
+ C 453.622,269.722, 360.684,320.00, 256.00,320.00z M 224.00,256.00c 17.673,0.00, 32.00-14.327, 32.00-32.00s-14.327-32.00-32.00-32.00s-32.00,14.327-32.00,32.00S 206.327,256.00, 224.00,256.00z
+ M 386.808,127.352c-19.824-10.129-40.826-17.931-62.423-23.188C 302.141,98.746, 279.134,96.00, 256.00,96.00
+ c-23.133,0.00-46.141,2.746-68.384,8.162c-21.597,5.259-42.599,13.061-62.423,23.188c-31.51,16.101-60.111,38.205-83.82,64.649
+ c 23.709,26.444, 52.31,48.55, 83.82,64.649c 16.168,8.261, 33.121,14.973, 50.541,20.02C 165.79,261.547, 160.00,243.451, 160.00,224.00
+ c0.00-53.02, 42.981-96.00, 96.00-96.00c 53.019,0.00, 96.00,42.98, 96.00,96.00c0.00,19.451-5.791,37.547-15.733,52.67c 17.419-5.048, 34.372-11.76, 50.541-20.021
+ c 31.511-16.099, 60.109-38.204, 83.819-64.649C 446.917,165.557, 418.318,143.45, 386.808,127.352z M 430.459,358.139
+ C 376.099,385.916, 317.403,400.00, 256.00,400.00c-61.403,0.00-120.099-14.084-174.459-41.861C 52.155,343.123, 24.675,324.187,0.00,302.101l0.00-54.603
+ c 27.669,29.283, 60.347,53.877, 96.097,72.145C 145.907,345.095, 199.706,358.00, 256.00,358.00s 110.093-12.905, 159.902-38.358
+ c 35.751-18.268, 68.429-42.862, 96.098-72.145L 512.00,302.10 C 487.325,324.187, 459.846,343.123, 430.459,358.139z" data-tags="eye, views, vision, visit" />
+<glyph unicode=" " horiz-adv-x="256" />
+<glyph class="hidden" unicode="" d="M0,480L 512 -32L0 -32 z" horiz-adv-x="0" />
+</font></defs></svg>
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/allura/blob/89f575e3/Allura/allura/lib/widgets/resources/css/markdown_editor/fonts/icomoon.eot
----------------------------------------------------------------------
diff --git a/Allura/allura/lib/widgets/resources/css/markdown_editor/fonts/icomoon.eot b/Allura/allura/lib/widgets/resources/css/markdown_editor/fonts/icomoon.eot
new file mode 100644
index 0000000..35489e5
Binary files /dev/null and b/Allura/allura/lib/widgets/resources/css/markdown_editor/fonts/icomoon.eot differ
http://git-wip-us.apache.org/repos/asf/allura/blob/89f575e3/Allura/allura/lib/widgets/resources/css/markdown_editor/fonts/icomoon.svg
----------------------------------------------------------------------
diff --git a/Allura/allura/lib/widgets/resources/css/markdown_editor/fonts/icomoon.svg b/Allura/allura/lib/widgets/resources/css/markdown_editor/fonts/icomoon.svg
new file mode 100644
index 0000000..a5b3c9c
--- /dev/null
+++ b/Allura/allura/lib/widgets/resources/css/markdown_editor/fonts/icomoon.svg
@@ -0,0 +1,56 @@
+<?xml version="1.0" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
+<svg xmlns="http://www.w3.org/2000/svg">
+<metadata>
+This is a custom SVG font generated by IcoMoon.
+<iconset grid="16"></iconset>
+</metadata>
+<defs>
+<font id="icomoon" horiz-adv-x="512" >
+<font-face units-per-em="512" ascent="480" descent="-32" />
+<missing-glyph horiz-adv-x="512" />
+<glyph unicode="" d="M 353.94,237.674C 372.689,259.945, 384.00,288.678, 384.00,320.00c0.00,70.58-57.421,128.00-128.00,128.00l-64.00,0.00 l-64.00,0.00 L 96.00,448.00 l0.00-448.00 l 32.00,0.00 l 64.00,0.00 l 96.00,0.00
+ c 70.579,0.00, 128.00,57.421, 128.00,128.00C 416.00,174.478, 391.101,215.248, 353.94,237.674z M 192.00,384.00l 50.75,0.00 c 27.984,0.00, 50.75-28.71, 50.75-64.00
+ s-22.766-64.00-50.75-64.00L 192.00,256.00 L 192.00,384.00 z M 271.50,64.00L 192.00,64.00 L 192.00,192.00 l 79.50,0.00 c 29.225,0.00, 53.00-28.71, 53.00-64.00S 300.725,64.00, 271.50,64.00z" />
+<glyph unicode="" d="M 448.00,448.00 L 448.00,416.00 L 384.00,416.00 L 224.00,32.00 L 288.00,32.00 L 288.00,0.00 L 64.00,0.00 L 64.00,32.00 L 128.00,32.00 L 288.00,416.00 L 224.00,416.00 L 224.00,448.00 Z" />
+<glyph unicode="" d="M 112.50,256.00 C 174.356,256.00 224.50,205.855 224.50,144.00 C 224.50,82.144 174.356,32.00 112.50,32.00 C 50.644,32.00 0.50,82.144 0.50,144.00 L 0.00,160.00 C 0.00,283.712 100.288,384.00 224.00,384.00 L 224.00,320.00 C 181.263,320.00 141.083,303.357 110.863,273.137 C 105.046,267.319 99.737,261.129 94.948,254.627 C 100.667,255.527 106.528,256.00 112.50,256.00 ZM 400.50,256.00 C 462.355,256.00 512.50,205.855 512.50,144.00 C 512.50,82.144 462.355,32.00 400.50,32.00 C 338.645,32.00 288.50,82.144 288.50,144.00 L 288.00,160.00 C 288.00,283.712 388.288,384.00 512.00,384.00 L 512.00,320.00 C 469.263,320.00 429.083,303.357 398.863,273.137 C 393.045,267.319 387.736,261.129 382.947,254.627 C 388.667,255.527 394.527,256.00 400.50,256.00 Z" />
+<glyph unicode="" d="M 192.00,448.00l 320.00,0.00 l0.00-64.00 L 192.00,384.00 L 192.00,448.00 z M 192.00,256.00l 320.00,0.00 l0.00-64.00 L 192.00,192.00 L 192.00,256.00 z M 192.00,64.00l 320.00,0.00 l0.00-64.00 L 192.00,0.00 L 192.00,64.00 zM0.00,416.00A64.00,64.00 2700.00 1 1 128.00,416A64.00,64.00 2700.00 1 1 0.00,416zM0.00,224.00A64.00,64.00 2700.00 1 1 128.00,224A64.00,64.00 2700.00 1 1 0.00,224zM0.00,32.00A64.00,64.00 2700.00 1 1 128.00,32A64.00,64.00 2700.00 1 1 0.00,32z" />
+<glyph unicode="" d="M 192.00,64.00L 512.00,64.00L 512.00,0.00L 192.00,0.00zM 192.00,256.00L 512.00,256.00L 512.00,192.00L 192.00,192.00zM 192.00,448.00L 512.00,448.00L 512.00,384.00L 192.00,384.00zM 96.00,480.00 L 96.00,352.00 L 64.00,352.00 L 64.00,448.00 L 32.00,448.00 L 32.00,480.00 ZM 64.00,217.00 L 64.00,192.00 L 128.00,192.00 L 128.00,160.00 L 32.00,160.00 L 32.00,233.00 L 96.00,263.00 L 96.00,288.00 L 32.00,288.00 L 32.00,320.00 L 128.00,320.00 L 128.00,247.00 ZM 128.00,128.00 L 128.00-32.00 L 32.00-32.00 L 32.00,0.00 L 96.00,0.00 L 96.00,32.00 L 32.00,32.00 L 32.00,64.00 L 96.00,64.00 L 96.00,96.00 L 32.00,96.00 L 32.00,128.00 Z" />
+<glyph unicode="" d="M 476.698,442.679l-2.014,2.021c-47.074,47.067-124.097,47.067-171.163,0.00L 194.468,335.632
+ c-47.067-47.066-47.067-124.088,0.00-171.155l 2.013-2.013c 3.916-3.924, 8.073-7.462, 12.368-10.729l 39.924,39.925
+ c-4.651,2.747-9.063,6.036-13.058,10.03l-2.021,2.021c-25.557,25.549-25.557,67.136,0.00,92.695L 342.758,405.462
+ c 25.558,25.559, 67.137,25.559, 92.693,0.00l 2.021-2.012c 25.55-25.558, 25.55-67.146,0.00-92.695l-49.343-49.343
+ c 8.566-21.154, 12.624-43.70, 12.269-66.193l 76.302,76.302C 523.767,318.589, 523.767,395.61, 476.698,442.679zM 315.521,285.533c-3.916,3.916-8.073,7.461-12.368,10.72l-39.924-39.916c 4.652-2.748, 9.063-6.037, 13.058-10.031l 2.021-2.02
+ c 25.558-25.558, 25.558-67.136,0.00-92.694L 169.243,42.525c-25.559-25.551-67.138-25.551-92.694,0.00l-2.021,2.021
+ c-25.549,25.56-25.549,67.138,0.00,92.694l 49.344,49.343c-8.567,21.153-12.623,43.701-12.269,66.193l-76.301-76.299
+ c-47.068-47.066-47.068-124.089,0.00-171.162l 2.013-2.016c 47.076-47.064, 124.096-47.064, 171.164,0.00l 109.055,109.059
+ c 47.067,47.066, 47.067,124.097,0.00,171.163L 315.521,285.533z" />
+<glyph unicode="" d="M 448.00,384.00 L 64.00,384.00 L 64.00,64.00 L 448.00,64.00 L 448.00,384.00 Z M 512.00,448.00 L 512.00,448.00 L 512.00,0.00 L 0.00,0.00 L 0.00,448.00 L 512.00,448.00 ZM 416.00,96.00 L 96.00,96.00 L 96.00,160.00 L 192.00,320.00 L 323.50,160.00 L 416.00,224.00 L 416.00,192.00 ZM 320.00,304.00A48.00,48.00 2700.00 1 1 416.00,304A48.00,48.00 2700.00 1 1 320.00,304z" />
+<glyph unicode="" d="M 490.594,399.946C 418.778,410.271, 339.428,416.00, 256.001,416.00c-83.43,0.00-162.778-5.729-234.597-16.054
+ C 7.639,346.083,0.00,286.571,0.00,224.00c0.00-62.57, 7.639-122.083, 21.404-175.945C 93.223,37.729, 172.572,32.00, 256.001,32.00
+ c 83.427,0.00, 162.776,5.729, 234.593,16.055C 504.36,101.917, 512.00,161.43, 512.00,224.00C 512.00,286.571, 504.36,346.083, 490.594,399.946z
+ M 192.001,128.00L 192.001,320.00 l 160.00-96.00L 192.001,128.00z" />
+<glyph unicode="" d="M 160.00,384.00 L 512.00,480.00 L 512.00,448.00 L 512.00,384.00 L 512.00,112.00 C 512.00,67.817 461.855,32.00 400.00,32.00 C 338.145,32.00 288.00,67.817 288.00,112.00 C 288.00,156.183 338.145,192.00 400.00,192.00 C 417.179,192.00 433.451,189.234 448.00,184.297 L 448.00,349.091 L 224.00,288.00 L 224.00,48.00 C 224.00,3.817 173.856-32.00 112.00-32.00 C 50.144-32.00 0.00,3.817 0.00,48.00 C 0.00,92.183 50.144,128.00 112.00,128.00 C 129.179,128.00 145.451,125.234 160.00,120.297 L 160.00,288.00 L 160.00,384.00 Z" />
+<glyph unicode="" d="M 224.00,192.00 L 224.00-16.00 L 144.00,64.00 L 48.00-32.00 L 0.00,16.00 L 96.00,112.00 L 16.00,192.00 ZM 512.00,432.00 L 416.00,336.00 L 496.00,256.00 L 288.00,256.00 L 288.00,464.00 L 368.00,384.00 L 464.00,480.00 Z" />
+<glyph unicode="" d="M 512.00,480.00 L 512.00,272.00 L 432.00,352.00 L 336.00,256.00 L 288.00,304.00 L 384.00,400.00 L 304.00,480.00 ZM 224.00,144.00 L 128.00,48.00 L 208.00-32.00 L 0.00-32.00 L 0.00,176.00 L 80.00,96.00 L 176.00,192.00 Z" />
+<glyph unicode="" d="M 224.00,128.00L 288.00,128.00L 288.00,64.00L 224.00,64.00zM 352.00,352.00 C 369.673,352.00 384.00,337.673 384.00,320.00 L 384.00,224.00 L 288.00,160.00 L 224.00,160.00 L 224.00,192.00 L 320.00,256.00 L 320.00,288.00 L 160.00,288.00 L 160.00,352.00 L 352.00,352.00 ZM 256.00,432.00 C 200.441,432.00 148.208,410.364 108.922,371.078 C 69.636,331.792 48.00,279.559 48.00,224.00 C 48.00,168.441 69.636,116.208 108.922,76.922 C 148.208,37.636 200.441,16.00 256.00,16.00 C 311.559,16.00 363.792,37.636 403.078,76.922 C 442.364,116.208 464.00,168.441 464.00,224.00 C 464.00,279.559 442.364,331.792 403.078,371.078 C 363.792,410.364 311.559,432.00 256.00,432.00 Z M 256.00,480.00 L 256.00,480.00 C 397.385,480.00 512.00,365.385 512.00,224.00 C 512.00,82.615 397.385-32.00 256.00-32.00 C 114.615-32.00 0.00,82.615 0.00,224.00 C 0.00,365.385 114.615,480.00 256.00,480.00 Z" />
+<glyph unicode="" d="M 256.00,480.00C 114.615,480.00,0.00,365.385,0.00,224.00s 114.615-256.00, 256.00-256.00s 256.00,114.615, 256.00,256.00S 397.385,480.00, 256.00,480.00z M 256.00,16.00
+ c-114.875,0.00-208.00,93.125-208.00,208.00S 141.125,432.00, 256.00,432.00s 208.00-93.125, 208.00-208.00S 370.875,16.00, 256.00,16.00zM 224.00,352.00L 288.00,352.00L 288.00,288.00L 224.00,288.00zM 320.00,96.00L 192.00,96.00L 192.00,128.00L 224.00,128.00L 224.00,224.00L 192.00,224.00L 192.00,256.00L 288.00,256.00L 288.00,128.00L 320.00,128.00 z" />
+<glyph unicode="" d="M 380.931-32.00C 437.794,71.016, 447.375,228.153, 224.00,222.912L 224.00,96.00 L 32.00,288.00L 224.00,480.00l0.00-124.186
+ C 491.481,362.785, 521.285,119.707, 380.931-32.00z" />
+<glyph unicode="" d="M 288.00,355.814L 288.00,480.00 l 192.00-192.00L 288.00,96.00L 288.00,222.912 C 64.625,228.153, 74.206,71.016, 131.07-32.00
+ C-9.286,119.707, 20.52,362.785, 288.00,355.814z" />
+<glyph unicode="" d="M 64.00,224.00L 192.00,352.00L 128.00,352.00L0.00,224.00L 128.00,96.00L 192.00,96.00 zM 384.00,352.00L 320.00,352.00L 448.00,224.00L 320.00,96.00L 384.00,96.00L 512.00,224.00 zM 272.00,416.00L 192.00,32.00L 240.00,32.00L 320.00,416.00 z" />
+<glyph unicode="" d="M 256.00,320.00C 151.316,320.00, 58.378,269.722,0.00,192.00c 58.378-77.723, 151.316-128.00, 256.00-128.00c 104.684,0.00, 197.622,50.277, 256.00,128.00
+ C 453.622,269.722, 360.684,320.00, 256.00,320.00z M 224.00,256.00c 17.673,0.00, 32.00-14.327, 32.00-32.00s-14.327-32.00-32.00-32.00s-32.00,14.327-32.00,32.00S 206.327,256.00, 224.00,256.00z
+ M 386.808,127.352c-19.824-10.129-40.826-17.931-62.423-23.188C 302.141,98.746, 279.134,96.00, 256.00,96.00
+ c-23.133,0.00-46.141,2.746-68.384,8.162c-21.597,5.259-42.599,13.061-62.423,23.188c-31.51,16.101-60.111,38.205-83.82,64.649
+ c 23.709,26.444, 52.31,48.55, 83.82,64.649c 16.168,8.261, 33.121,14.973, 50.541,20.02C 165.79,261.547, 160.00,243.451, 160.00,224.00
+ c0.00-53.02, 42.981-96.00, 96.00-96.00c 53.019,0.00, 96.00,42.98, 96.00,96.00c0.00,19.451-5.791,37.547-15.733,52.67c 17.419-5.048, 34.372-11.76, 50.541-20.021
+ c 31.511-16.099, 60.109-38.204, 83.819-64.649C 446.917,165.557, 418.318,143.45, 386.808,127.352z M 430.459,358.139
+ C 376.099,385.916, 317.403,400.00, 256.00,400.00c-61.403,0.00-120.099-14.084-174.459-41.861C 52.155,343.123, 24.675,324.187,0.00,302.101l0.00-54.603
+ c 27.669,29.283, 60.347,53.877, 96.097,72.145C 145.907,345.095, 199.706,358.00, 256.00,358.00s 110.093-12.905, 159.902-38.358
+ c 35.751-18.268, 68.429-42.862, 96.098-72.145L 512.00,302.10 C 487.325,324.187, 459.846,343.123, 430.459,358.139z" />
+<glyph unicode=" " horiz-adv-x="256" />
+<glyph class="hidden" unicode="" d="M0,480L 512 -32L0 -32 z" horiz-adv-x="0" />
+</font></defs></svg>
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/allura/blob/89f575e3/Allura/allura/lib/widgets/resources/css/markdown_editor/fonts/icomoon.ttf
----------------------------------------------------------------------
diff --git a/Allura/allura/lib/widgets/resources/css/markdown_editor/fonts/icomoon.ttf b/Allura/allura/lib/widgets/resources/css/markdown_editor/fonts/icomoon.ttf
new file mode 100644
index 0000000..68a1d2a
Binary files /dev/null and b/Allura/allura/lib/widgets/resources/css/markdown_editor/fonts/icomoon.ttf differ
http://git-wip-us.apache.org/repos/asf/allura/blob/89f575e3/Allura/allura/lib/widgets/resources/css/markdown_editor/fonts/icomoon.woff
----------------------------------------------------------------------
diff --git a/Allura/allura/lib/widgets/resources/css/markdown_editor/fonts/icomoon.woff b/Allura/allura/lib/widgets/resources/css/markdown_editor/fonts/icomoon.woff
new file mode 100644
index 0000000..ea9e6bb
Binary files /dev/null and b/Allura/allura/lib/widgets/resources/css/markdown_editor/fonts/icomoon.woff differ