rake4latex 0.1.0 → 0.1.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (47) hide show
  1. data/{call_rake4latex.rb → bin/call_rake4latex.rb} +6 -3
  2. data/{readme_call_rake4latex.txt → bin/readme_call_rake4latex.txt} +0 -0
  3. data/lib/rake4latex.rb +106 -42
  4. data/lib/rake4latex/analyse_texfile.rb +375 -0
  5. data/lib/rake4latex/base.rb +40 -10
  6. data/lib/rake4latex/latexrunner.rb +20 -7
  7. data/lib/rake4latex/rake4latex.yaml +4 -0
  8. data/lib/rake4latex/rules.rb +59 -26
  9. data/lib/rake4latex/tex_statistic.rb +405 -375
  10. data/lib/rake4latex_dtx.rb +83 -0
  11. data/readme.html +150 -28
  12. data/readme.txt +118 -20
  13. data/test/_expected/bibtex_test_build_rakefile.txt +49 -0
  14. data/test/_expected/dtx_test.txt +12 -0
  15. data/test/_expected/dtx_test_sty.txt +2 -0
  16. data/test/_expected/error_test.txt +4 -0
  17. data/test/_expected/error_test_ignore_error.txt +5 -0
  18. data/test/_expected/error_test_overview.txt +16 -0
  19. data/test/_expected/error_test_statistic.txt +3 -0
  20. data/test/_expected/gloss_test_build_rakefile.txt +56 -0
  21. data/test/_expected/includes_test_build_rakefile.txt +55 -0
  22. data/test/_expected/{rail_test_error.txt → rail_error_test.txt} +0 -0
  23. data/test/_expected/splitindex_test_build_rakefile.txt +56 -0
  24. data/test/_expected/supertabular_test_statistic.txt +2 -29
  25. data/test/_expected/varioref_test.txt +6 -0
  26. data/test/_expected/varioref_test_ignore_error.txt +11 -0
  27. data/test/_expected/z_complex_test_overview.txt +62 -0
  28. data/test/_expected/z_complex_test_statistic.txt +9 -0
  29. data/test/bibtex/rakefile.rb +6 -0
  30. data/test/dtx/rakefile.rb +31 -0
  31. data/test/error/rakefile.rb +32 -0
  32. data/test/error/testdocument.tex +14 -0
  33. data/test/gloss/rakefile.rb +9 -1
  34. data/test/includes/rakefile.rb +6 -0
  35. data/test/rail/rakefile.rb +1 -5
  36. data/test/rail_error/rakefile.rb +38 -0
  37. data/test/{rail → rail_error}/testrail_error.tex +0 -0
  38. data/test/splitindex/rakefile.rb +8 -1
  39. data/test/supertabular/rakefile.rb +2 -2
  40. data/test/unittest_rake4latex.rb +61 -72
  41. data/test/unittest_rake4latex_testcases.rb +79 -0
  42. data/test/varioref/rakefile.rb +37 -0
  43. data/test/varioref/testdocument.tex +33 -0
  44. data/test/z_complex/rakefile.rb +3 -1
  45. metadata +42 -10
  46. data/lib/rake4latex/latexdependencies.rb +0 -105
  47. data/lib/rake4latex/template.rb +0 -60
@@ -0,0 +1,49 @@
1
+
2
+ =begin
3
+ Rakefile for LaTeX-project testdocument
4
+
5
+ Generated by Rake4LaTeX.build_rakefile, <<today>>
6
+
7
+ =end
8
+ require 'rake4latex'
9
+
10
+ #Needed for some actions without a previous TeX-call
11
+ task :basefile => 'testdocument.tex'
12
+
13
+ #
14
+ # Define Dependecies
15
+ #
16
+ file 'testdocument.pdf' => 'testdocument.tex'
17
+ file 'testdocument.dvi' => 'testdocument.tex'
18
+
19
+ =begin
20
+ bib-file dependecies
21
+ =end
22
+ file 'testdocument.bbl' => ["./testdocument.bib"]
23
+ file 'testdocument.pdf' => ["./testdocument.bib"]
24
+ file 'testdocument.dvi' => ["./testdocument.bib"]
25
+
26
+ #Force the compilation
27
+ task :touch => 'testdocument.tex'
28
+
29
+ =begin
30
+ Define the default tasks
31
+ =end
32
+ #~ task :default => :touch #Force the first TeX-call
33
+ task :default => 'testdocument.pdf' #build the pdf
34
+ task :default => 'testdocument.dvi' #build the dvi
35
+
36
+ =begin
37
+ Closing Tasks
38
+ =end
39
+ task :default => :statistic #Get an overview on errors and warnings
40
+ task :default => :clean #delete helpfiles
41
+
42
+ =begin
43
+ Make the rakefile self-executable
44
+ =end
45
+ if $0 == __FILE__
46
+ app = Rake.application
47
+ #~ Rake4LaTeX.set_latexrunner_default(:texerrors_allowed, true)
48
+ app[:default].invoke #start default tasks
49
+ end
@@ -0,0 +1,12 @@
1
+
2
+ INFO LaTeXRunner blindtext.dtx: StartLaTeXRunner for blindtext.dtx
3
+ INFO LaTeXRunner blindtext.dtx: Excute pdflatex -interaction=batchmode blindtext.dtx
4
+ INFO LaTeXRunner blindtext.dtx: Rerun necessary (aux-file changed)
5
+ INFO LaTeXRunner blindtext.dtx: Call target blindtext.ind (blindtext.idx changed)
6
+ INFO LaTeXRunner blindtext.dtx: Call target blindtext.gls (blindtext.glo changed)
7
+ INFO LaTeXRunner blindtext.dtx: Excute pdflatex -interaction=batchmode blindtext.dtx
8
+ INFO LaTeXRunner blindtext.dtx: Rerun necessary (aux-file changed)
9
+ INFO LaTeXRunner blindtext.dtx: Call target blindtext.ind (blindtext.idx changed)
10
+ INFO LaTeXRunner blindtext.dtx: Call target blindtext.gls (blindtext.glo changed)
11
+ INFO LaTeXRunner blindtext.dtx: Excute pdflatex -interaction=batchmode blindtext.dtx
12
+ INFO LaTeXRunner blindtext.dtx: TeX-run stopped after 3 runs
@@ -0,0 +1,2 @@
1
+
2
+ Build blindtext.sty
@@ -0,0 +1,4 @@
1
+
2
+ INFO LaTeXRunner testdocument.tex: StartLaTeXRunner for testdocument.tex
3
+ INFO LaTeXRunner testdocument.tex: Excute pdflatex -interaction=batchmode testdocument.tex
4
+ FATAL LaTeXRunner testdocument.tex: There where pdflatex errors. See testdocument.log for details
@@ -0,0 +1,5 @@
1
+
2
+ INFO LaTeXRunner testdocument.tex: StartLaTeXRunner for testdocument.tex
3
+ INFO LaTeXRunner testdocument.tex: Excute pdflatex -interaction=batchmode testdocument.tex
4
+ FATAL LaTeXRunner testdocument.tex: There where pdflatex errors. See testdocument.log for details
5
+ INFO LaTeXRunner testdocument.tex: TeX-run stopped after 1 run
@@ -0,0 +1,16 @@
1
+ Log-overview for testdocument.tex
2
+ Document : 1 error (testdocument.log)
3
+ ---
4
+ testdocument.log:
5
+ :latex_errors:
6
+ - Undefined control sequence. [log#256]
7
+
8
+ ========
9
+ Detailed analyse of testdocument.log
10
+ ========
11
+ ###########
12
+ ##The following list may contain wrong line assignments
13
+ ###########
14
+ ---
15
+ :latex_errors:
16
+ - "Undefined control sequence. (./testdocument.tex) [log#56] - "
@@ -0,0 +1,3 @@
1
+
2
+ Statistic for testdocument.tex:
3
+ Document : 1 error (testdocument.log)
@@ -0,0 +1,56 @@
1
+
2
+ =begin
3
+ Rakefile for LaTeX-project testdocument
4
+
5
+ Generated by Rake4LaTeX.build_rakefile, <<today>>
6
+
7
+ =end
8
+ require 'rake4latex'
9
+
10
+ #Needed for some actions without a previous TeX-call
11
+ task :basefile => 'testdocument.tex'
12
+
13
+ #
14
+ # Define Dependecies
15
+ #
16
+ file 'testdocument.pdf' => 'testdocument.tex'
17
+ file 'testdocument.dvi' => 'testdocument.tex'
18
+
19
+ =begin
20
+ bib-file dependecies for gloss-style
21
+ =end
22
+ # glossar gls
23
+ file 'testdocument.gls.bbl' => ["./test_gloss.bib"]
24
+ file 'testdocument.gls.bbl' => 'testdocument.aux'
25
+ file 'testdocument.pdf' => ["./test_gloss.bib"]
26
+ file 'testdocument.dvi' => ["./test_gloss.bib"]
27
+ # glossar [animals]
28
+ file 'testdocument.[animals].bbl' => ["./test_gloss.bib"]
29
+ file 'testdocument.[animals].bbl' => 'testdocument.aux'
30
+ file 'testdocument.pdf' => ["./test_gloss.bib"]
31
+ file 'testdocument.dvi' => ["./test_gloss.bib"]
32
+
33
+ #Force the compilation
34
+ task :touch => 'testdocument.tex'
35
+
36
+ =begin
37
+ Define the default tasks
38
+ =end
39
+ #~ task :default => :touch #Force the first TeX-call
40
+ task :default => 'testdocument.pdf' #build the pdf
41
+ task :default => 'testdocument.dvi' #build the dvi
42
+
43
+ =begin
44
+ Closing Tasks
45
+ =end
46
+ task :default => :statistic #Get an overview on errors and warnings
47
+ task :default => :clean #delete helpfiles
48
+
49
+ =begin
50
+ Make the rakefile self-executable
51
+ =end
52
+ if $0 == __FILE__
53
+ app = Rake.application
54
+ #~ Rake4LaTeX.set_latexrunner_default(:texerrors_allowed, true)
55
+ app[:default].invoke #start default tasks
56
+ end
@@ -0,0 +1,55 @@
1
+
2
+ =begin
3
+ Rakefile for LaTeX-project testdocument
4
+
5
+ Generated by Rake4LaTeX.build_rakefile, <<today>>
6
+
7
+ =end
8
+ require 'rake4latex'
9
+
10
+ #Needed for some actions without a previous TeX-call
11
+ task :basefile => 'testdocument.tex'
12
+
13
+ #
14
+ # Define Dependecies
15
+ #
16
+ file 'testdocument.pdf' => 'testdocument.tex'
17
+ file 'testdocument.dvi' => 'testdocument.tex'
18
+ # ---
19
+ # - testdocument.tex
20
+ # - - testincludes/testinclude1.tex
21
+ # - - testincludes/testinclude2.tex
22
+ # - - testincludes/testinclude1.tex
23
+ # - - testincludes/testinclude2.tex
24
+
25
+ dependecies = [
26
+ "testincludes/testinclude1.tex",
27
+ "testincludes/testinclude2.tex",
28
+ ]
29
+ file 'testdocument.pdf' => dependecies
30
+ file 'testdocument.dvi' => dependecies
31
+
32
+ #Force the compilation
33
+ task :touch => 'testdocument.tex'
34
+
35
+ =begin
36
+ Define the default tasks
37
+ =end
38
+ #~ task :default => :touch #Force the first TeX-call
39
+ task :default => 'testdocument.pdf' #build the pdf
40
+ task :default => 'testdocument.dvi' #build the dvi
41
+
42
+ =begin
43
+ Closing Tasks
44
+ =end
45
+ task :default => :statistic #Get an overview on errors and warnings
46
+ task :default => :clean #delete helpfiles
47
+
48
+ =begin
49
+ Make the rakefile self-executable
50
+ =end
51
+ if $0 == __FILE__
52
+ app = Rake.application
53
+ #~ Rake4LaTeX.set_latexrunner_default(:texerrors_allowed, true)
54
+ app[:default].invoke #start default tasks
55
+ end
@@ -0,0 +1,56 @@
1
+
2
+ =begin
3
+ Rakefile for LaTeX-project testdocument
4
+
5
+ Generated by Rake4LaTeX.build_rakefile, <<today>>
6
+
7
+ =end
8
+ require 'rake4latex'
9
+
10
+ #Needed for some actions without a previous TeX-call
11
+ task :basefile => 'testdocument.tex'
12
+
13
+ #
14
+ # Define Dependecies
15
+ #
16
+ file 'testdocument.pdf' => 'testdocument.tex'
17
+
18
+ =begin
19
+ dependecies for splitindex
20
+ =end
21
+ # Index veg [Index of Vegetables]
22
+ file 'testdocument-veg.ind' => 'testdocument-veg.idx'
23
+ file 'testdocument.pdf' => 'testdocument-veg.ind'
24
+ # Index ani [Index of Animals]
25
+ file 'testdocument-ani.ind' => 'testdocument-ani.idx'
26
+ file 'testdocument.pdf' => 'testdocument-ani.ind'
27
+ # Index idx [GeneralIndex]
28
+ file 'testdocument-idx.ind' => 'testdocument-idx.idx'
29
+ file 'testdocument.pdf' => 'testdocument-idx.ind'
30
+ # Index fru [Index of Fruits]
31
+ file 'testdocument-fru.ind' => 'testdocument-fru.idx'
32
+ file 'testdocument.pdf' => 'testdocument-fru.ind'
33
+
34
+ #Force the compilation
35
+ task :touch => 'testdocument.tex'
36
+
37
+ =begin
38
+ Define the default tasks
39
+ =end
40
+ #~ task :default => :touch #Force the first TeX-call
41
+ task :default => 'testdocument.pdf' #build the pdf
42
+
43
+ =begin
44
+ Closing Tasks
45
+ =end
46
+ task :default => :statistic #Get an overview on errors and warnings
47
+ task :default => :clean #delete helpfiles
48
+
49
+ =begin
50
+ Make the rakefile self-executable
51
+ =end
52
+ if $0 == __FILE__
53
+ app = Rake.application
54
+ #~ Rake4LaTeX.set_latexrunner_default(:texerrors_allowed, true)
55
+ app[:default].invoke #start default tasks
56
+ end
@@ -1,30 +1,3 @@
1
1
 
2
- Statistics:
3
- testdocument.tex:
4
- ---
5
- testdocument.log:
6
- :output:
7
- :bytes: "60496"
8
- :kbytes: 59
9
- :name: testdocument.pdf
10
- :pages: "7"
11
- :underfull:
12
- - badness 1648 at lines 13--13
13
- - badness 3209 at lines 13--13
14
- - badness 1845 at lines 13--13
15
- - badness 1648 at lines 14--14
16
- - badness 3209 at lines 14--14
17
- - badness 1845 at lines 14--14
18
- - badness 1648 at lines 15--15
19
- - badness 3209 at lines 15--15
20
- - badness 1845 at lines 15--15
21
- - badness 1648 at lines 16--16
22
- - badness 3209 at lines 16--16
23
- - badness 1845 at lines 16--16
24
- - badness 1648 at lines 17--17
25
- - badness 3209 at lines 17--17
26
- - badness 1845 at lines 17--17
27
- - badness 1648 at lines 18--18
28
- - badness 3209 at lines 18--18
29
- - badness 1845 at lines 18--18
30
-
2
+ Statistic for testdocument.tex:
3
+ Document : 7 pages, 18 underfull boxes (testdocument.log)
@@ -0,0 +1,6 @@
1
+
2
+ INFO LaTeXRunner testdocument.tex: StartLaTeXRunner for testdocument.tex
3
+ INFO LaTeXRunner testdocument.tex: Excute pdflatex -interaction=batchmode testdocument.tex
4
+ INFO LaTeXRunner testdocument.tex: Rerun necessary (aux-file changed)
5
+ INFO LaTeXRunner testdocument.tex: Excute pdflatex -interaction=batchmode testdocument.tex
6
+ FATAL LaTeXRunner testdocument.tex: There where pdflatex errors. See testdocument.log for details
@@ -0,0 +1,11 @@
1
+
2
+ INFO LaTeXRunner: Clean: delete helpfiles ["testdocument.aux", "testdocument.log", "testdocument.out"]
3
+ INFO LaTeXRunner: Clobber: delete helpfiles ["testdocument.aux", "testdocument.log", "testdocument.out", "testdocument.pdf"]
4
+ INFO LaTeXRunner testdocument.tex: StartLaTeXRunner for testdocument.tex
5
+ INFO LaTeXRunner testdocument.tex: Excute pdflatex -interaction=batchmode testdocument.tex
6
+ INFO LaTeXRunner testdocument.tex: Rerun necessary (aux-file changed)
7
+ INFO LaTeXRunner testdocument.tex: Excute pdflatex -interaction=batchmode testdocument.tex
8
+ FATAL LaTeXRunner testdocument.tex: There where pdflatex errors. See testdocument.log for details
9
+ INFO LaTeXRunner testdocument.tex: TeX-run stopped after 2 runs
10
+ Statistic for testdocument.tex:
11
+ Document : 2 pages, 1 error, 1 warning (testdocument.log)
@@ -0,0 +1,62 @@
1
+ Log-overview for testdocument.tex
2
+ Document : 9 pages, 3 warnings (testdocument.log)
3
+ Bibliography: Used testdocument.bib, 3 warnings (testdocument.blg)
4
+ Index : 1 entry (testdocument-ani.ilg)
5
+ Index : 1 entry (testdocument-fru.ilg)
6
+ Index : 1 entry (testdocument-idx.ilg)
7
+ Index : 1 entry (testdocument-veg.ilg)
8
+ Index : 1 entry (testdocument-xxx.ilg)
9
+ ---
10
+ testdocument-ani.ilg:
11
+ :source_information:
12
+ - "Input file: testdocument-ani.idx."
13
+ - "Entries accepted: 1"
14
+ - "Entries rejected: 0"
15
+ testdocument-fru.ilg:
16
+ :source_information:
17
+ - "Input file: testdocument-fru.idx."
18
+ - "Entries accepted: 1"
19
+ - "Entries rejected: 0"
20
+ testdocument-idx.ilg:
21
+ :source_information:
22
+ - "Input file: testdocument-idx.idx."
23
+ - "Entries accepted: 1"
24
+ - "Entries rejected: 0"
25
+ testdocument-veg.ilg:
26
+ :source_information:
27
+ - "Input file: testdocument-veg.idx."
28
+ - "Entries accepted: 1"
29
+ - "Entries rejected: 0"
30
+ testdocument-xxx.ilg:
31
+ :source_information:
32
+ - "Input file: testdocument-xxx.idx."
33
+ - "Entries accepted: 1"
34
+ - "Entries rejected: 0"
35
+ testdocument.blg:
36
+ :source_information:
37
+ - Database file testdocument.bib used
38
+ :warnings:
39
+ - string name "dtk" is undefined
40
+ - Databaseentry irgendwas missing
41
+ - empty journal in dtk00.4:lickert:blindtext
42
+ testdocument.log:
43
+ :latex_warnings:
44
+ - No \author given. [log#264]
45
+ - Citation `irgendwas' on page 4 undefined on input line 46. [log#301]
46
+ - There were undefined references. [log#319]
47
+ :output:
48
+ - Output written on testdocument.pdf (9 pages, 91808 bytes). [log#336]
49
+
50
+ ========
51
+ Detailed analyse of testdocument.log
52
+ ========
53
+ ###########
54
+ ##The following list may contain wrong line assignments
55
+ ###########
56
+ ---
57
+ :latex_warnings:
58
+ - "No \\author given. (./testdocument.tex) [log#62] - "
59
+ - "Citation `irgendwas' on page 4 undefined on input line 46. (./testdocument.tex) [log#86] - "
60
+ - "There were undefined references. (./testdocument.tex) [log#96] - "
61
+ :output:
62
+ - "Output written on testdocument.pdf (9 pages, 91808 bytes). [page0] [log#21] - "
@@ -0,0 +1,9 @@
1
+
2
+ Statistic for testdocument.tex:
3
+ Document : 9 pages, 3 warnings (testdocument.log)
4
+ Bibliography: Used testdocument.bib, 3 warnings (testdocument.blg)
5
+ Index : 1 entry (testdocument-ani.ilg)
6
+ Index : 1 entry (testdocument-fru.ilg)
7
+ Index : 1 entry (testdocument-idx.ilg)
8
+ Index : 1 entry (testdocument-veg.ilg)
9
+ Index : 1 entry (testdocument-xxx.ilg)
@@ -47,6 +47,12 @@ task :touch_bib do
47
47
  FileUtils.touch('testdocument.bib')
48
48
  end
49
49
 
50
+ task :build_rakefile do
51
+ puts Rake4LaTeX.build_rakefile('testdocument.tex', :dvi, :pdf, :bib ).sub(Date.today.to_s, '<<today>>')
52
+ end
53
+ task :test_build_rakefile => [ :build_rakefile ]
54
+
55
+
50
56
  if $0 == __FILE__
51
57
  app = Rake.application
52
58
  #~ Rake4LaTeX.set_latexrunner_default(:maxruns, 1)
@@ -0,0 +1,31 @@
1
+ =begin rdoc
2
+ Test dtx statt tex als Source.
3
+ =end
4
+ Dir.chdir('../../lib'){ require 'rake4latex_dtx'}
5
+
6
+ task :basefile => 'blindtext.dtx'
7
+ task :touch => 'blindtext.dtx'
8
+ CLOBBER.include('blindtext.sty')
9
+
10
+ task :default => :touch
11
+ #~ task :default => :readme
12
+ task :default => 'blindtext.pdf'
13
+ task :default => :clean
14
+ #~ task :default => :clobber
15
+
16
+ #~ task :default => 'blindtext.sty'
17
+
18
+ task :test => [:touch, 'blindtext.pdf']
19
+ task :test_sty => 'blindtext.sty'
20
+
21
+
22
+ if $0 == __FILE__
23
+ #~ Rake4LaTeX.set_latexrunner_default(:maxruns, 1)
24
+ #~ Rake4LaTeX.set_latexrunner_default(:loglevel, Log4r::DEBUG)
25
+ app = Rake.application
26
+ #~ app[:default].invoke
27
+ #~ app[:test].invoke
28
+ #~ app[:test_sty].invoke
29
+ app[:clobber].invoke
30
+ end
31
+ __END__