summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2021-07-03Makefile: Build skribilo configuration before documentation.Arun Isaac
* Makefile.am ($(SKRIBILO_BUILD_DIR)/ccwl.info, $(SKRIBILO_BUILD_DIR)/ccwl.html): Depend on ccwl/skribilo.go instead of ccwl/skribilo.scm. * Makefile.am (clean-local): Delete ccwl/skribilo.go.
2021-07-03guix.scm: Depend on cwltool and graphviz.Arun Isaac
* guix.scm: Import (gnu packages bioinformatics) and (gnu packages graphviz). (ccwl)[native-inputs]: Add cwltool and graphviz.
2021-07-03guix.scm: Import (gnu packages skribilo).Arun Isaac
This is a follow-up to commit bf485dd43386305177a2ba3ea1a5ee7e164984c6 where this import was missed out. * guix.scm: Import (gnu packages skribilo).
2021-07-03doc: Squeeze double space.Arun Isaac
* doc/ccwl.skb (Tutorial)[Capturing output files]: Squeeze double space.
2021-07-03Makefile: Comment on -local targets.Arun Isaac
* Makefile.am: Comment on use of install-data-local, install-info-local, install-html-local and uninstall-local targets.
2021-07-02.dir-locals.el: Indent syntax-lambda** correctly.Arun Isaac
* .dir-locals.el (scheme-mode): Indent syntax-lambda**.
2021-07-02.dir.locals.el: Remove unused indentation specifiers.Arun Isaac
* .dir-locals.el (scheme-mode): Remove indentation specification for set-input-source, set-output-source and set-step-in.
2021-07-02doc: Add copyright headers.Arun Isaac
* doc/ccwl.skb: Add copyright headers.
2021-07-02build-aux: Do not make backup files.Arun Isaac
* build-aux/build-home-page.el (make-backup-files): Set to nil.
2021-07-02tests: Ensure stdin input has no inputBinding.Arun Isaac
* tests/ccwl.scm: Import (ccwl ccwl) ("stdin input should not have inputBinding"): New test.
2021-07-02tests: Remove unnecessary import.Arun Isaac
* tests/ccwl.scm: Do not import (srfi srfi-71).
2021-07-02Makefile: Track dependencies automatically.Arun Isaac
* build-aux/find-dependencies.scm: New file. * Makefile.am (DOC_IMAGES): Delete variable. (.depends): New target. Include it in the Makefile. ($(SKRIBILO_BUILD_DIR)/ccwl.info, $(SKRIBILO_BUILD_DIR)/ccwl.html): Depend on DOC_OTHER_DEPENDENCIES. (clean-local): Delete .depends. * .gitignore: Add .depends.
2021-06-29doc: Document passing input into stdin.Arun Isaac
* doc/ccwl.skb (Tutorial)[Passing input into the standard input stream of a command]: New section. * doc/pass-stdin.scm, doc/pass-stdin.out: New files.
2021-06-29ccwl: Return #f if alist is empty after filtering.Arun Isaac
This way, filter-alist composes better with other invocations of filter-alist. * ccwl/ccwl.scm (filter-alist): Return #f if alist is empty after filtering. (command->cwl): Remove FIXME note about the inputBinding dictionary being empty.
2021-06-28Makefile: Clean entire website manual directory.Arun Isaac
* Makefile.am (clean-local): Delete entire website manual directory. (website/manual/dev/en): Create directory before copying files.
2021-06-28ccwl: Import (srfi srfi-2).Arun Isaac
* ccwl/ccwl.scm: Import (srfi srfi-2).
2021-06-28ccwl: Fix indentation.Arun Isaac
* ccwl/skribilo.scm (sexp-file-lines): Fix indentation.
2021-06-28website: Constrain images within their containers.Arun Isaac
* website/style.css (img): Set max-width to 100%.
2021-06-28doc: Add workflow graphs.Arun Isaac
* Makefile.am (DOC_IMAGES): Add checksum.svg and decompres-compile-run.svg. * doc/ccwl.skb (Tutorial)[Workflow with multiple steps]: Add workflow graphs checksum.svg and decompres-compile-run.svg.
2021-06-28Makefile: Build workflow images.Arun Isaac
* configure.ac: Search for cwltool, dot and sed. * Makefile.am (DOC_IMAGES): New variable. ($(SKRIBILO_BUILD_DIR)/%.cwl, %.dot, %.svg): New rules. ($(SKRIBILO_BUILD_DIR)/ccwl.info): Depend on $(DOC_IMAGES). ($(SKRIBILO_BUILD_DIR)/ccwl.html): Depend on $(DOC_IMAGES). Build HTML into a directory. Copy $(DOC_IMAGES) into that directory.
2021-06-28ccwl: Support SVG images in HTML documentation.Arun Isaac
* ccwl/skribilo.scm: Add "svg" to the image-format custom of the HTML engine.
2021-06-22doc: Specify command inputs in a separate argument.Arun Isaac
* doc/capture-output-file-with-parameter-reference.scm, doc/capture-output-file.scm, doc/capture-stdout.scm, doc/checksum.scm, doc/decompress-compile-run.scm, doc/hello-world.scm: Specify command inputs in a separate argument. * doc/ccwl.skb (Tutorial)[First example]: Update description of command definition accordingly.
2021-06-22doc: Fix comma position.Arun Isaac
Lispy mode normalizes comma positions incorrectly for Skribilo mode. This needs to be fixed upstream or elsewhere. * doc/ccwl.skb (Tutorial)[Important concepts, Capturing the standard output stream of a command, Capturing output files, Workflow with multiple steps]: Fix comma position.
2021-06-21doc: Fill paragraph.Arun Isaac
* doc/ccwl.skb (Tutorial)[Workflow with multiple steps]: Fill paragraph.
2021-06-21ccwl: Link source links to entire s-exp.Arun Isaac
* ccwl/skribilo.scm (sexp-position, position->line-number, sexp-file-lines): New functions. (source-ref): Refer to entire s-exp, not just a single line.
2021-06-19website: Set foreground color to black.Arun Isaac
We want a high contrast black text on white background. * website/style.css (body): Unset color property.
2021-06-19website: Italicize code symbols.Arun Isaac
* website/style.css (code): Italicize.
2021-06-19website: Add background color and padding to code snippets.Arun Isaac
* website/style.css (pre): Add background color and padding.
2021-06-19README: Remove broken link to tutorial.Arun Isaac
* README.org (Documentation): Remove broken link to tutorial.
2021-06-19.gitignore: Add files.Arun Isaac
* .gitignore: Add build-aux/test-driver.scm and website.
2021-06-19Makefile: Let info and html targets depend on skribilo config.Arun Isaac
* Makefile.am ($(SKRIBILO_BUILD_DIR)/ccwl.info, $(SKRIBILO_BUILD_DIR)/ccwl.html): Depend on skribilo config ccwl/skribilo.scm.
2021-06-19doc: Link to source for pipe and tee.Arun Isaac
* doc/ccwl.skb (Tutorial)[Workflow with multiple steps]: Link to source for pipe and tee.
2021-06-19ccwl: Add source links.Arun Isaac
* ccwl/skribilo.scm: Import (rnrs io ports), (ice-9 match), (ice-9 regex) and (srfi srfi-171). (%source-uri-base): New variable. (source-ref): New public function.
2021-06-19configure: Search for emacs.Arun Isaac
* configure.ac: Search for emacs. * Makefile.am: Use EMACS set by configure.
2021-06-19Makefile: Use MKDIR_P instead of `mkdir -p'.Arun Isaac
* Makefile.am (website/index.html): Use MKDIR_P instead of `mkdir -p'.
2021-06-19Makefile: Delete manual directory before rebuilding.Arun Isaac
* Makefile.am (website/manual/dev/en): Delete directory before rebuilding.
2021-06-19website: Move CSS into the website directory.Arun Isaac
That way, there is no need to copy it when building the website. * Makefile.am (website/style.css): Delete target. (website): Do not depend on the website/style.css target. (clean-local): Clean up only website/index.html and website/manual/dev/en, not the entire website directory. * style.css: Move to website/style.css.
2021-06-15website: Make SVG badges clickable.Arun Isaac
* style.css (object): Set pointer-events to none.
2021-06-15doc: Move documentation from texinfo to skribilo.Arun Isaac
* doc/ccwl.texi: Delete file. * ccwl/skribilo.scm, doc/ccwl.skb, doc/capture-output-file-with-parameter-reference.out, doc/capture-output-file-with-parameter-reference.scm, doc/capture-output-file.out, doc/capture-output-file.scm, doc/capture-stdout.out, doc/capture-stdout.scm, doc/checksum.out, doc/checksum.scm, doc/decompress-compile-run.out, doc/decompress-compile-run.scm, doc/hello-world.out, doc/hello-world.scm, doc/hello.tar.out: New files. * configure.ac: Check for skribilo. * Makefile.am: Unregister doc/ccwl.texi. Add documentation build rules. * guix.scm (ccwl)[native-inputs]: Replace texinfo with skribilo. * .gitignore: Add doc/skribilo. Remove doc/version.texi, doc/*.html, doc/*.info.
2021-06-10build-aux: Do not override org-html--svg-image.Arun Isaac
SVG image export works correctly out of the box in org. * build-aux/build-home-page.el (org-html--svg-image): Delete function.
2021-06-10pre-inst-env: Handle absent environment variables.Arun Isaac
* pre-inst-env.in (prepend-path-env!): Handle case when environment variable is absent and getenv returns #f.
2021-06-10README: Do not use org macros.Arun Isaac
Unfortunately, GitHub's org exporter does not support macros. * README.org (ci-badge): Delete macro. Replace ci-badge macro invocations with expansions.
2021-06-10README: Add continuous integration badges.Arun Isaac
* README.org (ci-badge): New macro. Add continuous integration badges. * build-aux/build-home-page.el (org-html--svg-image): Override org-html--svg-image to export svg using an img tag instead of an object tag.
2021-06-01Do not export obsolete functions.Arun Isaac
* ccwl/ccwl.scm: Do not export step and pipeline.
2021-06-01Introduce new command definition syntax.Arun Isaac
* ccwl/ccwl.scm: Do not export input and output. (<input>): Delete source field. Add position field. (input): Accept position and prefix fields in constructor. Do not initialize non-existent source field. (<command>): Delete additional-inputs field. Add inputs field. Delete set-command-outputs and set-command-stdin setters. (command): Rewrite as macro that accepts new command definition syntax. (<cli-element>): Delete type. (command->cwl): Generate CWL from new <command> type. (command-input-keys): Simplify to support new <command> type.
2021-06-01Remove unused setters, appenders, etc.Arun Isaac
* ccwl/ccwl.scm: Do not export input-with-prefix. (<input>): Delete set-input-prefix. (<step>): Delete set-step-run, set-step-id, set-step-out. (input-with-prefix, field-appender, modify-step-run, append-step-in, append-step-out, append-command-outputs): Delete functions.
2021-06-01In pipe, pass through input keys to all expressions.Arun Isaac
Earlier, the input keys would only be passed to the first expression. The second expression would only receive the output keys from the first expression. Passing input keys through to all expressions is a common use case, since expressions often need to access global inputs. If the original behavior is desired, we can always introduce a new construct, say `pipe-strict'. * ccwl/ccwl.scm (workflow-steps): In pipe, pass through input keys to all expressions.
2021-06-01Filter out global workflow inputs from workflow outputs.Arun Isaac
* ccwl/ccwl.scm (key->output): New function. (workflow-steps): Filter out global workflow inputs from workflow-outputs.
2021-06-01Add filter-mapi.Arun Isaac
* ccwl/utils.scm (filter-mapi): New public function.
2021-06-01Add syntax-lambda**.Arun Isaac
* ccwl/utils.scm (syntax-lambda**): New public macro.