cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
] />

Discussions

Solve problems, and share tips and tricks with other JMP users.
Choose Language Hide Translation Bar
lwx228
Level VIII

JMP 19: How to open the script editor by double-clicking a table script?

Hi everyone,

I am currently using JMP 19.1 noticed a change in the UI behavior compared to JMP 18.

In JMP 18, when I double-clicked a table script in the left panel of a data table, it would automatically open the Script Editor. However, in JMP 19, the exact same action (left double-click) only triggers the "rename script" function.

Is there any workaround or preference setting to make JMP 19 behave like JMP 18, so I can directly enter the editing mode by double-clicking?

Thanks in advance for your help!

6 REPLIES 6
jthi
Super User

Re: JMP 19: How to open the script editor by double-clicking a table script?

lwx228
Level VIII

Re: JMP 19: How to open the script editor by double-clicking a table script?

Hehe: I also asked gemini3.1 pro, and it happened to provide this link as well.

But it is different from my requirements

I like using JMP 18
Thanks!截图.png

hogi
Level XIII

Re: JMP 19: How to open the script editor by double-clicking a table script?

In JMP19, several cool features disappeared: Undocumented Secrets 
In JMP19.1 most of them were added again.  But double click to edit a Table Script is still absent.

OK, they are still visible, and there is still a workaround how a user can edit them ...
But after years of "Double Click" many users wonder : is there an argument why double click can't come back?

lwx228
Level VIII

Re: JMP 19: How to open the script editor by double-clicking a table script?

I've also completely changed my habit

Try not to save the script in the table as much as possible

Many scripts can be designed to be usable and saved separately by themselves.

There are so many JSLS that sometimes you have to search to find out.If the script is in the table, it is very difficult to search for it

 

Thanks!

lwx228
Level VIII

Re: JMP 19: How to open the script editor by double-clicking a table script?

Fully automated.

Set Clipboard( txt );dt = New Table("test");Current Data Table(dt);dt << Bring Window To Front;Try(Main Menu("Paste With Column Names"));
Wait(0.5); dt << Clear Column Selection();
Column(dt, 1) << Set Selected(1);
库 = Load Dll("User32");库 << DeclareFunction("keybd_event", Convention(STDCALL), Alias("keybd_event"),
    Arg(UInt8, "bVk"), Arg(UInt8, "bScan"), Arg(UInt32, "dwFlags"), Arg(UIntPtr, "dwExtraInfo"),
    Returns(Void)
);
VK_F2   = Hex To Number("71"); VK_LEFT = Hex To Number("25"); KEYUP   = Hex To Number("02"); 

库 << keybd_event(VK_F2, 0, 0, 0);库 << keybd_event(VK_F2, 0, KEYUP, 0);Wait(0.3); 
库 << keybd_event(VK_LEFT, 0, 0, 0);库 << keybd_event(VK_LEFT, 0, KEYUP, 0);
Wait(0.1);库 << Unload Dll();

截图.png 

hogi
Level XIII

Re: JMP 19: How to open the script editor by double-clicking a table script?

nice trick !
somehow a meta function - a script that allows a standard interaction with the GUI.
so, one could link Shift-F2 to an analogous jsl code which triggers a keystroke sequence via the  right-click context menu *) to open the script editor ;- )

to close the circle: F2 works as well for table scripts: to rename the selected Table Script.
So, more than enough ways to change the name of the table script.




*) something like the below code, but with control for the right click popup menu ...

VK_APPS   = Hex To Number("5D");   // Windows Application / Context Menu key
VK_DOWN   = Hex To Number("28");   // Arrow Down — navigate menu items
VK_RETURN = Hex To Number("0D");   // Enter
KEYUP     = Hex To Number("02");

dll << keybd_event(VK_APPS,   0, 0,     0);
dll << keybd_event(VK_APPS,   0, KEYUP, 0);
Wait(0.3);  // wait for context menu to appear

// Navigate to 2nd menu item (2x arrow down - unfortuntely: no effect, keybd_event is too old)
dll << keybd_event(VK_DOWN,   0, 0,     0);
dll << keybd_event(VK_DOWN,   0, KEYUP, 0);
Wait(0.05);
dll << keybd_event(VK_DOWN,   0, 0,     0);
dll << keybd_event(VK_DOWN,   0, KEYUP, 0);
Wait(0.05);

dll << keybd_event(VK_RETURN, 0, 0,     0);
dll << keybd_event(VK_RETURN, 0, KEYUP, 0);

 

Recommended Articles