General
-
(Rules/Programming) Allow rules to act on multiple, typed parameters
Expansion of the rules model to allow rules to act on multiple,
typed parameters, as in:
Reaction rule for a powder (called reagent A) with a powder (called
reagent B): ...To combine (reagent A - a powder) with (reagent B - a powder):
consider the reaction rules with reagent A as the first component
and reagent B as the second component.(The original proposal is laid out in more detail at
http://groups.google.com/group/rec.arts.int-fiction/msg/964587315d0702b4).
It is undeniable that the main "decision mechanisms" provided by Inform -
phrases, properties, rulebooks, actions - nearly meet at the edges, and
that as their…2 votesWe don’t regard overlaps as necessarily a bad idea. Without going entirely
in the Perl direction of “there are many ways to do something”, we can
still benefit from providing what seem natural facilities to the user. It
might seem cleaner – better, in traditional computer science aesthetics -
to have just one construct (the rulebook, probably) and build all else from
that – actions, phrases, properties, even variables – but that would be a
burden to the user, taking us away from natural language, and would also be
less efficient to run.We think a simpler and less disruptive approach might be to allow the user
to say that the definition of any phrase is a rulebook. For instance, the
following prototype:To react (reagent A – a powder) with (reagent B – a powder) – this is the
reaction rulebook.would create a rulebook, which would be initially…
-
extensions updater *VW*
I'd love to see in future editions of Inform the choice of downloading and installing automatically all new (and updated) extensions from the Inform7 website.
1 vote -
(IDE) Remember scroll position when using forward/back documentation buttons.
Make the Windows IDE forward/back buttons in the documentation and index behave more like a browser and remember the scroll position. Some of the index pages are long and when you find the bit you want and click on it, then come back, you end up at the top of the page again, having to scroll down to where you were.
1 vote -
(Windows/IDE) Fix/Improve Jump List under Windows 7
Currently, the jump list populates with opened Extensions but not with the Story files. It would nice to have the Jump List working.
1 vote -
(Windows/IDE) F3 to find next match
Most text editors for Windows, as well as other text-heavy apps such as web browsers, use the F3 key as a hotkey to look for the next instance of the last text search. In other words, it does the same thing as the "Find Next" button in the I7 "Find" dialog. It would be nice if that worked in the I7 IDE as well. I can't speak for others, but for me, hitting F3 is such an ingrained habit that I keep on doing it even though it does something else.
1 vote -
Make it possible to make "room" a kind of "thing"
I just spent 30 hours working around the fact that it isn't and that it cannot be made one even by redefining the Standard Rules.
I realize this is not straightforward at all as it requires digging about in crusty old Inform 6 code to eliminate aliased flags and whatnot.
1 vote -
Allow text and binary files to be declared and blorbed from the Materials folder
Allow text and binary files to be declared and blorbed from the Materials folder, much like figures and sounds, now that Blorb has the TEXT and BINA chunk types.
(And regenerate infglk.h so that the associated glk functions, glk_stream_open_resource and glk_stream_open_resource_uni, are available by name.)
1 vote -
(Syntax) Make rules able to refer to actors
"Before printing the name of something while an actor doing something" is allowed right now, but we can't continue "If the actor is the player, say 'your '." and so own, because we cannot refer to actors further. This means that we can't write general rules in this manner.
1 vote -
Have the current location be in scope when it "should be"
Or at least make it possible as an option. The fact that it isn't appears to be a piece of special-casing deep in the hardwired Inform 6 scope routines. (As it is, scope search goes down into the players contents, and goes up to the room, and goes down from the room, but the *room itself is deleted from scope* for some reason.) Actually, I think those were hard-wired in Inform 6 -- are those scope routines written in C?
Well, anyway, it turns out to be incredibly hard to work around this oddity in the scoping rules: you have…
1 vote -
Hotkeys for commenting out selected code all at once
A contextual menu item, and hotkeys, for commenting out selected code all at once, by inserting "[" and "]" around the selected text. This is particularly important in that restyling large chunks of text - as placing the first [ will do near the start of code - is extremely computationally expensive in the interface applications.
1 voteWe accept this proposal. It’s already being experimented with on OS X and Linux, and is planned for the new Windows source panel implementation.
-
(Syntax) Allow "row of the table"
"Choose row N of the Table of Something" gives a compiler error; the correct syntax is "Choose row N in the Table of Something." But I find "row of the table" to be much more natural English (or American), and it would be nice if it were also recognized.
1 vote -
Enforce ordering on ``is'' comparisons that test the kind of a value
Based on http://inform7.com/mantis/view.php?id=959#c1742, Inform could encourage clearer code by rejecting
- - - -
if a number is three, ...
- - - -in favor of the more natural
- - - -
if three is an number, ....
- - - -This would parallel the restrictions on assertions:
- - - -
A room is the lounge.
- - - -is disallowed, whereas
- - - -
The lounge is a room.
- - - -is not.
1 vote -
(IDE) Indent selected lines when you press tab
It'd be nice if the editor would follow the convention of indenting selected lines when you press tab (and move them left when you press shift-tab) instead of replacing the selection with a tab character.
The "move selection right/left" hotkeys are available at least in the Mac ide, but tabbing would be faster and the hotkeys don't work with non-American keyboard layouts where brackets are behind special key combinations.
1 vote -
(IDE) Enable shifting of code blocks in extensions too
Currently, the Mac IDE offers hotkeys that allow you to shift code one tab stop to the left or right. However, this works only in project windows, not in extension windows. Since extensions require example code blocks to be indented one tab stop, there is a special need for this feature in extension files. Please add it!
1 vote -
Allow phrases to be defined to automatically cast values
It would be useful to allow phrases to be defined which would cast between values, for example:
To decide what indexed text is (file - an external file): ...
Such a phrase wouldn't have any non-variant text. Alternatively, and to make clear that it is a special phrase, it could be worded like this:
To cast an external file to indexed text: ...
To prevent headaches the compiler should not use more than one conversion at a time. That may not be enough to prevent headaches... perhaps the compiler should also complain if reciprocal casting phrases are defined? I don't…
1 vote -
(Publishing) Include licensing information in the Babel bibliographic data
This would be printed in the banner and also automatically be added to IFDB.
1 voteCurrently the banner-printing of such information is pretty easy to arrange
and is further supported by the Extended Banner extension by Stephen Granade. Any arrangements concerning metadata would have to be taken up with the Treaty of Babel contributors and IFDB maintenance. If there’s a consensus there, we’re willing to build support into Inform. -
Run VM_Initialise as a for starting the virtual machine rule
The starting the virtual machine activity is far less useful than it should be as VM_Initialise() isn't run until after the activity. If you rely on stuff it does (such as dealing with the status line) you might not have anywhere nice to hang a rule if you need the rule run before the when play begins rules.
1 vote -
Move rule conditions to before the block value initialisation code
If you're writing a rule which uses some kind of block value (indexed text, stored actions, lists etc), an I6 function is created which sets up new block values, which then runs the rule's function itself. The condition for the rule is in this second function. It should be moved to the first so that if the condition is not met then the block value code does not need to run.
1 vote -
(IDE) Add a full screen mode
Add an option to use the IDE in full screen mode. At least in OS X it should be (relatively) simple now that the latest versions of the operating system have a native full screen support.
1 vote -
(Syntax) Allow overrides to phrases invoked by name
In this code,
- - - -
There is a room.
To say hello (this is greeting): say "Hello World!"
To say hello: say "Hello Universe!"
When play begins: say hello.
- - - -the second greeting phrase overrides the first. But if instead the first phrase is invoked by name, as in
- - - -
When play begins: apply greeting.
- - - -the override does not apply. Nor can one write
- - - -
To say hello (this is greeting): say "Hello Universe!"
- - - -because even overrides are required to have…
1 vote
- Don't see your idea?