From 8bb1850d7a0da90e4b0437512d6417dbfd044a5a Mon Sep 17 00:00:00 2001 From: Marco Gazerro Date: Thu, 5 Dec 2024 12:06:36 +0100 Subject: [PATCH] Document and use the new `build` command This change documents the new build command and uses it, instead of the custom Go program, to build the documentation. --- README.md | 11 +- go.mod | 10 - go.sum | 8 - main.go | 223 -- site/news.md | 9 + site/partials/nav.html | 2 +- site/scriggo-command.md | 52 +- .../github.com/open2b/scriggo/.goreleaser.yml | 37 - vendor/github.com/open2b/scriggo/AUTHORS | 8 - .../github.com/open2b/scriggo/CONTRIBUTING.md | 58 - vendor/github.com/open2b/scriggo/LICENSE | 26 - vendor/github.com/open2b/scriggo/README.md | 136 - vendor/github.com/open2b/scriggo/SECURITY.md | 14 - vendor/github.com/open2b/scriggo/ast/ast.go | 1572 --------- .../open2b/scriggo/ast/astutil/clone.go | 477 --- .../open2b/scriggo/ast/astutil/dump.go | 161 - .../open2b/scriggo/ast/astutil/walk.go | 322 -- .../open2b/scriggo/builtin/builtin.go | 995 ------ .../open2b/scriggo/builtin/formdata.go | 232 -- .../open2b/scriggo/builtin/regexp.go | 88 - .../github.com/open2b/scriggo/builtin/time.go | 263 -- .../open2b/scriggo/builtin/unsafeconv.go | 32 - vendor/github.com/open2b/scriggo/errors.go | 124 - vendor/github.com/open2b/scriggo/files.go | 132 - .../scriggo/internal/compiler/builder.go | 737 ---- .../internal/compiler/builder_instructions.go | 991 ------ .../scriggo/internal/compiler/checker.go | 373 -- .../internal/compiler/checker_assignment.go | 639 ---- .../internal/compiler/checker_dependencies.go | 489 --- .../internal/compiler/checker_expressions.go | 2763 --------------- .../checker_obsolete_for_range_assignment.go | 123 - .../internal/compiler/checker_package.go | 671 ---- .../internal/compiler/checker_scopes.go | 520 --- .../internal/compiler/checker_statements.go | 1592 --------- .../scriggo/internal/compiler/checker_util.go | 654 ---- .../scriggo/internal/compiler/compilation.go | 153 - .../scriggo/internal/compiler/compiler.go | 347 -- .../scriggo/internal/compiler/constant.go | 1377 -------- .../scriggo/internal/compiler/disassembler.go | 1186 ------- .../scriggo/internal/compiler/emitter.go | 1185 ------- .../internal/compiler/emitter_assignment.go | 490 --- .../internal/compiler/emitter_expressions.go | 1058 ------ .../internal/compiler/emitter_func_store.go | 128 - .../internal/compiler/emitter_statements.go | 1106 ------ .../scriggo/internal/compiler/emitter_util.go | 505 --- .../internal/compiler/emitter_var_store.go | 150 - .../open2b/scriggo/internal/compiler/lexer.go | 2014 ----------- .../internal/compiler/limit_exceeded_error.go | 59 - .../scriggo/internal/compiler/parser.go | 1974 ----------- .../internal/compiler/parser_expressions.go | 902 ----- .../scriggo/internal/compiler/parser_func.go | 233 -- .../internal/compiler/parser_module_path.go | 52 - .../internal/compiler/parser_program.go | 181 - .../internal/compiler/parser_switch.go | 186 - .../internal/compiler/parser_template.go | 334 -- .../open2b/scriggo/internal/compiler/path.go | 141 - .../scriggo/internal/compiler/tokens.go | 303 -- .../scriggo/internal/compiler/typeinfo.go | 289 -- .../scriggo/internal/compiler/types/array.go | 68 - .../scriggo/internal/compiler/types/chan.go | 76 - .../internal/compiler/types/defined.go | 83 - .../scriggo/internal/compiler/types/func.go | 184 - .../scriggo/internal/compiler/types/map.go | 104 - .../scriggo/internal/compiler/types/ptr.go | 66 - .../scriggo/internal/compiler/types/slice.go | 66 - .../scriggo/internal/compiler/types/struct.go | 158 - .../scriggo/internal/compiler/types/types.go | 318 -- .../internal/compiler/types/wrapper.go | 44 - .../open2b/scriggo/internal/runtime/env.go | 111 - .../open2b/scriggo/internal/runtime/errors.go | 442 --- .../scriggo/internal/runtime/escapers.go | 640 ---- .../scriggo/internal/runtime/registers.go | 453 --- .../scriggo/internal/runtime/renderer.go | 1035 ------ .../open2b/scriggo/internal/runtime/run.go | 2008 ----------- .../open2b/scriggo/internal/runtime/vm.go | 1201 ------- .../thirdparties/LICENSE_The_Go_Authors | 27 - .../thirdparties/LICENSE_The_Hugo_Authors | 201 -- .../scriggo/internal/thirdparties/compare.go | 162 - .../thirdparties/constants_float_string.go | 59 - .../internal/thirdparties/time_layout.go | 35 - .../open2b/scriggo/native/native.go | 169 - .../open2b/scriggo/native/packages.go | 154 - vendor/github.com/open2b/scriggo/programs.go | 160 - vendor/github.com/open2b/scriggo/templates.go | 294 -- vendor/github.com/yuin/goldmark/.gitignore | 19 - vendor/github.com/yuin/goldmark/.golangci.yml | 105 - vendor/github.com/yuin/goldmark/LICENSE | 21 - vendor/github.com/yuin/goldmark/Makefile | 13 - vendor/github.com/yuin/goldmark/README.md | 568 --- vendor/github.com/yuin/goldmark/ast/ast.go | 508 --- vendor/github.com/yuin/goldmark/ast/block.go | 508 --- vendor/github.com/yuin/goldmark/ast/inline.go | 549 --- .../goldmark/extension/ast/definition_list.go | 83 - .../yuin/goldmark/extension/ast/footnote.go | 138 - .../goldmark/extension/ast/strikethrough.go | 29 - .../yuin/goldmark/extension/ast/table.go | 158 - .../yuin/goldmark/extension/ast/tasklist.go | 35 - .../github.com/yuin/goldmark/extension/cjk.go | 72 - .../goldmark/extension/definition_list.go | 274 -- .../yuin/goldmark/extension/footnote.go | 691 ---- .../github.com/yuin/goldmark/extension/gfm.go | 18 - .../yuin/goldmark/extension/linkify.go | 322 -- .../yuin/goldmark/extension/package.go | 2 - .../yuin/goldmark/extension/strikethrough.go | 118 - .../yuin/goldmark/extension/table.go | 564 --- .../yuin/goldmark/extension/tasklist.go | 120 - .../yuin/goldmark/extension/typographer.go | 348 -- vendor/github.com/yuin/goldmark/markdown.go | 141 - .../yuin/goldmark/parser/attribute.go | 329 -- .../yuin/goldmark/parser/atx_heading.go | 248 -- .../yuin/goldmark/parser/auto_link.go | 42 - .../yuin/goldmark/parser/blockquote.go | 69 - .../yuin/goldmark/parser/code_block.go | 100 - .../yuin/goldmark/parser/code_span.go | 84 - .../yuin/goldmark/parser/delimiter.go | 238 -- .../yuin/goldmark/parser/emphasis.go | 50 - .../yuin/goldmark/parser/fcode_block.go | 121 - .../yuin/goldmark/parser/html_block.go | 229 -- .../github.com/yuin/goldmark/parser/link.go | 449 --- .../yuin/goldmark/parser/link_ref.go | 152 - .../github.com/yuin/goldmark/parser/list.go | 287 -- .../yuin/goldmark/parser/list_item.go | 90 - .../yuin/goldmark/parser/paragraph.go | 72 - .../github.com/yuin/goldmark/parser/parser.go | 1259 ------- .../yuin/goldmark/parser/raw_html.go | 153 - .../yuin/goldmark/parser/setext_headings.go | 126 - .../yuin/goldmark/parser/thematic_break.go | 75 - .../yuin/goldmark/renderer/html/html.go | 1026 ------ .../yuin/goldmark/renderer/renderer.go | 174 - .../github.com/yuin/goldmark/text/package.go | 2 - .../github.com/yuin/goldmark/text/reader.go | 660 ---- .../github.com/yuin/goldmark/text/segment.go | 209 -- .../yuin/goldmark/util/html5entities.go | 2143 ------------ .../goldmark/util/unicode_case_folding.go | 1535 --------- vendor/github.com/yuin/goldmark/util/util.go | 982 ------ .../github.com/yuin/goldmark/util/util_cjk.go | 469 --- .../yuin/goldmark/util/util_safe.go | 14 - .../yuin/goldmark/util/util_unsafe.go | 24 - vendor/gopkg.in/yaml.v3/LICENSE | 50 - vendor/gopkg.in/yaml.v3/NOTICE | 13 - vendor/gopkg.in/yaml.v3/README.md | 150 - vendor/gopkg.in/yaml.v3/apic.go | 747 ---- vendor/gopkg.in/yaml.v3/decode.go | 1000 ------ vendor/gopkg.in/yaml.v3/emitterc.go | 2020 ----------- vendor/gopkg.in/yaml.v3/encode.go | 577 ---- vendor/gopkg.in/yaml.v3/parserc.go | 1258 ------- vendor/gopkg.in/yaml.v3/readerc.go | 434 --- vendor/gopkg.in/yaml.v3/resolve.go | 326 -- vendor/gopkg.in/yaml.v3/scannerc.go | 3038 ----------------- vendor/gopkg.in/yaml.v3/sorter.go | 134 - vendor/gopkg.in/yaml.v3/writerc.go | 48 - vendor/gopkg.in/yaml.v3/yaml.go | 698 ---- vendor/gopkg.in/yaml.v3/yamlh.go | 807 ----- vendor/gopkg.in/yaml.v3/yamlprivateh.go | 198 -- vendor/modules.txt | 25 - 155 files changed, 66 insertions(+), 65487 deletions(-) delete mode 100644 go.mod delete mode 100644 go.sum delete mode 100644 main.go delete mode 100644 vendor/github.com/open2b/scriggo/.goreleaser.yml delete mode 100644 vendor/github.com/open2b/scriggo/AUTHORS delete mode 100644 vendor/github.com/open2b/scriggo/CONTRIBUTING.md delete mode 100644 vendor/github.com/open2b/scriggo/LICENSE delete mode 100644 vendor/github.com/open2b/scriggo/README.md delete mode 100644 vendor/github.com/open2b/scriggo/SECURITY.md delete mode 100644 vendor/github.com/open2b/scriggo/ast/ast.go delete mode 100644 vendor/github.com/open2b/scriggo/ast/astutil/clone.go delete mode 100644 vendor/github.com/open2b/scriggo/ast/astutil/dump.go delete mode 100644 vendor/github.com/open2b/scriggo/ast/astutil/walk.go delete mode 100644 vendor/github.com/open2b/scriggo/builtin/builtin.go delete mode 100644 vendor/github.com/open2b/scriggo/builtin/formdata.go delete mode 100644 vendor/github.com/open2b/scriggo/builtin/regexp.go delete mode 100644 vendor/github.com/open2b/scriggo/builtin/time.go delete mode 100644 vendor/github.com/open2b/scriggo/builtin/unsafeconv.go delete mode 100644 vendor/github.com/open2b/scriggo/errors.go delete mode 100644 vendor/github.com/open2b/scriggo/files.go delete mode 100644 vendor/github.com/open2b/scriggo/internal/compiler/builder.go delete mode 100644 vendor/github.com/open2b/scriggo/internal/compiler/builder_instructions.go delete mode 100644 vendor/github.com/open2b/scriggo/internal/compiler/checker.go delete mode 100644 vendor/github.com/open2b/scriggo/internal/compiler/checker_assignment.go delete mode 100644 vendor/github.com/open2b/scriggo/internal/compiler/checker_dependencies.go delete mode 100644 vendor/github.com/open2b/scriggo/internal/compiler/checker_expressions.go delete mode 100644 vendor/github.com/open2b/scriggo/internal/compiler/checker_obsolete_for_range_assignment.go delete mode 100644 vendor/github.com/open2b/scriggo/internal/compiler/checker_package.go delete mode 100644 vendor/github.com/open2b/scriggo/internal/compiler/checker_scopes.go delete mode 100644 vendor/github.com/open2b/scriggo/internal/compiler/checker_statements.go delete mode 100644 vendor/github.com/open2b/scriggo/internal/compiler/checker_util.go delete mode 100644 vendor/github.com/open2b/scriggo/internal/compiler/compilation.go delete mode 100644 vendor/github.com/open2b/scriggo/internal/compiler/compiler.go delete mode 100644 vendor/github.com/open2b/scriggo/internal/compiler/constant.go delete mode 100644 vendor/github.com/open2b/scriggo/internal/compiler/disassembler.go delete mode 100644 vendor/github.com/open2b/scriggo/internal/compiler/emitter.go delete mode 100644 vendor/github.com/open2b/scriggo/internal/compiler/emitter_assignment.go delete mode 100644 vendor/github.com/open2b/scriggo/internal/compiler/emitter_expressions.go delete mode 100644 vendor/github.com/open2b/scriggo/internal/compiler/emitter_func_store.go delete mode 100644 vendor/github.com/open2b/scriggo/internal/compiler/emitter_statements.go delete mode 100644 vendor/github.com/open2b/scriggo/internal/compiler/emitter_util.go delete mode 100644 vendor/github.com/open2b/scriggo/internal/compiler/emitter_var_store.go delete mode 100644 vendor/github.com/open2b/scriggo/internal/compiler/lexer.go delete mode 100644 vendor/github.com/open2b/scriggo/internal/compiler/limit_exceeded_error.go delete mode 100644 vendor/github.com/open2b/scriggo/internal/compiler/parser.go delete mode 100644 vendor/github.com/open2b/scriggo/internal/compiler/parser_expressions.go delete mode 100644 vendor/github.com/open2b/scriggo/internal/compiler/parser_func.go delete mode 100644 vendor/github.com/open2b/scriggo/internal/compiler/parser_module_path.go delete mode 100644 vendor/github.com/open2b/scriggo/internal/compiler/parser_program.go delete mode 100644 vendor/github.com/open2b/scriggo/internal/compiler/parser_switch.go delete mode 100644 vendor/github.com/open2b/scriggo/internal/compiler/parser_template.go delete mode 100644 vendor/github.com/open2b/scriggo/internal/compiler/path.go delete mode 100644 vendor/github.com/open2b/scriggo/internal/compiler/tokens.go delete mode 100644 vendor/github.com/open2b/scriggo/internal/compiler/typeinfo.go delete mode 100644 vendor/github.com/open2b/scriggo/internal/compiler/types/array.go delete mode 100644 vendor/github.com/open2b/scriggo/internal/compiler/types/chan.go delete mode 100644 vendor/github.com/open2b/scriggo/internal/compiler/types/defined.go delete mode 100644 vendor/github.com/open2b/scriggo/internal/compiler/types/func.go delete mode 100644 vendor/github.com/open2b/scriggo/internal/compiler/types/map.go delete mode 100644 vendor/github.com/open2b/scriggo/internal/compiler/types/ptr.go delete mode 100644 vendor/github.com/open2b/scriggo/internal/compiler/types/slice.go delete mode 100644 vendor/github.com/open2b/scriggo/internal/compiler/types/struct.go delete mode 100644 vendor/github.com/open2b/scriggo/internal/compiler/types/types.go delete mode 100644 vendor/github.com/open2b/scriggo/internal/compiler/types/wrapper.go delete mode 100644 vendor/github.com/open2b/scriggo/internal/runtime/env.go delete mode 100644 vendor/github.com/open2b/scriggo/internal/runtime/errors.go delete mode 100644 vendor/github.com/open2b/scriggo/internal/runtime/escapers.go delete mode 100644 vendor/github.com/open2b/scriggo/internal/runtime/registers.go delete mode 100644 vendor/github.com/open2b/scriggo/internal/runtime/renderer.go delete mode 100644 vendor/github.com/open2b/scriggo/internal/runtime/run.go delete mode 100644 vendor/github.com/open2b/scriggo/internal/runtime/vm.go delete mode 100644 vendor/github.com/open2b/scriggo/internal/thirdparties/LICENSE_The_Go_Authors delete mode 100644 vendor/github.com/open2b/scriggo/internal/thirdparties/LICENSE_The_Hugo_Authors delete mode 100644 vendor/github.com/open2b/scriggo/internal/thirdparties/compare.go delete mode 100644 vendor/github.com/open2b/scriggo/internal/thirdparties/constants_float_string.go delete mode 100644 vendor/github.com/open2b/scriggo/internal/thirdparties/time_layout.go delete mode 100644 vendor/github.com/open2b/scriggo/native/native.go delete mode 100644 vendor/github.com/open2b/scriggo/native/packages.go delete mode 100644 vendor/github.com/open2b/scriggo/programs.go delete mode 100644 vendor/github.com/open2b/scriggo/templates.go delete mode 100644 vendor/github.com/yuin/goldmark/.gitignore delete mode 100644 vendor/github.com/yuin/goldmark/.golangci.yml delete mode 100644 vendor/github.com/yuin/goldmark/LICENSE delete mode 100644 vendor/github.com/yuin/goldmark/Makefile delete mode 100644 vendor/github.com/yuin/goldmark/README.md delete mode 100644 vendor/github.com/yuin/goldmark/ast/ast.go delete mode 100644 vendor/github.com/yuin/goldmark/ast/block.go delete mode 100644 vendor/github.com/yuin/goldmark/ast/inline.go delete mode 100644 vendor/github.com/yuin/goldmark/extension/ast/definition_list.go delete mode 100644 vendor/github.com/yuin/goldmark/extension/ast/footnote.go delete mode 100644 vendor/github.com/yuin/goldmark/extension/ast/strikethrough.go delete mode 100644 vendor/github.com/yuin/goldmark/extension/ast/table.go delete mode 100644 vendor/github.com/yuin/goldmark/extension/ast/tasklist.go delete mode 100644 vendor/github.com/yuin/goldmark/extension/cjk.go delete mode 100644 vendor/github.com/yuin/goldmark/extension/definition_list.go delete mode 100644 vendor/github.com/yuin/goldmark/extension/footnote.go delete mode 100644 vendor/github.com/yuin/goldmark/extension/gfm.go delete mode 100644 vendor/github.com/yuin/goldmark/extension/linkify.go delete mode 100644 vendor/github.com/yuin/goldmark/extension/package.go delete mode 100644 vendor/github.com/yuin/goldmark/extension/strikethrough.go delete mode 100644 vendor/github.com/yuin/goldmark/extension/table.go delete mode 100644 vendor/github.com/yuin/goldmark/extension/tasklist.go delete mode 100644 vendor/github.com/yuin/goldmark/extension/typographer.go delete mode 100644 vendor/github.com/yuin/goldmark/markdown.go delete mode 100644 vendor/github.com/yuin/goldmark/parser/attribute.go delete mode 100644 vendor/github.com/yuin/goldmark/parser/atx_heading.go delete mode 100644 vendor/github.com/yuin/goldmark/parser/auto_link.go delete mode 100644 vendor/github.com/yuin/goldmark/parser/blockquote.go delete mode 100644 vendor/github.com/yuin/goldmark/parser/code_block.go delete mode 100644 vendor/github.com/yuin/goldmark/parser/code_span.go delete mode 100644 vendor/github.com/yuin/goldmark/parser/delimiter.go delete mode 100644 vendor/github.com/yuin/goldmark/parser/emphasis.go delete mode 100644 vendor/github.com/yuin/goldmark/parser/fcode_block.go delete mode 100644 vendor/github.com/yuin/goldmark/parser/html_block.go delete mode 100644 vendor/github.com/yuin/goldmark/parser/link.go delete mode 100644 vendor/github.com/yuin/goldmark/parser/link_ref.go delete mode 100644 vendor/github.com/yuin/goldmark/parser/list.go delete mode 100644 vendor/github.com/yuin/goldmark/parser/list_item.go delete mode 100644 vendor/github.com/yuin/goldmark/parser/paragraph.go delete mode 100644 vendor/github.com/yuin/goldmark/parser/parser.go delete mode 100644 vendor/github.com/yuin/goldmark/parser/raw_html.go delete mode 100644 vendor/github.com/yuin/goldmark/parser/setext_headings.go delete mode 100644 vendor/github.com/yuin/goldmark/parser/thematic_break.go delete mode 100644 vendor/github.com/yuin/goldmark/renderer/html/html.go delete mode 100644 vendor/github.com/yuin/goldmark/renderer/renderer.go delete mode 100644 vendor/github.com/yuin/goldmark/text/package.go delete mode 100644 vendor/github.com/yuin/goldmark/text/reader.go delete mode 100644 vendor/github.com/yuin/goldmark/text/segment.go delete mode 100644 vendor/github.com/yuin/goldmark/util/html5entities.go delete mode 100644 vendor/github.com/yuin/goldmark/util/unicode_case_folding.go delete mode 100644 vendor/github.com/yuin/goldmark/util/util.go delete mode 100644 vendor/github.com/yuin/goldmark/util/util_cjk.go delete mode 100644 vendor/github.com/yuin/goldmark/util/util_safe.go delete mode 100644 vendor/github.com/yuin/goldmark/util/util_unsafe.go delete mode 100644 vendor/gopkg.in/yaml.v3/LICENSE delete mode 100644 vendor/gopkg.in/yaml.v3/NOTICE delete mode 100644 vendor/gopkg.in/yaml.v3/README.md delete mode 100644 vendor/gopkg.in/yaml.v3/apic.go delete mode 100644 vendor/gopkg.in/yaml.v3/decode.go delete mode 100644 vendor/gopkg.in/yaml.v3/emitterc.go delete mode 100644 vendor/gopkg.in/yaml.v3/encode.go delete mode 100644 vendor/gopkg.in/yaml.v3/parserc.go delete mode 100644 vendor/gopkg.in/yaml.v3/readerc.go delete mode 100644 vendor/gopkg.in/yaml.v3/resolve.go delete mode 100644 vendor/gopkg.in/yaml.v3/scannerc.go delete mode 100644 vendor/gopkg.in/yaml.v3/sorter.go delete mode 100644 vendor/gopkg.in/yaml.v3/writerc.go delete mode 100644 vendor/gopkg.in/yaml.v3/yaml.go delete mode 100644 vendor/gopkg.in/yaml.v3/yamlh.go delete mode 100644 vendor/gopkg.in/yaml.v3/yamlprivateh.go delete mode 100644 vendor/modules.txt diff --git a/README.md b/README.md index 48bc145..4708607 100644 --- a/README.md +++ b/README.md @@ -18,21 +18,24 @@ Contributions to the scriggo.com site are greatly appreciated, as new documentat * if you find an issue on the site, [open an issue](https://github.com/open2b/scriggo/issues/new) on Scriggo. * if you want to write new documentation, as "Switch from X to Scriggo", [discuss with us](https://github.com/open2b/scriggo/discussions) and after it is approved open a PR on this repository. * if you use Scriggo at work, let us know. + ### Running the website The scriggo.com site is a Scriggo template. You can use the [scriggo command](https://scriggo.com/scriggo-command) to run it locally: ``` -cd site +cd src scriggo serve ``` ### Build the website -To build the pages of the website, execute the following command in the root directory of the repository: +To build the pages of the website, execute the following commands: ``` -go run . +cd src +scriggo build -o ../public ``` -It will create a new directory named "public" with the compiled site pages. If the directory already exists, it will be deleted first. \ No newline at end of file +It will create a new directory named "public" in the root directory to contain the compiled site pages. If a directory +named "public" already exists, it will first be deleted. \ No newline at end of file diff --git a/go.mod b/go.mod deleted file mode 100644 index 08ff293..0000000 --- a/go.mod +++ /dev/null @@ -1,10 +0,0 @@ -module open2b/scriggo-site/cmd - -go 1.23 - -require ( - github.com/open2b/scriggo v0.58.0 - github.com/yuin/goldmark v1.7.4 -) - -require gopkg.in/yaml.v3 v3.0.1 // indirect diff --git a/go.sum b/go.sum deleted file mode 100644 index 126c41f..0000000 --- a/go.sum +++ /dev/null @@ -1,8 +0,0 @@ -github.com/open2b/scriggo v0.58.0 h1:4m+9X2Cy7J3WgCV2GTlyE86VFr0Kxpm+9lKXO/IxSEI= -github.com/open2b/scriggo v0.58.0/go.mod h1:mKU5+0FEJmpESOObPnCY8G0OzWDaSa7zwfFvi57mPG8= -github.com/yuin/goldmark v1.7.4 h1:BDXOHExt+A7gwPCJgPIIq7ENvceR7we7rOS9TNoLZeg= -github.com/yuin/goldmark v1.7.4/go.mod h1:uzxRWxtg69N339t3louHJ7+O03ezfj6PlliRlaOzY1E= -gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM= -gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= -gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= -gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= diff --git a/main.go b/main.go deleted file mode 100644 index 1c05481..0000000 --- a/main.go +++ /dev/null @@ -1,223 +0,0 @@ -// Copyright 2021 The Scriggo Authors. All rights reserved. -// Use of this source code is governed by a BSD-style -// license that can be found in the LICENSE file. - -package main - -import ( - "fmt" - "io" - "io/fs" - "log" - "os" - "path/filepath" - "reflect" - "strings" - "time" - - "github.com/open2b/scriggo" - "github.com/open2b/scriggo/builtin" - "github.com/open2b/scriggo/native" - - "github.com/yuin/goldmark" - "github.com/yuin/goldmark/extension" - "github.com/yuin/goldmark/parser" - "github.com/yuin/goldmark/renderer/html" -) - -func main() { - - start := time.Now() - - dstDir, err := os.MkdirTemp(".", "public-temp-*") - if err != nil { - log.Fatal(err) - } - defer func() { - err = os.RemoveAll(dstDir) - if err != nil { - log.Fatal(err) - } - }() - - md := goldmark.New( - goldmark.WithRendererOptions(html.WithUnsafe()), - goldmark.WithParserOptions(parser.WithAutoHeadingID()), - goldmark.WithExtensions(extension.GFM), - goldmark.WithExtensions(extension.Footnote)) - - buildOptions := &scriggo.BuildOptions{ - Globals: make(native.Declarations, len(globals)+1), - MarkdownConverter: func(src []byte, out io.Writer) error { - return md.Convert(src, out) - }, - } - for n, v := range globals { - buildOptions.Globals[n] = v - } - - srcFS := os.DirFS("site") - - err = fs.WalkDir(srcFS, ".", func(name string, d fs.DirEntry, err error) error { - if err != nil { - return err - } - if name[0] == '.' { - return nil - } - if d.IsDir() { - return os.MkdirAll(filepath.Join(dstDir, name), 0700) - } - ext := filepath.Ext(name) - switch ext { - case ".html": - var dir string - if p := strings.Index(name, "/"); p > 0 { - dir = name[0:p] - } - switch dir { - case "imports", "layouts", "partials": - return nil - } - fallthrough - case ".md": - fpath := strings.TrimSuffix(name, ext) - buildOptions.Globals["filepath"] = fpath - template, err := scriggo.BuildTemplate(srcFS, name, buildOptions) - if err != nil { - return err - } - name := filepath.Join(dstDir, fpath) + ".html" - fi, err := os.OpenFile(name, os.O_WRONLY|os.O_CREATE, 0600) - if err != nil { - return err - } - err = template.Run(fi, nil, nil) - if err == nil { - err = fi.Close() - } - default: - src, err := srcFS.Open(name) - if err != nil { - return err - } - name := filepath.Join(dstDir, name) - err = os.MkdirAll(filepath.Dir(name), 0700) - if err != nil { - return err - } - dst, err := os.OpenFile(name, os.O_WRONLY|os.O_CREATE, 0600) - if err != nil { - return err - } - _, err = io.Copy(dst, src) - if err == nil { - _ = src.Close() - err = dst.Close() - } - } - return err - }) - if err != nil { - log.Fatal(err) - } - err = os.RemoveAll("public") - if err != nil { - log.Fatal(err) - } - err = os.Rename(dstDir, "public") - if err != nil { - log.Fatal(err) - } - buildTime := time.Since(start) - _, _ = fmt.Fprintf(os.Stderr, "Public site generated in %s\n", buildTime) - return -} - -var globals = native.Declarations{ - // crypto - "hmacSHA1": builtin.HmacSHA1, - "hmacSHA256": builtin.HmacSHA256, - "sha1": builtin.Sha1, - "sha256": builtin.Sha256, - - // encoding - "base64": builtin.Base64, - "hex": builtin.Hex, - "marshalJSON": builtin.MarshalJSON, - "marshalJSONIndent": builtin.MarshalJSONIndent, - "md5": builtin.Md5, - "unmarshalJSON": builtin.UnmarshalJSON, - - // html - "htmlEscape": builtin.HtmlEscape, - - // math - "abs": builtin.Abs, - "max": builtin.Max, - "min": builtin.Min, - "pow": builtin.Pow, - - // net - "File": reflect.TypeOf((*builtin.File)(nil)).Elem(), - "FormData": reflect.TypeOf(builtin.FormData{}), - "form": (*builtin.FormData)(nil), - "queryEscape": builtin.QueryEscape, - - // regexp - "Regexp": reflect.TypeOf(builtin.Regexp{}), - "regexp": builtin.RegExp, - - // sort - "reverse": builtin.Reverse, - "sort": builtin.Sort, - - // strconv - "formatFloat": builtin.FormatFloat, - "formatInt": builtin.FormatInt, - "parseFloat": builtin.ParseFloat, - "parseInt": builtin.ParseInt, - - // strings - "abbreviate": builtin.Abbreviate, - "capitalize": builtin.Capitalize, - "capitalizeAll": builtin.CapitalizeAll, - "hasPrefix": builtin.HasPrefix, - "hasSuffix": builtin.HasSuffix, - "index": builtin.Index, - "indexAny": builtin.IndexAny, - "join": builtin.Join, - "lastIndex": builtin.LastIndex, - "replace": builtin.Replace, - "replaceAll": builtin.ReplaceAll, - "runeCount": builtin.RuneCount, - "split": builtin.Split, - "splitAfter": builtin.SplitAfter, - "splitAfterN": builtin.SplitAfterN, - "splitN": builtin.SplitN, - "sprint": builtin.Sprint, - "sprintf": builtin.Sprintf, - "toKebab": builtin.ToKebab, - "toLower": builtin.ToLower, - "toUpper": builtin.ToUpper, - "trim": builtin.Trim, - "trimLeft": builtin.TrimLeft, - "trimPrefix": builtin.TrimPrefix, - "trimRight": builtin.TrimRight, - "trimSuffix": builtin.TrimSuffix, - - // time - "Duration": reflect.TypeOf(builtin.Duration(0)), - "Hour": time.Hour, - "Microsecond": time.Microsecond, - "Millisecond": time.Millisecond, - "Minute": time.Minute, - "Nanosecond": time.Nanosecond, - "Second": time.Second, - "Time": reflect.TypeOf(builtin.Time{}), - "date": builtin.Date, - "now": builtin.Now, - "parseDuration": builtin.ParseDuration, - "parseTime": builtin.ParseTime, - "unixTime": builtin.UnixTime, -} diff --git a/site/news.md b/site/news.md index 7089634..d84b106 100644 --- a/site/news.md +++ b/site/news.md @@ -4,6 +4,15 @@ # News +## Released Scriggo v0.58.1 +December 05, 2024 + +This release adds the `build` command to Scriggo, allowing you to build an entire template from the command line. + +### Changes + +* [cmd/scriggo: add the build command to build a template](** TODO **) **TODO ** + ## Released Scriggo v0.58.0 December 04, 2024 diff --git a/site/partials/nav.html b/site/partials/nav.html index 72c5b6a..2f0e6a2 100644 --- a/site/partials/nav.html +++ b/site/partials/nav.html @@ -10,7 +10,7 @@ %%}