Crates.io | silkworm |
lib.rs | silkworm |
version | 0.1.0-dev.0 |
source | src |
created_at | 2020-05-26 04:45:11.123585 |
updated_at | 2020-05-26 04:45:11.123585 |
description | (PLACEHOLDER) An implementation of the Yarn interactive dialogue language in pure Rust. |
homepage | |
repository | https://github.com/silkworm-rs/silkworm |
max_upload_size | |
id | 245963 |
size | 1,637 |
silkworm is an implementation of the Yarn interactive dialogue language in pure Rust.
silkworm is currently in the initial development phase. Any and all features advertised might not be implemented yet!
The silkworm runtime is passive and does not assume a real-time environment. As a result, commands like wait
must be provided by the user, even though it is built-in in YarnSpinner.
It's also not currently planned to include implementations for YarnSpinner's built-in format functions (select
, plural
and ordinal
), as development is being focused on the language itself. Users may provide their own format functions if needed.
In addition to YarnSpinner keywords and operators, a few currently unused keywords are reserved for forward compatibility.
See docs/keywords.md for a full list of currently used and reserved keywords.
silkworm supports pragmas, which are instructions placed in the source code that change silkworm's behavior. They take the form of //# name(<arg>, ...)
or //#! name(<arg>, ...)
comments. Pragmas may be disabled entirely using the runtime API.
Pragmas that start with //#
precede the code they modify, and are referred to as "outer"-style pragmas. Pragmas that start with //#!
are placed inside the blocks they modify, and are referred to as "inner"-style pragmas. Some pragmas can only be placed at the beginning of files. These pragmas must be in the "inner"-style and precede all nodes in the file, but may be preceded or followed by any number of regular comments.
By default, silkworm will produce warnings when it encounters pragmas that it does not understand.
See docs/pragmas.md for a full list of pragmas supported by silkworm.
silkworm's dialect includes a number of useful extensions over Yarn 1.1. These features can be enabled or disabled individually on the runtime, or for individual files using feature
pragmas at the top of the file.
See docs/features.md for a full list of language features supported by silkworm.
silkworm is available under the MIT license.