Skip to main content

MathCoreConfig

Struct MathCoreConfig 

Source
pub struct MathCoreConfig {
    pub pretty_print: PrettyPrint,
    pub xml_namespace: bool,
    pub ignore_unknown_commands: bool,
    pub annotation: bool,
    pub allow_unreliable_rendering: bool,
    pub global_group: bool,
    pub unicode_substitution: UnicodeSubstitution,
    pub css_classes: CssClassNames,
    pub indentation: Indentation,
    pub max_expansions: MaxExpansions,
    pub id_prefix: String,
    pub tags: TaggingStrategy,
}
Expand description

Configuration object for the LaTeX to MathML conversion.

§Example usage

use math_core::{MathCoreConfig, PrettyPrint};

// Default values
let config = MathCoreConfig::default();

// Specifying pretty-print behavior and enabling annotations
let config = MathCoreConfig {
    pretty_print: PrettyPrint::Always,
    annotation: true,
    ..Default::default()
 };

Fields§

§pretty_print: PrettyPrint

A configuration for pretty-printing the MathML output. See PrettyPrint for details.

§xml_namespace: bool

If true, include xmlns="http://www.w3.org/1998/Math/MathML" in the <math> tag.

§ignore_unknown_commands: bool

If true, unknown commands will be rendered as red text in the output, instead of returning an error.

§annotation: bool

If true, wrap the MathML output in <semantics> tags with an <annotation encoding="application/x-tex"> child containing the original LaTeX source.

§allow_unreliable_rendering: bool

If true, allow rendering commands that produce MathML Core output that is unreliably rendered by browsers.

§global_group: bool

If true, run the conversion in the global group, which means that commands defined at the top level of a snippet with \newcommand (and related commands) stay defined for the snippets which come after it.

If false (the default), such definitions are local to the snippet which contains them. This matches LaTeX, where constructs like \begin{equation} and $$ open a local group, and it matches the default behavior of KaTeX.

§unicode_substitution: UnicodeSubstitution

If not UnicodeSubstitution::Never, substitute certain LaTeX commands with their Unicode equivalents in the MathML output.

§css_classes: CssClassNames

CSS class names for various elements in the output.

§indentation: Indentation

The indentation unit used when pretty-printing the MathML output. Either a number of spaces (e.g. 2) or the string "tab" for a tab character. See Indentation.

§max_expansions: MaxExpansions

How many custom commands may be expanded in one snippet before the conversion gives up. See MaxExpansions.

§id_prefix: String

Add this string to the start of every generated id attribute. This is not URL escaped. Use the percent-encoding crate if you need to.

§tags: TaggingStrategy

The strategy used for numbering equations. See TaggingStrategy.

Trait Implementations§

Source§

impl Clone for MathCoreConfig

Source§

fn clone(&self) -> Self

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for MathCoreConfig

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for MathCoreConfig

Source§

fn default() -> Self

Returns the “default value” for a type. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.