metanorma-cli 1.3.3 → 1.3.7
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/.github/workflows/dependent_repos.env +3 -0
 - data/.github/workflows/macos.yml +38 -0
 - data/.github/workflows/ubuntu.yml +72 -0
 - data/.github/workflows/windows.yml +40 -0
 - data/.gitignore +21 -0
 - data/.hound.yml +3 -0
 - data/.rspec +2 -0
 - data/.rubocop.yml +515 -0
 - data/docs/installation.adoc +61 -0
 - data/docs/navigation.adoc +7 -0
 - data/docs/usage.adoc +74 -0
 - data/lib/metanorma/cli/command.rb +25 -1
 - data/lib/metanorma/cli/setup.rb +9 -30
 - data/lib/metanorma/cli/version.rb +1 -1
 - data/metanorma-cli.gemspec +24 -19
 - data/templates/base/.github/workflows/docker.yml +74 -0
 - data/templates/base/.github/workflows/macos.yml +50 -0
 - data/templates/base/.github/workflows/ubuntu.yml +55 -0
 - data/templates/base/.github/workflows/windows.yml +42 -0
 - data/templates/base/.gitlab-ci.yml +34 -4
 - data/templates/base/Makefile +111 -59
 - data/templates/base/Makefile.win +136 -36
 - data/templates/base/metanorma.yml +1 -1
 - metadata +49 -83
 - data/05-020r26.rxl +0 -75
 - data/05-020r26.xml.zip +0 -0
 - data/Gemfile.lock +0 -336
 - data/a +0 -3
 - data/a.json +0 -33
 - data/a.rb +0 -13
 - data/a.rxl +0 -45
 - data/b +0 -85
 - data/csd-tofix 2.zip +0 -0
 - data/csd-tofix.zip +0 -0
 - data/exe/metanorma.old +0 -178
 - data/extract/sourcecode/sourcecode-0000.txt +0 -5
 - data/files.zip +0 -0
 - data/relaton/cache/version +0 -1
 - data/rice.rxl +0 -51
 - data/sourcecode/0 +0 -5
 - data/templates/base/.travis.yml +0 -30
 - data/templates/base/appveyor.yml +0 -29
 - data/test.rxl +0 -52
 - data/tmp/my-custom-csd/Gemfile +0 -4
 - data/tmp/my-custom-csd/Makefile +0 -144
 - data/tmp/my-custom-csd/Makefile.win +0 -116
 - data/tmp/my-custom-csd/appveyor.yml +0 -29
 - data/tmp/my-custom-csd/metanorma.yml +0 -4
 - data/tmp/my-document/Gemfile +0 -4
 - data/tmp/my-document/Makefile +0 -144
 - data/tmp/my-document/Makefile.win +0 -116
 - data/tmp/my-document/appveyor.yml +0 -29
 - data/tmp/my-document/metanorma.yml +0 -4
 - data/tmp/my-local-document/Gemfile +0 -4
 - data/tmp/my-local-document/Makefile +0 -144
 - data/tmp/my-local-document/Makefile.win +0 -116
 - data/tmp/my-local-document/appveyor.yml +0 -29
 - data/tmp/my-local-document/metanorma.yml +0 -4
 
| 
         @@ -0,0 +1,61 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            = Installation
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            You can get the `metanorma` command-line executable by installing this Ruby gem.
         
     | 
| 
      
 4 
     | 
    
         
            +
             
     | 
| 
      
 5 
     | 
    
         
            +
            [IMPORTANT]
         
     | 
| 
      
 6 
     | 
    
         
            +
            ====
         
     | 
| 
      
 7 
     | 
    
         
            +
            To install the Metanorma toolchain we recommend to use one of the ways described in
         
     | 
| 
      
 8 
     | 
    
         
            +
            https://www.metanorma.com/author/topics/install/[Metanorma installation] topic.
         
     | 
| 
      
 9 
     | 
    
         
            +
            Installing this gem by hand may not be the easiest way.
         
     | 
| 
      
 10 
     | 
    
         
            +
             
     | 
| 
      
 11 
     | 
    
         
            +
            When following this installation method, to start building documents you may have to take care
         
     | 
| 
      
 12 
     | 
    
         
            +
            of manually installing some required third-party software as well.
         
     | 
| 
      
 13 
     | 
    
         
            +
            Which exactly depends on what documents you’re building, below notes cover some of that.
         
     | 
| 
      
 14 
     | 
    
         
            +
            ====
         
     | 
| 
      
 15 
     | 
    
         
            +
             
     | 
| 
      
 16 
     | 
    
         
            +
             
     | 
| 
      
 17 
     | 
    
         
            +
            == Installing the Metanorma CLI gem
         
     | 
| 
      
 18 
     | 
    
         
            +
             
     | 
| 
      
 19 
     | 
    
         
            +
            [source,console]
         
     | 
| 
      
 20 
     | 
    
         
            +
            ----
         
     | 
| 
      
 21 
     | 
    
         
            +
            gem install metanorma-cli
         
     | 
| 
      
 22 
     | 
    
         
            +
            ----
         
     | 
| 
      
 23 
     | 
    
         
            +
             
     | 
| 
      
 24 
     | 
    
         
            +
            Installing the gem will also install all officially supported Metanorma flavors
         
     | 
| 
      
 25 
     | 
    
         
            +
            (such as ISO, CalConnect, IETF, etc).
         
     | 
| 
      
 26 
     | 
    
         
            +
             
     | 
| 
      
 27 
     | 
    
         
            +
             
     | 
| 
      
 28 
     | 
    
         
            +
            == Dependencies
         
     | 
| 
      
 29 
     | 
    
         
            +
             
     | 
| 
      
 30 
     | 
    
         
            +
            === Java
         
     | 
| 
      
 31 
     | 
    
         
            +
             
     | 
| 
      
 32 
     | 
    
         
            +
            You will have to have a Java runtime installed. (Use `brew cask install java` on macOS.)
         
     | 
| 
      
 33 
     | 
    
         
            +
             
     | 
| 
      
 34 
     | 
    
         
            +
            === Puppeteer
         
     | 
| 
      
 35 
     | 
    
         
            +
             
     | 
| 
      
 36 
     | 
    
         
            +
            *If you are going to generate PDFs from HTML* (which applies to CalConnect Standard Documents),
         
     | 
| 
      
 37 
     | 
    
         
            +
            you will also need to install the https://github.com/GoogleChrome/puppeteer[Puppeteer] Node library.
         
     | 
| 
      
 38 
     | 
    
         
            +
             
     | 
| 
      
 39 
     | 
    
         
            +
            * Ensure you have Node of at least version 7.6.0:
         
     | 
| 
      
 40 
     | 
    
         
            +
            ** https://nodejs.org/en/download/
         
     | 
| 
      
 41 
     | 
    
         
            +
            ** On macOS you should be able to `brew install node`
         
     | 
| 
      
 42 
     | 
    
         
            +
            * Ensure you have NPM: https://docs.npmjs.com/getting-started/installing-node
         
     | 
| 
      
 43 
     | 
    
         
            +
            * Install Puppeteer globally in your system: `npm install -g --save --save-exact puppeteer`
         
     | 
| 
      
 44 
     | 
    
         
            +
             
     | 
| 
      
 45 
     | 
    
         
            +
            === PlantUML
         
     | 
| 
      
 46 
     | 
    
         
            +
             
     | 
| 
      
 47 
     | 
    
         
            +
            *If your documents include link:/author/topics/document-format/diagrams/[PlantUML diagrams]*,
         
     | 
| 
      
 48 
     | 
    
         
            +
            PlantUML will have to be installed.
         
     | 
| 
      
 49 
     | 
    
         
            +
             
     | 
| 
      
 50 
     | 
    
         
            +
            * `brew install plantuml` on MacOS.
         
     | 
| 
      
 51 
     | 
    
         
            +
            * For Linux, link the PlantUML jar file into a command line executable; see
         
     | 
| 
      
 52 
     | 
    
         
            +
            `.travis.yml` for an example.
         
     | 
| 
      
 53 
     | 
    
         
            +
             
     | 
| 
      
 54 
     | 
    
         
            +
            If PlantUML is not installed locally, the source PlantUML is incorporated into
         
     | 
| 
      
 55 
     | 
    
         
            +
            the output document as sourcecode.
         
     | 
| 
      
 56 
     | 
    
         
            +
             
     | 
| 
      
 57 
     | 
    
         
            +
             
     | 
| 
      
 58 
     | 
    
         
            +
            == Installation notes for Windows
         
     | 
| 
      
 59 
     | 
    
         
            +
             
     | 
| 
      
 60 
     | 
    
         
            +
            To be able to compile gem with a native extension you must have `RIDK` installed.
         
     | 
| 
      
 61 
     | 
    
         
            +
            If you are installing metanorma with chocolatey installation script will do this for you
         
     | 
    
        data/docs/usage.adoc
    ADDED
    
    | 
         @@ -0,0 +1,74 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            = Using the Metanorma CLI
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            == Usage sample
         
     | 
| 
      
 4 
     | 
    
         
            +
             
     | 
| 
      
 5 
     | 
    
         
            +
            [source,sh]
         
     | 
| 
      
 6 
     | 
    
         
            +
            ----
         
     | 
| 
      
 7 
     | 
    
         
            +
            $ metanorma --type iso -x html iso-my-standard-document.adoc
         
     | 
| 
      
 8 
     | 
    
         
            +
            ----
         
     | 
| 
      
 9 
     | 
    
         
            +
             
     | 
| 
      
 10 
     | 
    
         
            +
            == Full syntax & options
         
     | 
| 
      
 11 
     | 
    
         
            +
             
     | 
| 
      
 12 
     | 
    
         
            +
            [source,sh]
         
     | 
| 
      
 13 
     | 
    
         
            +
            ----
         
     | 
| 
      
 14 
     | 
    
         
            +
            $ metanorma --type <chosen-type> \
         
     | 
| 
      
 15 
     | 
    
         
            +
              [--format input-format] \
         
     | 
| 
      
 16 
     | 
    
         
            +
              [--extensions EXT1,EXT2...] \
         
     | 
| 
      
 17 
     | 
    
         
            +
              iso-my-standard-document.adoc
         
     | 
| 
      
 18 
     | 
    
         
            +
            ----
         
     | 
| 
      
 19 
     | 
    
         
            +
             
     | 
| 
      
 20 
     | 
    
         
            +
            `type`:: (mandatory, specified via `--type` or `-t`) takes one of the following types:
         
     | 
| 
      
 21 
     | 
    
         
            +
            `rfc2`, `rfc3`, `iso`, `gb`, `csd`, `csand`, `m3d`, `rsd`. Each of these corresponds to a
         
     | 
| 
      
 22 
     | 
    
         
            +
            standards class and a Metanorma gem; the list of standards classes supported by the script
         
     | 
| 
      
 23 
     | 
    
         
            +
            by default will grow (see also `require`).
         
     | 
| 
      
 24 
     | 
    
         
            +
             
     | 
| 
      
 25 
     | 
    
         
            +
            `extension`:: (optional) specifies the output formats to be generated. If not specified,
         
     | 
| 
      
 26 
     | 
    
         
            +
            all possible output formats are generated. The output formats generated are constrained by
         
     | 
| 
      
 27 
     | 
    
         
            +
            what has been defined for each standard type. All standards can generate Metanorma XML (`xml`),
         
     | 
| 
      
 28 
     | 
    
         
            +
            and at least one of HTML (`html`), DOC (`doc`), PDF (`pdf`). Some standards generate alternative
         
     | 
| 
      
 29 
     | 
    
         
            +
            HTML renderings (e.g. `html_alt` for ISO).
         
     | 
| 
      
 30 
     | 
    
         
            +
             
     | 
| 
      
 31 
     | 
    
         
            +
            `wrapper`:: create a separate folder for each instance of HTML output generated; the folder is named
         
     | 
| 
      
 32 
     | 
    
         
            +
            the same as the output file, without the `.html` suffix. Used to make distribution of HTML outputs
         
     | 
| 
      
 33 
     | 
    
         
            +
            more straightforward.
         
     | 
| 
      
 34 
     | 
    
         
            +
             
     | 
| 
      
 35 
     | 
    
         
            +
            `format`:: (optional, defaults to `asciidoc`, specified via `--format` or `-f`) only accepts `asciidoc` for now
         
     | 
| 
      
 36 
     | 
    
         
            +
             
     | 
| 
      
 37 
     | 
    
         
            +
            `require`:: If you wish to use metanorma with a document class which has not been included in the types recognised
         
     | 
| 
      
 38 
     | 
    
         
            +
            by the metanorma script, you will need to name the corresponding Metnorma gem explicitly with the `-r`
         
     | 
| 
      
 39 
     | 
    
         
            +
            option. For example:
         
     | 
| 
      
 40 
     | 
    
         
            +
             
     | 
| 
      
 41 
     | 
    
         
            +
            [source,sh]
         
     | 
| 
      
 42 
     | 
    
         
            +
            ----
         
     | 
| 
      
 43 
     | 
    
         
            +
            $ metanorma -t mpfd mpfd-bpn.adoc
         
     | 
| 
      
 44 
     | 
    
         
            +
             
     | 
| 
      
 45 
     | 
    
         
            +
            [metanorma] Error: mpfd is not a supported standard type.
         
     | 
| 
      
 46 
     | 
    
         
            +
             
     | 
| 
      
 47 
     | 
    
         
            +
            $ metanorma -t mpfd -r metanorma-mpfd mpfd-bpn.adoc
         
     | 
| 
      
 48 
     | 
    
         
            +
            ----
         
     | 
| 
      
 49 
     | 
    
         
            +
             
     | 
| 
      
 50 
     | 
    
         
            +
            == Command-line help
         
     | 
| 
      
 51 
     | 
    
         
            +
             
     | 
| 
      
 52 
     | 
    
         
            +
            [source,sh]
         
     | 
| 
      
 53 
     | 
    
         
            +
            ----
         
     | 
| 
      
 54 
     | 
    
         
            +
            $ metanorma -h
         
     | 
| 
      
 55 
     | 
    
         
            +
            Usage: metanorma [options] <file>
         
     | 
| 
      
 56 
     | 
    
         
            +
              -t, --type TYPE                       Type of standard to generate: rfc2, rfc3, iso, gb, csd, csand, m3d
         
     | 
| 
      
 57 
     | 
    
         
            +
              -x, --extensions EXT1,EXT2,... | all  Type of extension to generate per type:
         
     | 
| 
      
 58 
     | 
    
         
            +
              {
         
     | 
| 
      
 59 
     | 
    
         
            +
                :rfc2=>{:xmlrfc=>"v2.xml"},
         
     | 
| 
      
 60 
     | 
    
         
            +
                :rfc3=>{:xmlrfc=>"v3.xml"},
         
     | 
| 
      
 61 
     | 
    
         
            +
                :iso=>{:html=>"html", :html_alt=>"alt.html", :doc=>"doc"},
         
     | 
| 
      
 62 
     | 
    
         
            +
                :gb=>{:html=>"html", :doc=>"doc"},
         
     | 
| 
      
 63 
     | 
    
         
            +
                :csd=>{:html=>"html", :pdf=>"pdf"},
         
     | 
| 
      
 64 
     | 
    
         
            +
                :csand=>{:html=>"html"},
         
     | 
| 
      
 65 
     | 
    
         
            +
                :m3d=>{:html=>"html", :doc=>"doc"},
         
     | 
| 
      
 66 
     | 
    
         
            +
                :rsd=>{:html=>"html"}
         
     | 
| 
      
 67 
     | 
    
         
            +
              }
         
     | 
| 
      
 68 
     | 
    
         
            +
              In addition, xml (outside of rfc2, rfc3) generates IsoDoc XML. If the argument is "all" or the option is
         
     | 
| 
      
 69 
     | 
    
         
            +
              missing, all available extensions are generated.
         
     | 
| 
      
 70 
     | 
    
         
            +
              -f, --format FORMAT              Format of source file: asciidoc (current default, only format supported)
         
     | 
| 
      
 71 
     | 
    
         
            +
              -r, --require LIBRARY            Require LIBRARY prior to execution
         
     | 
| 
      
 72 
     | 
    
         
            +
              -w, --wrapper                    Create wrapper folder for HTML output
         
     | 
| 
      
 73 
     | 
    
         
            +
              -h, --help                       Show this message
         
     | 
| 
      
 74 
     | 
    
         
            +
            ----
         
     | 
| 
         @@ -49,6 +49,24 @@ module Metanorma 
     | 
|
| 
       49 
49 
     | 
    
         
             
                    end
         
     | 
| 
       50 
50 
     | 
    
         
             
                  end
         
     | 
| 
       51 
51 
     | 
    
         | 
| 
      
 52 
     | 
    
         
            +
                  desc "collection FILENAME", "Render HTML pages from XML/YAML colection"
         
     | 
| 
      
 53 
     | 
    
         
            +
                  option :format, aliases: "-x", type: :string, desc: "Formats to generate"
         
     | 
| 
      
 54 
     | 
    
         
            +
                  option "output-folder", aliases: "-w", required: true, desc: "Directory to save compiled files"
         
     | 
| 
      
 55 
     | 
    
         
            +
                  option :coverpage, aliases: "-c", desc: "Liquid template"
         
     | 
| 
      
 56 
     | 
    
         
            +
             
     | 
| 
      
 57 
     | 
    
         
            +
                  def collection(filename = nil)
         
     | 
| 
      
 58 
     | 
    
         
            +
                    if filename
         
     | 
| 
      
 59 
     | 
    
         
            +
                      opts = options.dup
         
     | 
| 
      
 60 
     | 
    
         
            +
                      opts[:format] &&= opts[:format].split(",").map &:to_sym
         
     | 
| 
      
 61 
     | 
    
         
            +
                      opts[:output_folder] = opts.delete :"output-folder"
         
     | 
| 
      
 62 
     | 
    
         
            +
                      coll = Metanorma::Collection.parse filename
         
     | 
| 
      
 63 
     | 
    
         
            +
                      coll.render opts
         
     | 
| 
      
 64 
     | 
    
         
            +
                    else UI.say("Need to specify a file to process")
         
     | 
| 
      
 65 
     | 
    
         
            +
                    end
         
     | 
| 
      
 66 
     | 
    
         
            +
                  rescue ArgumentError => e
         
     | 
| 
      
 67 
     | 
    
         
            +
                    UI.say e.message
         
     | 
| 
      
 68 
     | 
    
         
            +
                  end
         
     | 
| 
      
 69 
     | 
    
         
            +
             
     | 
| 
       52 
70 
     | 
    
         
             
                  desc "version", "Version of the code"
         
     | 
| 
       53 
71 
     | 
    
         
             
                  option :type, aliases: "-t", required: false, desc: "Type of standard to generate"
         
     | 
| 
       54 
72 
     | 
    
         
             
                  option :format, aliases: "-f", default: :asciidoc, desc: "Format of source file: eg. asciidoc"
         
     | 
| 
         @@ -86,8 +104,14 @@ module Metanorma 
     | 
|
| 
       86 
104 
     | 
    
         
             
                          font: font,
         
     | 
| 
       87 
105 
     | 
    
         
             
                          term_agreement: options[:agree_to_terms],
         
     | 
| 
       88 
106 
     | 
    
         
             
                        )
         
     | 
| 
      
 107 
     | 
    
         
            +
                      rescue Fontist::Errors::LicensingError
         
     | 
| 
      
 108 
     | 
    
         
            +
                        UI.error(
         
     | 
| 
      
 109 
     | 
    
         
            +
                          "[error]: License acceptance required to install a necessary font." \
         
     | 
| 
      
 110 
     | 
    
         
            +
                          "Accept required licenses with: `metanorma setup --agree-to-terms`."
         
     | 
| 
      
 111 
     | 
    
         
            +
                        )
         
     | 
| 
      
 112 
     | 
    
         
            +
                        return
         
     | 
| 
       89 
113 
     | 
    
         
             
                      rescue Fontist::Errors::NonSupportedFontError
         
     | 
| 
       90 
     | 
    
         
            -
                        UI.say("[info]:  
     | 
| 
      
 114 
     | 
    
         
            +
                        UI.say("[info]: The font `#{font}` is not yet supported.")
         
     | 
| 
       91 
115 
     | 
    
         
             
                      end
         
     | 
| 
       92 
116 
     | 
    
         
             
                    end
         
     | 
| 
       93 
117 
     | 
    
         
             
                  end
         
     | 
    
        data/lib/metanorma/cli/setup.rb
    CHANGED
    
    | 
         @@ -43,7 +43,7 @@ module Metanorma 
     | 
|
| 
       43 
43 
     | 
    
         
             
                    begin
         
     | 
| 
       44 
44 
     | 
    
         
             
                      Fontist::Font.find(font_name)
         
     | 
| 
       45 
45 
     | 
    
         
             
                    rescue Fontist::Errors::MissingFontError
         
     | 
| 
       46 
     | 
    
         
            -
                       
     | 
| 
      
 46 
     | 
    
         
            +
                      process_font_installation(font_name)
         
     | 
| 
       47 
47 
     | 
    
         
             
                    end
         
     | 
| 
       48 
48 
     | 
    
         
             
                  end
         
     | 
| 
       49 
49 
     | 
    
         | 
| 
         @@ -54,39 +54,18 @@ module Metanorma 
     | 
|
| 
       54 
54 
     | 
    
         
             
                    end
         
     | 
| 
       55 
55 
     | 
    
         
             
                  end
         
     | 
| 
       56 
56 
     | 
    
         | 
| 
       57 
     | 
    
         
            -
                  def  
     | 
| 
       58 
     | 
    
         
            -
                     
     | 
| 
       59 
     | 
    
         
            -
                    formula = Fontist::Formula.find(font_name)
         
     | 
| 
      
 57 
     | 
    
         
            +
                  def process_font_installation(font_name)
         
     | 
| 
      
 58 
     | 
    
         
            +
                    accepted_agreement = term_agreement == true ? "yes" : "no"
         
     | 
| 
       60 
59 
     | 
    
         | 
| 
       61 
     | 
    
         
            -
                    if !term_agreement
         
     | 
| 
       62 
     | 
    
         
            -
             
     | 
| 
       63 
     | 
    
         
            -
                    end
         
     | 
| 
       64 
     | 
    
         
            -
             
     | 
| 
       65 
     | 
    
         
            -
                    if response.downcase === "yes"
         
     | 
| 
       66 
     | 
    
         
            -
                      Fontist::Font.install(font_name, confirmation: response)
         
     | 
| 
       67 
     | 
    
         
            -
                    end
         
     | 
| 
      
 60 
     | 
    
         
            +
                    UI.say(missing_font_message) if !term_agreement
         
     | 
| 
      
 61 
     | 
    
         
            +
                    Fontist::Font.install(font_name, confirmation: accepted_agreement)
         
     | 
| 
       68 
62 
     | 
    
         
             
                  end
         
     | 
| 
       69 
63 
     | 
    
         | 
| 
       70 
     | 
    
         
            -
                  def  
     | 
| 
      
 64 
     | 
    
         
            +
                  def missing_font_message
         
     | 
| 
       71 
65 
     | 
    
         
             
                    <<~MSG
         
     | 
| 
       72 
     | 
    
         
            -
                       
     | 
| 
       73 
     | 
    
         
            -
             
     | 
| 
       74 
     | 
    
         
            -
                       
     | 
| 
       75 
     | 
    
         
            -
                      for PDF generation. Without those fonts, the generated PDF will use
         
     | 
| 
       76 
     | 
    
         
            -
                      generic fonts that may not resemble the desired styling.
         
     | 
| 
       77 
     | 
    
         
            -
             
     | 
| 
       78 
     | 
    
         
            -
                      Metanorma can download these files for you if you accept the font
         
     | 
| 
       79 
     | 
    
         
            -
                      licensing conditions for the font "#{font_name}".
         
     | 
| 
       80 
     | 
    
         
            -
             
     | 
| 
       81 
     | 
    
         
            -
                      FONT LICENSE BEGIN ("#{font_name}")
         
     | 
| 
       82 
     | 
    
         
            -
                      -----------------------------------------------------------------------
         
     | 
| 
       83 
     | 
    
         
            -
                      #{license}
         
     | 
| 
       84 
     | 
    
         
            -
                      -----------------------------------------------------------------------
         
     | 
| 
       85 
     | 
    
         
            -
                      FONT LICENSE END ("#{font_name}")
         
     | 
| 
       86 
     | 
    
         
            -
             
     | 
| 
       87 
     | 
    
         
            -
                      Do you accept all presented font licenses, and want Metanorma to
         
     | 
| 
       88 
     | 
    
         
            -
                      download these fonts for you?
         
     | 
| 
       89 
     | 
    
         
            -
                      => TYPE "Yes" or "No":
         
     | 
| 
      
 66 
     | 
    
         
            +
                      Your system does not have the necessary fonts installed for
         
     | 
| 
      
 67 
     | 
    
         
            +
                      PDF generation. Without these fonts, the generated PDF will use
         
     | 
| 
      
 68 
     | 
    
         
            +
                      generic fonts that may not resemble the desired styling.\n
         
     | 
| 
       90 
69 
     | 
    
         
             
                    MSG
         
     | 
| 
       91 
70 
     | 
    
         
             
                  end
         
     | 
| 
       92 
71 
     | 
    
         
             
                end
         
     | 
    
        data/metanorma-cli.gemspec
    CHANGED
    
    | 
         @@ -14,8 +14,14 @@ Gem::Specification.new do |spec| 
     | 
|
| 
       14 
14 
     | 
    
         
             
              spec.homepage      = "https://www.metanorma.com"
         
     | 
| 
       15 
15 
     | 
    
         
             
              spec.license       = "BSD-2-Clause"
         
     | 
| 
       16 
16 
     | 
    
         | 
| 
      
 17 
     | 
    
         
            +
            =begin
         
     | 
| 
       17 
18 
     | 
    
         
             
              spec.files         = Dir['**/*'].reject { |f| f.match(%r{^(test|spec|features|templates|.git)/|.(gem|gif|png|jpg|jpeg|xml|html|doc|pdf|dtd|ent)$}) }
         
     | 
| 
       18 
19 
     | 
    
         
             
              spec.files        += Dir.glob("templates/base/**", File::FNM_DOTMATCH).reject { |f| File.directory?(f) }
         
     | 
| 
      
 20 
     | 
    
         
            +
            =end
         
     | 
| 
      
 21 
     | 
    
         
            +
             
     | 
| 
      
 22 
     | 
    
         
            +
              spec.files         = `git ls-files -z`.split("\x0").reject do |f|
         
     | 
| 
      
 23 
     | 
    
         
            +
                f.match(%r{^(test|spec|features)/})
         
     | 
| 
      
 24 
     | 
    
         
            +
              end
         
     | 
| 
       19 
25 
     | 
    
         | 
| 
       20 
26 
     | 
    
         
             
              spec.extra_rdoc_files = %w[README.adoc LICENSE]
         
     | 
| 
       21 
27 
     | 
    
         
             
              spec.bindir        = "exe"
         
     | 
| 
         @@ -24,7 +30,6 @@ Gem::Specification.new do |spec| 
     | 
|
| 
       24 
30 
     | 
    
         
             
              spec.required_ruby_version = '>= 2.4.0'
         
     | 
| 
       25 
31 
     | 
    
         | 
| 
       26 
32 
     | 
    
         
             
              spec.add_development_dependency "pry"
         
     | 
| 
       27 
     | 
    
         
            -
              spec.add_development_dependency "sassc", "2.4.0"
         
     | 
| 
       28 
33 
     | 
    
         
             
              spec.add_development_dependency "rake", "~> 12.0"
         
     | 
| 
       29 
34 
     | 
    
         
             
              spec.add_development_dependency "rspec", "~> 3.0"
         
     | 
| 
       30 
35 
     | 
    
         
             
              spec.add_development_dependency "byebug", "~> 10.0"
         
     | 
| 
         @@ -33,26 +38,26 @@ Gem::Specification.new do |spec| 
     | 
|
| 
       33 
38 
     | 
    
         
             
              spec.add_development_dependency "rspec-core", "~> 3.4"
         
     | 
| 
       34 
39 
     | 
    
         | 
| 
       35 
40 
     | 
    
         
             
              spec.add_runtime_dependency "thor", "~> 1.0"
         
     | 
| 
       36 
     | 
    
         
            -
              spec.add_runtime_dependency "metanorma-iso", "~> 1. 
     | 
| 
       37 
     | 
    
         
            -
              spec.add_runtime_dependency 'metanorma-ietf', "~> 2. 
     | 
| 
       38 
     | 
    
         
            -
              spec.add_runtime_dependency 'metanorma-gb', "~> 1. 
     | 
| 
       39 
     | 
    
         
            -
              spec.add_runtime_dependency 'metanorma-iec', "~> 1. 
     | 
| 
       40 
     | 
    
         
            -
              spec.add_runtime_dependency 'metanorma-cc', "~> 1. 
     | 
| 
       41 
     | 
    
         
            -
              spec.add_runtime_dependency 'metanorma-csa', "~> 1. 
     | 
| 
       42 
     | 
    
         
            -
              #spec.add_runtime_dependency 'metanorma-ribose', "~> 1. 
     | 
| 
       43 
     | 
    
         
            -
              spec.add_runtime_dependency 'metanorma-m3aawg', "~> 1. 
     | 
| 
       44 
     | 
    
         
            -
              spec.add_runtime_dependency 'metanorma-generic', "~> 1. 
     | 
| 
       45 
     | 
    
         
            -
              spec.add_runtime_dependency 'metanorma-standoc', "~> 1. 
     | 
| 
       46 
     | 
    
         
            -
              #spec.add_runtime_dependency 'metanorma-mpfa', "~> 0. 
     | 
| 
       47 
     | 
    
         
            -
              spec.add_runtime_dependency 'metanorma-un', "~> 0. 
     | 
| 
       48 
     | 
    
         
            -
              spec.add_runtime_dependency 'metanorma-ogc', "~> 1. 
     | 
| 
       49 
     | 
    
         
            -
              spec.add_runtime_dependency 'metanorma-nist', "~> 1. 
     | 
| 
       50 
     | 
    
         
            -
              spec.add_runtime_dependency 'metanorma-itu', "~> 1. 
     | 
| 
       51 
     | 
    
         
            -
              spec.add_runtime_dependency 'metanorma-iho', "~> 0. 
     | 
| 
       52 
     | 
    
         
            -
              spec.add_runtime_dependency 'isodoc', "~> 1. 
     | 
| 
      
 41 
     | 
    
         
            +
              spec.add_runtime_dependency "metanorma-iso", "~> 1.5.0"
         
     | 
| 
      
 42 
     | 
    
         
            +
              spec.add_runtime_dependency 'metanorma-ietf', "~> 2.2.0"
         
     | 
| 
      
 43 
     | 
    
         
            +
              spec.add_runtime_dependency 'metanorma-gb', "~> 1.5.0"
         
     | 
| 
      
 44 
     | 
    
         
            +
              spec.add_runtime_dependency 'metanorma-iec', "~> 1.2.0"
         
     | 
| 
      
 45 
     | 
    
         
            +
              spec.add_runtime_dependency 'metanorma-cc', "~> 1.5.0"
         
     | 
| 
      
 46 
     | 
    
         
            +
              spec.add_runtime_dependency 'metanorma-csa', "~> 1.6.0"
         
     | 
| 
      
 47 
     | 
    
         
            +
              #spec.add_runtime_dependency 'metanorma-ribose', "~> 1.6.0"
         
     | 
| 
      
 48 
     | 
    
         
            +
              spec.add_runtime_dependency 'metanorma-m3aawg', "~> 1.5.0"
         
     | 
| 
      
 49 
     | 
    
         
            +
              spec.add_runtime_dependency 'metanorma-generic', "~> 1.6.0"
         
     | 
| 
      
 50 
     | 
    
         
            +
              spec.add_runtime_dependency 'metanorma-standoc', "~> 1.5.0"
         
     | 
| 
      
 51 
     | 
    
         
            +
              #spec.add_runtime_dependency 'metanorma-mpfa', "~> 0.5.0"
         
     | 
| 
      
 52 
     | 
    
         
            +
              spec.add_runtime_dependency 'metanorma-un', "~> 0.5.0"
         
     | 
| 
      
 53 
     | 
    
         
            +
              spec.add_runtime_dependency 'metanorma-ogc', "~> 1.2.0"
         
     | 
| 
      
 54 
     | 
    
         
            +
              spec.add_runtime_dependency 'metanorma-nist', "~> 1.2.0"
         
     | 
| 
      
 55 
     | 
    
         
            +
              spec.add_runtime_dependency 'metanorma-itu', "~> 1.2.0"
         
     | 
| 
      
 56 
     | 
    
         
            +
              spec.add_runtime_dependency 'metanorma-iho', "~> 0.2.0"
         
     | 
| 
      
 57 
     | 
    
         
            +
              spec.add_runtime_dependency 'isodoc', "~> 1.2.0"
         
     | 
| 
       53 
58 
     | 
    
         
             
              spec.add_runtime_dependency 'metanorma', "~> 1.1.0"
         
     | 
| 
       54 
59 
     | 
    
         
             
              #spec.add_runtime_dependency 'nokogiri', ">= 1"
         
     | 
| 
       55 
60 
     | 
    
         
             
              spec.add_runtime_dependency "git", "~> 1.5"
         
     | 
| 
       56 
61 
     | 
    
         
             
              spec.add_runtime_dependency "relaton-cli", ">= 0.8.2"
         
     | 
| 
       57 
     | 
    
         
            -
              spec.add_runtime_dependency "fontist", "~> 1.0"
         
     | 
| 
      
 62 
     | 
    
         
            +
              spec.add_runtime_dependency "fontist", "~> 1.3.0"
         
     | 
| 
       58 
63 
     | 
    
         
             
            end
         
     | 
| 
         @@ -0,0 +1,74 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            # Auto-generated by Cimas: Do not edit it manually!
         
     | 
| 
      
 2 
     | 
    
         
            +
            # See https://github.com/metanorma/cimas
         
     | 
| 
      
 3 
     | 
    
         
            +
            name: docker
         
     | 
| 
      
 4 
     | 
    
         
            +
             
     | 
| 
      
 5 
     | 
    
         
            +
            on:
         
     | 
| 
      
 6 
     | 
    
         
            +
              push:
         
     | 
| 
      
 7 
     | 
    
         
            +
                branches: [ master ]
         
     | 
| 
      
 8 
     | 
    
         
            +
              pull_request:
         
     | 
| 
      
 9 
     | 
    
         
            +
                paths-ignore:
         
     | 
| 
      
 10 
     | 
    
         
            +
                  - .github/workflows/test.yml
         
     | 
| 
      
 11 
     | 
    
         
            +
                  - .github/workflows/macos.yml
         
     | 
| 
      
 12 
     | 
    
         
            +
                  - .github/workflows/ubuntu.yml
         
     | 
| 
      
 13 
     | 
    
         
            +
                  - .github/workflows/windows.yml
         
     | 
| 
      
 14 
     | 
    
         
            +
                  - Makefile.win
         
     | 
| 
      
 15 
     | 
    
         
            +
              repository_dispatch:
         
     | 
| 
      
 16 
     | 
    
         
            +
                types: [ metanorma/metanorma-docker ]
         
     | 
| 
      
 17 
     | 
    
         
            +
             
     | 
| 
      
 18 
     | 
    
         
            +
            jobs:
         
     | 
| 
      
 19 
     | 
    
         
            +
              test-docker:
         
     | 
| 
      
 20 
     | 
    
         
            +
                runs-on: ubuntu-latest
         
     | 
| 
      
 21 
     | 
    
         
            +
                container: docker://metanorma/mn
         
     | 
| 
      
 22 
     | 
    
         
            +
                steps:
         
     | 
| 
      
 23 
     | 
    
         
            +
                  - name: Checkout code
         
     | 
| 
      
 24 
     | 
    
         
            +
                    uses: actions/checkout@v2
         
     | 
| 
      
 25 
     | 
    
         
            +
                    with:
         
     | 
| 
      
 26 
     | 
    
         
            +
                      token: ${{ secrets.METANORMA_CI_PAT_TOKEN || github.token }}
         
     | 
| 
      
 27 
     | 
    
         
            +
                      submodules: true
         
     | 
| 
      
 28 
     | 
    
         
            +
                  - name: Setup fonts
         
     | 
| 
      
 29 
     | 
    
         
            +
                    run: |
         
     | 
| 
      
 30 
     | 
    
         
            +
                      metanorma setup --agree-to-terms
         
     | 
| 
      
 31 
     | 
    
         
            +
                  - uses: actions/setup-go@v2-beta
         
     | 
| 
      
 32 
     | 
    
         
            +
                    with:
         
     | 
| 
      
 33 
     | 
    
         
            +
                      go-version: '^1.13.1'
         
     | 
| 
      
 34 
     | 
    
         
            +
                  - name: Install yq
         
     | 
| 
      
 35 
     | 
    
         
            +
                    run: |
         
     | 
| 
      
 36 
     | 
    
         
            +
                      GO111MODULE=on go get github.com/mikefarah/yq/v3
         
     | 
| 
      
 37 
     | 
    
         
            +
                      ln -s $GOPATH/bin/yq /usr/local/bin/yq
         
     | 
| 
      
 38 
     | 
    
         
            +
                  - name: Instal gems from local Gemfile
         
     | 
| 
      
 39 
     | 
    
         
            +
                    run: |
         
     | 
| 
      
 40 
     | 
    
         
            +
                      curl -L --retry 3 https://raw.githubusercontent.com/metanorma/metanorma-build-scripts/master/gemfile-to-bundle-add.sh | bash
         
     | 
| 
      
 41 
     | 
    
         
            +
                  - name: Build document in the Metanorma container
         
     | 
| 
      
 42 
     | 
    
         
            +
                    env:
         
     | 
| 
      
 43 
     | 
    
         
            +
                      LC_ALL: C.UTF-8
         
     | 
| 
      
 44 
     | 
    
         
            +
                      LANG: C.UTF-8
         
     | 
| 
      
 45 
     | 
    
         
            +
                      LANGUAGE: C.UTF-8
         
     | 
| 
      
 46 
     | 
    
         
            +
                    run: |
         
     | 
| 
      
 47 
     | 
    
         
            +
                      make clean all publish
         
     | 
| 
      
 48 
     | 
    
         
            +
                  - uses: actions/upload-artifact@master
         
     | 
| 
      
 49 
     | 
    
         
            +
                    with:
         
     | 
| 
      
 50 
     | 
    
         
            +
                      name: published
         
     | 
| 
      
 51 
     | 
    
         
            +
                      path: published
         
     | 
| 
      
 52 
     | 
    
         
            +
             
     | 
| 
      
 53 
     | 
    
         
            +
              deploy-gh-pages:
         
     | 
| 
      
 54 
     | 
    
         
            +
                if: github.ref == 'refs/heads/master'
         
     | 
| 
      
 55 
     | 
    
         
            +
                runs-on: ubuntu-latest
         
     | 
| 
      
 56 
     | 
    
         
            +
                needs: test-docker
         
     | 
| 
      
 57 
     | 
    
         
            +
                steps:
         
     | 
| 
      
 58 
     | 
    
         
            +
                - uses: actions/checkout@master
         
     | 
| 
      
 59 
     | 
    
         
            +
                - uses: actions/download-artifact@v1
         
     | 
| 
      
 60 
     | 
    
         
            +
                  with:
         
     | 
| 
      
 61 
     | 
    
         
            +
                    name: published
         
     | 
| 
      
 62 
     | 
    
         
            +
                - name: Deploy to GH Pages
         
     | 
| 
      
 63 
     | 
    
         
            +
                  uses: peaceiris/actions-gh-pages@v3
         
     | 
| 
      
 64 
     | 
    
         
            +
                  with:
         
     | 
| 
      
 65 
     | 
    
         
            +
                    deploy_key: ${{ secrets.GH_DEPLOY_KEY }}
         
     | 
| 
      
 66 
     | 
    
         
            +
                    publish_dir: ./published
         
     | 
| 
      
 67 
     | 
    
         
            +
                    force_orphan: true
         
     | 
| 
      
 68 
     | 
    
         
            +
                    user_name: ${{ github.actor }}
         
     | 
| 
      
 69 
     | 
    
         
            +
                    user_email: ${{ format('{0}@users.noreply.github.com', github.actor) }}
         
     | 
| 
      
 70 
     | 
    
         
            +
                    commit_message: "${{ format('Deploy to GitHub Pages: {0}', github.sha) }}"
         
     | 
| 
      
 71 
     | 
    
         
            +
                - uses: kolpav/purge-artifacts-action@v1
         
     | 
| 
      
 72 
     | 
    
         
            +
                  with:
         
     | 
| 
      
 73 
     | 
    
         
            +
                    token: ${{ secrets.GITHUB_TOKEN }}
         
     | 
| 
      
 74 
     | 
    
         
            +
                    expire-in: 0
         
     | 
| 
         @@ -0,0 +1,50 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            # Auto-generated by Cimas: Do not edit it manually!
         
     | 
| 
      
 2 
     | 
    
         
            +
            # See https://github.com/metanorma/cimas
         
     | 
| 
      
 3 
     | 
    
         
            +
            name: macos
         
     | 
| 
      
 4 
     | 
    
         
            +
             
     | 
| 
      
 5 
     | 
    
         
            +
            on:
         
     | 
| 
      
 6 
     | 
    
         
            +
              push:
         
     | 
| 
      
 7 
     | 
    
         
            +
                branches: [ master ]
         
     | 
| 
      
 8 
     | 
    
         
            +
              pull_request:
         
     | 
| 
      
 9 
     | 
    
         
            +
                paths-ignore:
         
     | 
| 
      
 10 
     | 
    
         
            +
                  - .github/workflows/test.yml
         
     | 
| 
      
 11 
     | 
    
         
            +
                  - .github/workflows/docker.yml
         
     | 
| 
      
 12 
     | 
    
         
            +
                  - .github/workflows/ubuntu.yml
         
     | 
| 
      
 13 
     | 
    
         
            +
                  - .github/workflows/windows.yml
         
     | 
| 
      
 14 
     | 
    
         
            +
                  - Makefile.win
         
     | 
| 
      
 15 
     | 
    
         
            +
             
     | 
| 
      
 16 
     | 
    
         
            +
            jobs:
         
     | 
| 
      
 17 
     | 
    
         
            +
              test-macos:
         
     | 
| 
      
 18 
     | 
    
         
            +
                name: Test on macOS
         
     | 
| 
      
 19 
     | 
    
         
            +
                runs-on: macos-latest
         
     | 
| 
      
 20 
     | 
    
         
            +
                steps:
         
     | 
| 
      
 21 
     | 
    
         
            +
                  - name: Checkout code
         
     | 
| 
      
 22 
     | 
    
         
            +
                    uses: actions/checkout@v2
         
     | 
| 
      
 23 
     | 
    
         
            +
                    with:
         
     | 
| 
      
 24 
     | 
    
         
            +
                      token: ${{ secrets.METANORMA_CI_PAT_TOKEN || github.token }}
         
     | 
| 
      
 25 
     | 
    
         
            +
                      submodules: true
         
     | 
| 
      
 26 
     | 
    
         
            +
                  - name: Cache xml2rfc
         
     | 
| 
      
 27 
     | 
    
         
            +
                    id: cache-xml2rfc
         
     | 
| 
      
 28 
     | 
    
         
            +
                    uses: actions/cache@v1
         
     | 
| 
      
 29 
     | 
    
         
            +
                    with:
         
     | 
| 
      
 30 
     | 
    
         
            +
                      path: ~/.cache/xml2rfc
         
     | 
| 
      
 31 
     | 
    
         
            +
                      key: xml2rfc
         
     | 
| 
      
 32 
     | 
    
         
            +
                      restore-key: xml2rfc
         
     | 
| 
      
 33 
     | 
    
         
            +
                  - name: Use Metanorma
         
     | 
| 
      
 34 
     | 
    
         
            +
                    run: |
         
     | 
| 
      
 35 
     | 
    
         
            +
                      brew update
         
     | 
| 
      
 36 
     | 
    
         
            +
                      brew install yq
         
     | 
| 
      
 37 
     | 
    
         
            +
                      brew install https://raw.githubusercontent.com/metanorma/homebrew-metanorma/master/Formula/metanorma.rb
         
     | 
| 
      
 38 
     | 
    
         
            +
                      metanorma version
         
     | 
| 
      
 39 
     | 
    
         
            +
                  - name: Setup Fonts
         
     | 
| 
      
 40 
     | 
    
         
            +
                    run: |
         
     | 
| 
      
 41 
     | 
    
         
            +
                      metanorma setup --agree-to-terms
         
     | 
| 
      
 42 
     | 
    
         
            +
                  - name: Install bundler
         
     | 
| 
      
 43 
     | 
    
         
            +
                    run: |
         
     | 
| 
      
 44 
     | 
    
         
            +
                      sudo gem install bundler
         
     | 
| 
      
 45 
     | 
    
         
            +
                  - name: Metanorma compile
         
     | 
| 
      
 46 
     | 
    
         
            +
                    env:
         
     | 
| 
      
 47 
     | 
    
         
            +
                      JAVA_OPTS: "java.awt.headless=true"
         
     | 
| 
      
 48 
     | 
    
         
            +
                    run: |
         
     | 
| 
      
 49 
     | 
    
         
            +
                      source $(brew --prefix metanorma)/libexec/venv/bin/activate
         
     | 
| 
      
 50 
     | 
    
         
            +
                      make clean all
         
     | 
| 
         @@ -0,0 +1,55 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            # Auto-generated by Cimas: Do not edit it manually!
         
     | 
| 
      
 2 
     | 
    
         
            +
            # See https://github.com/metanorma/cimas
         
     | 
| 
      
 3 
     | 
    
         
            +
            name: ubuntu
         
     | 
| 
      
 4 
     | 
    
         
            +
             
     | 
| 
      
 5 
     | 
    
         
            +
            on:
         
     | 
| 
      
 6 
     | 
    
         
            +
              push:
         
     | 
| 
      
 7 
     | 
    
         
            +
                branches: [ master ]
         
     | 
| 
      
 8 
     | 
    
         
            +
              pull_request:
         
     | 
| 
      
 9 
     | 
    
         
            +
                paths-ignore:
         
     | 
| 
      
 10 
     | 
    
         
            +
                  - .github/workflows/test.yml
         
     | 
| 
      
 11 
     | 
    
         
            +
                  - .github/workflows/macos.yml
         
     | 
| 
      
 12 
     | 
    
         
            +
                  - .github/workflows/docker.yml
         
     | 
| 
      
 13 
     | 
    
         
            +
                  - .github/workflows/windows.yml
         
     | 
| 
      
 14 
     | 
    
         
            +
                  - Makefile.win
         
     | 
| 
      
 15 
     | 
    
         
            +
             
     | 
| 
      
 16 
     | 
    
         
            +
            jobs:
         
     | 
| 
      
 17 
     | 
    
         
            +
              test-linux:
         
     | 
| 
      
 18 
     | 
    
         
            +
                name: Test on Ubuntu
         
     | 
| 
      
 19 
     | 
    
         
            +
                runs-on: ubuntu-latest
         
     | 
| 
      
 20 
     | 
    
         
            +
                steps:
         
     | 
| 
      
 21 
     | 
    
         
            +
                  - name: Checkout code
         
     | 
| 
      
 22 
     | 
    
         
            +
                    uses: actions/checkout@v2
         
     | 
| 
      
 23 
     | 
    
         
            +
                    with:
         
     | 
| 
      
 24 
     | 
    
         
            +
                      token: ${{ secrets.METANORMA_CI_PAT_TOKEN || github.token }}
         
     | 
| 
      
 25 
     | 
    
         
            +
                      submodules: true
         
     | 
| 
      
 26 
     | 
    
         
            +
                  - name: Cache xml2rfc
         
     | 
| 
      
 27 
     | 
    
         
            +
                    id: cache-xml2rfc
         
     | 
| 
      
 28 
     | 
    
         
            +
                    uses: actions/cache@v1
         
     | 
| 
      
 29 
     | 
    
         
            +
                    with:
         
     | 
| 
      
 30 
     | 
    
         
            +
                      path: ~/.cache/xml2rfc
         
     | 
| 
      
 31 
     | 
    
         
            +
                      key: xml2rfc
         
     | 
| 
      
 32 
     | 
    
         
            +
                      restore-key: xml2rfc
         
     | 
| 
      
 33 
     | 
    
         
            +
                  - name: Use Metanorma
         
     | 
| 
      
 34 
     | 
    
         
            +
                    run: |
         
     | 
| 
      
 35 
     | 
    
         
            +
                      sudo apt-get update
         
     | 
| 
      
 36 
     | 
    
         
            +
                      curl -L https://raw.githubusercontent.com/metanorma/metanorma-linux-setup/master/ubuntu.sh | sudo bash
         
     | 
| 
      
 37 
     | 
    
         
            +
                      sudo chown -R $USER:$(id -gn $USER) $HOME/.config
         
     | 
| 
      
 38 
     | 
    
         
            +
                  - name: Setup Fonts
         
     | 
| 
      
 39 
     | 
    
         
            +
                    run: |
         
     | 
| 
      
 40 
     | 
    
         
            +
                      sudo gem install rake metanorma-cli
         
     | 
| 
      
 41 
     | 
    
         
            +
                      sudo metanorma setup --agree-to-terms
         
     | 
| 
      
 42 
     | 
    
         
            +
                  - name: Install yq
         
     | 
| 
      
 43 
     | 
    
         
            +
                    run: |
         
     | 
| 
      
 44 
     | 
    
         
            +
                      sudo snap install yq
         
     | 
| 
      
 45 
     | 
    
         
            +
                      echo "::add-path::/snap/bin"
         
     | 
| 
      
 46 
     | 
    
         
            +
                  - name: Install bundler
         
     | 
| 
      
 47 
     | 
    
         
            +
                    run: |
         
     | 
| 
      
 48 
     | 
    
         
            +
                      sudo gem install bundler
         
     | 
| 
      
 49 
     | 
    
         
            +
                  - name: Metanorma compile
         
     | 
| 
      
 50 
     | 
    
         
            +
                    env:
         
     | 
| 
      
 51 
     | 
    
         
            +
                      JAVA_OPTS: "java.awt.headless=true"
         
     | 
| 
      
 52 
     | 
    
         
            +
                    run: |
         
     | 
| 
      
 53 
     | 
    
         
            +
                      source $HOME/.nvm/nvm.sh
         
     | 
| 
      
 54 
     | 
    
         
            +
                      nvm use mn-node
         
     | 
| 
      
 55 
     | 
    
         
            +
                      make clean all publish
         
     |