I don't think anyone is currently working on it, although it would be a real boon to have it.
Personally, I think the best technical approach would be for Moodle to have a single "index" table containing searchable text and references to the modules/instances to which they relate, and to add two new functions into every activity/resource type:
- one to generate the indexable text (e.g. forum content, or decoded HTML, or quiz questions), which would be run when the instance was created/modified;
- and one to determine at search-time whether or not the current user is authorised to view that item (i.e. whether or not to return it as a search result).
I think it could work well though. The method I describe would allow for fast searching (since it would only need to look in one database table, although it would need to call lots of PHP functions in order to decide which results to show), although the index table would of course take up database space and may get very large, so the indexing would need to be optional.
I've done some work building a search option for the Object repository resource which extracts a search database from the imsmanifest.xml files that are a component of IMS compliant learning objects (which is what the repository is designed to hold).
It seems to me that the index that Dan is talking about is in fact this sort of thing.
I'd propose that
a) There be a way to generate an imsmanifest file from an existing course
b) That this manifest file could then be indexed using a generalized indexer such as already built.
The reason I suggest this is not because I alread wrote the indexing and search code but....
a) It gives us the start of a mechanism for packaging Moodle courses according to IMS standard in case (heaven forbid) someone wants to migrate a course to some other platform.
b) It gives us a place to hold metadata about courses and a linkage (constraint) with the standardisation of ways of doing this.
Re. packaging Moodle courses according to IMS standards, please note that "preliminary support for IMS LD Level A, allowing import and export" is planned for Moodle 1.7 (source: MoodleDocs Future).