summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMartin Haug <mhaug@live.de>2022-04-25 12:58:10 +0200
committerMartin Haug <mhaug@live.de>2022-04-25 14:20:47 +0200
commit649c101f07f6de4791dc9b6091dff4a85112a15c (patch)
treea7abdb603577b0186a801e5728a05d1fc4e373ff /src
parent7163b4a6c57c99fda085bf9b364c82bdba8ea698 (diff)
Add blind text function
Diffstat (limited to 'src')
-rw-r--r--src/library/mod.rs1
-rw-r--r--src/library/utility/blind.rs9
-rw-r--r--src/library/utility/mod.rs2
3 files changed, 12 insertions, 0 deletions
diff --git a/src/library/mod.rs b/src/library/mod.rs
index d3ed98da..c68915c8 100644
--- a/src/library/mod.rs
+++ b/src/library/mod.rs
@@ -88,6 +88,7 @@ pub fn new() -> Scope {
std.def_fn("letter", utility::letter);
std.def_fn("roman", utility::roman);
std.def_fn("symbol", utility::symbol);
+ std.def_fn("lipsum", utility::lipsum);
// Predefined colors.
std.def_const("black", Color::BLACK);
diff --git a/src/library/utility/blind.rs b/src/library/utility/blind.rs
new file mode 100644
index 00000000..a4cfec90
--- /dev/null
+++ b/src/library/utility/blind.rs
@@ -0,0 +1,9 @@
+use lipsum::lipsum_from_seed;
+
+use crate::library::prelude::*;
+
+/// Create blind text.
+pub fn lipsum(_: &mut Context, args: &mut Args) -> TypResult<Value> {
+ let words: usize = args.expect("number of words")?;
+ Ok(Value::Str(lipsum_from_seed(words, 97).into()))
+}
diff --git a/src/library/utility/mod.rs b/src/library/utility/mod.rs
index 13220242..4244ccbf 100644
--- a/src/library/utility/mod.rs
+++ b/src/library/utility/mod.rs
@@ -1,9 +1,11 @@
//! Computational utility functions.
+mod blind;
mod color;
mod math;
mod string;
+pub use blind::*;
pub use color::*;
pub use math::*;
pub use string::*;