review-retrovert 0.9.11 → 0.11.3

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 (148) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +14 -0
  3. data/README.md +1 -1
  4. data/Rakefile +15 -0
  5. data/lib/review/retrovert/cli.rb +6 -0
  6. data/lib/review/retrovert/converter.rb +38 -0
  7. data/lib/review/retrovert/version.rb +1 -1
  8. data/lib/review/retrovert/yamlconfig.rb +38 -1
  9. metadata +49 -146
  10. data/.dockerignore +0 -9
  11. data/.editorconfig +0 -16
  12. data/.gitattributes +0 -5
  13. data/.github/FUNDING.yml +0 -4
  14. data/.github/workflows/docker-build.yml +0 -26
  15. data/.github/workflows/release.yml +0 -26
  16. data/.github/workflows/retrovert.yml +0 -91
  17. data/.gitignore +0 -15
  18. data/.rspec +0 -3
  19. data/.ruby-version +0 -1
  20. data/.vscode/launch.json +0 -48
  21. data/Dockerfile +0 -5
  22. data/Gemfile +0 -8
  23. data/Gemfile.lock +0 -118
  24. data/Makefile +0 -31
  25. data/bin/console +0 -14
  26. data/bin/setup +0 -8
  27. data/docker/review.Dockerfile +0 -10
  28. data/hooks/post_push +0 -8
  29. data/package-lock.json +0 -6
  30. data/package.json +0 -1
  31. data/review-retrovert.code-workspace +0 -8
  32. data/review-retrovert.gemspec +0 -37
  33. data/testdata/mybook/.gitignore +0 -13
  34. data/testdata/mybook/.textlintrc +0 -11
  35. data/testdata/mybook/README.md +0 -43
  36. data/testdata/mybook/Rakefile +0 -24
  37. data/testdata/mybook/catalog.yml +0 -60
  38. data/testdata/mybook/config-noretrovert.yml +0 -404
  39. data/testdata/mybook/config-retrovert.yml +0 -16
  40. data/testdata/mybook/config-starter.yml +0 -264
  41. data/testdata/mybook/config.yml +0 -404
  42. data/testdata/mybook/contents/00-preface.re +0 -129
  43. data/testdata/mybook/contents/01-install.re +0 -305
  44. data/testdata/mybook/contents/02-tutorial.re +0 -1228
  45. data/testdata/mybook/contents/03-syntax.re +0 -4610
  46. data/testdata/mybook/contents/04-customize.re +0 -1064
  47. data/testdata/mybook/contents/05-faq.re +0 -606
  48. data/testdata/mybook/contents/06-bestpractice.re +0 -1343
  49. data/testdata/mybook/contents/91-compare.re +0 -418
  50. data/testdata/mybook/contents/92-filelist.re +0 -125
  51. data/testdata/mybook/contents/93-background.re +0 -267
  52. data/testdata/mybook/contents/99-postface.re +0 -39
  53. data/testdata/mybook/contents/r0-inner.re +0 -2
  54. data/testdata/mybook/contents/r0-root.re +0 -49
  55. data/testdata/mybook/contents/table.csv +0 -4
  56. data/testdata/mybook/contents/test.txt +0 -1
  57. data/testdata/mybook/contents/ut.re +0 -5
  58. data/testdata/mybook/css/normalize.css +0 -349
  59. data/testdata/mybook/css/webstyle.css +0 -692
  60. data/testdata/mybook/data/terms.txt +0 -3
  61. data/testdata/mybook/data/words.txt +0 -15
  62. data/testdata/mybook/images/03-syntax/favicon-16x16.png +0 -0
  63. data/testdata/mybook/images/03-syntax/figure_heretop.png +0 -0
  64. data/testdata/mybook/images/03-syntax/index-page.png +0 -0
  65. data/testdata/mybook/images/03-syntax/order-detail.png +0 -0
  66. data/testdata/mybook/images/03-syntax/tw-icon1.jpg +0 -0
  67. data/testdata/mybook/images/03-syntax/tw-icon2.jpg +0 -0
  68. data/testdata/mybook/images/03-syntax/tw-icon3.jpg +0 -0
  69. data/testdata/mybook/images/03-syntax/tw-icon4.jpg +0 -0
  70. data/testdata/mybook/images/04-customize/caption_pagebreak.png +0 -0
  71. data/testdata/mybook/images/04-customize/chaptitlepage_sample.png +0 -0
  72. data/testdata/mybook/images/04-customize/section_decoration_samples.png +0 -0
  73. data/testdata/mybook/images/05-faq/codeblock_rpadding1.png +0 -0
  74. data/testdata/mybook/images/05-faq/codeblock_rpadding2.png +0 -0
  75. data/testdata/mybook/images/05-faq/dummy-image.png +0 -0
  76. data/testdata/mybook/images/06-bestpractice/figure_heretop.png +0 -0
  77. data/testdata/mybook/images/06-bestpractice/font_beramono.png +0 -0
  78. data/testdata/mybook/images/06-bestpractice/heading_design1.png +0 -0
  79. data/testdata/mybook/images/06-bestpractice/heading_design2.png +0 -0
  80. data/testdata/mybook/images/06-bestpractice/margin_book.png +0 -0
  81. data/testdata/mybook/images/06-bestpractice/multiline-title.png +0 -0
  82. data/testdata/mybook/images/06-bestpractice/preface_numbered.png +0 -0
  83. data/testdata/mybook/images/06-bestpractice/program_border.png +0 -0
  84. data/testdata/mybook/images/06-bestpractice/sechead_design_4.png +0 -0
  85. data/testdata/mybook/images/06-bestpractice/section_title_wlines.png +0 -0
  86. data/testdata/mybook/images/06-bestpractice/titlepage-samples.png +0 -0
  87. data/testdata/mybook/images/93-background/bug913.png +0 -0
  88. data/testdata/mybook/images/93-background/slide2.png +0 -0
  89. data/testdata/mybook/images/avatar-b.png +0 -0
  90. data/testdata/mybook/images/avatar-g.png +0 -0
  91. data/testdata/mybook/images/avatar-r.png +0 -0
  92. data/testdata/mybook/images/caution-icon.png +0 -0
  93. data/testdata/mybook/images/cover_a5.pdf +0 -0
  94. data/testdata/mybook/images/cover_b5.pdf +0 -0
  95. data/testdata/mybook/images/info-icon.png +0 -0
  96. data/testdata/mybook/images/tw-icon.jpg +0 -0
  97. data/testdata/mybook/images/warning-icon.png +0 -0
  98. data/testdata/mybook/layouts/layout.epub.erb +0 -29
  99. data/testdata/mybook/layouts/layout.html5.erb +0 -108
  100. data/testdata/mybook/layouts/layout.tex.erb +0 -432
  101. data/testdata/mybook/layouts/layout.tex.erb.orig +0 -386
  102. data/testdata/mybook/lib/hooks/beforetexcompile.rb +0 -55
  103. data/testdata/mybook/lib/ruby/review-book.rb +0 -64
  104. data/testdata/mybook/lib/ruby/review-builder.rb +0 -1342
  105. data/testdata/mybook/lib/ruby/review-cli.rb +0 -58
  106. data/testdata/mybook/lib/ruby/review-compiler.rb +0 -1176
  107. data/testdata/mybook/lib/ruby/review-epubbuilder.rb +0 -33
  108. data/testdata/mybook/lib/ruby/review-epubmaker.rb +0 -609
  109. data/testdata/mybook/lib/ruby/review-htmlbuilder.rb +0 -949
  110. data/testdata/mybook/lib/ruby/review-latexbuilder.rb +0 -1065
  111. data/testdata/mybook/lib/ruby/review-maker.rb +0 -346
  112. data/testdata/mybook/lib/ruby/review-markdownbuilder.rb +0 -945
  113. data/testdata/mybook/lib/ruby/review-markdownmaker.rb +0 -91
  114. data/testdata/mybook/lib/ruby/review-monkeypatch.rb +0 -93
  115. data/testdata/mybook/lib/ruby/review-pdfmaker.rb +0 -546
  116. data/testdata/mybook/lib/ruby/review-textbuilder.rb +0 -36
  117. data/testdata/mybook/lib/ruby/review-tocparser.rb +0 -285
  118. data/testdata/mybook/lib/ruby/review-webmaker.rb +0 -448
  119. data/testdata/mybook/lib/tasks/mytasks.rake +0 -31
  120. data/testdata/mybook/lib/tasks/review.rake +0 -156
  121. data/testdata/mybook/lib/tasks/review.rake.orig +0 -72
  122. data/testdata/mybook/lib/tasks/starter.rake +0 -470
  123. data/testdata/mybook/locale.yml +0 -6
  124. data/testdata/mybook/review-ext.rb +0 -206
  125. data/testdata/mybook/sty/indexstyle.ist +0 -25
  126. data/testdata/mybook/sty/jumoline.sty +0 -310
  127. data/testdata/mybook/sty/mycolophon.sty +0 -81
  128. data/testdata/mybook/sty/mystyle.sty +0 -8
  129. data/testdata/mybook/sty/mytextsize.sty +0 -94
  130. data/testdata/mybook/sty/mytitlepage.sty +0 -126
  131. data/testdata/mybook/sty/review-base.sty +0 -276
  132. data/testdata/mybook/sty/reviewmacro.sty +0 -60
  133. data/testdata/mybook/sty/starter-codeblock.sty +0 -463
  134. data/testdata/mybook/sty/starter-color.sty +0 -134
  135. data/testdata/mybook/sty/starter-font.sty +0 -112
  136. data/testdata/mybook/sty/starter-heading.sty +0 -561
  137. data/testdata/mybook/sty/starter-misc.sty +0 -894
  138. data/testdata/mybook/sty/starter-note.sty +0 -180
  139. data/testdata/mybook/sty/starter-section.sty +0 -262
  140. data/testdata/mybook/sty/starter-talklist.sty +0 -105
  141. data/testdata/mybook/sty/starter-toc.sty +0 -72
  142. data/testdata/mybook/sty/starter-util.sty +0 -39
  143. data/testdata/mybook/sty/starter.sty +0 -36
  144. data/testdata/mybook/sty/ut.sty +0 -26
  145. data/testdata/mybook/style.css +0 -597
  146. data/testdata/mybook/ut-catalog.yml +0 -61
  147. data/testdata/mybook/ut-config-starter.yml +0 -3
  148. data/testdata/mybook/ut-config.yml +0 -404
@@ -1,91 +0,0 @@
1
- # -*- coding: utf-8 -*-
2
-
3
- require 'pathname'
4
-
5
- require_relative './review-cli'
6
- require_relative './review-maker'
7
- require_relative './review-markdownbuilder'
8
-
9
-
10
- module ReVIEW
11
-
12
-
13
- class MarkdownMaker < Maker
14
-
15
- SCRIPT_NAME = "review-markdownmaker"
16
-
17
- def generate()
18
- @build_dir = make_build_dir()
19
- begin
20
- book = load_book() # also loads 'review-ext.rb'
21
- converter = ReVIEW::Converter.new(book, new_builder())
22
- errors = create_input_files(converter, book)
23
- if errors && !errors.empty?
24
- handle_compile_errors(errors)
25
- end
26
- return @build_dir
27
- ensure
28
- end
29
- end
30
-
31
- protected
32
-
33
- def new_builder()
34
- return ReVIEW::MarkdownBuilder.new
35
- end
36
-
37
- def make_build_dir()
38
- dir = "#{@config['bookname']}-md"
39
- if !File.directory?(dir)
40
- Dir.mkdir(dir)
41
- else
42
- Dir.glob("#{dir}/*").each {|x| FileUtils.rm_rf(x) }
43
- end
44
- return dir
45
- end
46
-
47
- def create_input_files(converter, book)
48
- errors = []
49
- book.each_input_file do |part, chap|
50
- if part
51
- err = output_chaps(converter, part.name) if part.file?
52
- elsif chap
53
- filename = File.basename(chap.path, '.*')
54
- err = output_chaps(converter, filename)
55
- end
56
- errors << err if err
57
- end
58
- return errors
59
- end
60
-
61
- def output_chaps(converter, filename)
62
- contdir = @config['contentdir']
63
- infile = "#{filename}.re"
64
- infile = File.join(contdir, infile) if contdir.present?
65
- outfile = "#{filename}.md"
66
- $stderr.puts "compiling #{outfile}"
67
- begin
68
- converter.convert(infile, File.join(@build_dir, outfile))
69
- nil
70
- ## 文法エラーだけキャッチし、それ以外のエラーはキャッチしないよう変更
71
- ## (LATEXBuilderで起こったエラーのスタックトレースを表示する)
72
- rescue ApplicationError => ex
73
- warn "compile error in #{outfile} (#{ex.class})"
74
- warn colored_errmsg(ex.message)
75
- ex.message
76
- end
77
- end
78
-
79
- def handle_compile_errors(errors)
80
- return if errors.nil? || errors.empty?
81
- if @config['ignore-errors']
82
- $stderr.puts 'compile error, but try to generate PDF file'
83
- else
84
- error 'compile error, No PDF file output.'
85
- end
86
- end
87
-
88
- end
89
-
90
-
91
- end
@@ -1,93 +0,0 @@
1
- # -*- coding: utf-8 -*-
2
-
3
- ##
4
- ## change ReVIEW source code
5
- ##
6
-
7
- require_relative './review-book' ## Book::Baseクラスを修正
8
- require_relative './review-compiler' ## Compilerクラスを修正
9
- require_relative './review-builder' ## Builderクラスを修正
10
- require_relative './review-latexbuilder' ## LaTeX用の機能を修正
11
- require_relative './review-htmlbuilder' ## HTML用の機能を修正
12
- require_relative './review-textbuilder' ## テキスト用の機能を修正
13
- #require_relative './review-pdfmaker' ## PDF用の機能を修正 (for Rake task)
14
- require_relative './review-epubbuilder' ## テキスト用の機能を修正
15
- require_relative './review-webmaker' ## Webページ用の機能を修正
16
- require_relative './review-tocparser' ## Web用目次作成機能を修正
17
-
18
-
19
- module ReVIEW
20
-
21
-
22
- Book::Base.class_eval do
23
-
24
- ## 環境変数 $STARTER_CHAPTER で指定された章だけをコンパイルするよう改造
25
- def each_input_file()
26
- env_starter = ENV['STARTER_CHAPTER']
27
- env_starter = nil unless env_starter.present?
28
- found = false
29
- self.parts.each do |part|
30
- yield part, nil if part.name.present? && !env_starter
31
- part.chapters.each do |chap|
32
- next if env_starter && env_starter != chap.name
33
- found = true
34
- yield nil, chap
35
- end
36
- end
37
- if env_starter && !found
38
- raise "ERROR: chapter file '#{env_starter}.re' not found. ($STARTER_CHAPTER='#{env_starter}')"
39
- end
40
- nil
41
- end
42
-
43
- end
44
-
45
-
46
- class PDFMaker
47
-
48
- ### original: 2.4, 2.5
49
- #def call_hook(hookname)
50
- # return if !@config['pdfmaker'].is_a?(Hash) || @config['pdfmaker'][hookname].nil?
51
- # hook = File.absolute_path(@config['pdfmaker'][hookname], @basehookdir)
52
- # if ENV['REVIEW_SAFE_MODE'].to_i & 1 > 0
53
- # warn 'hook configuration is prohibited in safe mode. ignored.'
54
- # else
55
- # system_or_raise("#{hook} #{Dir.pwd} #{@basehookdir}")
56
- # end
57
- #end
58
- ### /original
59
-
60
- def call_hook(hookname) # review-pdfmaker がエラーにならないために
61
- d = @config['pdfmaker']
62
- return unless d.is_a?(Hash)
63
- return unless d[hookname]
64
- if ENV['REVIEW_SAFE_MODE'].to_i & 1 > 0
65
- warn 'hook configuration is prohibited in safe mode. ignored.'
66
- return
67
- end
68
- ## hookname が文字列の配列なら、それらを全部実行する
69
- basehookdir = @basehookdir
70
- [d[hookname]].flatten.each do |hook|
71
- script = File.absolute_path(hook, basehookdir)
72
- ## 拡張子が .rb なら、rubyコマンドで実行する(ファイルに実行属性がなくてもよい)
73
- if script.end_with?('.rb')
74
- ruby = ruby_fullpath()
75
- ruby = "ruby" unless File.exist?(ruby)
76
- system_or_raise(ruby, script, Dir.pwd, basehookdir)
77
- else
78
- system_or_raise(script, Dir.pwd, basehookdir)
79
- end
80
- end
81
- end
82
-
83
- private
84
- def ruby_fullpath
85
- require 'rbconfig'
86
- c = RbConfig::CONFIG
87
- return File.join(c['bindir'], c['ruby_install_name']) + c['EXEEXT'].to_s
88
- end
89
-
90
- end unless defined?(Maker)
91
-
92
-
93
- end