rubbr 1.0.4 → 1.0.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/History.txt +4 -0
- data/lib/rubbr.rb +20 -35
- data/lib/rubbr/builder.rb +10 -8
- data/lib/rubbr/builder/tex.rb +5 -5
- data/lib/rubbr/cli.rb +2 -2
- data/lib/rubbr/options.rb +9 -12
- data/lib/rubbr/viewer.rb +11 -7
- metadata +3 -3
data/History.txt
CHANGED
data/lib/rubbr.rb
CHANGED
@@ -2,7 +2,7 @@ require 'optparse'
|
|
2
2
|
$:.unshift File.dirname(__FILE__)
|
3
3
|
|
4
4
|
module Rubbr
|
5
|
-
VERSION = '1.0.
|
5
|
+
VERSION = '1.0.5'
|
6
6
|
|
7
7
|
autoload :Options, 'rubbr/options'
|
8
8
|
autoload :Cli, 'rubbr/cli'
|
@@ -15,34 +15,37 @@ module Rubbr
|
|
15
15
|
autoload :Spell, 'rubbr/spell'
|
16
16
|
|
17
17
|
class << self
|
18
|
-
|
18
|
+
@@cmd_opts = {}
|
19
|
+
|
19
20
|
def options
|
20
|
-
@@
|
21
|
+
@@global_opts ||= Rubbr::Options.setup.merge(@@cmd_opts)
|
21
22
|
end
|
22
23
|
|
23
24
|
def run(args = ARGV)
|
24
|
-
options = {}
|
25
|
-
|
26
25
|
opts = OptionParser.new do |opts|
|
27
26
|
opts.version = Rubbr::VERSION
|
28
|
-
opts.banner = 'Usage: rubbr [
|
27
|
+
opts.banner = 'Usage: rubbr [@@cmd_opts]'
|
29
28
|
|
30
29
|
opts.on('-f', '--format [FORMAT]', [:dvi, :ps, :pdf],
|
31
30
|
'Select output format (dvi, ps, pdf)') do |format|
|
32
|
-
|
31
|
+
@@cmd_opts[:format] = format
|
33
32
|
end
|
34
33
|
|
35
34
|
opts.on('-e', '--engine [ENGINE]', [:pdflatex, :ps, :pdf],
|
36
35
|
'Select processing engine (latex, pdflatex)') do |engine|
|
37
|
-
|
36
|
+
@@cmd_opts[:engine] = engine
|
38
37
|
end
|
39
38
|
|
40
|
-
opts.on('-
|
41
|
-
|
39
|
+
opts.on('-d', '--display', 'Display the document') do
|
40
|
+
@@cmd_opts[:view] = true
|
42
41
|
end
|
43
42
|
|
44
43
|
opts.on('-s', '--spell', 'Spell check source files') do
|
45
|
-
|
44
|
+
@@cmd_opts[:spell] = true
|
45
|
+
end
|
46
|
+
|
47
|
+
opts.on('-v', '--verbose', 'Enable verbose feedback') do
|
48
|
+
@@cmd_opts[:verbose] = true
|
46
49
|
end
|
47
50
|
|
48
51
|
opts.on('-h', '--help', 'Show this help message') do
|
@@ -58,32 +61,14 @@ module Rubbr
|
|
58
61
|
exit 1
|
59
62
|
end
|
60
63
|
|
61
|
-
if
|
62
|
-
|
63
|
-
elsif
|
64
|
-
|
64
|
+
if @@cmd_opts[:spell]
|
65
|
+
Rubbr::Spell.new.check
|
66
|
+
elsif @@cmd_opts[:view]
|
67
|
+
Rubbr::Builder.build
|
68
|
+
Rubbr::Viewer.view
|
65
69
|
else
|
66
|
-
build
|
70
|
+
Rubbr::Builder.build
|
67
71
|
end
|
68
72
|
end
|
69
|
-
|
70
|
-
private
|
71
|
-
|
72
|
-
def build(format, engine)
|
73
|
-
if engine
|
74
|
-
Rubbr::Builder.build(format, engine)
|
75
|
-
else
|
76
|
-
Rubbr::Builder.build(format)
|
77
|
-
end
|
78
|
-
end
|
79
|
-
|
80
|
-
def view(format, engine)
|
81
|
-
build(format, engine)
|
82
|
-
Rubbr::Viewer.view(format)
|
83
|
-
end
|
84
|
-
|
85
|
-
def spell
|
86
|
-
Rubbr::Spell.new.check
|
87
|
-
end
|
88
73
|
end
|
89
74
|
end
|
data/lib/rubbr/builder.rb
CHANGED
@@ -11,16 +11,18 @@ module Rubbr
|
|
11
11
|
module Builder
|
12
12
|
|
13
13
|
# Build to the spesified format.
|
14
|
-
def self.build
|
15
|
-
|
16
|
-
when :dvi
|
14
|
+
def self.build
|
15
|
+
if Rubbr.options[:engine] == :pdflatex
|
17
16
|
Rubbr::Builder::Tex.build
|
18
|
-
when :ps
|
19
|
-
Rubbr::Builder::Tex.build
|
20
|
-
Rubbr::Builder::Dvi.build
|
21
17
|
else
|
22
|
-
Rubbr
|
23
|
-
|
18
|
+
case Rubbr.options[:format]
|
19
|
+
when :dvi
|
20
|
+
Rubbr::Builder::Tex.build
|
21
|
+
when :ps
|
22
|
+
Rubbr::Builder::Tex.build
|
23
|
+
Rubbr::Builder::Dvi.build
|
24
|
+
else
|
25
|
+
Rubbr::Builder::Tex.build
|
24
26
|
Rubbr::Builder::Dvi.build
|
25
27
|
Rubbr::Builder::Ps.build
|
26
28
|
end
|
data/lib/rubbr/builder/tex.rb
CHANGED
@@ -2,20 +2,20 @@ module Rubbr
|
|
2
2
|
module Builder
|
3
3
|
class Tex < Base
|
4
4
|
class << self
|
5
|
-
def build
|
5
|
+
def build
|
6
6
|
|
7
7
|
clean_build_dir
|
8
8
|
|
9
9
|
base_latex_file = Rubbr.options[:base_latex_file]
|
10
10
|
base_bibtex_file = Rubbr.options[:base_bibtex_file]
|
11
11
|
|
12
|
-
case engine
|
13
|
-
when :latex
|
14
|
-
@output_format = :dvi
|
15
|
-
preprocessor = Rubbr::Runner::LaTeX
|
12
|
+
case Rubbr.options[:engine]
|
16
13
|
when :pdflatex
|
17
14
|
@output_format = :pdf
|
18
15
|
preprocessor = Rubbr::Runner::PdfLaTeX
|
16
|
+
else
|
17
|
+
@output_format = :dvi
|
18
|
+
preprocessor = Rubbr::Runner::LaTeX
|
19
19
|
end
|
20
20
|
|
21
21
|
build_dir do
|
data/lib/rubbr/cli.rb
CHANGED
@@ -3,11 +3,11 @@ module Rubbr
|
|
3
3
|
# Handles command line output and input.
|
4
4
|
module Cli
|
5
5
|
def notice(message)
|
6
|
-
puts message
|
6
|
+
puts message if Rubbr.options[:verbose]
|
7
7
|
end
|
8
8
|
|
9
9
|
def warning(message)
|
10
|
-
puts " - #{message}"
|
10
|
+
puts " - #{message}" if Rubbr.options[:verbose]
|
11
11
|
end
|
12
12
|
|
13
13
|
def error(message)
|
data/lib/rubbr/options.rb
CHANGED
@@ -11,13 +11,15 @@ module Rubbr
|
|
11
11
|
:source_dir => source_dir,
|
12
12
|
:build_dir => 'tmp',
|
13
13
|
:distribution_dir => 'dist',
|
14
|
-
:template_file => 'template.erb',
|
15
14
|
:base_file => 'base',
|
16
15
|
:vendor_dir => source_dir + '/vendor',
|
17
16
|
:graphics_dir => source_dir + '/graphics',
|
18
17
|
:spell_dir => source_dir,
|
19
18
|
:spell_file => 'dictionary.ispell',
|
20
|
-
:distribution_name => distribution_name(root_dir)
|
19
|
+
:distribution_name => distribution_name(root_dir),
|
20
|
+
:verbose => false,
|
21
|
+
:format => :dvi,
|
22
|
+
:engine => :latex
|
21
23
|
}
|
22
24
|
end
|
23
25
|
|
@@ -49,16 +51,11 @@ module Rubbr
|
|
49
51
|
end
|
50
52
|
|
51
53
|
def absolute_paths(options)
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
graphics_dir
|
58
|
-
spell_dir)
|
59
|
-
relatives.each do |key|
|
60
|
-
options[key.to_sym] = File.join(options[:root_dir],
|
61
|
-
options[key.to_sym])
|
54
|
+
options.each_key do |key|
|
55
|
+
if key.to_s =~ /\w+_dir/ && key != :root_dir
|
56
|
+
options[key.to_sym] = File.join(options[:root_dir],
|
57
|
+
options[key.to_sym])
|
58
|
+
end
|
62
59
|
end
|
63
60
|
options
|
64
61
|
end
|
data/lib/rubbr/viewer.rb
CHANGED
@@ -2,14 +2,18 @@ module Rubbr
|
|
2
2
|
module Viewer
|
3
3
|
|
4
4
|
# View the spesified format.
|
5
|
-
def self.view
|
6
|
-
|
7
|
-
when :dvi
|
8
|
-
Rubbr::Viewer::Dvi.new.launch
|
9
|
-
when :ps
|
10
|
-
Rubbr::Viewer::Ps.new.launch
|
11
|
-
else
|
5
|
+
def self.view
|
6
|
+
if Rubbr.options[:engine] == :pdflatex
|
12
7
|
Rubbr::Viewer::Pdf.new.launch
|
8
|
+
else
|
9
|
+
case Rubbr.options[:format]
|
10
|
+
when :dvi
|
11
|
+
Rubbr::Viewer::Dvi.new.launch
|
12
|
+
when :ps
|
13
|
+
Rubbr::Viewer::Ps.new.launch
|
14
|
+
else
|
15
|
+
Rubbr::Viewer::Pdf.new.launch
|
16
|
+
end
|
13
17
|
end
|
14
18
|
end
|
15
19
|
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rubbr
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Eivind Uggedal
|
@@ -9,7 +9,7 @@ autorequire:
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
|
12
|
-
date: 2008-03-
|
12
|
+
date: 2008-03-29 23:00:00 +01:00
|
13
13
|
default_executable:
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
@@ -19,7 +19,7 @@ dependencies:
|
|
19
19
|
requirements:
|
20
20
|
- - ">="
|
21
21
|
- !ruby/object:Gem::Version
|
22
|
-
version: 1.5.
|
22
|
+
version: 1.5.1
|
23
23
|
version:
|
24
24
|
description: Build LaTeX documents.
|
25
25
|
email: eu@redflavor.com
|