summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/model/eval.rs2
-rw-r--r--src/model/realize.rs4
2 files changed, 5 insertions, 1 deletions
diff --git a/src/model/eval.rs b/src/model/eval.rs
index 204dfbd4..0ae8a0b1 100644
--- a/src/model/eval.rs
+++ b/src/model/eval.rs
@@ -434,7 +434,7 @@ impl Eval for ast::MathNode {
Self::Expr(v) => {
if let ast::Expr::Ident(ident) = v {
if self.as_untyped().len() == ident.len()
- && !vm.scopes.get(ident).is_ok()
+ && matches!(vm.scopes.get(ident), Ok(Value::Func(_)) | Err(_))
{
let node = (vm.items.symbol)(ident.get().clone() + ":op".into());
return Ok(node.spanned(self.span()));
diff --git a/src/model/realize.rs b/src/model/realize.rs
index b4e38e30..862bc8b6 100644
--- a/src/model/realize.rs
+++ b/src/model/realize.rs
@@ -7,6 +7,10 @@ pub fn applicable(target: &Content, styles: StyleChain) -> bool {
return true;
}
+ if target.has::<dyn Show>() && target.is_pristine() {
+ return true;
+ }
+
// Find out how many recipes there are.
let mut n = styles.recipes().count();