Why can't I show-set an emphasize element to have always "normal" style?

Consider the following code:

#show emph: set text(weight: "bold", style: "normal")
This is an _example_.

It turns out that “example” is printed in bold letters (which is not the default, so the show-set rule works) but is still italic. Can anyone explain why that is?

Note: I know I can achieve my goal e.g. by defining

#show emph: it => {
  text(weight: "bold", style: "normal", it.body)
}

but this is not the point of the question. Instead I’d just like to understand what is going on in the previous example.

2 Likes

This is not even an answer, but I’m sure it will be interesting :slight_smile:

#show emph: set text(weight: "bold", style: "italic")
This is an _example_.

This must be related to the fact that emph inverts itself - emphasis of emphasis reverts to normal text again.

This #emph[is an _example_.]

4 Likes