Hi Brett,

>     blah blah
>     [ REBOL [Title: "Sample"] print now]
>     blah blahblah blah
>     blah blah
>
> Strangely enough, the Script? function that Yos pointed out seems to give a
> useful result in this case - the beginning of the embedded script, but not
> when the script is not embedded. Odd. Anyway, at least it will tell you if
> there is no point continuing :-)

Can you do an example? Here it works (1.2.10.3.1).

>From my tests, the header is not seen only if

    before REBOL [] there is some no space chars

AND

    there is not a newline between the chars and REBOL []

The only difference i see is this:

  script? "aa^/rebol[]" ;== "aa^/rebol[]"
  script? "aa^/[rebol[]" ;== "[rebol[]"

This could be a bug.

Note also that in the embedded case the final ] can be omitted.

So i think that this is enough:

 load-header: func [
    "Load and construct a Rebol header object"
    str [file! url! string!]
 ][
         if str: script? str [
            attempt [
                construct/with first load/next find find str  "rebol" "["
                    system/standard/script
            ]
        ]
  ]

    probe load-header "# aa^/rebol[needs: [1]]"

The function return none if the header block is bad formed, like in case like
these:

"rebol ["

Note that script? returns a positive answer in these cases:

 script? "rebol ["

so we need the attempt in the function.

---
Ciao
Romano

-- 
To unsubscribe from this list, just send an email to
[EMAIL PROTECTED] with unsubscribe as the subject.

Reply via email to