rake4latex 0.1.0 → 0.1.1

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.
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__