mdslide 2.0.0 → 2.1.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -13,11 +13,14 @@ Mdslide is an slide generator for presentation based on Markdown (RedCarpet). It
13
13
 
14
14
  == REQUIREMENTS:
15
15
 
16
- * ArgsParser
17
- * RedCarpet
16
+ * Ruby + Rubygems
18
17
 
19
- gem install ArgsParser
20
- gem install redcarpet
18
+ == DIPENDENCIES:
19
+
20
+ * args_parser
21
+ * kramdown
22
+
23
+ Those will be installed with mdslide through rubygems, automatically
21
24
 
22
25
  == USAGE:
23
26
 
@@ -41,9 +44,9 @@ If you want to get HTML, CSS and Javascript files for your web server, use -o op
41
44
 
42
45
  $ mdslide -i foo.md -o bar.md
43
46
 
44
- Viewing only, Web server feature is useful
47
+ Viewing only, Web server feature is useful. Without -o option, starting web server on port 3000 on your PC and you can preview on http://localhost:3000/
45
48
 
46
- $ mdslide -i foo.md -s
49
+ $ mdslide -i foo.md
47
50
  # you can see your slides at http://localhost:3000/
48
51
  # and if you want in other theme, go http://localhost:3000/black
49
52
 
data/Rakefile CHANGED
@@ -20,9 +20,9 @@ $hoe = Hoe.spec 'mdslide' do
20
20
  ]
21
21
  end
22
22
 
23
- require 'newgem/tasks'
24
23
  Dir['tasks/**/*.rake'].each { |t| load t }
24
+ require 'newgem/tasks'
25
25
 
26
26
  # TODO - want other tests/tasks run by default? Add them to the list
27
27
  # remove_task :default
28
- # task :default => [:spec, :features]
28
+ #task :default => [:spec, :features]
@@ -1,6 +1,7 @@
1
1
  body {
2
2
  color: #000;
3
3
  background-color:#fff;
4
+ overflow: hidden;
4
5
  }
5
6
  .slide {
6
7
  position:absolute;
@@ -34,7 +35,7 @@ body {
34
35
  }
35
36
  .slide ul, .slide ol, .slide dl{
36
37
  text-align:left;
37
- padding: 0 2em;
38
+ padding: 0 1em 0 2em;
38
39
  }
39
40
  .slide pre{
40
41
  width:80%;
@@ -105,8 +105,9 @@ jQuery ->
105
105
  zoom = h/sh
106
106
  t.css 'width', sw / zoom
107
107
  t.css TRANSFORM, "scale(#{zoom})"
108
- else if sh < h
109
- t.css 'top', h/2 - sh/2
108
+ sh = t.height() * zoom
109
+ #else if sh < h
110
+ t.css 'top', h/2 - sh/2
110
111
 
111
112
  jQuery(window).bind('resize',resize)
112
113
  resize()
@@ -124,10 +124,10 @@
124
124
  if (sh > h) {
125
125
  zoom = h / sh;
126
126
  t.css('width', sw / zoom);
127
- return t.css(TRANSFORM, "scale(" + zoom + ")");
128
- } else if (sh < h) {
129
- return t.css('top', h / 2 - sh / 2);
127
+ t.css(TRANSFORM, "scale(" + zoom + ")");
128
+ sh = t.height() * zoom;
130
129
  }
130
+ return t.css('top', h / 2 - sh / 2);
131
131
  });
132
132
  };
133
133
  jQuery(window).bind('resize', resize);
@@ -4,5 +4,5 @@ $:.unshift(File.dirname(__FILE__)) unless
4
4
  require 'mdslide/creator'
5
5
 
6
6
  module Mdslide
7
- VERSION = '2.0.0'
7
+ VERSION = '2.1.0'
8
8
  end
@@ -1,4 +1,5 @@
1
1
  #coding:UTF-8
2
+ require 'rubygems'
2
3
  require 'args_parser'
3
4
  require 'mdslide'
4
5
  require 'yaml'
@@ -62,7 +63,7 @@ module Mdslide
62
63
 
63
64
  creator.set_theme default_theme
64
65
  input = nil
65
- File.open(file_path,'r'){|r| input = r.read.force_encoding(Encoding::UTF_8) }
66
+ File.open(file_path,'r'){|r| input = r.read }
66
67
  File.open(output_path,'w'){|f| f.puts creator.convert_markdown(input)}
67
68
 
68
69
  output_js = !parser[:"without-assets-dir"] and !parser[:"without-js-dir"]
@@ -110,7 +111,7 @@ module Mdslide
110
111
  m = req.path.match(/\/(.+)/)
111
112
  theme = (m && m[1]) || default_theme
112
113
  creator.set_theme theme
113
- File.open(file_path,'r'){|r| input = r.read.force_encoding(Encoding::UTF_8) }
114
+ File.open(file_path,'r'){|r| input = r.read }
114
115
 
115
116
  res.body = creator.convert_markdown(input)
116
117
  res['Content-Type'] = 'text/html'
@@ -1,3 +1,4 @@
1
+ require 'rubygems'
1
2
  require 'kramdown'
2
3
  require 'erb'
3
4
 
@@ -28,6 +29,7 @@ module Mdslide
28
29
  theme[:css] && @theme_stylesheets.replace(theme[:css])
29
30
  theme[:js] && @theme_scripts.replace(theme[:js])
30
31
  end
32
+ return theme
31
33
  end
32
34
 
33
35
  def get_binding
@@ -4,7 +4,10 @@ require File.dirname(__FILE__) + '/spec_helper.rb'
4
4
  # http://rspec.info/
5
5
  describe "Mdslide" do
6
6
  it 'has some themes' do
7
- Mdslide::Themes.should have_key('white')
7
+ Mdslide::Themes.should have_key(:white)
8
+ Mdslide::Themes[:white][:css].should have_at_least(1).item
9
+ Mdslide::Themes.should have_key(:black)
10
+ Mdslide::Themes[:black][:css].should have_at_least(1).item
8
11
  end
9
12
 
10
13
  describe "Creator" do
@@ -18,13 +21,12 @@ describe "Mdslide" do
18
21
  end
19
22
  it "can be set theme" do
20
23
  @creator.set_theme('black').should be_true
21
- @creator.stylesheets.should have_at_least(2).items
24
+ @creator.theme_stylesheets.should have_at_least(1).items
22
25
  end
23
26
  it "can convert markdown" do
24
27
  slide = @creator.convert_markdown("sample")
25
28
  slide.should be_true
26
29
  slide.should be_kind_of(String)
27
30
  end
28
-
29
31
  end
30
32
  end
@@ -1 +1 @@
1
- --colour
1
+ -c
@@ -1,21 +0,0 @@
1
- begin
2
- require 'rspec'
3
- rescue LoadError
4
- require 'rubygems' unless ENV['NO_RUBYGEMS']
5
- require 'rspec'
6
- end
7
- begin
8
- require 'rspec/core/rake_task'
9
- rescue LoadError
10
- puts <<-EOS
11
- To use rspec for testing you must install rspec gem:
12
- gem install rspec
13
- EOS
14
- exit(0)
15
- end
16
-
17
- desc "Run the specs under spec/models"
18
- RSpec::Core::RakeTask.new do |t|
19
- t.rspec_opts = ['--options', "spec/spec.opts"]
20
- t.pattern = 'spec/**/*_spec.rb'
21
- end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mdslide
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.0
4
+ version: 2.1.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -13,7 +13,7 @@ date: 2012-05-17 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: args_parser
16
- requirement: &83751840 !ruby/object:Gem::Requirement
16
+ requirement: &71539710 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: 0.0.1
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *83751840
24
+ version_requirements: *71539710
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: kramdown
27
- requirement: &83751450 !ruby/object:Gem::Requirement
27
+ requirement: &71539090 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ! '>='
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: 0.13.6
33
33
  type: :runtime
34
34
  prerelease: false
35
- version_requirements: *83751450
35
+ version_requirements: *71539090
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: rdoc
38
- requirement: &83711870 !ruby/object:Gem::Requirement
38
+ requirement: &71538710 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ~>
@@ -43,10 +43,10 @@ dependencies:
43
43
  version: '3.10'
44
44
  type: :development
45
45
  prerelease: false
46
- version_requirements: *83711870
46
+ version_requirements: *71538710
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: newgem
49
- requirement: &83711120 !ruby/object:Gem::Requirement
49
+ requirement: &71538160 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ! '>='
@@ -54,10 +54,10 @@ dependencies:
54
54
  version: 1.5.3
55
55
  type: :development
56
56
  prerelease: false
57
- version_requirements: *83711120
57
+ version_requirements: *71538160
58
58
  - !ruby/object:Gem::Dependency
59
59
  name: hoe
60
- requirement: &83709570 !ruby/object:Gem::Requirement
60
+ requirement: &71537670 !ruby/object:Gem::Requirement
61
61
  none: false
62
62
  requirements:
63
63
  - - ~>
@@ -65,7 +65,7 @@ dependencies:
65
65
  version: '3.0'
66
66
  type: :development
67
67
  prerelease: false
68
- version_requirements: *83709570
68
+ version_requirements: *71537670
69
69
  description: Mdslide is an slide generator for presentation based on Markdown (RedCarpet).
70
70
  It can convert extended Markdown file to HTML it can show as aslides and/or outlines.
71
71
  It outputs HTML, CSS and Javascript files, also you can use this HTTP Server for