From 285c2f617b74e182be69decea46bbd0afdb0f604 Mon Sep 17 00:00:00 2001 From: Laurenz Date: Sat, 26 Jun 2021 13:06:37 +0200 Subject: Cleanse library - Remove doc-comments for Typst functions from library - Reduce number of library source files --- src/library/lang.rs | 44 -------------------------------------------- 1 file changed, 44 deletions(-) delete mode 100644 src/library/lang.rs (limited to 'src/library/lang.rs') diff --git a/src/library/lang.rs b/src/library/lang.rs deleted file mode 100644 index 7a08001a..00000000 --- a/src/library/lang.rs +++ /dev/null @@ -1,44 +0,0 @@ -use super::*; - -/// `lang`: Configure the language. -/// -/// # Positional parameters -/// - Language: of type `string`. Has to be a valid ISO 639-1 code. -/// -/// # Named parameters -/// - Text direction: `dir`, of type `direction`, must be horizontal. -/// -/// # Return value -/// A template that configures language properties. -/// -/// # Relevant types and constants -/// - Type `direction` -/// - `ltr` -/// - `rtl` -pub fn lang(ctx: &mut EvalContext, args: &mut FuncArgs) -> Value { - let iso = args.eat::(ctx).map(|s| lang_dir(&s)); - let dir = match args.named::>(ctx, "dir") { - Some(dir) if dir.v.axis() == SpecAxis::Horizontal => Some(dir.v), - Some(dir) => { - ctx.diag(error!(dir.span, "must be horizontal")); - None - } - None => None, - }; - - Value::template("lang", move |ctx| { - if let Some(dir) = dir.or(iso) { - ctx.state.lang.dir = dir; - } - - ctx.parbreak(); - }) -} - -/// The default direction for the language identified by `iso`. -fn lang_dir(iso: &str) -> Dir { - match iso.to_ascii_lowercase().as_str() { - "ar" | "he" | "fa" | "ur" | "ps" | "yi" => Dir::RTL, - "en" | "fr" | "de" | _ => Dir::LTR, - } -} -- cgit v1.2.3