Hi, Marck.

On Saturday, June 15, 2002, 1:59:07 PM, you wrote:

>> as opposed to:
>>       Marck D Pearlstone on TBUDL <[EMAIL PROTECTED]>
>> which would result from:
>>       %To=""%To=""%OFROMNAME on TBUDL" <[EMAIL PROTECTED]>"

>> Am I right?

> Actually - no! This won't work at all. It results in:

> %To=""     ; Blank the To field
> %To=""     ; Blank the To field again
> %OFROMNAME on TBUDL" <[EMAIL PROTECTED]>"
>            ; Include the literal string in the message, quotes and
>              all.

I guess the problem with doubling delimiters like this is that it
makes it impossible for the parser to know where the closing delimiter
is (so it has to take the next one). I'm used to programming languages
that won't let you put double quotes inside double quotes, or single
quotes inside single quotes....

>>> However, that macro could have been written: %To=""%To='"%OFROMNAME
>>> on TBUDL" <[EMAIL PROTECTED]>', which makes much more sense.

>> Yes, the same as Allie's suggestion, which is easily understandable,
>> but does NOT have the "embedded literal quotes", unless I've
>> misunderstood.

> You have. Doubling up of embedded quotes is only necessary when the
> string delimiter is the same quote type. When using single quotes as
> the string delimiter, double quotes can be embedded without having to
> double them up, but single quotes would have to be double. (Huh?
> What?).

Huh? is right! On second (careful) reading, I think I got it.

In other words:

%To='''%OFFROMNAME on TBUDL'' <[EMAIL PROTECTED]>'

Right?

Now...forgetting about the first %To=""...you and Allie suggested:

%To='"%OFFROMNAME on TBUDL" <[EMAIL PROTECTED]>'
    ||____________________|                           |
    |_________________________________________________|

Aha! It looks like we DO have the now-famous "embedded literal
quotes"!

> %To=""%To="""%OFROMNAME on TBUDL"" <[EMAIL PROTECTED]>"
> %To=''%To='"%OFROMNAME on TBUDL" <[EMAIL PROTECTED]>'
> %To=""%To="'%OFROMNAME on TBUDL' <[EMAIL PROTECTED]>"
> %To=''%To='''%OFROMNAME on TBUDL'' <[EMAIL PROTECTED]>'

> Variant 3 and 4 are complete nonsense because you can't use single
> quotes as delimiters in To: fields.

>> Would the following work and result in the literal quotes?

>>       %To=""%To="'"%OFROMNAME on TBUDL"' <[EMAIL PROTECTED]>"

> No, it wouldn't. It set's To: to a single quote and includes the rest
> as text in the message body.

> Use the one I gave (number two above).

NOTE the following:

>> In fact, I think something like this (or the original), rather than
>> the one you and Allie suggested, would be needed to avoid the

>>     Allie C Martin on [TBUDL] <[EMAIL PROTECTED]>

>> which is causing Allie problems, wouldn't it?

> Yes.

If I understood this time (no guarantees!), I think I was actually
wrong (and you were wrong to agree 8-)). I think your suggestion WOULD
give:

     "Allie C Martin on [TBUDL]" <[EMAIL PROTECTED]>

and avoid Allie's problem.

So, the gist of all this, I think, is in two of your statements:

1. Doubling up of embedded quotes is only necessary when the
   string delimiter is the same quote type. When using single quotes as
   the string delimiter, double quotes can be embedded without having to
   double them up, but single quotes would have to be double.

2. You can't use single quotes as delimiters in To: fields.

Are these two points explained anywhere in Help or the FAQ? It seems
that they're critical to a good understanding of macros, and if I do
understand the way they work now (I think I do), the whole thing
now makes complete sense. This was the missing link!

-- 
Keith Russell           mailto:[EMAIL PROTECTED]
Some people act crazy, others aren't acting."
Using The Bat! 1.60q under Windows XP 5.1 Build 2600 on a Pentium IV 2.4 with 512 MB.



______________________________________________________
Archives   : http://tbtech.thebat.dutaint.com
Moderators : mailto:[EMAIL PROTECTED]
Unsubscribe: mailto:[EMAIL PROTECTED]

Reply via email to