Skip to content

Commit

Permalink
Merge pull request #87 from ianks/fixer-up
Browse files Browse the repository at this point in the history
Remove jquery, fix highlighting, new version
  • Loading branch information
ianks committed Apr 12, 2016
2 parents dcc0e36 + 2a88fe4 commit f220582
Show file tree
Hide file tree
Showing 9 changed files with 81 additions and 20 deletions.
1 change: 0 additions & 1 deletion .ruby-version

This file was deleted.

2 changes: 2 additions & 0 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
---
language: ruby

before_install:
Expand All @@ -9,6 +10,7 @@ script:
- bundle exec rake

rvm:
- '2.3.0'
- '2.2.4'
- '2.1.5'
- '2.0.0'
61 changes: 61 additions & 0 deletions assets/highlight.css
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
.highlight .hll { background-color: #ffffcc }
.highlight .c { color: #999988; font-style: italic } /* Comment */
.highlight .err { color: #a61717; background-color: #e3d2d2 } /* Error */
.highlight .k { color: #000000; font-weight: bold } /* Keyword */
.highlight .o { color: #000000; font-weight: bold } /* Operator */
.highlight .cm { color: #999988; font-style: italic } /* Comment.Multiline */
.highlight .cp { color: #999999; font-weight: bold; font-style: italic } /* Comment.Preproc */
.highlight .c1 { color: #999988; font-style: italic } /* Comment.Single */
.highlight .cs { color: #999999; font-weight: bold; font-style: italic } /* Comment.Special */
.highlight .gd { color: #000000; background-color: #ffdddd } /* Generic.Deleted */
.highlight .ge { color: #000000; font-style: italic } /* Generic.Emph */
.highlight .gr { color: #aa0000 } /* Generic.Error */
.highlight .gh { color: #999999 } /* Generic.Heading */
.highlight .gi { color: #000000; background-color: #ddffdd } /* Generic.Inserted */
.highlight .go { color: #888888 } /* Generic.Output */
.highlight .gp { color: #555555 } /* Generic.Prompt */
.highlight .gs { font-weight: bold } /* Generic.Strong */
.highlight .gu { color: #aaaaaa } /* Generic.Subheading */
.highlight .gt { color: #aa0000 } /* Generic.Traceback */
.highlight .kc { color: #000000; font-weight: bold } /* Keyword.Constant */
.highlight .kd { color: #000000; font-weight: bold } /* Keyword.Declaration */
.highlight .kn { color: #000000; font-weight: bold } /* Keyword.Namespace */
.highlight .kp { color: #000000; font-weight: bold } /* Keyword.Pseudo */
.highlight .kr { color: #000000; font-weight: bold } /* Keyword.Reserved */
.highlight .kt { color: #445588; font-weight: bold } /* Keyword.Type */
.highlight .m { color: #009999 } /* Literal.Number */
.highlight .s { color: #d01040 } /* Literal.String */
.highlight .na { color: #008080 } /* Name.Attribute */
.highlight .nb { color: #0086B3 } /* Name.Builtin */
.highlight .nc { color: #445588; font-weight: bold } /* Name.Class */
.highlight .no { color: #008080 } /* Name.Constant */
.highlight .nd { color: #3c5d5d; font-weight: bold } /* Name.Decorator */
.highlight .ni { color: #800080 } /* Name.Entity */
.highlight .ne { color: #990000; font-weight: bold } /* Name.Exception */
.highlight .nf { color: #990000; font-weight: bold } /* Name.Function */
.highlight .nl { color: #990000; font-weight: bold } /* Name.Label */
.highlight .nn { color: #555555 } /* Name.Namespace */
.highlight .nt { color: #000080 } /* Name.Tag */
.highlight .nv { color: #008080 } /* Name.Variable */
.highlight .ow { color: #000000; font-weight: bold } /* Operator.Word */
.highlight .w { color: #bbbbbb } /* Text.Whitespace */
.highlight .mf { color: #009999 } /* Literal.Number.Float */
.highlight .mh { color: #009999 } /* Literal.Number.Hex */
.highlight .mi { color: #009999 } /* Literal.Number.Integer */
.highlight .mo { color: #009999 } /* Literal.Number.Oct */
.highlight .sb { color: #d01040 } /* Literal.String.Backtick */
.highlight .sc { color: #d01040 } /* Literal.String.Char */
.highlight .sd { color: #d01040 } /* Literal.String.Doc */
.highlight .s2 { color: #d01040 } /* Literal.String.Double */
.highlight .se { color: #d01040 } /* Literal.String.Escape */
.highlight .sh { color: #d01040 } /* Literal.String.Heredoc */
.highlight .si { color: #d01040 } /* Literal.String.Interpol */
.highlight .sx { color: #d01040 } /* Literal.String.Other */
.highlight .sr { color: #009926 } /* Literal.String.Regex */
.highlight .s1 { color: #d01040 } /* Literal.String.Single */
.highlight .ss { color: #990073 } /* Literal.String.Symbol */
.highlight .bp { color: #999999 } /* Name.Builtin.Pseudo */
.highlight .vc { color: #008080 } /* Name.Variable.Class */
.highlight .vg { color: #008080 } /* Name.Variable.Global */
.highlight .vi { color: #008080 } /* Name.Variable.Instance */
.highlight .il { color: #009999 } /* Literal.Number.Integer.Long */
4 changes: 0 additions & 4 deletions assets/vendor/jquery-2.1.3.min.js

This file was deleted.

11 changes: 5 additions & 6 deletions lib/octodown/renderer/html.rb
Original file line number Diff line number Diff line change
Expand Up @@ -26,13 +26,12 @@ def title
end

def stylesheet
tagger assets_dir("#{options[:style]}.css"), :style
stylesheet = "#{options[:style]}.css"
inject_html_node_with_file_content assets_dir(stylesheet), :style
end

def vendor
Dir[assets_dir('vendor', '*.js')].reduce '' do |a, e|
a << tagger(e, 'script')
end
def highlight_stylesheet
inject_html_node_with_file_content assets_dir('highlight.css'), :style
end

def host
Expand All @@ -45,7 +44,7 @@ def present

private

def tagger(name, tag)
def inject_html_node_with_file_content(name, tag)
"<#{tag}>#{File.read name}</#{tag}>"
end

Expand Down
4 changes: 2 additions & 2 deletions lib/octodown/template/octodown.html.erb
Original file line number Diff line number Diff line change
Expand Up @@ -6,14 +6,14 @@
<title><%= title %></title>
<link rel="shortcut icon" href="https://raw.githubusercontent.com/ianks/octodown/master/assets/favicon.png" type="image/png" />

<%= highlight_stylesheet %>
<%= stylesheet %>
<%= vendor %>

<script type="text/javascript">
var socket = new WebSocket(<%= host %>);

socket.onmessage = function(event) {
$(".markdown-body").html(event.data)
document.querySelector('article.markdown-body').innerHTML = event.data;
};
</script>
</head>
Expand Down
2 changes: 1 addition & 1 deletion lib/octodown/version.rb
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
module Octodown
VERSION = '1.3.0'
VERSION = '1.4.0'.freeze
end
6 changes: 3 additions & 3 deletions octodown.gemspec
Original file line number Diff line number Diff line change
Expand Up @@ -13,13 +13,13 @@ Gem::Specification.new do |spec|
spec.license = 'MIT'
spec.required_ruby_version = '>= 2.0'

spec.files = Dir['{lib,assets,bin}/**/*']
spec.files = Dir['{lib,assets,bin}/**/**'].reject { |f| f.end_with?('.gif') }
spec.executables << 'octodown'
spec.require_paths = ['lib']

spec.add_dependency 'github-markup', '~> 1.4.0'
spec.add_dependency 'github-linguist', '~> 4.6.4'
spec.add_dependency 'html-pipeline', '~> 2.2.1'
spec.add_dependency 'github-linguist', '~> 4.8.2'
spec.add_dependency 'html-pipeline', '~> 2.4.0'
spec.add_dependency 'github-markdown', '~> 0.6.8'
spec.add_dependency 'gemoji', '~> 2.1.0'
spec.add_dependency 'html-pipeline-rouge_filter', '~> 1.0.2'
Expand Down
10 changes: 7 additions & 3 deletions spec/lib/renderer/html_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -21,9 +21,13 @@
expect(subject).to include css
end

it 'includes jQuery' do
jquery = File.read assets_dir('vendor', 'jquery-2.1.3.min.js')
expect(subject).to include jquery
it 'injects higlighting CSS' do
css = File.read assets_dir('highlight.css')
expect(subject).to include css
end

it 'does not include jQuery lol' do
expect(subject).not_to include 'jquery'
end

it 'includes correct websocket address in js' do
Expand Down

0 comments on commit f220582

Please sign in to comment.