Closed videlais closed 1 year ago
Any updates on this?
@tmedwards If you are asking me, the only thing remaining, I think, is how best to handle the cases I've seen where some stories made with Twine 1.4.2 have ROT13 encoding of their passage names. I have not checked, but does Tweego support parsing those? Is there something you might recommend for other parsing HTML elements with ROT-encoding of passage names where the "Start" passage might not be obvious?
@videlais I was referring to the issues I raised, in comments, the day after you made the PR.
[…] the only thing remaining, I think, is how best to handle the cases I've seen where some stories made with Twine 1.4.2 have ROT13 encoding of their passage names.
You may already know this, but I'll cover it anyway to make sure.
Obfuscation had two distinct flavors in Twine ≥v1.4.0
:
v1.4.0
–v1.4.1
: Used a custom obfuscation key, which was stored in StorySettings
.v1.4.2
: Replaced custom obfuscation with ROT13, status stored in StorySettings
.IIRC, when enabled, both flavors affected most passages. Both excluded the StorySettings
special passage, since it contains the obfuscation settings. The ≥v1.4.2
flavor additionally excluded image passages, presumably since Base64 was considered obfuscated enough.
I have not checked, but does Tweego support parsing those?
No. I decided early on that I was not supporting either flavor of obfuscation at all.
I could have supported deobfuscation only, but IIRC I decided that if I wasn't going to offer full bidirectional support, then it would be better to not have it at all.
Is there something you might recommend for other parsing HTML elements with ROT-encoding of passage names where the "Start" passage might not be obvious?
My apologies, but I couldn't parse that very well. 😵💫
If you are not asking how I'd suggest decoding obfuscated passages, then please rephrase?
If you are asking how I'd suggest decoding obfuscated passages, then the easiest thing would probably be to check the unobfuscated StorySettings
special passage for the obfuscation settings. IIRC:
obfuscate
does not exist or does but has the value off
, then everything should be in cleartext and there's nothing to be done.obfuscate
exists with the value swap
and obfuscatekey
exists, then you should be dealing with v1.4.0
–v1.4.1
. You'll need to use the custom obfuscation method along with the value of obfuscatekey
.obfuscate
exists with a value of rot13
and obfuscatekey
does not exist, then you should be dealing with ≥v1.4.2
. You'll need to use ROT13.Both flavors encoded the tiddler's title, tags, and content.
For the exact code details, you'll need to check the tweecode/twine
repository. You'll find the custom obfuscation method there and, in both cases, the precise steps the original code used.
@tmedwards I'm confused. I did not and still do not see any comments.
They would appear under the Conversation tab and trigger a notification. I would be happy to address them, but I don't see them.
From my perspective, the question "Any updates on this?" was the first response I had seen in three weeks.
Yes, thank you. I was asking about if Tweego did (it does not, for a good reason) and how you might recommend others do it. I do not know if your comments addressed it, probably they did, but that was my last item to include in the documentation. Like you mentioned, different versions of Twine obfuscated things in different ways, and I wanted to make sure that was recorded.
I'm confused. I did not and still do not see any comments.
Odd. I can see them in both the mobile client and on the website, somewhat obviously. I don't think I've done anything to cause them to be hidden, but stranger things have happened.
Apologizes for the poke, but is anyone else having issues seeing the comments?
Cc: @klembot @greyelf @mcdemarco
@tmedwards (and @videlais ) I don't see your "tmedwards has pending changes" entry, or the related 6 comments, in the flow of this pull request, except in the screen capture you supplied. Nor did I find anything similar in the committed file itself.
@tmedwards (and @videlais ) I don't see your "tmedwards has pending changes" entry, or the related 6 comments, in the flow of this pull request, except in the screen capture you supplied. Nor did I find anything similar in the committed file itself.
I think the six comments are in this thread (before greyelf's, in the conversation on the pull request). I assume there's some review of tme's that I also cannot see despite clicking around the github website a bit, that he quotes later on in this thread.
@tmedwards I think you fell afoul of GH’s review feature. The idea is you can batch comments together as a single review except it’s very easy to not realize what’s going on (this has happened to me multiple times). Try going to the “Files changed” tab and click the green “Review changes” button. If you submit your review in that pop up, I bet they’ll show for everyone.
That seems to have worked. 🤞 Thanks, @klembot .
You used to be able to simply comment on commits and PRs. I wonder if you cannot anymore or if I accidentally started a review.
Thanks, @tmedwards! I can now see the comments and I will start to make corrections and clarifications within the next few days.
LGTM. 👍🏻
Sorry for the delay.
This commit adds documentation on Twine 1 HTML as best as I could reverse-engineer it from the Twine 1 Python code and many examples from the IFDB. This probably won't be used by many people, but as someone who has been trying to analyze older Twine 1 works this week, a document like this would have been really useful to consult.
If there is anything wrong, please let me know or edit before committing. I'd like it to be as accurate as possible for future historical work.