muwu 3.0.0.alpha → 3.0.0
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.
- checksums.yaml +4 -4
- data/lib/{muwu_loader.rb → loader.rb} +2 -2
- data/lib/muwu.rb +3 -3
- data/lib/muwu/cli/cli.rb +33 -22
- data/lib/muwu/cli/help/compile +4 -4
- data/lib/muwu/cli/help/publish +19 -6
- data/lib/muwu/cli/help/reset +5 -2
- data/lib/muwu/cli/help/summary +4 -4
- data/lib/muwu/cli/help/sync +23 -15
- data/lib/muwu/cli/help/view +3 -0
- data/lib/muwu/controller/controller.rb +65 -30
- data/lib/muwu/controller/controller_interaction.rb +66 -44
- data/lib/muwu/default/default.rb +12 -9
- data/lib/muwu/destination/destination.rb +61 -57
- data/lib/muwu/destination_builder/destination_builder.rb +31 -33
- data/lib/muwu/manifest_task_builder/text_item_builder.rb +1 -8
- data/lib/muwu/project/project.rb +146 -127
- data/lib/muwu/project_builder/assets/config/css/base/html_elements.scss +19 -15
- data/lib/muwu/project_builder/assets/config/css/base/mixin_text_section_heading.scss +12 -11
- data/lib/muwu/project_builder/assets/config/css/base/section_muwu_contents.scss +5 -5
- data/lib/muwu/project_builder/assets/config/css/base/section_muwu_metadata.scss +2 -4
- data/lib/muwu/project_builder/assets/config/css/base/section_muwu_navigator.scss +3 -4
- data/lib/muwu/project_builder/assets/config/css/base/section_muwu_subcontents.scss +5 -5
- data/lib/muwu/project_builder/assets/config/css/base/section_muwu_text.scss +16 -15
- data/lib/muwu/project_builder/assets/config/css/base/section_muwu_title.scss +9 -6
- data/lib/muwu/project_builder/project_reader.rb +1 -0
- data/lib/muwu/project_builder/project_reset_compiled.rb +31 -0
- data/lib/muwu/project_builder/project_reset_css.rb +30 -30
- data/lib/muwu/project_builder/project_starter.rb +7 -7
- data/lib/muwu/project_builder/project_validator.rb +14 -4
- data/lib/muwu/project_builder/project_writer.rb +12 -11
- data/lib/muwu/project_exception/compiled_folder_not_found.rb +23 -0
- data/lib/muwu/project_exception/lynx_not_available.rb +23 -0
- data/lib/muwu/project_exception_handler/fatal.rb +10 -9
- data/lib/muwu/project_options/project_options.rb +9 -8
- data/lib/muwu/project_options_builder/project_option_validator.rb +12 -12
- data/lib/muwu/project_options_builder/project_option_validator_value.rb +78 -82
- data/lib/muwu/publish/publish.rb +42 -34
- data/lib/muwu/render_concat/render_concat.rb +26 -27
- data/lib/muwu/render_html/render_html.rb +27 -24
- data/lib/muwu/render_html_partial/render_document_html.rb +64 -64
- data/lib/muwu/render_html_partial/render_text_item.rb +16 -16
- data/lib/muwu/sync/sync.rb +40 -36
- data/lib/muwu/var/deflistdiv.rb +0 -0
- data/lib/muwu/viewer/viewer.rb +25 -0
- data/test/what_no_tests.md +1 -3
- metadata +16 -11
| @@ -1,10 +1,10 @@ | |
| 1 1 | 
             
            module Muwu
         | 
| 2 2 | 
             
              class ProjectStarter
         | 
| 3 | 
            -
             | 
| 4 | 
            -
             | 
| 3 | 
            +
             | 
| 4 | 
            +
             | 
| 5 5 | 
             
                include Muwu
         | 
| 6 | 
            -
             | 
| 7 | 
            -
             | 
| 6 | 
            +
             | 
| 7 | 
            +
             | 
| 8 8 | 
             
                def initialize(current_working_directory, metadata)
         | 
| 9 9 | 
             
                  @current_working_directory = File.absolute_path(current_working_directory)
         | 
| 10 10 | 
             
                  @metadata = metadata
         | 
| @@ -21,7 +21,7 @@ module Muwu | |
| 21 21 | 
             
                  project.working_directory = File.absolute_path(File.join(@current_working_directory, @metadata[:slug]))
         | 
| 22 22 | 
             
                  project
         | 
| 23 23 | 
             
                end
         | 
| 24 | 
            -
             | 
| 25 | 
            -
             | 
| 24 | 
            +
             | 
| 25 | 
            +
             | 
| 26 26 | 
             
              end
         | 
| 27 | 
            -
            end
         | 
| 27 | 
            +
            end
         | 
| @@ -14,6 +14,16 @@ module Muwu | |
| 14 14 | 
             
                public
         | 
| 15 15 |  | 
| 16 16 |  | 
| 17 | 
            +
                def validate_dir_compiled
         | 
| 18 | 
            +
                  if @project.path_compiled_does_exist
         | 
| 19 | 
            +
                    return true
         | 
| 20 | 
            +
                  else
         | 
| 21 | 
            +
                    @project.exceptions_add ProjectException::CompiledFolderNotFound.new(@project)
         | 
| 22 | 
            +
                    return false
         | 
| 23 | 
            +
                  end
         | 
| 24 | 
            +
                end
         | 
| 25 | 
            +
             | 
| 26 | 
            +
             | 
| 17 27 | 
             
                def validate_file_css
         | 
| 18 28 | 
             
                  if @project.css_manifest_file_does_exist
         | 
| 19 29 | 
             
                    return true
         | 
| @@ -52,8 +62,8 @@ module Muwu | |
| 52 62 | 
             
                    return false
         | 
| 53 63 | 
             
                  end
         | 
| 54 64 | 
             
                end
         | 
| 55 | 
            -
             | 
| 56 | 
            -
             | 
| 65 | 
            +
             | 
| 66 | 
            +
             | 
| 57 67 | 
             
                def validate_option_remote_publish
         | 
| 58 68 | 
             
                  if @project.options.remote_publish.to_s == ''
         | 
| 59 69 | 
             
                    @project.exceptions_add ProjectException::OptionRemotePublishValueNil.new
         | 
| @@ -106,8 +116,8 @@ module Muwu | |
| 106 116 | 
             
                    @project.exceptions_add ProjectException::MultipleFormatsRequestedWithStdout.new
         | 
| 107 117 | 
             
                  end
         | 
| 108 118 | 
             
                end
         | 
| 109 | 
            -
             | 
| 110 | 
            -
             | 
| 119 | 
            +
             | 
| 120 | 
            +
             | 
| 111 121 | 
             
                def validate_scenario_if_more_than_one_document
         | 
| 112 122 | 
             
                  if @project.outline_has_more_than_one_document && @project.output_destination_requests_stdout
         | 
| 113 123 | 
             
                    @project.exceptions_add ProjectException::MultipleDocumentsOutlinedWithStdout.new
         | 
| @@ -8,8 +8,8 @@ module Muwu | |
| 8 8 |  | 
| 9 9 | 
             
                require 'fileutils'
         | 
| 10 10 | 
             
                require 'yaml'
         | 
| 11 | 
            -
             | 
| 12 | 
            -
             | 
| 11 | 
            +
             | 
| 12 | 
            +
             | 
| 13 13 | 
             
                attr_accessor(
         | 
| 14 14 | 
             
                  :project
         | 
| 15 15 | 
             
                )
         | 
| @@ -40,19 +40,20 @@ module Muwu | |
| 40 40 |  | 
| 41 41 | 
             
                  end
         | 
| 42 42 | 
             
                end
         | 
| 43 | 
            -
             | 
| 44 | 
            -
             | 
| 43 | 
            +
             | 
| 44 | 
            +
             | 
| 45 45 | 
             
                def phase_1_make_project_folder
         | 
| 46 46 | 
             
                  announce_and_execute_dir_mkdir(@project.working_directory)
         | 
| 47 47 | 
             
                end
         | 
| 48 | 
            -
             | 
| 49 | 
            -
             | 
| 48 | 
            +
             | 
| 49 | 
            +
             | 
| 50 50 | 
             
                def phase_2_make_project_subfolders
         | 
| 51 | 
            +
                  announce_and_execute_dir_mkdir(@project.path_compiled)
         | 
| 51 52 | 
             
                  announce_and_execute_dir_mkdir(@project.path_config)
         | 
| 52 | 
            -
                  announce_and_execute_dir_mkdir(@project.path_images)
         | 
| 53 | 
            +
                  # announce_and_execute_dir_mkdir(@project.path_images)    # DEPRECATED
         | 
| 53 54 | 
             
                  announce_and_execute_dir_mkdir(@project.path_text)
         | 
| 54 55 | 
             
                end
         | 
| 55 | 
            -
             | 
| 56 | 
            +
             | 
| 56 57 |  | 
| 57 58 | 
             
                def phase_2_make_folder_css_and_copy_files
         | 
| 58 59 | 
             
                  folder_source_gem = File.absolute_path(File.join(Muwu::GEM_HOME_LIB, 'muwu','project_builder','assets','config','css'))
         | 
| @@ -79,8 +80,8 @@ module Muwu | |
| 79 80 | 
             
                    phase_3_write_file_outline_yml_blank
         | 
| 80 81 | 
             
                  end
         | 
| 81 82 | 
             
                end
         | 
| 82 | 
            -
             | 
| 83 | 
            -
             | 
| 83 | 
            +
             | 
| 84 | 
            +
             | 
| 84 85 | 
             
                def phase_3_write_file_outline_yml_dump
         | 
| 85 86 | 
             
                  announce_and_execute_yaml_dump(@project.outline, @project.outline_filename)
         | 
| 86 87 | 
             
                end
         | 
| @@ -124,4 +125,4 @@ module Muwu | |
| 124 125 |  | 
| 125 126 |  | 
| 126 127 | 
             
              end
         | 
| 127 | 
            -
            end
         | 
| 128 | 
            +
            end
         | 
| @@ -0,0 +1,23 @@ | |
| 1 | 
            +
            module Muwu
         | 
| 2 | 
            +
              module ProjectException
         | 
| 3 | 
            +
                class CompiledFolderNotFound
         | 
| 4 | 
            +
             | 
| 5 | 
            +
             | 
| 6 | 
            +
                  def initialize(project)
         | 
| 7 | 
            +
                    @compiled_folder = project.path_compiled
         | 
| 8 | 
            +
                  end
         | 
| 9 | 
            +
             | 
| 10 | 
            +
             | 
| 11 | 
            +
                  def report
         | 
| 12 | 
            +
                    "The folder for compiled documents `#{@compiled_folder}` could not be found."
         | 
| 13 | 
            +
                  end
         | 
| 14 | 
            +
             | 
| 15 | 
            +
             | 
| 16 | 
            +
                  def type
         | 
| 17 | 
            +
                    :fatal
         | 
| 18 | 
            +
                  end
         | 
| 19 | 
            +
             | 
| 20 | 
            +
             | 
| 21 | 
            +
                end
         | 
| 22 | 
            +
              end
         | 
| 23 | 
            +
            end
         | 
| @@ -6,15 +6,16 @@ module Muwu | |
| 6 6 | 
             
                  def initialize(exceptions)
         | 
| 7 7 | 
             
                    @exceptions = [exceptions].flatten
         | 
| 8 8 | 
             
                    render_exceptions
         | 
| 9 | 
            +
                    exit
         | 
| 9 10 | 
             
                  end
         | 
| 10 | 
            -
             | 
| 11 | 
            -
             | 
| 11 | 
            +
             | 
| 12 | 
            +
             | 
| 12 13 | 
             
                  def render_exception(exception)
         | 
| 13 14 | 
             
                    $stderr.puts "- #{exception.class}"
         | 
| 14 15 | 
             
                    $stderr.puts "  #{exception.report}"
         | 
| 15 16 | 
             
                  end
         | 
| 16 | 
            -
             | 
| 17 | 
            -
             | 
| 17 | 
            +
             | 
| 18 | 
            +
             | 
| 18 19 | 
             
                  def render_exceptions
         | 
| 19 20 | 
             
                    render_header
         | 
| 20 21 | 
             
                    @exceptions.each do |exception|
         | 
| @@ -22,17 +23,17 @@ module Muwu | |
| 22 23 | 
             
                    end
         | 
| 23 24 | 
             
                    render_lf
         | 
| 24 25 | 
             
                  end
         | 
| 25 | 
            -
             | 
| 26 | 
            -
             | 
| 26 | 
            +
             | 
| 27 | 
            +
             | 
| 27 28 | 
             
                  def render_header
         | 
| 28 29 | 
             
                    $stderr.puts "#{self.inspect}"
         | 
| 29 30 | 
             
                  end
         | 
| 30 | 
            -
             | 
| 31 | 
            -
             | 
| 31 | 
            +
             | 
| 32 | 
            +
             | 
| 32 33 | 
             
                  def render_lf
         | 
| 33 34 | 
             
                    $stderr.puts "\n"
         | 
| 34 35 | 
             
                  end
         | 
| 35 | 
            -
             | 
| 36 | 
            +
             | 
| 36 37 |  | 
| 37 38 | 
             
                end
         | 
| 38 39 | 
             
              end
         | 
| @@ -23,17 +23,18 @@ module Muwu | |
| 23 23 | 
             
                  :render_section_numbers,
         | 
| 24 24 | 
             
                  :render_sections_distinctly_depth_max,
         | 
| 25 25 | 
             
                  :render_title_section_metadata,
         | 
| 26 | 
            +
                  :rsync_options,
         | 
| 26 27 | 
             
                  :warning_if_parent_heading_lacks_source
         | 
| 27 28 | 
             
                )
         | 
| 28 | 
            -
             | 
| 29 | 
            -
             | 
| 29 | 
            +
             | 
| 30 | 
            +
             | 
| 30 31 | 
             
                def initialize
         | 
| 31 32 | 
             
                  Default::PROJECT_OPTIONS.each_pair do |key, value|
         | 
| 32 33 | 
             
                    set_option(key, value)
         | 
| 33 34 | 
             
                  end
         | 
| 34 35 | 
             
                end
         | 
| 35 | 
            -
             | 
| 36 | 
            -
             | 
| 36 | 
            +
             | 
| 37 | 
            +
             | 
| 37 38 | 
             
                def inspect
         | 
| 38 39 | 
             
                  ["#{self.to_s}", "{", inspect_instance_variables, "}"].join(' ')
         | 
| 39 40 | 
             
                end
         | 
| @@ -42,15 +43,15 @@ module Muwu | |
| 42 43 | 
             
                def inspect_instance_variables
         | 
| 43 44 | 
             
                  instance_variables.map { |v| "#{v}=#{instance_variable_get(v).inspect}" }.join(", ")
         | 
| 44 45 | 
             
                end
         | 
| 45 | 
            -
             | 
| 46 | 
            -
             | 
| 46 | 
            +
             | 
| 47 | 
            +
             | 
| 47 48 | 
             
                def set_option(key, value)
         | 
| 48 49 | 
             
                  if Default::PROJECT_OPTIONS.has_key?(key)
         | 
| 49 50 | 
             
                    key_ivsym = "@#{key.to_s}"
         | 
| 50 51 | 
             
                    instance_variable_set(key_ivsym, value)
         | 
| 51 52 | 
             
                  end
         | 
| 52 53 | 
             
                end
         | 
| 53 | 
            -
             | 
| 54 | 
            -
             | 
| 54 | 
            +
             | 
| 55 | 
            +
             | 
| 55 56 | 
             
              end
         | 
| 56 57 | 
             
            end
         | 
| @@ -1,26 +1,26 @@ | |
| 1 1 | 
             
            module Muwu
         | 
| 2 2 | 
             
              class ProjectOptionValidator
         | 
| 3 | 
            -
             | 
| 4 | 
            -
             | 
| 3 | 
            +
             | 
| 4 | 
            +
             | 
| 5 5 | 
             
                include Muwu
         | 
| 6 | 
            -
             | 
| 7 | 
            -
             | 
| 6 | 
            +
             | 
| 7 | 
            +
             | 
| 8 8 | 
             
                attr_reader(
         | 
| 9 9 | 
             
                  :key,
         | 
| 10 10 | 
             
                  :value
         | 
| 11 11 | 
             
                )
         | 
| 12 | 
            -
             | 
| 13 | 
            -
             | 
| 12 | 
            +
             | 
| 13 | 
            +
             | 
| 14 14 | 
             
                def initialize(key, value, project)
         | 
| 15 15 | 
             
                  key_validator = ProjectOptionValidatorKey.new(key, value, project)
         | 
| 16 16 | 
             
                  @key = key_validator.validated_key
         | 
| 17 17 | 
             
                  @value = key_validator.validated_value
         | 
| 18 18 | 
             
                end
         | 
| 19 | 
            -
             | 
| 20 | 
            -
             | 
| 21 | 
            -
             | 
| 19 | 
            +
             | 
| 20 | 
            +
             | 
| 21 | 
            +
             | 
| 22 22 | 
             
                protected
         | 
| 23 | 
            -
             | 
| 23 | 
            +
             | 
| 24 24 |  | 
| 25 25 | 
             
                def self.new_if_valid_key(key, value, project)
         | 
| 26 26 | 
             
                  option_validator = new(key, value, project)
         | 
| @@ -32,6 +32,6 @@ module Muwu | |
| 32 32 | 
             
                end
         | 
| 33 33 |  | 
| 34 34 |  | 
| 35 | 
            -
             | 
| 35 | 
            +
             | 
| 36 36 | 
             
              end
         | 
| 37 | 
            -
            end
         | 
| 37 | 
            +
            end
         | 
| @@ -3,32 +3,32 @@ module Muwu | |
| 3 3 |  | 
| 4 4 |  | 
| 5 5 | 
             
                require 'iso-639'
         | 
| 6 | 
            -
             | 
| 7 | 
            -
             | 
| 6 | 
            +
             | 
| 7 | 
            +
             | 
| 8 8 | 
             
                include Muwu
         | 
| 9 9 | 
             
                include Helper
         | 
| 10 10 |  | 
| 11 | 
            -
             | 
| 11 | 
            +
             | 
| 12 12 | 
             
                attr_accessor(
         | 
| 13 13 | 
             
                  :key_validated,
         | 
| 14 14 | 
             
                  :project,
         | 
| 15 15 | 
             
                  :validation_method_name,
         | 
| 16 16 | 
             
                  :value_provided
         | 
| 17 17 | 
             
                )
         | 
| 18 | 
            -
             | 
| 19 | 
            -
             | 
| 18 | 
            +
             | 
| 19 | 
            +
             | 
| 20 20 | 
             
                def initialize(key_validated, value_provided, project)
         | 
| 21 21 | 
             
                  @key_validated = key_validated.to_s.gsub(/\W/,'_')
         | 
| 22 22 | 
             
                  @project = project
         | 
| 23 23 | 
             
                  @validation_method_name = "validate_option_#{@key_validated}"
         | 
| 24 24 | 
             
                  @value_provided = value_provided
         | 
| 25 25 | 
             
                end
         | 
| 26 | 
            -
             | 
| 27 | 
            -
             | 
| 28 | 
            -
             | 
| 26 | 
            +
             | 
| 27 | 
            +
             | 
| 28 | 
            +
             | 
| 29 29 | 
             
                public
         | 
| 30 | 
            -
             | 
| 31 | 
            -
             | 
| 30 | 
            +
             | 
| 31 | 
            +
             | 
| 32 32 | 
             
                def validated_value
         | 
| 33 33 | 
             
                  if private_methods.include?(@validation_method_name.to_sym)
         | 
| 34 34 | 
             
                    return method(@validation_method_name).call
         | 
| @@ -37,20 +37,6 @@ module Muwu | |
| 37 37 | 
             
                    return nil
         | 
| 38 38 | 
             
                  end
         | 
| 39 39 | 
             
                end
         | 
| 40 | 
            -
                
         | 
| 41 | 
            -
                
         | 
| 42 | 
            -
                # def value_as_array(value)
         | 
| 43 | 
            -
                #   result = []
         | 
| 44 | 
            -
                #   if String === value
         | 
| 45 | 
            -
                #     result = value.split(/,\s*/).map{ |v| value_as_string(v) }.sort
         | 
| 46 | 
            -
                #   elsif Array === value
         | 
| 47 | 
            -
                #     result = value.map{ |v| value_as_string(v) }.sort
         | 
| 48 | 
            -
                #   elsif Boolean === @value_provided
         | 
| 49 | 
            -
                #     result << value
         | 
| 50 | 
            -
                #   end
         | 
| 51 | 
            -
                #   result.reject!{ |r| r == '' }
         | 
| 52 | 
            -
                #   result
         | 
| 53 | 
            -
                # end
         | 
| 54 40 |  | 
| 55 41 |  | 
| 56 42 | 
             
                def value_as_array(value)
         | 
| @@ -66,13 +52,13 @@ module Muwu | |
| 66 52 | 
             
                  result.reject!{ |r| r == '' }
         | 
| 67 53 | 
             
                  result
         | 
| 68 54 | 
             
                end
         | 
| 69 | 
            -
             | 
| 70 | 
            -
             | 
| 55 | 
            +
             | 
| 56 | 
            +
             | 
| 71 57 | 
             
                def value_as_integer(value)
         | 
| 72 58 | 
             
                  value.to_i
         | 
| 73 59 | 
             
                end
         | 
| 74 | 
            -
             | 
| 75 | 
            -
             | 
| 60 | 
            +
             | 
| 61 | 
            +
             | 
| 76 62 | 
             
                def value_as_string(value)
         | 
| 77 63 | 
             
                  value.to_s.strip.downcase
         | 
| 78 64 | 
             
                end
         | 
| @@ -81,8 +67,8 @@ module Muwu | |
| 81 67 | 
             
                def value_as_string_preserving_case(value)
         | 
| 82 68 | 
             
                  value.to_s.strip
         | 
| 83 69 | 
             
                end
         | 
| 84 | 
            -
             | 
| 85 | 
            -
             | 
| 70 | 
            +
             | 
| 71 | 
            +
             | 
| 86 72 | 
             
                def value_provided_as_array
         | 
| 87 73 | 
             
                  value_as_array(@value_provided)
         | 
| 88 74 | 
             
                end
         | 
| @@ -91,22 +77,22 @@ module Muwu | |
| 91 77 | 
             
                def value_provided_as_integer
         | 
| 92 78 | 
             
                  value_as_integer(@value_provided)
         | 
| 93 79 | 
             
                end
         | 
| 94 | 
            -
             | 
| 95 | 
            -
             | 
| 80 | 
            +
             | 
| 81 | 
            +
             | 
| 96 82 | 
             
                def value_provided_as_string
         | 
| 97 83 | 
             
                  value_as_string(@value_provided)
         | 
| 98 84 | 
             
                end
         | 
| 99 | 
            -
             | 
| 100 | 
            -
             | 
| 85 | 
            +
             | 
| 86 | 
            +
             | 
| 101 87 | 
             
                def value_provided_as_string_preserving_case
         | 
| 102 88 | 
             
                  value_as_string_preserving_case(@value_provided)
         | 
| 103 89 | 
             
                end
         | 
| 104 | 
            -
             | 
| 90 | 
            +
             | 
| 105 91 |  | 
| 106 92 |  | 
| 107 93 | 
             
                private
         | 
| 108 | 
            -
             | 
| 109 | 
            -
             | 
| 94 | 
            +
             | 
| 95 | 
            +
             | 
| 110 96 | 
             
                def validate_option_boolean
         | 
| 111 97 | 
             
                  case @value_provided
         | 
| 112 98 | 
             
                  when false, true
         | 
| @@ -118,23 +104,28 @@ module Muwu | |
| 118 104 | 
             
                    return nil
         | 
| 119 105 | 
             
                  end
         | 
| 120 106 | 
             
                end
         | 
| 121 | 
            -
             | 
| 122 | 
            -
             | 
| 107 | 
            +
             | 
| 108 | 
            +
             | 
| 109 | 
            +
                def validate_option_contents_section_numbers_receive_link
         | 
| 110 | 
            +
                  return validate_option_boolean
         | 
| 111 | 
            +
                end
         | 
| 112 | 
            +
             | 
| 113 | 
            +
             | 
| 123 114 | 
             
                def validate_option_generate_navigators_automatically
         | 
| 124 115 | 
             
                  return validate_option_boolean
         | 
| 125 116 | 
             
                end
         | 
| 126 | 
            -
             | 
| 127 | 
            -
             | 
| 117 | 
            +
             | 
| 118 | 
            +
             | 
| 128 119 | 
             
                def validate_option_generate_subcontents_automatically
         | 
| 129 120 | 
             
                  return validate_option_boolean
         | 
| 130 121 | 
             
                end
         | 
| 131 | 
            -
             | 
| 132 | 
            -
             | 
| 122 | 
            +
             | 
| 123 | 
            +
             | 
| 133 124 | 
             
                def validate_option_html_head_includes_metadata_tags
         | 
| 134 125 | 
             
                  return validate_option_boolean
         | 
| 135 126 | 
             
                end
         | 
| 136 | 
            -
             | 
| 137 | 
            -
             | 
| 127 | 
            +
             | 
| 128 | 
            +
             | 
| 138 129 | 
             
                def validate_option_html_lang
         | 
| 139 130 | 
             
                  case @value_provided
         | 
| 140 131 | 
             
                  when nil, 'nil'
         | 
| @@ -149,18 +140,18 @@ module Muwu | |
| 149 140 | 
             
                    end
         | 
| 150 141 | 
             
                  end
         | 
| 151 142 | 
             
                end
         | 
| 152 | 
            -
             | 
| 153 | 
            -
             | 
| 143 | 
            +
             | 
| 144 | 
            +
             | 
| 154 145 | 
             
                def validate_option_html_uses_javascript_navigation
         | 
| 155 146 | 
             
                  return validate_option_boolean
         | 
| 156 147 | 
             
                end
         | 
| 157 | 
            -
             | 
| 158 | 
            -
             | 
| 148 | 
            +
             | 
| 149 | 
            +
             | 
| 159 150 | 
             
                def validate_option_markdown_allows_raw_html
         | 
| 160 151 | 
             
                  return validate_option_boolean
         | 
| 161 152 | 
             
                end
         | 
| 162 | 
            -
             | 
| 163 | 
            -
             | 
| 153 | 
            +
             | 
| 154 | 
            +
             | 
| 164 155 | 
             
                def validate_option_markdown_renderer
         | 
| 165 156 | 
             
                  value = value_provided_as_string
         | 
| 166 157 | 
             
                  case value
         | 
| @@ -173,8 +164,8 @@ module Muwu | |
| 173 164 | 
             
                    return nil
         | 
| 174 165 | 
             
                  end
         | 
| 175 166 | 
             
                end
         | 
| 176 | 
            -
             | 
| 177 | 
            -
             | 
| 167 | 
            +
             | 
| 168 | 
            +
             | 
| 178 169 | 
             
                def validate_option_outline_text_pathnames
         | 
| 179 170 | 
             
                  value = value_provided_as_string
         | 
| 180 171 | 
             
                  case value
         | 
| @@ -185,8 +176,8 @@ module Muwu | |
| 185 176 | 
             
                    return nil
         | 
| 186 177 | 
             
                  end
         | 
| 187 178 | 
             
                end
         | 
| 188 | 
            -
             | 
| 189 | 
            -
             | 
| 179 | 
            +
             | 
| 180 | 
            +
             | 
| 190 181 | 
             
                def validate_option_output_destination
         | 
| 191 182 | 
             
                  value = value_provided_as_string
         | 
| 192 183 | 
             
                  case value
         | 
| @@ -210,22 +201,22 @@ module Muwu | |
| 210 201 | 
             
                    return nil
         | 
| 211 202 | 
             
                  end
         | 
| 212 203 | 
             
                end
         | 
| 213 | 
            -
             | 
| 214 | 
            -
             | 
| 204 | 
            +
             | 
| 205 | 
            +
             | 
| 215 206 | 
             
                def validate_option_output_file_css_basename
         | 
| 216 207 | 
             
                  return validate_option_output_file_basename
         | 
| 217 208 | 
             
                end
         | 
| 218 | 
            -
             | 
| 219 | 
            -
             | 
| 209 | 
            +
             | 
| 210 | 
            +
             | 
| 220 211 | 
             
                def validate_option_output_file_html_basename
         | 
| 221 212 | 
             
                  return validate_option_output_file_basename
         | 
| 222 213 | 
             
                end
         | 
| 223 | 
            -
             | 
| 224 | 
            -
             | 
| 214 | 
            +
             | 
| 215 | 
            +
             | 
| 225 216 | 
             
                def validate_option_output_file_js_basename
         | 
| 226 217 | 
             
                  return validate_option_output_file_basename
         | 
| 227 218 | 
             
                end
         | 
| 228 | 
            -
             | 
| 219 | 
            +
             | 
| 229 220 |  | 
| 230 221 | 
             
                def validate_option_output_formats
         | 
| 231 222 | 
             
                  result = []
         | 
| @@ -239,23 +230,23 @@ module Muwu | |
| 239 230 | 
             
                  end
         | 
| 240 231 | 
             
                  return result
         | 
| 241 232 | 
             
                end
         | 
| 242 | 
            -
             | 
| 243 | 
            -
             | 
| 233 | 
            +
             | 
| 234 | 
            +
             | 
| 244 235 | 
             
                def validate_option_remote_publish
         | 
| 245 236 | 
             
                  return value_provided_as_string_preserving_case
         | 
| 246 237 | 
             
                end
         | 
| 247 | 
            -
             | 
| 248 | 
            -
             | 
| 238 | 
            +
             | 
| 239 | 
            +
             | 
| 249 240 | 
             
                def validate_option_remote_sync
         | 
| 250 241 | 
             
                  return value_provided_as_string_preserving_case
         | 
| 251 242 | 
             
                end
         | 
| 252 | 
            -
             | 
| 253 | 
            -
             | 
| 243 | 
            +
             | 
| 244 | 
            +
             | 
| 254 245 | 
             
                def validate_option_render_punctuation_smart
         | 
| 255 246 | 
             
                  return validate_option_boolean
         | 
| 256 247 | 
             
                end
         | 
| 257 | 
            -
             | 
| 258 | 
            -
             | 
| 248 | 
            +
             | 
| 249 | 
            +
             | 
| 259 250 | 
             
                def validate_option_render_section_end_links
         | 
| 260 251 | 
             
                  result = []
         | 
| 261 252 | 
             
                  value_provided_as_array.each do |value|
         | 
| @@ -272,12 +263,12 @@ module Muwu | |
| 272 263 | 
             
                  end
         | 
| 273 264 | 
             
                  return result
         | 
| 274 265 | 
             
                end
         | 
| 275 | 
            -
             | 
| 276 | 
            -
             | 
| 266 | 
            +
             | 
| 267 | 
            +
             | 
| 277 268 | 
             
                def validate_option_render_section_numbers
         | 
| 278 269 | 
             
                  return validate_option_boolean
         | 
| 279 270 | 
             
                end
         | 
| 280 | 
            -
             | 
| 271 | 
            +
             | 
| 281 272 |  | 
| 282 273 | 
             
                def validate_option_render_sections_distinctly_depth_max
         | 
| 283 274 | 
             
                  case @value_provided
         | 
| @@ -290,8 +281,8 @@ module Muwu | |
| 290 281 | 
             
                    return nil
         | 
| 291 282 | 
             
                  end
         | 
| 292 283 | 
             
                end
         | 
| 293 | 
            -
             | 
| 294 | 
            -
             | 
| 284 | 
            +
             | 
| 285 | 
            +
             | 
| 295 286 | 
             
                def validate_option_render_title_section_metadata
         | 
| 296 287 | 
             
                  case @value_provided
         | 
| 297 288 | 
             
                  when nil, '', 'nil'
         | 
| @@ -304,17 +295,22 @@ module Muwu | |
| 304 295 | 
             
                    return [@value_provided.to_s].flatten
         | 
| 305 296 | 
             
                  end
         | 
| 306 297 | 
             
                end
         | 
| 307 | 
            -
             | 
| 308 | 
            -
             | 
| 298 | 
            +
             | 
| 299 | 
            +
             | 
| 309 300 | 
             
                def validate_option_render_punctuation_smart
         | 
| 310 301 | 
             
                  return validate_option_boolean
         | 
| 311 302 | 
             
                end
         | 
| 312 | 
            -
             | 
| 313 | 
            -
             | 
| 303 | 
            +
             | 
| 304 | 
            +
             | 
| 305 | 
            +
                def validate_option_rsync_options
         | 
| 306 | 
            +
                  return value_provided_as_array
         | 
| 307 | 
            +
                end
         | 
| 308 | 
            +
             | 
| 309 | 
            +
             | 
| 314 310 | 
             
                def validate_option_warning_if_parent_heading_lacks_source
         | 
| 315 311 | 
             
                  return validate_option_boolean
         | 
| 316 312 | 
             
                end
         | 
| 317 | 
            -
             | 
| 318 | 
            -
             | 
| 313 | 
            +
             | 
| 314 | 
            +
             | 
| 319 315 | 
             
              end
         | 
| 320 | 
            -
            end
         | 
| 316 | 
            +
            end
         |