Duck
Duck

Reputation: 101

While Creating a Custom Keystroke Script in Adobe Acrobat Pro DC initializing variable "AF" deletes whole script

When I attempt to create the following Array

var test = ["AF"];

I have tried the initialization in the Debugger and it works fine but it won't work in the PDF.

I also tested

var test = "AF";

that also doesn't work. Why can I not initialize the String "AF" using a Custom Keystroke Script in Adobe Acrobat Pro DC?

While testing I used the strings "Af", "BF", "ALFALFA", "AFTER", "AFRICAN" and "NAFTA", the first 3 work but as long as there is a capital "A" and a capital "F" in the string in that order it makes the entire script vanish.

I go into edit Custom Keystroke Script:

Step 1

I then type the offending var test = ["AF"]; and click OK.

script

Then it drops me back out to this.

After I click OK

When I go back in and try a different string it does this.

What it should do

Upvotes: 0

Views: 775

Answers (2)

Angela McCloskey
Angela McCloskey

Reputation: 11

"SOUTH A\FRICAN RAND" "A\F"

Using an escape character fixes the problem.

Upvotes: 1

joelgeraci
joelgeraci

Reputation: 4917

That's a bug. Acrobat uses pre-canned functions to map the user interface into JavaScripts. They all start with AF. For example, setting ...

AFNumber_Keystroke(nDec, sepStyle, negStyle, currStyle, strCurrency, bCurrencyPrepend)

... as the custom keystroke script will cause Acrobat to switch the properties dialog to the image below.

enter image description here

The code is actually still in the field dictionary but Acrobat is programmed to display this dialog when it sees that script. It seems that the code in Acrobat to detect these scripts is overly aggressive and is trying to convert any code string with AF in it into one of the dialog substitutes.

Upvotes: 1

Related Questions