-
Notifications
You must be signed in to change notification settings - Fork 4
/
CHANGES
489 lines (356 loc) · 17.6 KB
/
CHANGES
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
See also the changelog of the main JavaScript library
(https://github.com/vorple/vorple/CHANGES).
The numbers after the items refer to GitHub issues. (vorple #xx) refers to issue
number xx in the main Vorple repository.
Release 4.0.1 (2022-06-26)
==========================
Vorple
------
- Added a note to extension documentation about which versions of Vorple support
which versions of Inform 7
Release 4.0.0 (2022-05-11)
==========================
Compatibility with the new Inform version 10.1.0.
The 4.x branch is no longer compatible with Inform 6M62.
Notifications
-------------
- Changed the default notification duration to a real number, which allows for
fractions of seconds instead of just whole seconds, to be in line with the
phrases that display notifications that have always accepted durations as
real numbers
Release 3.2.8 (2022-04-25)
==========================
Tooltips
--------
- Fixed timed tooltips throwing an error in the browser console if their target
element didn't exist
Release 3.2.7 (2022-04-11)
==========================
No changes to the Inform 7 extensions.
Release 3.2.6 (2022-02-17)
==========================
Screen Effects
--------------
- Added phrases to change the entire page's (default) styles
- Added the missing (for Glulx only) directive
Status Line
-----------
- Fixed full-width status line not being inserted to the correct place
Vorple
------
- Fixed the "place an element called ... at the top level" phrase doing nothing
Release 3.2.5 (2021-02-22)
==========================
Screen Effects
--------------
- Added the missing phrases for clearing the screen
- An update to the JavaScript library fixes the phrases that pause the game
Release 3.2.4 (2021-02-14)
==========================
Vorple
------
- Fixed an issue that caused a memory leak in interface update rules
- Fixed the initial the loading screen not showing when releasing with the
Inform 7 interpreter template
Release 3.2.3 (2020-09-03)
==========================
Vorple
------
- Fixed an issue where interface update rules would crash the interpreter at
the start of the game if they used say phrases
Release 3.2.2 (2019-11-19)
==========================
Multimedia
----------
- Multimedia file URLs use vorple.file.getResource() instead of fixed URLs so
that the extension works with Borogove
Release 3.2.1 (2019-11-17)
==========================
Vorple
------
- Fixed an issue where handshake with the interpreter sometimes failed, causing
runtime errors (#43)
Release 3.2 (2019-09-14)
========================
- Inform 7's default template elements are now hidden from the start, so they
don't flash briefly at page load before being removed completely
Vorple
------
- Modified the Wikipedia script in The Sum of Human Knowledge example to make
use of Wikipedia's new extracts feature, which returns a clean summary of the
article (#14)
Modal Windows
-------------
- Tweaked the behavior when requested to pause the game to be more consistent
- Expanded the documentation with further explanation of the "without pausing"
option and the "show a modal window" shorthand, and removed the instruction
to pause the game manually which is actually not necessary
Multimedia
----------
- Most browsers have adapted Chrome's policy of not allowing autoplaying audio,
so the documentation has been updated to reflect the current status. Desktop
Safari has gone overboard with the restrictions, which is also noted in the
documentation.
Release 3.1 (2018-11-03)
========================
- Unit tests are rewritten to use Webdriver.io and Selenium so that the I7 story
file only runs the I7 code and the JavaScript test cases check the results
- Added the Status Line extension
Vorple
------
- BREAKING CHANGE: Evaluated JavaScript code must now explicitly return a value
from the expression, otherwise no return value is available in Inform.
Previously the value of the last expression was automatically returned.
See the Vorple extension documentation for details.
- BREAKING CHANGE: For performance reasons the interpreter now writes the type
of the evaluated JavaScript expression to a file for Inform to pick up,
instead of having the Inform extension deduce the type from the value. This
means that the phrase to get the type is now a fixed phrase "type of the value
returned by the JavaScript command" instead of the previous "type of (text)".
- Unicode characters evaluated as JavaScript are escaped properly when using the
"escaped" transformation (vorple #22)
- Added the Vorple interface update rulebook as a mechanism for state-based user
interface updating, specifically for keeping the UI in sync after undo and
restore
- JavaScript string escaping has been rewritten in Inform 6 to improve
performance. The new routine is about 97% faster than the previous one. (#15)
- Fixed a bug where evaluating JavaScript inside text substitution that itself
was being evaluated would throw an error (vorple #34)
- "Set the output focus to ..." is now a synonym for "Set output focus to ..."
- Vorple support status is now exposed on Inform 6 level as a variable called
vorple_support, matching the Vorple I6 library
- Fixed a bug where the default prompt was printed in addition to the Vorple
prompt when the story ended and when printing "Please answer yes or no" in
an "if the player consents" question (vorple #20)
Command Prompt Control
----------------------
- Fixed adding and removing from command history, which manipulated the start of
the command history instead of the latest commands (#7)
Element Manipulation
--------------------
- Fixed broken "insert element after" and "insert element before" phrases (#10)
Modal Windows
-------------
- BREAKING CHANGE: Due to how the modal windows block Inform from continuing
with the turn, having an Inform phrase to close modals doesn't really have any
practical use. The "close the modal window" phrase is therefore removed from
the extension.
- Fixed a problem that caused the modal windows to require a keypress before
showing custom content when creating them without using the "reading ..."
shorthand. This also fixes the problem that dismissing the modal required two
clicks or keypresses. (#5, #9)
Multimedia
----------
- BREAKING CHANGE: The modifier "repeating" for phrase "start playlist" is now
called "looping", for consistency with other phrases
- Fixed documentation where comments in the code would be invisible in the
Inform IDE (#18)
- Added documentation about adding HTML classes images and how the resulting
HTML will look like
- Added an "always from the start" modifier to "start music" phrase, which
forces the file to start playing from the beginning even if the same track is
already playing
- When starting a playlist, if a track that's present in the playlist is already
playing at that moment, the track will not be stopped and the playlist will
now continue from that place instead of from the beginning, unless the
"always from the start" modifier is provided
- Minor fixes to the Serinette example (#3)
- The fallback description for images will now correctly print a line break
after so that it's in its own paragraph
- Added a note to documentation about Chrome requiring user interaction before
it can play audio (vorple #28)
Notifications
-------------
- Fallback in non-Vorple interpreters now includes the notification title (#8)
Screen Effects
--------------
- Fixed a bug that caused extra line breaks when a styled text ended in
punctuation (#12)
Tooltips
--------
- Added a configurable default duration for how long tooltips stay on screen
- Phrases with the word "seconds" now have synonyms with "second" so phrases
like "...after 1 seconds" can be written as "...after 1 second"
Release 3.0 preview (2017-04-29)
================================
- Moved to the new Glulx-only interpreter model
- Added the Command Prompt Control and Element Manipulation extensions
Vorple
------
- Removed the concept of queueing JavaScript code, because the new interpreter
doesn't have the same limitations queueing used to solve
- Removed the special rulebook that was designed to let the interpreter
pass control commands to the game before the "when play begins" rulebook,
because the new model doesn't need to communicate through line input anymore
- Similarly, because communication through line input isn't a central concept
of the system, triggering line input from I7 has been moved from the core
extension to a new Vorple Command Prompt Control extension
- Added a Vorple interface setup rulebook that also runs before the "when play
begins" rulebook but is guaranteed to run only once per web page load and is
meant for initializing the user interface, e.g. event handlers
- Passing JavaScript to the interpreter doesn't use output streams in the new
system so JavaScript can't mess up line breaks in normal output anymore
- Restarting the game doesn't pop up a custom restart prompt because the
new interpreter can handle native restart correctly
- Removed the transient text description from the documentation, since the
interpreter doesn't provide it by default anymore
- Removed turn type marking from the core extension
- "display (text) in element (text)" is now "display text (text) in element
called (text)" and for consistency with other phrases "display (text) in all
(text) elements" is now "display text (text) in all elements called (text)"
- Added the phrase "set output focus to ..." which will cause further output to
continue in the named element
- Added phrases to find the number of elements and testing for the existence of
elements
- Tweaked the Sum of Human Knowledge example's Wikipedia script to return
meaningful results more often
- Removed an extra line break in the banner after Vorple credits when there's
more text added after it
Hyperlinks
----------
- Fixed a bug that caused linked text to be displayed twice in non-Vorple
interpreters
- Removed the option to suppress story output when making links that trigger
parser commands because it's not the recommended way to pass information
to I7 anymore
- Added an option to name the links for referring to them in the future
- Added links that execute JavaScript code
- Added phrases to disable links
- For consistency, the default classes that are applied to the link elements
are now called "vorple-weblink", "vorple-commandlink" and "vorple-jslink"
Multimedia
----------
- Removed the YouTube video feature
- Added playlist features
- Added phrases for checking if audio is playing and retrieving the file name
of the currently playing music
- "Sounds" are now called more specifically "sound effects"
- For consistency, the "display image" phrase now puts the image in an existing
element. Creating new images (the old behavior) is done with a "place image"
phrase, consistent with the core extension's element creation phrases.
- When displaying images, they must be accompanied by a description for screen
readers and non-Vorple interpreters
- When adding custom classes to the images, they're added after the default
class "vorple-image"
- Added a note to documentation about the possibility of using images from
other URLs
Notifications
-------------
- Notifications are split into two separate extensions: "pure" notifications
(short messages that disappear after a while) stay in this one, and more
complex dialogs are moved to the new Vorple Modal Windows extension.
- Changed the notification JavaScript library to Toastr
(http://codeseven.github.io/toastr/)
- Four different notification types (info, success, warning, and error),
provided by Toastr, are now supported
- Notifications can now have titles
- Custom positioning is removed. Notifications are shown in the location that's
defined in CSS. Positioning is responsive, i.e. they're shown top right
except in mobile view where they're shown as a top bar.
- The phrase to show the notification is changed to be consistent with other
extensions ("display a notification reading...")
- Added an option to define how long the notification is displayed
Screen Effects
--------------
- The extension is now designed to work together with Basic Screen Effects by
Emily Short instead of as a complete replacement. As such Basic Screen
Effects is now automatically included with Vorple Screen Effects.
- The phrase that creates centered text no longer has an option to print the
text in fixed letter spacing. A note has been added in the documentation
instructing how to apply any styling to the centered text block.
- The extension now extends Standard Rules' "boxed quotation" feature so that
in the Vorple interpreter the boxed quotation is placed inside a blockquote
element
- Renamed the right-align phrase to right align
- Vorple style values are now allowed to consist of more than one word and they
may contain uppercase characters. When applying styles to an element, the
style value is converted to lowercase and spaces are replaced with dashes.
- Because the values can have more than one word, basic style values include
the word "font" to avoid namespace clashes, e.g. the "cursive" value is now
"cursive font" and so on
- Similarly color styles are now called "<color> letters" and "<color>
background"
- Removed the transient font style (fading out content at the start of next
turn) because the interpreter doesn't provide the feature anymore
- Added more color styles. The basic set now covers the full 16-color EGA
palette, which is what the Haven interpreter provides out of the box.
- Added phrases to change elements' text and background colors to arbitrary
values, including setting the alpha channel (opacity)
- Removed the "end all styles" phrase which would also close all currently open
non-style elements
- Removed the "default letters" phrase which would have the same issues as
"end all styles" and as an analogue to the equivalent Z-machine phrase isn't
necessary anymore
- Glulx doesn't support text colors the same way that Z-machine did, so there
are no non-Vorple fallbacks for text and background colors anymore
- Related to the removal of the color fallbacks, removed the individual
"say <color> letters/background" phrases that existed for two reasons:
firstly, they replaced the equivalent Z-machine phrases from Basic Screen
Effects, and secondly they were more readable than the one-word color styles.
The Z-machine phrases aren't used anymore and color styles are now more
naturally named so they don't have any reason to exist anymore.
- Renamed the phrase to change the styles of the entire page to "apply (vorple
style) to the entire page" which can be used to apply any style to the
interpreter window
- Added helper phrases for making header and list elements
Tooltips
--------
- Syntax for adding mouseover tooltips to existing elements changed to "attach"
instead of "display" to more accurately reflect the fact that the tooltip
isn't displayed immediately
- Syntax for displaying tooltips immediately is changed from "... element" to
"element called ..." for consistency with other extensions
- Removed the option to pass tooltip delay in milliseconds
- Added an option to pass the duration for how long manually triggered tooltips
are shown, in addition to an "indefinitely" option to never automatically
hide the tooltip
- Added phrases to hide tooltips
- Tooltips are no longer attached to all future elements automatically if they
match the classname of previously attached tooltips. In other words, when
attaching tooltips to all elements, the "all" refers only to currently
existing elements.
- When creating text with tooltip attached with "place text ... with tooltip"
the element can be named
- Fixed example "How To II" so that it won't suppress parser messages
- Fixed wrong phrases in the documentation
Release 2.5 (2014-05-07)
========================
- Updated to work with the new I7 release
- Changed the author's name from "The Vorple Project" to "Juhana Leinonen"
to conform with Inform 7 extension guidelines, added "Vorple" in front
of extension names, renamed "Hypertext" to "Hyperlinks" and
"Core" to just "Vorple"
- Added the "Vorple Screen Effects" extension
- Added and fixed examples across the board
Vorple
------
- Separate checks for new Z-machine 1.2 streams and caching Vorple
availability (closes #1 in main repo)
- Removed the Undo Output Control which is now unneeded
- Reworked the creation and placing content to HTML tags completely.
The only allowed phrases are now "place an ["element"] element
[called "name"] [reading "text"]", "display "text" in the element "name""
and "display "text" in all "name" elements". The "display "text" in the
element "name"" phrase affects only the last available element.
- Changed "eval" to "execute JavaScript command/code" and "queue code"
to "queue JavaScript command/code"
- Moved transient text to the Screen Effects extension
- Added phrases to issue commands directly to the parser
Hyperlinks
----------
- Added a missing full stop at the end of first line which
prevented the extension from installing correctly
- Added an option for external links to open in the same window
- Renamed the phrases to match the new phrasing in the main extension
- Leaving out the links' text content will default to the link target
Multimedia
----------
- Replaced documentation about including resources with the current version
Tooltips
--------
- Added the missing "Z-machine only" directive
- Renamed the say phrase to match the main extension's new phrases
- By default tooltips are shown only on the last matching element
- Phrases to create tooltips that are activated on mouseover
- The delay for showing the tooltip can be supplied, and the default
delay is dropped from 3 seconds to nothing.