invalid variable name

Get help using and writing Nisus Writer Pro macros.
Post Reply
credneb
Posts: 142
Joined: 2007-03-28 07:30:34

invalid variable name

Post by credneb » 2007-04-25 19:03:31

Continuing learning the new macro language and therefore Perl, the first part of an effort has the variable $vprior, which causes no complaint until the last time it appears. NWP returns the error "invalid variable name on line 10"

##cInsert Prior Right Paragraph Number##

$vprior = Read Clipboard cvPrior #get counter
$pasteStr = 'undefined'

Begin Perl #initialize counter if need be
if ($vprior == 0) {
$vprior = 1;
} else {
$vprior += 1; #<<<<<<HERE
}
End

What is wrong? Perl doesn't complain in the first If, so it apparently considers the variable name valid at that point.

Changing this line to

$vprior = $vprior + 1

brings a new complaint about an invalid assignment operator.

The named clipboard exists, and whether a value is preassigned to the clipboard or not, the same thing happens.

I am experimenting trying to use named clipboards to store variables and make them persistent until global variables come along.

Cliff Bender

User avatar
martin
Official Nisus Person
Posts: 4251
Joined: 2002-07-11 17:14:10
Location: San Diego, CA
Contact:

Post by martin » 2007-04-25 21:44:14

This is actually a few bugs teaming up to confuse you. The most critical one is that some of the macro commands don't like to have a comment on the same line. Eg: remove the comments "get counter" and "initialize counter if need be".

Also, for this line you probably meant to use a string literal:

Code: Select all

$vprior = Read Clipboard "cvPrior"

credneb
Posts: 142
Joined: 2007-03-28 07:30:34

Post by credneb » 2007-04-26 06:17:45

Ah! Thank you very much for the help (and the responses to my other posts).

Cliff Bender

Post Reply