Indexicals


I've found a few system indexicals that I would like to use in my package, but these indexicals don't have names in Indexicals.h. Can I define my own name for these objects and use them, or are they likely to go away in the future?


It's unclear whether unnamed indexicals will be refering to the same objects in the future, but there are many things that will doubtlessly change beyond Magic Cap 1.0. So, if you would like to use an unnamed indexical, go ahead, but be ready to update your package in the future.

If you stick to well known classes, such as Sounds, Images, etc. you will probably remain safe. Some indexicals, however, are really considered private to the system, and should not be used by packages. Many of the indexicals in Indexicals.h have comments about what they are used for. Some of them are labeled "for system use". While you can still go ahead and use these indexicals, you should do so with caution; these are more likely to change in the future.


When does one need to fill in package indexical 1 (iPackageTextStyles)? If I create a new text style, do I need to put it in this indexical?


You don't really need to. iPackageTextStyles was defined when we were young and naive and thought we needed such a thing. While you should still consider this indexical reserved, the system doesn't currently use it for anything.