markview 0.2.4 → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
data/README.md CHANGED
@@ -1,25 +1,45 @@
1
1
  # Markview
2
2
 
3
- Markview allows you to view nearly any and all markup formatted files in a slick way. Markview is inspired by the python library [restview](http://mg.pov.lt/restview/). As of v0.2.0, I've decided to extend markview to render virtually any and all markup formatted README's or what-have-you using the [github-markup](http://www.github.com/defunkt/github-markup) library.
3
+ Markview allows you to view nearly any and all markup formatted files in a slick way. Markview is inspired by the python library [restview](http://mg.pov.lt/restview/). Markview has the ability to render virtually any and all markup formatted files using the [github-markup](http://www.github.com/defunkt/github-markup) library.
4
4
 
5
5
  ## Install
6
6
 
7
- New releases of Markview are published to [gemcutter](http://gemcutter.org/gems/markview)
8
-
9
- $ [sudo] gem install markview
7
+ $ sudo gem install markview
10
8
 
11
9
  ## Usage
12
10
 
13
11
  Markview is very simple to use. Run the gem from the command line and specify
14
- a README or other markdown file. Markview defaults to finding a README if you choose not to
12
+ a README or other markdown file. Markview defaults to finding a file with the base name README if you choose not to
15
13
  specify the file.
16
14
 
17
- $ markview README.md
18
-
15
+ $ markview README.md
16
+
19
17
  ## Preview
20
18
 
21
- ![Markview Preview](http://img.skitch.com/20100225-gt6h7nqqt281hhx4d1qstu7cqm.png)
22
-
19
+ ![Markview Preview](http://img.skitch.com/20100331-pdee3qerwaxpk49w1qnumspnjb.png)
20
+
23
21
  ## Author
24
22
 
25
- [Mark Sands](http://github.com/marksands) :: marksands07@gmail.com
23
+ [Mark Sands](http://github.com/marksands) :: marksands07@gmail.com
24
+
25
+ ## License
26
+
27
+ Copyright (c) 2010, 2011 Mark Sands
28
+
29
+ Permission is hereby granted, free of charge, to any person obtaining a copy
30
+ of this software and associated documentation files (the "Software"), to deal
31
+ in the Software without restriction, including without limitation the rights
32
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
33
+ copies of the Software, and to permit persons to whom the Software is
34
+ furnished to do so, subject to the following conditions:
35
+
36
+ The above copyright notice and this permission notice shall be included in
37
+ all copies or substantial portions of the Software.
38
+
39
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
40
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
41
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
42
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
43
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
44
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
45
+ THE SOFTWARE.
data/bin/markview CHANGED
@@ -9,4 +9,4 @@ end
9
9
  require File.expand_path(File.dirname(__FILE__) + "/../lib/markview")
10
10
 
11
11
  use Rack::ShowExceptions
12
- Vegas::Runner.new(Markview::Application, 'markview', :foreground => true )
12
+ Vegas::Runner.new(Markview, 'markview', :foreground => true )
data/lib/markview.rb CHANGED
@@ -1,29 +1,47 @@
1
1
  $:.unshift File.expand_path(File.dirname(__FILE__) + '/lib')
2
2
  require 'sinatra'
3
+ require 'json'
3
4
  require 'github/markup'
4
5
 
5
- module Markview
6
- class Application < Sinatra::Base
7
- dir = File.dirname(File.expand_path(__FILE__))
8
-
9
- set :views, "#{dir}/markview/views"
10
- set :public, "#{dir}/markview/public"
11
- set :static, true
12
-
13
- # Renders the html using GitHub::Markup
14
- def self.markview_me
15
- ARGV[0] ||= Dir.glob("README*")[0]
16
- begin
17
- GitHub::Markup.render(ARGV[0], File.read(ARGV[0]))
18
- rescue Errno::ENOENT
19
- raise LoadError, "Failed to open document. Please specify a file."; exit
20
- end
21
- end
6
+ class Markview < Sinatra::Base
7
+ dir = File.dirname(File.expand_path(__FILE__))
8
+
9
+ set :views, "#{dir}/markview/views"
10
+ set :public, "#{dir}/markview/public"
11
+ set :static, true
22
12
 
23
- get '/' do
24
- @markdown = Markview::Application.markview_me
25
- @title = ARGV[0].gsub(/(.+\/)?/, '') # /path/to/README.txt => README.txt
26
- erb :base
13
+ configure do
14
+ @@markup = ARGV[0] ||= Dir.glob("README*")[0]
15
+ unless File.file?(@@markup)
16
+ raise LoadError, "Failed to open document. Please specify a file."; exit!
27
17
  end
28
- end
18
+ end
19
+
20
+ # Renders the html using GitHub::Markup
21
+ def self.render
22
+ GitHub::Markup.render(@@markup, File.read(@@markup))
23
+ end
24
+
25
+ get '/' do
26
+ @markdown = Markview.render
27
+ @title = File.basename(@@markup)
28
+ erb :base
29
+ end
30
+
31
+ get '/preview' do
32
+ @markdown = Markview.render
33
+ ({:error => false, :data => @markdown}).to_json
34
+ end
35
+
36
+ get '/edit' do
37
+ @markdown = File.read(@@markup)
38
+ ({:error => false, :data => "<textarea id='editbox'>#{@markdown}</textarea>"}).to_json
39
+ end
40
+
41
+ post '/save' do
42
+ return ({:error => true, :message => "Failed to save file!"}).to_json unless request['markup']
43
+ File.open(@@markup, 'w') { |f| f.write(request['markup']) }
44
+ ({:error => false, :message => "File succesfully saved!"}).to_json
45
+ end
46
+
29
47
  end
@@ -0,0 +1,47 @@
1
+ $(document).ready(function() {
2
+
3
+ $('.last').hide();
4
+
5
+ $('#save').click(function(e){
6
+ e.preventDefault();
7
+ $.post("/save", { markup: $('#editbox').val() }, function(response) {
8
+ if ( response.error == true ) {
9
+ $(function () {
10
+ $.notifyBar({
11
+ cls: 'error',
12
+ html: response.message,
13
+ delay: 2000,
14
+ animationSpeed: "normal"
15
+ });
16
+ });
17
+ }
18
+ else {
19
+ $(function () {
20
+ $.notifyBar({
21
+ cls: 'success',
22
+ html: response.message,
23
+ delay: 2000,
24
+ animationSpeed: "normal"
25
+ });
26
+ });
27
+ }
28
+ }, 'json');
29
+ });
30
+
31
+ $('#edit').click(function(e){
32
+ e.preventDefault();
33
+ $.get('/edit', function(response) {
34
+ $('#markview-output').html(response.data);
35
+ $('.last').show();
36
+ }, 'json');
37
+ });
38
+
39
+ $('#preview').click(function(e){
40
+ e.preventDefault();
41
+ $.get('/preview', function(response) {
42
+ $('#markview-output').html(response.data);
43
+ $('.last').hide();
44
+ }, 'json');
45
+ });
46
+
47
+ });
@@ -0,0 +1,37 @@
1
+ /*
2
+ * Notify Bar - jQuery plugin
3
+ *
4
+ * Copyright (c) 2009-2010 Dmitri Smirnov
5
+ *
6
+ * Licensed under the MIT license:
7
+ * http://www.opensource.org/licenses/mit-license.php
8
+ *
9
+ * Version: 1.2
10
+ *
11
+ * Project home:
12
+ * http://www.dmitri.me/blog/notify-bar
13
+ */
14
+
15
+ .jquery-notify-bar {
16
+ width:100%;
17
+ position:fixed;
18
+ top:0;
19
+ left:0;
20
+ z-index:32768;
21
+ background-color:#efefef;
22
+ font-size:18px;
23
+ color:#000;
24
+ text-align:center;
25
+ font-family: Arial, Verdana, sans-serif;
26
+ padding:20px 0px;
27
+ border-bottom:1px solid #bbb;
28
+ cursor: pointer;
29
+ }
30
+ .jquery-notify-bar.error {
31
+ color:#f00;
32
+ background-color:#fdd;
33
+ }
34
+ .jquery-notify-bar.success {
35
+ color:#060;
36
+ background-color:#BBFFB6;
37
+ }
@@ -0,0 +1,109 @@
1
+ /*
2
+ * Notify Bar - jQuery plugin
3
+ *
4
+ * Copyright (c) 2009-2010 Dmitri Smirnov
5
+ *
6
+ * Licensed under the MIT license:
7
+ * http://www.opensource.org/licenses/mit-license.php
8
+ *
9
+ * Version: 1.2.2
10
+ *
11
+ * Project home:
12
+ * http://www.dmitri.me/blog/notify-bar
13
+ */
14
+
15
+ /**
16
+ * param Object
17
+ */
18
+ jQuery.notifyBar = function(settings) {
19
+
20
+ (function($) {
21
+
22
+ var bar = notifyBarNS = {};
23
+ notifyBarNS.shown = false;
24
+
25
+ if( !settings) {
26
+ settings = {};
27
+ }
28
+ // HTML inside bar
29
+ notifyBarNS.html = settings.html || "Your message here";
30
+
31
+ //How long bar will be delayed, doesn't count animation time.
32
+ notifyBarNS.delay = settings.delay || 2000;
33
+
34
+ //How long notifyBarNS bar will be slided up and down
35
+ notifyBarNS.animationSpeed = settings.animationSpeed || 200;
36
+
37
+ //Use own jquery object usually DIV, or use default
38
+ notifyBarNS.jqObject = settings.jqObject;
39
+
40
+ //Set up own class
41
+ notifyBarNS.cls = settings.cls || "";
42
+
43
+ //close button
44
+ notifyBarNS.close = settings.close || false;
45
+
46
+ if( notifyBarNS.jqObject) {
47
+ bar = notifyBarNS.jqObject;
48
+ notifyBarNS.html = bar.html();
49
+ } else {
50
+ bar = jQuery("<div></div>")
51
+ .addClass("jquery-notify-bar")
52
+ .addClass(notifyBarNS.cls)
53
+ .attr("id", "__notifyBar");
54
+ }
55
+
56
+ bar.html(notifyBarNS.html).hide();
57
+ var id = bar.attr("id");
58
+ switch (notifyBarNS.animationSpeed) {
59
+ case "slow":
60
+ asTime = 600;
61
+ break;
62
+ case "normal":
63
+ asTime = 400;
64
+ break;
65
+ case "fast":
66
+ asTime = 200;
67
+ break;
68
+ default:
69
+ asTime = notifyBarNS.animationSpeed;
70
+ }
71
+ if( bar != 'object'); {
72
+ jQuery("body").prepend(bar);
73
+ }
74
+
75
+ // Style close button in CSS file
76
+ if( notifyBarNS.close) {
77
+ bar.append(jQuery("<a href='#' class='notify-bar-close'>Close [X]</a>"));
78
+ jQuery(".notify-bar-close").click(function() {
79
+ if( bar.attr("id") == "__notifyBar") {
80
+ jQuery("#" + id).slideUp(asTime, function() { jQuery("#" + id).remove() });
81
+ } else {
82
+ jQuery("#" + id).slideUp(asTime);
83
+ }
84
+ return false;
85
+ });
86
+ }
87
+
88
+ // Check if we've got any visible bars and if we have, slide them up before showing the new one
89
+ if($('.jquery-notify-bar:visible').length > 0) {
90
+ $('.jquery-notify-bar:visible').stop().slideUp(asTime, function() {
91
+ bar.stop().slideDown(asTime);
92
+ });
93
+ } else {
94
+ bar.slideDown(asTime);
95
+ }
96
+
97
+ // Allow the user to click on the bar to close it
98
+ bar.click(function() {
99
+ $(this).slideUp(asTime);
100
+ })
101
+
102
+ // If taken from DOM dot not remove just hide
103
+ if( bar.attr("id") == "__notifyBar") {
104
+ setTimeout("jQuery('#" + id + "').stop().slideUp(" + asTime +", function() {jQuery('#" + id + "').remove()});", notifyBarNS.delay + asTime);
105
+ } else {
106
+ setTimeout("jQuery('#" + id + "').stop().slideUp(" + asTime +", function() {jQuery('#" + id + "')});", notifyBarNS.delay + asTime);
107
+ }
108
+
109
+ })(jQuery) };
@@ -9,7 +9,7 @@ body { line-height:1; color:black; background: white; }
9
9
  ol,ul { list-style:none; }
10
10
  table { border-collapse:separate; border-spacing:0; }
11
11
  caption,th,td { text-align:left; font-weight:normal; }
12
- blockquote:before,blockquote:after,q:before,q:after { content:""; }
12
+ blockquote:before,blockquote:after,q:before,q:after { content:""; }
13
13
  blockquote,q { quotes:"" ""; }
14
14
 
15
15
  .clear:after { clear:both; content:""; display:block; height:0; zoom:1; }
@@ -24,6 +24,25 @@ div#content {margin:2% auto; position:relative; width:920px; }
24
24
  div#content > div { float:left; }
25
25
  div#content div#markview-output { border: 1px solid #E9E9E9; background:#F8F8F8; padding:10px; overflow-y:auto; min-width:900px;}
26
26
 
27
+ .meta { min-width:910px;}
28
+ .meta { background: #eee url(http://assets1.github.com/images/modules/commit/file_head.gif) repeat-x 0px 0px;
29
+ border:1px solid #e9e9e9;border-bottom:1px solid #ccc;color:#333;height:33px;line-height:33px;font-size:12px;padding:0px 5px; }
30
+ .meta ul { float:right;height:33px;line-height:33px;padding:0;margin:0; }
31
+ .meta ul li { float:left; list-style-type:none; margin: 8px 0 0 10px; }
32
+ .meta ul li.last { background: url(http://assets1.github.com/images/modules/commit/action_separator.png) no-repeat 0px 50%; margin: 8px 4px 0 10px; }
33
+ .meta ul li a { color:#4183C4;font-weight:bold; text-decoration:none;outline:none;line-height:1.4em;margin:0 0 0 10px;}
34
+
35
+ textarea {
36
+ width: 99%;
37
+ height: 600px!important;
38
+ padding:0!important;
39
+ margin:0!important;
40
+ resize: none;
41
+ font-size: 1.1em;
42
+ background-color: rgb(253, 253, 253);
43
+ border: 2px solid rgb(215, 214, 213);
44
+ }
45
+
27
46
  .markview * {line-height:1.4em;}
28
47
  .markview a {color:#2e80d3; text-decoration:none;}
29
48
  .markview a:hover { text-decoration:underline;}
@@ -35,7 +54,7 @@ div#content div#markview-output { border: 1px solid #E9E9E9; background:#F8F8F8;
35
54
 
36
55
  .markview h1,.markview h2,.markview h3,.markview h4,.markview h5,.markview h6{margin-bottom:0.5em; color:black;}
37
56
  .markview h1{font-size:170% !important; padding-top:0.5em!important;margin-top:1.5em!important;
38
- line-height:1.4em; font-weight:bold; border-top: 4px solid #AAA !important; }
57
+ line-height:1.4em; font-weight:bold; border-top: 4px solid #AAA !important; }
39
58
  .markview h1:first-child { margin-top:0!important;padding-top:0.25em!important;border-top:none!important;}
40
59
  .markview h2{ border-top: 4px solid #ddd; padding-top: 12px; margin-top:30px; margin-bottom:0.75em;}
41
60
  .markview h2{font-size:150% !important; font-weight:bold}
@@ -61,12 +80,12 @@ div#content div#markview-output { border: 1px solid #E9E9E9; background:#F8F8F8;
61
80
  .markview table td{border-bottom:1px solid #ddd;padding:0.2em 1em}
62
81
 
63
82
  .markview pre{font-family: Monaco, 'Courier New', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', monospace;
64
- background-color:#f8f8ff !important;border:1px solid #dedede !important;color:#444 !important; font-size:90% !important;
65
- line-height:1.5em !important; padding: 0.5em !important; margin:1em 0 !important; overflow:auto !important;}
83
+ background-color:#f8f8ff !important;border:1px solid #dedede !important;color:#444 !important; font-size:90% !important;
84
+ line-height:1.5em !important; padding: 0.5em !important; margin:1em 0 !important; overflow:auto !important;}
66
85
  .markview pre code{background-color:#f8f8ff !important;border:none !important;font-size:100% !important;padding:0 !important}
67
86
  .markview code{font-family: Monaco, 'Courier New', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', monospace;
68
- background-color:ghostWhite !important;border:1px solid #dedede !important;color:#444 !important; font-size:90%!important;
69
- padding:0 0.2em !important}
87
+ background-color:ghostWhite !important;border:1px solid #dedede !important;color:#444 !important; font-size:90%!important;
88
+ padding:0 0.2em !important}
70
89
 
71
90
  .markview pre.console{background-color:#000;color:white;font-size:90%;line-height:1.5em;margin:0 0 1em;padding:0.5em}
72
91
  .markview pre.console code{background-color:#000;border:medium none;color:#fff;font-size:100%;padding:0}
@@ -1,16 +1,3 @@
1
- <!DOCTYPE html>
2
- <html lang="en">
3
- <head>
4
- <meta http-equiv="content-type" content="text/html;charset=utf-8" />
5
- <title>Markview</title>
6
- <link rel="stylesheet" href="/style.css" type="text/css" media="screen" charset="utf-8">
7
- </head>
8
- <body>
9
- <div id="content" class="clear">
10
- <p id="file"><%= @title %></p>
11
- <div id="markview-output" class="markview">
12
- <%= @markdown %>
13
- </div>
14
- </div>
15
- </body>
16
- </html>
1
+ <div id="markview-output" class="markview">
2
+ <%= @markdown %>
3
+ </div>
@@ -0,0 +1,29 @@
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta http-equiv="content-type" content="text/html;charset=utf-8" />
5
+ <title>Markview</title>
6
+ <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js"></script>
7
+ <script src="/jquery.notifyBar.js"></script>
8
+ <script src="/app.js" type="text/javascript" charset="utf-8"></script>
9
+ <link rel="stylesheet" href="/style.css" type="text/css" media="screen" charset="utf-8">
10
+ <link rel="stylesheet" href="/jquery.notifyBar.css" type="text/css" media="screen" />
11
+ </script>
12
+ </head>
13
+ <body>
14
+ <div id="content" class="clear">
15
+ <p id="file"><%= @title %></p>
16
+
17
+ <div class="meta">
18
+ <ul>
19
+ <li><a id="edit" href="#">edit</a></li>
20
+ <li class="last"><a id="save" href="#">save</a></li>
21
+ <li class="last"><a id="preview" href="#">preview</a></li>
22
+ </ul>
23
+ </div>
24
+
25
+ <%= yield %>
26
+
27
+ </div>
28
+ </body>
29
+ </html>
data/test/render_test.rb CHANGED
@@ -1,25 +1,25 @@
1
1
  require 'test/test_helper'
2
2
 
3
3
  class RenderTest
4
-
4
+
5
5
  test "renders given file" do
6
- assert_equal GitHub::Markup.render(@argv, File.read(@argv)),
7
- Markview::Application.markview_me
6
+ assert_equal GitHub::Markup.render(@argv, File.read(@argv)), Markview.render
8
7
  end
9
8
 
10
9
  test "renders discovered file" do
11
10
  discover_file
12
- assert_equal GitHub::Markup.render(@argv, File.read(@argv)),
13
- Markview::Application.markview_me
11
+ assert_equal GitHub::Markup.render(@argv, File.read(@argv)), Markview.render
14
12
  end
15
13
 
16
14
  test "no markdown file given or found raises error" do
17
15
  bad_file
18
- assert_raises LoadError do
19
- Markview::Application.markview_me
20
- end
16
+ Proc.new {
17
+ assert_raise LoadError do
18
+ require 'markview.rb'
19
+ end
20
+ }
21
21
  end
22
-
22
+
23
23
  test "on GET to root" do
24
24
  get "/"
25
25
  should_respond_with_success
data/test/test_helper.rb CHANGED
@@ -1,27 +1,27 @@
1
1
  $LOAD_PATH.unshift File.dirname(File.expand_path(__FILE__)) + '/../lib'
2
2
  require File.dirname(File.expand_path(__FILE__)) + '/../lib/markview.rb'
3
- require 'contest'
4
3
  require 'rack/test'
4
+ require 'contest'
5
5
 
6
6
  class RenderTest < Test::Unit::TestCase
7
7
  include Rack::Test::Methods
8
-
8
+
9
9
  def app
10
- Markview::Application.new
10
+ Markview.new
11
11
  end
12
-
12
+
13
13
  def should_respond_with_success
14
14
  assert last_response.ok?
15
15
  end
16
-
16
+
17
17
  def setup
18
18
  @argv = ARGV[0] = 'README.md'
19
19
  end
20
-
20
+
21
21
  def discover_file
22
22
  @argv = ARGV[0] = Dir.glob("README*")[0]
23
23
  end
24
-
24
+
25
25
  def bad_file
26
26
  @argv = ARGV[0] = "bad_file_name"
27
27
  end
metadata CHANGED
@@ -1,12 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: markview
3
3
  version: !ruby/object:Gem::Version
4
+ hash: 19
4
5
  prerelease: false
5
6
  segments:
6
7
  - 0
7
- - 2
8
- - 4
9
- version: 0.2.4
8
+ - 3
9
+ - 0
10
+ version: 0.3.0
10
11
  platform: ruby
11
12
  authors:
12
13
  - Mark Sands
@@ -14,16 +15,18 @@ autorequire:
14
15
  bindir: bin
15
16
  cert_chain: []
16
17
 
17
- date: 2010-03-31 00:00:00 -05:00
18
+ date: 2011-01-06 00:00:00 -06:00
18
19
  default_executable:
19
20
  dependencies:
20
21
  - !ruby/object:Gem::Dependency
21
22
  name: vegas
22
23
  prerelease: false
23
24
  requirement: &id001 !ruby/object:Gem::Requirement
25
+ none: false
24
26
  requirements:
25
27
  - - ">="
26
28
  - !ruby/object:Gem::Version
29
+ hash: 19
27
30
  segments:
28
31
  - 0
29
32
  - 1
@@ -35,9 +38,11 @@ dependencies:
35
38
  name: sinatra
36
39
  prerelease: false
37
40
  requirement: &id002 !ruby/object:Gem::Requirement
41
+ none: false
38
42
  requirements:
39
43
  - - ">="
40
44
  - !ruby/object:Gem::Version
45
+ hash: 51
41
46
  segments:
42
47
  - 0
43
48
  - 9
@@ -49,9 +54,11 @@ dependencies:
49
54
  name: github-markup
50
55
  prerelease: false
51
56
  requirement: &id003 !ruby/object:Gem::Requirement
57
+ none: false
52
58
  requirements:
53
59
  - - ">="
54
60
  - !ruby/object:Gem::Version
61
+ hash: 19
55
62
  segments:
56
63
  - 0
57
64
  - 2
@@ -63,9 +70,11 @@ dependencies:
63
70
  name: rdiscount
64
71
  prerelease: false
65
72
  requirement: &id004 !ruby/object:Gem::Requirement
73
+ none: false
66
74
  requirements:
67
75
  - - ">="
68
76
  - !ruby/object:Gem::Version
77
+ hash: 9
69
78
  segments:
70
79
  - 1
71
80
  - 6
@@ -74,40 +83,46 @@ dependencies:
74
83
  type: :runtime
75
84
  version_requirements: *id004
76
85
  - !ruby/object:Gem::Dependency
77
- name: contest
86
+ name: json
78
87
  prerelease: false
79
88
  requirement: &id005 !ruby/object:Gem::Requirement
89
+ none: false
80
90
  requirements:
81
91
  - - ">="
82
92
  - !ruby/object:Gem::Version
93
+ hash: 11
83
94
  segments:
84
- - 0
85
95
  - 1
86
- - 2
87
- version: 0.1.2
88
- type: :development
96
+ - 4
97
+ - 6
98
+ version: 1.4.6
99
+ type: :runtime
89
100
  version_requirements: *id005
90
101
  - !ruby/object:Gem::Dependency
91
- name: turn
102
+ name: contest
92
103
  prerelease: false
93
104
  requirement: &id006 !ruby/object:Gem::Requirement
105
+ none: false
94
106
  requirements:
95
107
  - - ">="
96
108
  - !ruby/object:Gem::Version
109
+ hash: 31
97
110
  segments:
98
111
  - 0
99
- - 7
100
- - 0
101
- version: 0.7.0
112
+ - 1
113
+ - 2
114
+ version: 0.1.2
102
115
  type: :development
103
116
  version_requirements: *id006
104
117
  - !ruby/object:Gem::Dependency
105
118
  name: rack-test
106
119
  prerelease: false
107
120
  requirement: &id007 !ruby/object:Gem::Requirement
121
+ none: false
108
122
  requirements:
109
123
  - - ">="
110
124
  - !ruby/object:Gem::Version
125
+ hash: 13
111
126
  segments:
112
127
  - 0
113
128
  - 5
@@ -115,7 +130,7 @@ dependencies:
115
130
  version: 0.5.3
116
131
  type: :development
117
132
  version_requirements: *id007
118
- description: Conveniently launches practically any markup formatted files in a browser, rendering on the fly.
133
+ description: Coneveniently renders and launches any markup formatted file within your browser.
119
134
  email: marksands07@gmail.com
120
135
  executables:
121
136
  - markview
@@ -127,7 +142,11 @@ files:
127
142
  - bin/markview
128
143
  - lib/markview.rb
129
144
  - lib/markview/public/style.css
145
+ - lib/markview/public/jquery.notifyBar.css
146
+ - lib/markview/public/app.js
147
+ - lib/markview/public/jquery.notifyBar.js
130
148
  - lib/markview/views/base.erb
149
+ - lib/markview/views/layout.erb
131
150
  - README.md
132
151
  - test/test_helper.rb
133
152
  - test/render_test.rb
@@ -141,26 +160,30 @@ rdoc_options: []
141
160
  require_paths:
142
161
  - lib
143
162
  required_ruby_version: !ruby/object:Gem::Requirement
163
+ none: false
144
164
  requirements:
145
165
  - - ">="
146
166
  - !ruby/object:Gem::Version
167
+ hash: 3
147
168
  segments:
148
169
  - 0
149
170
  version: "0"
150
171
  required_rubygems_version: !ruby/object:Gem::Requirement
172
+ none: false
151
173
  requirements:
152
174
  - - ">="
153
175
  - !ruby/object:Gem::Version
176
+ hash: 3
154
177
  segments:
155
178
  - 0
156
179
  version: "0"
157
180
  requirements: []
158
181
 
159
182
  rubyforge_project: markview
160
- rubygems_version: 1.3.6
183
+ rubygems_version: 1.3.7
161
184
  signing_key:
162
185
  specification_version: 3
163
- summary: A markup viewer that renders on the fly.
186
+ summary: A markup viewer that renders on the fly in your browser.
164
187
  test_files:
165
188
  - test/test_helper.rb
166
189
  - test/render_test.rb