Loading ...
Sorry, an error occurred while loading the content.

Re: [peditors] getting rid of multiple consecutive blanks ?

Expand Messages
  • John Markley
    ... I think I should provide a little more explanation since you are new to pScripting. What I have been sending you are moderately complex chains of
    Message 1 of 68 , Nov 9, 2009
    • 0 Attachment
      Quoting John Markley <jmmjr@...>:

      > Again, each pScript in a chain is a complete pScript on its own, and
      > it doesn't matter what order they appear. The command
      > "/&script$[@@xxx@@]}" says, as the final action of this pScript, go
      > find the pScript named xxx and run it. It doesn't matter where in the
      > pad the pScript named xxx resides. The code Paul wrote into pedit and
      > pToolSet to run pScripts goes to the very start of the pad and scans
      > down until it finds {xxx: and runs it.

      I think I should provide a little more explanation since you are
      new to pScripting. What I have been sending you are moderately
      complex chains of pScripts. Unless you have read the pScripting
      sections of the pedit manual (you should) it may not at all be clear
      why a chain is needed. Why not start with a pScript name, say
      {SPdelete::, then put in all the pTokens and pExpressions in order,
      and end it with the closing } bracket? The answer is twofold - one,
      there is a limit to the amount of info that the Palm OS will process
      in one pScript chunk (the 55-byte limit), and two, there is a
      hierarchical order in which the OS processes the pScript commands
      which does not necessarily follow the order that you want them to be
      processed in. The only way to deal with these two limits is to
      accomplish the overall task which the pScripts automate by linking
      sequential pScripts together in a chain. So, when pScript "A" has
      done all it can (often determined by trial-and-error), you write in a
      final instruction to now run pScript "B", and carry on the task. This
      looks like

      {A::
      /blah blah blah
      /&script$[@@B@@]}

      It does not matter where in your pScriptPad A and B are, separated or
      not, nor in what order. The command "/&script$[@@B@@]}" says to go
      find and run B wherever it is.

      ~ John
    • John Markley
      ... OK, now I ve taken it further. One of the disadvantages of the MemoToNote pScript is that it attaches the note to an untimed blank event on todays date
      Message 68 of 68 , Nov 10, 2009
      • 0 Attachment
        Quoting John Markley <jmmjr@...>:

        > Very good. With regard to the "{MemoToNote:" pScript, which evidently
        > is working ok, it ends with your new DateBk memo open, rather than
        > closing the note and showing the entry in Day View by tapping the
        > "Done" button. I did this because there was an exceedingly gnarly
        > problem getting the pScript to do that final "Done" button activation.
        > I have now solved that with a rather cool little trick. If you
        > would prefer to have the pScript end with the DayView entry rather
        > than the open note, replace your pScript with this one-

        OK, now I've taken it further. One of the disadvantages of the
        MemoToNote pScript is that it attaches the note to an untimed blank
        event on todays date and you then need to manually put in the event
        item text (if any) and assign the date and time. The other pScript,
        "pDateMemoNote" would leave you in the pDateTool dialog to select the
        time and date (if you could get pDateTool working - any luck?). Now,
        the new MemoToNote, below, will transfer the memo text to an untimed
        blank event on today's date, as before, but it will end by opening the
        DateBk "Details" dialog, so you can assign time, date, and put in any
        event item text you want.

        {MemoToNote::
        /xc Z
        /xc C
        /0x1C
        /&script$[@@MTN1@@]}
        {MTN1::
        /&launch[@@DateBk6@@]
        /xc N
        /&control[@@No@@]
        /&script$[@@MTN2@@]}
        {MTN2::
        /&script$[@@MTN3@@]}
        {MTN3::
        /xc A
        /xc P
        /&varSet[$1,0]
        /&script$[@@MTN4@@]}
        {MTN4::
        /&varAdd@[$1,1]
        /&control[@@Done@@]
        /&script$[@@MTN5@@]}
        {MTN5::
        /!/$f
        /&ifScript@[$$==1000,@@MTN6@@]
        /&ifAbort@[$1>=10]
        /&ifScript@[$$!=1000,@@MTN4@@]}
        {MTN6::
        /&control[@@Det@@]}

        ~ John
      Your message has been successfully submitted and would be delivered to recipients shortly.