>>>>> "Richard" == Richard E Hawkins Esq <[EMAIL PROTECTED]> writes:
Richard> Now that I have something that works, i'll start thinking
Richard> about the future. Particularly, insets for MM, and how to
Richard> use them.
Richard> The starting point is that they would have a relatively minor
Richard> role: I don't see them as more than delimiters, as in
Richard> <startdelim>MMcommand<enddelim>
Richard> rather than <inset with command somehow embedded>
Seeing you examples, I do not see what you would lose if everything
inside <> was an inset... You do not have any special formatting or
long test here, anyway. Otherwise, the delimiters should be made
special chars (1.0 way) or special char insets (better). This way, you
could display them as you like, with a nice color, and would not fear
to have them mixed with a real character.
Richard> I think the latter form would be just to limiting. ANd it has
Richard> a bigger problem: we would have to be able to embed an entire
Richard> buffer, with all that implies, within the inset.
Do you plan to put an entire buffer *inside* an <IF foo=bar>?? This
seems a bit extreme to me...
Whereas I can understand something like
<IF foo=bar> several pages here <ENDIF>
I do not really understand why you would do
<IF foo="several pages here"> Hello! <ENDIF>
Richard> Given that I can make the delimiters change on the fly, the
Richard> only real compelling reason I see for insets is that they're
Richard> language independent. (curly quote v. guillemot ).
Giving a special sense to a charcter in a word processor does not make
sense, of course. Even in word, I am not sure that the delimiter was a
guillemot: I guess it is a special char which looks like that on
screen. My advice is: use a special char (or inset), and make it look
as you like.
Richard> Conceivably, though, an inset could include a hint as to it's
Richard> counterpart, to allow a quick jump. But this link can't be
Richard> *too* strong, as it's easy to break by sticking another
Richard> between them. And this sticking between them should be
Richard> possible for the clever user.
Would you care giving an example?
Richard> And then the question of how to create a new type of inset.
Richard> I see that it would be a subclass, but do I do it as a single
Richard> class that could have two values, a subclass for mminset,
Richard> with subsubclasses begin and end, or some other way. ANd
Richard> what would i need to know to make it display?
Have a look at insetspecialchar.[Ch]. All you would have to do is add
two new chars here.
Richard> Also, this may be my lack of knowledge, but wouldn't insets
Richard> be harder for an external script to read than a special
Richard> character?
For an external script, yes. But I thought you wanted to do it internally??
JMarc