Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Harlowe 1.2.1 Potential Bug: (goto:) macro hides text that appears in the passage before it

Almost half a year ago, I wrote some code that had text in a passage and then used a Harlowe (goto:) macro to move to another passage. I just got back to it and updated Twine to 2.0.10 and Harlowe to 1.2.1. Now, under the desktop version, the (goto:) macro appears to hide text in the previous passage. For instance, create a new game and, in the first passage, add:
This text isn't ever shown.

(go-to: "Second Passage")

Then create "Second Passage" and put in:
This text //is// shown.

When you run the game, the only thing that's shown is
This text is shown.

That appears to be a behavior change. Is it a bug? If so, I can file it as an issue at the Harlowe repository, if that's the right way to report these kinds of things.


  • Harlowe's current default CSS .transition-out rule has a duration of 0ms, so you could say the text is shown but just for a very short moment. If you increase the duration then you will see both pieces of text, which you can test yourself by temporarily adding something like the following to your Story Stylesheet.
    .transition-out {
        -webkit-animation: appear 1s step-end;
        animation: appear 1s step-end;
    note: the above will effect all the transition effect types in the story.

    I am not sure this is a bug as such, because it could be argued that the (goto:) macro is meant to instantly move the reader to a different passage.
  • Huh, interesting that its behavior changed -- I just backed Harlowe up to the version I was using before and it went to the new passage without clearing anything printed by the old one.

    I can get around it with using (display:) instead, which is arguably what I should've been doing in the first place.
Sign In or Register to comment.