pub struct SmartQuoteElem { /* private fields */ }
Expand description
A language-aware quote that reacts to its context.
Automatically turns into an appropriate opening or closing quote based on the active text language.
§Example
"This is in quotes."
#set text(lang: "de")
"Das ist in Anführungszeichen."
#set text(lang: "fr")
"C'est entre guillemets."
§Syntax
This function also has dedicated syntax: The normal quote characters
('
and "
). Typst automatically makes your quotes smart.
Implementations§
Source§impl SmartQuoteElem
impl SmartQuoteElem
Sourcepub fn with_double(self, double: bool) -> Self
pub fn with_double(self, double: bool) -> Self
Builder-style setter for the double
field.
Sourcepub fn with_enabled(self, enabled: bool) -> Self
pub fn with_enabled(self, enabled: bool) -> Self
Builder-style setter for the enabled
field.
Sourcepub fn with_alternative(self, alternative: bool) -> Self
pub fn with_alternative(self, alternative: bool) -> Self
Builder-style setter for the alternative
field.
Sourcepub fn with_quotes(self, quotes: Smart<SmartQuoteDict>) -> Self
pub fn with_quotes(self, quotes: Smart<SmartQuoteDict>) -> Self
Builder-style setter for the quotes
field.
Sourcepub fn push_double(&mut self, double: bool)
pub fn push_double(&mut self, double: bool)
Setter for the double
field.
Sourcepub fn push_enabled(&mut self, enabled: bool)
pub fn push_enabled(&mut self, enabled: bool)
Setter for the enabled
field.
Sourcepub fn push_alternative(&mut self, alternative: bool)
pub fn push_alternative(&mut self, alternative: bool)
Setter for the alternative
field.
Sourcepub fn push_quotes(&mut self, quotes: Smart<SmartQuoteDict>)
pub fn push_quotes(&mut self, quotes: Smart<SmartQuoteDict>)
Setter for the quotes
field.
Sourcepub fn double(&self, styles: StyleChain<'_>) -> bool
pub fn double(&self, styles: StyleChain<'_>) -> bool
Whether this should be a double quote.
Sourcepub fn enabled(&self, styles: StyleChain<'_>) -> bool
pub fn enabled(&self, styles: StyleChain<'_>) -> bool
Whether smart quotes are enabled.
To disable smartness for a single quote, you can also escape it with a backslash.
#set smartquote(enabled: false)
These are "dumb" quotes.
Sourcepub fn alternative(&self, styles: StyleChain<'_>) -> bool
pub fn alternative(&self, styles: StyleChain<'_>) -> bool
Whether to use alternative quotes.
Does nothing for languages that don’t have alternative quotes, or if explicit quotes were set.
#set text(lang: "de")
#set smartquote(alternative: true)
"Das ist in anderen Anführungszeichen."
Sourcepub fn quotes<'a>(&'a self, styles: StyleChain<'a>) -> &'a Smart<SmartQuoteDict>
pub fn quotes<'a>(&'a self, styles: StyleChain<'a>) -> &'a Smart<SmartQuoteDict>
The quotes to use.
- When set to
{auto}
, the appropriate single quotes for the text language will be used. This is the default. - Custom quotes can be passed as a string, array, or dictionary of either
- string: a string consisting of two characters containing the opening and closing double quotes (characters here refer to Unicode grapheme clusters)
- [array]: an array containing the opening and closing double quotes
- [dictionary]: an array containing the double and single quotes, each
specified as either
{auto}
, string, or array
#set text(lang: "de")
'Das sind normale Anführungszeichen.'
#set smartquote(quotes: "()")
"Das sind eigene Anführungszeichen."
#set smartquote(quotes: (single: ("[[", "]]"), double: auto))
'Das sind eigene Anführungszeichen.'
Sourcepub fn double_in(styles: StyleChain<'_>) -> bool
pub fn double_in(styles: StyleChain<'_>) -> bool
Access the double
field in the given style chain.
Sourcepub fn enabled_in(styles: StyleChain<'_>) -> bool
pub fn enabled_in(styles: StyleChain<'_>) -> bool
Access the enabled
field in the given style chain.
Sourcepub fn alternative_in(styles: StyleChain<'_>) -> bool
pub fn alternative_in(styles: StyleChain<'_>) -> bool
Access the alternative
field in the given style chain.
Sourcepub fn quotes_in(styles: StyleChain<'_>) -> &Smart<SmartQuoteDict>
pub fn quotes_in(styles: StyleChain<'_>) -> &Smart<SmartQuoteDict>
Access the quotes
field in the given style chain.
Sourcepub fn set_double(double: bool) -> Property
pub fn set_double(double: bool) -> Property
Create a style property for the double
field.
Sourcepub fn set_enabled(enabled: bool) -> Property
pub fn set_enabled(enabled: bool) -> Property
Create a style property for the enabled
field.
Sourcepub fn set_alternative(alternative: bool) -> Property
pub fn set_alternative(alternative: bool) -> Property
Create a style property for the alternative
field.
Sourcepub fn set_quotes(quotes: Smart<SmartQuoteDict>) -> Property
pub fn set_quotes(quotes: Smart<SmartQuoteDict>) -> Property
Create a style property for the quotes
field.
Trait Implementations§
Source§impl Capable for SmartQuoteElem
impl Capable for SmartQuoteElem
Source§impl Clone for SmartQuoteElem
impl Clone for SmartQuoteElem
Source§fn clone(&self) -> SmartQuoteElem
fn clone(&self) -> SmartQuoteElem
1.0.0 · Source§const fn clone_from(&mut self, source: &Self)
const fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Construct for SmartQuoteElem
impl Construct for SmartQuoteElem
Source§impl Debug for SmartQuoteElem
impl Debug for SmartQuoteElem
Source§impl Fields for SmartQuoteElem
impl Fields for SmartQuoteElem
Source§fn field(&self, id: u8) -> Result<Value, FieldAccessError>
fn field(&self, id: u8) -> Result<Value, FieldAccessError>
Source§fn field_with_styles(
&self,
id: u8,
styles: StyleChain<'_>,
) -> Result<Value, FieldAccessError>
fn field_with_styles( &self, id: u8, styles: StyleChain<'_>, ) -> Result<Value, FieldAccessError>
Source§fn field_from_styles(
id: u8,
styles: StyleChain<'_>,
) -> Result<Value, FieldAccessError>
fn field_from_styles( id: u8, styles: StyleChain<'_>, ) -> Result<Value, FieldAccessError>
Source§fn materialize(&mut self, styles: StyleChain<'_>)
fn materialize(&mut self, styles: StyleChain<'_>)
Source§impl Hash for SmartQuoteElem
impl Hash for SmartQuoteElem
Source§impl IntoValue for SmartQuoteElem
impl IntoValue for SmartQuoteElem
Source§fn into_value(self) -> Value
fn into_value(self) -> Value
Source§impl NativeElement for SmartQuoteElem
impl NativeElement for SmartQuoteElem
Source§impl PartialEq for SmartQuoteElem
impl PartialEq for SmartQuoteElem
Source§impl Repr for SmartQuoteElem
impl Repr for SmartQuoteElem
Auto Trait Implementations§
impl Freeze for SmartQuoteElem
impl RefUnwindSafe for SmartQuoteElem
impl Send for SmartQuoteElem
impl Sync for SmartQuoteElem
impl Unpin for SmartQuoteElem
impl UnwindSafe for SmartQuoteElem
Blanket Implementations§
Source§impl<S, D, Swp, Dwp, T> AdaptInto<D, Swp, Dwp, T> for Swhere
T: Real + Zero + Arithmetics + Clone,
Swp: WhitePoint<T>,
Dwp: WhitePoint<T>,
D: AdaptFrom<S, Swp, Dwp, T>,
impl<S, D, Swp, Dwp, T> AdaptInto<D, Swp, Dwp, T> for Swhere
T: Real + Zero + Arithmetics + Clone,
Swp: WhitePoint<T>,
Dwp: WhitePoint<T>,
D: AdaptFrom<S, Swp, Dwp, T>,
Source§fn adapt_into_using<M>(self, method: M) -> Dwhere
M: TransformMatrix<T>,
fn adapt_into_using<M>(self, method: M) -> Dwhere
M: TransformMatrix<T>,
Source§fn adapt_into(self) -> D
fn adapt_into(self) -> D
Source§impl<T, C> ArraysFrom<C> for Twhere
C: IntoArrays<T>,
impl<T, C> ArraysFrom<C> for Twhere
C: IntoArrays<T>,
Source§fn arrays_from(colors: C) -> T
fn arrays_from(colors: C) -> T
Source§impl<T, C> ArraysInto<C> for Twhere
C: FromArrays<T>,
impl<T, C> ArraysInto<C> for Twhere
C: FromArrays<T>,
Source§fn arrays_into(self) -> C
fn arrays_into(self) -> C
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<WpParam, T, U> Cam16IntoUnclamped<WpParam, T> for Uwhere
T: FromCam16Unclamped<WpParam, U>,
impl<WpParam, T, U> Cam16IntoUnclamped<WpParam, T> for Uwhere
T: FromCam16Unclamped<WpParam, U>,
Source§type Scalar = <T as FromCam16Unclamped<WpParam, U>>::Scalar
type Scalar = <T as FromCam16Unclamped<WpParam, U>>::Scalar
parameters
when converting.Source§fn cam16_into_unclamped(
self,
parameters: BakedParameters<WpParam, <U as Cam16IntoUnclamped<WpParam, T>>::Scalar>,
) -> T
fn cam16_into_unclamped( self, parameters: BakedParameters<WpParam, <U as Cam16IntoUnclamped<WpParam, T>>::Scalar>, ) -> T
self
into C
, using the provided parameters.Source§impl<T> CheckedAs for T
impl<T> CheckedAs for T
Source§fn checked_as<Dst>(self) -> Option<Dst>where
T: CheckedCast<Dst>,
fn checked_as<Dst>(self) -> Option<Dst>where
T: CheckedCast<Dst>,
Source§impl<Src, Dst> CheckedCastFrom<Src> for Dstwhere
Src: CheckedCast<Dst>,
impl<Src, Dst> CheckedCastFrom<Src> for Dstwhere
Src: CheckedCast<Dst>,
Source§fn checked_cast_from(src: Src) -> Option<Dst>
fn checked_cast_from(src: Src) -> Option<Dst>
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T, C> ComponentsFrom<C> for Twhere
C: IntoComponents<T>,
impl<T, C> ComponentsFrom<C> for Twhere
C: IntoComponents<T>,
Source§fn components_from(colors: C) -> T
fn components_from(colors: C) -> T
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
Source§impl<T> FromAngle<T> for T
impl<T> FromAngle<T> for T
Source§fn from_angle(angle: T) -> T
fn from_angle(angle: T) -> T
angle
.Source§impl<T, U> FromStimulus<U> for Twhere
U: IntoStimulus<T>,
impl<T, U> FromStimulus<U> for Twhere
U: IntoStimulus<T>,
Source§fn from_stimulus(other: U) -> T
fn from_stimulus(other: U) -> T
other
into Self
, while performing the appropriate scaling,
rounding and clamping.Source§impl<T, U> IntoAngle<U> for Twhere
U: FromAngle<T>,
impl<T, U> IntoAngle<U> for Twhere
U: FromAngle<T>,
Source§fn into_angle(self) -> U
fn into_angle(self) -> U
T
.Source§impl<WpParam, T, U> IntoCam16Unclamped<WpParam, T> for Uwhere
T: Cam16FromUnclamped<WpParam, U>,
impl<WpParam, T, U> IntoCam16Unclamped<WpParam, T> for Uwhere
T: Cam16FromUnclamped<WpParam, U>,
Source§type Scalar = <T as Cam16FromUnclamped<WpParam, U>>::Scalar
type Scalar = <T as Cam16FromUnclamped<WpParam, U>>::Scalar
parameters
when converting.Source§fn into_cam16_unclamped(
self,
parameters: BakedParameters<WpParam, <U as IntoCam16Unclamped<WpParam, T>>::Scalar>,
) -> T
fn into_cam16_unclamped( self, parameters: BakedParameters<WpParam, <U as IntoCam16Unclamped<WpParam, T>>::Scalar>, ) -> T
self
into C
, using the provided parameters.Source§impl<T, U> IntoColor<U> for Twhere
U: FromColor<T>,
impl<T, U> IntoColor<U> for Twhere
U: FromColor<T>,
Source§fn into_color(self) -> U
fn into_color(self) -> U
Source§impl<T, U> IntoColorUnclamped<U> for Twhere
U: FromColorUnclamped<T>,
impl<T, U> IntoColorUnclamped<U> for Twhere
U: FromColorUnclamped<T>,
Source§fn into_color_unclamped(self) -> U
fn into_color_unclamped(self) -> U
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> IntoResult for Twhere
T: IntoValue,
impl<T> IntoResult for Twhere
T: IntoValue,
Source§fn into_result(self, _: Span) -> Result<Value, EcoVec<SourceDiagnostic>>
fn into_result(self, _: Span) -> Result<Value, EcoVec<SourceDiagnostic>>
Source§impl<T> IntoStimulus<T> for T
impl<T> IntoStimulus<T> for T
Source§fn into_stimulus(self) -> T
fn into_stimulus(self) -> T
self
into T
, while performing the appropriate scaling,
rounding and clamping.Source§impl<T> OverflowingAs for T
impl<T> OverflowingAs for T
Source§fn overflowing_as<Dst>(self) -> (Dst, bool)where
T: OverflowingCast<Dst>,
fn overflowing_as<Dst>(self) -> (Dst, bool)where
T: OverflowingCast<Dst>,
Source§impl<Src, Dst> OverflowingCastFrom<Src> for Dstwhere
Src: OverflowingCast<Dst>,
impl<Src, Dst> OverflowingCastFrom<Src> for Dstwhere
Src: OverflowingCast<Dst>,
Source§fn overflowing_cast_from(src: Src) -> (Dst, bool)
fn overflowing_cast_from(src: Src) -> (Dst, bool)
Source§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> SaturatingAs for T
impl<T> SaturatingAs for T
Source§fn saturating_as<Dst>(self) -> Dstwhere
T: SaturatingCast<Dst>,
fn saturating_as<Dst>(self) -> Dstwhere
T: SaturatingCast<Dst>,
Source§impl<Src, Dst> SaturatingCastFrom<Src> for Dstwhere
Src: SaturatingCast<Dst>,
impl<Src, Dst> SaturatingCastFrom<Src> for Dstwhere
Src: SaturatingCast<Dst>,
Source§fn saturating_cast_from(src: Src) -> Dst
fn saturating_cast_from(src: Src) -> Dst
Source§impl<T, C> TryComponentsInto<C> for Twhere
C: TryFromComponents<T>,
impl<T, C> TryComponentsInto<C> for Twhere
C: TryFromComponents<T>,
Source§type Error = <C as TryFromComponents<T>>::Error
type Error = <C as TryFromComponents<T>>::Error
try_into_colors
fails to cast.Source§fn try_components_into(self) -> Result<C, <T as TryComponentsInto<C>>::Error>
fn try_components_into(self) -> Result<C, <T as TryComponentsInto<C>>::Error>
Source§impl<T, U> TryIntoColor<U> for Twhere
U: TryFromColor<T>,
impl<T, U> TryIntoColor<U> for Twhere
U: TryFromColor<T>,
Source§fn try_into_color(self) -> Result<U, OutOfBounds<U>>
fn try_into_color(self) -> Result<U, OutOfBounds<U>>
OutOfBounds
error is returned which contains
the unclamped color. Read more