Skip to content

Commit

Permalink
switch to marked markdown library
Browse files Browse the repository at this point in the history
* load marked and highlight in the browser, not in Komodo
* add code block highlighting
  • Loading branch information
Todd Whiteman committed Nov 7, 2014
1 parent 7f6eefd commit 87221a7
Show file tree
Hide file tree
Showing 58 changed files with 7,127 additions and 13 deletions.
9 changes: 7 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,13 @@
- Allows side-by-side, or under-over previewing inside of Komodo
- Dynamically updates the markdown preview as you edit (live editing)
- Automatically closes the preview when switching to another file, re-opens when switching back
- Uses GitHub flavoured CSS styling
- Styles code blocks

# Installation

Drag and drop the [markdown.xpi](releases/markdown-viewer-0.2-ko.xpi?raw=true]) file onto a running Komodo instance.
Download the [markdown.xpi](releases/markdown-viewer-0.3-ko.xpi?raw=true]) file
and then drag/drop that xpi file onto a running Komodo instance.

# Screenshot

Expand All @@ -21,4 +24,6 @@ Drag and drop the [markdown.xpi](releases/markdown-viewer-0.2-ko.xpi?raw=true])

# Acknowledgements

- Uses the [markdown-js](https://github.com/evilstreak/markdown-js) library (MIT license) to covert Markdown to HTML.
- [marked](https://github.com/chjj/marked) library to covert Markdown to HTML
- [github-markdown-css](https://github.com/sindresorhus/github-markdown-css) for the GitHub flavoured CSS styling
- [highlight](https://github.com/isagalaev/highlight.js) for code block highlighting
24 changes: 24 additions & 0 deletions content/contrib/highlight/LICENSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
Copyright (c) 2006, Ivan Sagalaev
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:

* Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
* Neither the name of highlight.js nor the names of its contributors
may be used to endorse or promote products derived from this software
without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND ANY
EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE REGENTS AND CONTRIBUTORS BE LIABLE FOR ANY
DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
101 changes: 101 additions & 0 deletions content/contrib/highlight/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,101 @@
# Highlight.js

[![Build Status](https://travis-ci.org/isagalaev/highlight.js.svg?branch=master)](https://travis-ci.org/isagalaev/highlight.js)

Highlight.js is a syntax highlighter written in JavaScript. It works in the
browser as well as on the server. It works with pretty much any markup,
doesn't depend on any framework and has automatic language detection.


## Getting Started

The bare minimum for using highlight.js on a web page is linking to the library
along with one of the styles and calling [`initHighlightingOnLoad`][1]:

```html
<link rel="stylesheet" href="/path/to/styles/default.css">
<script src="/path/to/highlight.pack.js"></script>
<script>hljs.initHighlightingOnLoad();</script>
```

This will find and highlight code inside of `<pre><code>` tags trying to detect
the language automatically. If automatic detection doesn't work for you, you can
specify the language in the class attribute:

```html
<pre><code class="html">...</code></pre>
```

The list of supported language classes is available in the [class reference][8].
Classes can also be prefixed with either `language-` or `lang-`.

To disable highlighting altogether use the `nohighlight` class:

```html
<pre><code class="nohighlight">...</code></pre>
```

## Custom Initialization

When you need a bit more control over the initialization of
highlight.js, you can use the [`highlightBlock`][2] and [`configure`][3]
functions. This allows you to control *what* to highlight and *when*.

Here's an equivalent way to calling [`initHighlightingOnLoad`][1] using jQuery:

```javascript
$(document).ready(function() {
$('pre code').each(function(i, block) {
hljs.highlightBlock(block);
});
});
```

You can use any tags instead of `<pre><code>` to mark up your code. If you don't
use a container that preserve line breaks you will need to configure
highlight.js to use the `<br>` tag:

```javascript
hljs.configure({useBR: true});

$('div.code').each(function(i, block) {
hljs.highlightBlock(block);
});
```

For other options refer to the documentation for [`configure`][3].


## Getting the Library

You can get highlight.js as a hosted or custom-build browser script or as a
server module. Head over to the [download page][4] for all the options.

Note, that the library is not supposed to work straight from the source on
GitHub, it requires building. If none of the pre-packaged options work for you
refer to the [building documentation][5].


## License

Highlight.js is released under the BSD License. See [LICENSE][10] file for
details.


## Links

The official site for the library is at <https://highlightjs.org/>.

Further in-depth documentation for the API and other topics is at
<http://highlightjs.readthedocs.org/>.

Authors and contributors are listed in the [AUTHORS.en.txt][9] file.

[1]: http://highlightjs.readthedocs.org/en/latest/api.html#inithighlightingonload
[2]: http://highlightjs.readthedocs.org/en/latest/api.html#highlightblock-block
[3]: http://highlightjs.readthedocs.org/en/latest/api.html#configure-options
[4]: https://highlightjs.org/download/
[5]: http://highlightjs.readthedocs.org/en/latest/building-testing.html
[8]: http://highlightjs.readthedocs.org/en/latest/css-classes-reference.html
[9]: https://github.com/isagalaev/highlight.js/blob/master/AUTHORS.en.txt
[10]: https://github.com/isagalaev/highlight.js/blob/master/LICENSE
2 changes: 2 additions & 0 deletions content/contrib/highlight/highlight.pack.js

Large diffs are not rendered by default.

141 changes: 141 additions & 0 deletions content/contrib/highlight/styles/arta.css
Original file line number Diff line number Diff line change
@@ -0,0 +1,141 @@
/*
Date: 17.V.2011
Author: pumbur <[email protected]>
*/

.hljs {
display: block;
overflow-x: auto;
padding: 0.5em;
background: #222;
-webkit-text-size-adjust: none;
}

.profile .hljs-header *,
.ini .hljs-title,
.nginx .hljs-title {
color: #fff;
}

.hljs-comment,
.hljs-javadoc,
.hljs-preprocessor,
.hljs-preprocessor .hljs-title,
.hljs-pragma,
.hljs-shebang,
.profile .hljs-summary,
.diff,
.hljs-pi,
.hljs-doctype,
.hljs-tag,
.hljs-template_comment,
.css .hljs-rules,
.tex .hljs-special {
color: #444;
}

.hljs-string,
.hljs-symbol,
.diff .hljs-change,
.hljs-regexp,
.xml .hljs-attribute,
.smalltalk .hljs-char,
.xml .hljs-value,
.ini .hljs-value,
.clojure .hljs-attribute,
.coffeescript .hljs-attribute {
color: #ffcc33;
}

.hljs-number,
.hljs-addition {
color: #00cc66;
}

.hljs-built_in,
.hljs-literal,
.hljs-type,
.hljs-typename,
.go .hljs-constant,
.ini .hljs-keyword,
.lua .hljs-title,
.perl .hljs-variable,
.php .hljs-variable,
.mel .hljs-variable,
.django .hljs-variable,
.css .funtion,
.smalltalk .method,
.hljs-hexcolor,
.hljs-important,
.hljs-flow,
.hljs-inheritance,
.parser3 .hljs-variable {
color: #32aaee;
}

.hljs-keyword,
.hljs-tag .hljs-title,
.css .hljs-tag,
.css .hljs-class,
.css .hljs-id,
.css .hljs-pseudo,
.css .hljs-attr_selector,
.hljs-winutils,
.tex .hljs-command,
.hljs-request,
.hljs-status {
color: #6644aa;
}

.hljs-title,
.ruby .hljs-constant,
.vala .hljs-constant,
.hljs-parent,
.hljs-deletion,
.hljs-template_tag,
.css .hljs-keyword,
.objectivec .hljs-class .hljs-id,
.smalltalk .hljs-class,
.lisp .hljs-keyword,
.apache .hljs-tag,
.nginx .hljs-variable,
.hljs-envvar,
.bash .hljs-variable,
.go .hljs-built_in,
.vbscript .hljs-built_in,
.lua .hljs-built_in,
.rsl .hljs-built_in,
.tail,
.avrasm .hljs-label,
.tex .hljs-formula,
.tex .hljs-formula * {
color: #bb1166;
}

.hljs-yardoctag,
.hljs-phpdoc,
.hljs-dartdoc,
.profile .hljs-header,
.ini .hljs-title,
.apache .hljs-tag,
.parser3 .hljs-title {
font-weight: bold;
}

.coffeescript .javascript,
.javascript .xml,
.tex .hljs-formula,
.xml .javascript,
.xml .vbscript,
.xml .css,
.xml .hljs-cdata {
opacity: 0.6;
}

.hljs,
.hljs-subst,
.diff .hljs-chunk,
.css .hljs-value,
.css .hljs-attribute {
color: #aaa;
}
53 changes: 53 additions & 0 deletions content/contrib/highlight/styles/ascetic.css
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
/*
Original style from softwaremaniacs.org (c) Ivan Sagalaev <[email protected]>
*/

.hljs {
display: block;
overflow-x: auto;
padding: 0.5em;
background: white;
color: black;
-webkit-text-size-adjust: none;
}

.hljs-string,
.hljs-tag .hljs-value,
.hljs-filter .hljs-argument,
.hljs-addition,
.hljs-change,
.apache .hljs-tag,
.apache .hljs-cbracket,
.nginx .hljs-built_in,
.tex .hljs-formula {
color: #888;
}

.hljs-comment,
.hljs-template_comment,
.hljs-shebang,
.hljs-doctype,
.hljs-pi,
.hljs-javadoc,
.hljs-deletion,
.apache .hljs-sqbracket {
color: #ccc;
}

.hljs-keyword,
.hljs-tag .hljs-title,
.ini .hljs-title,
.lisp .hljs-title,
.http .hljs-title,
.nginx .hljs-title,
.css .hljs-tag,
.hljs-winutils,
.hljs-flow,
.apache .hljs-tag,
.tex .hljs-command,
.hljs-request,
.hljs-status {
font-weight: bold;
}
Loading

0 comments on commit 87221a7

Please sign in to comment.