F Keys to run actions are full, any other option ?

New Here ,
Mar 25, 2022 Mar 25, 2022

Copy link to clipboard

Copied

I'm running out of space for running shortcuts related to actions
I mean the f keys. 
Is anyone aware of a solution to assign an action to other key bindings?

I'm also running illustrator with a stream deck so already have access to the main shortcuts but for the tools not for the actions.  too bad I can't run actions from there...

on the same subject does anyone know if adobe would activate the use of the f keys 13 through 24? it would be very handy?

TOPICS
Feature request , Scripting

Views

262

Likes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Adobe Community Professional ,
Mar 25, 2022 Mar 25, 2022

Copy link to clipboard

Copied

you already used up all 48 action shortcuts?!!

 

[edit] sorry it's 44, F1 is not available

Likes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
New Here ,
Mar 25, 2022 Mar 25, 2022

Copy link to clipboard

Copied

Well yes almost ^^' 

mainly because most of them are related to scale / rotate / reflect with different settings so it clogs a lot of keys 

Likes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Adobe Community Professional ,
Mar 25, 2022 Mar 25, 2022

Copy link to clipboard

Copied

hmm...how about Button Mode? would that help? it's not as convenient as keystrokes but it gives you one click access and button color options for easier spotting if you have many of them...there's probably no limits to the number of actions you can have

Likes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
New Here ,
Mar 27, 2022 Mar 27, 2022

Copy link to clipboard

Copied

Yes it can be a good solution too. 
If this panel is always at the same place in my workspace I could also link an mouse click to run them from there so it could work. 


on another subject, your name was sounding familiar to me in some way and I founded why 😄 
you helped me a while back for a gradient making script that's why ! 
Still useful and I use it a lot so thx again ! 

//Carlos Canto
//Hi Max Mugen creating gradient stops can be scripted.
//First, you need to create a swatch group, name it "gradientBars", place the 2 swatches you need in your gradient.
//Once you do that, run this script

 

// script.name = createGradientBarsSwatch.jsx;
// script.description = creates a 2 color gradient bar swatch
// script.requirements = a color grouped named "gradientBars" with 2 swatches
// script.parent = CarlosCanto // 02/23/2020
// script.support = canto29@gmail.com
// reference https://www.facebook.com/groups/adobeillustratorusershelp/permalink/585499995368691/


function main() {
var idoc = app.activeDocument;
var sel = idoc.selection[0];
var colors = idoc.swatchGroups['gradientBars'].getAllSwatches();
var colorIdx = 1;
var stops = Number(prompt ('Enter Number of Stops', 32, 'Gradient Bar Maker'));
var ramp = 100/(stops-1);


// add a swatch
var newGradient = idoc.gradients.add();
newGradient.type = GradientType.LINEAR;


// creating gradients creates 2 stops automatically, add the rest of the the stops to make as many as needed
for (var st=2; st<stops; st++) {
newGradient.gradientStops.add();
}


// apply data to the virtual gradient
for (var a=0; a<stops; a++) {
newGradient.gradientStops[a].rampPoint = ramp*a;
newGradient.gradientStops[a].color = colors[colorIdx^= 1].color;
}


// add virtual gradient to swatch
var colorOfGradient= new GradientColor();
colorOfGradient.gradient = newGradient;
}
main();

Likes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Adobe Community Professional ,
Mar 27, 2022 Mar 27, 2022

Copy link to clipboard

Copied

Hi Max, I do remember you and that script.

 

as a side note, my facebook account got hacked about a year ago, I don't have access to it anymore 😞

 

I'm trying to contact Mark Zuckerberg to help me get it back, but no luck so far.

Likes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Adobe Community Professional ,
Mar 29, 2022 Mar 29, 2022

Copy link to clipboard

Copied

i hear mark is only reachable in the metaverse these days.

Likes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Adobe Community Professional ,
Mar 29, 2022 Mar 29, 2022

Copy link to clipboard

Copied

LATEST

😆😆

Likes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Enthusiast ,
Mar 25, 2022 Mar 25, 2022

Copy link to clipboard

Copied

I use Logitech software to bind my gaming mouse to F13 - F24, then AutoHotKey to bind F13 - F24 to different keybindings (anything I want) including running scripts which trigger actions which have no hotkeys associated with them. This is specifically a Windows solution, but I've heard you can do similar things with other macro programs like Alfred, SharpKeys, etc (believe these aren't free, though).

 

Scripting named actions is rather easy:

 

app.doScript("Revert", "Default", false);
// (actionName, actionSet, showDialog?)

 

And you can execute JSX scripts in Illustrator via AHK arbitrarily through COM objects:

 

; At some point above the hotkey, like the Auto-Execute/header section of script
com := ComObjCreate("Illustrator.Application")

; Then coding something that triggers on an F23 keypress:
F23::
  com.DoJavaScriptFile("action1.jsx") ; Filepath is relative to AHK script locale
  return ; Return null / stop execution of code after this line for this hotkey

F24::
  com.DoJavaScriptFile("action2.jsx") ; etc
  return

 

You can just write one-line JSX scripts referring to the named Action like above, and connect them to any hotkey you'd want via the AHK COM objects above. That allows you to run any Action from any key or combination of any amount of keys regardless of the limitations you'd have with the keybindings Adobe gives you. There's probably some equivalent in other macro programs but I'm personally unfamiliar.

Likes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Enthusiast ,
Mar 25, 2022 Mar 25, 2022

Copy link to clipboard

Copied

Been a while since I'd done this and I realized my main AHK script doesn't directly call COM this way so I wanted to reconfirm before leaving any bad information online. I've successfully ran this AHK script:

#NoEnv
SendMode Input
SetWorkingDir %A_ScriptDir%

com := ComObjCreate("Illustrator.Application")
F1::
  com.DoJavaScriptFile("C:\Users\TRSch\OneDrive\Documents\Adobe Scripts\testAlert.jsx") ; Couldn't get this to work without absolute path for some reason
return

For some reason, I wasn't able to use local paths despite having SetWorkingDir -- may be rusty in AHK now that I primarily code in other languages though.

Likes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
Mar 27, 2022 Mar 27, 2022

Copy link to clipboard

Copied

Here is my version

#NoEnv 
;#Warn ;Enable warnings to assist with detecting common errors.
SendMode Input 
#SingleInstance force

#IfWinActive ahk_class illustrator
  F1:: RunScript("Script_1.jsx") 
  F2:: RunScript("Script_2.jsx")

RunScript(script)
{
 ;Main script folder
 FullPath := "d:\Resources\Scripts\Illustrator\" . script
 Run Illustrator.exe %FullPath% , ,Max
 return
}

Likes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
New Here ,
Mar 27, 2022 Mar 27, 2022

Copy link to clipboard

Copied

Thank you all for the helps and bits of code, it will def help 
I'll have a go at AHK and js coding for a bit and see how it goes 
Pretty unfamiliar with both but we'll see haha 

Thanks again for the help ! 

Cheers 

 

Likes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines