Exit
  • Global community
    • Language:
      • Deutsch
      • English
      • Español
      • Français
      • Português
  • 日本語コミュニティ
  • 한국 커뮤니티
0

Organizing scripts

Contributor ,
Sep 07, 2025 Sep 07, 2025

I am sure this is a challenge we all face at some period:

 

I have been downloading a lot of scripts lately, and my file structure is getting messy. I see that ID looks for scripts in two places:

 

C:\Users\owner\AppData\Roaming\Adobe\InDesign\Version 20.0-ME\en_IL\Scripts\

as well as:

C:\Program Files\Adobe\Adobe InDesign 2025\Scripts\Community\Scripts Panel

 

and maybe elsewhere?

 

I want to organize everything in one directory and then break that up into subdirectories.

 

So, where should everything be going?

 

And is there a third-party tool for organizing scripts more efficiently?

 

Thank you, and have a good day!
Susan Flamingo

 

edit: I would really also be able to add short notes to the script, see if a hotkey has successfully been assigned, and much more metadata

Also, i have some vision challenges and I would like to enlarge all the text in the script panel.

TOPICS
How to , Scripting
437
Translate
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
Community Expert ,
Sep 07, 2025 Sep 07, 2025

There is no 3rd party tool for organising. You can create folders inside these folders and they should be visible in the scripts panel. Another this is that you can keep your scripts in folders anywhere in your computer and paste the shourtcut to these folders inside the folder you mentioned above. What I do is create a folder called Scripts, inside I create subfolders for categorising the scripts and paste the shortcut to the Scripts folder into C:\Program Files\Adobe\Adobe InDesign 2025\Scripts\Community\Scripts Panel. Now if i add a new script file into any of the folders or a new folder it will be automatically visible in the scripts panel

-Manan

Translate
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
Engaged ,
Sep 07, 2025 Sep 07, 2025

Hey @Manan Joshi 

Thanks for the tip.

I didn't know we could put shortcuts/ aliases in the Scripts Panel folder. Just tried it on Mac and it worked well. That can indeed be quite interesting.

I'm starting using GitHub and I was a bit worried/ disappointed with the way I would have to synchronize the Script Panel Folder. With the use of aliases, it may become much easier and sustainable. Especially if I can script the making/ update of all the aliases.

 

Translate
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
Community Expert ,
Sep 07, 2025 Sep 07, 2025

@Fred.L I have 1000s of scripts and I can't have them all loaded so aliases didn't work well for me. Now I use a custom script that copies a hand-curated list of my scripts into the appropriate folders of the apps I use. My case is no doubt unusual, so I am just mentioning for an extra twist on the topic.

 

I also use hard links of my github scripts so that they can exist in multiple places—my local github repo, and also my normal scripting folder, for example, and of course my app-specific loaded folders. This means that if I find a bug in any of those scripts/library files, I just update one and it will update all of them at once.

- Mark

Translate
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
Engaged ,
Sep 07, 2025 Sep 07, 2025

Hey @m1b 

Hard links… that's something I didn't know existed… Thanks for the information.

Things are becoming even more interesting now.

 

If I understand what you're saying, tell me if i get it wrong.

- You have your GitHub repos somewhere on your disk
- You create a hard link of some any script and place these hard links into the Script Panel folder (manually or semi-automated via some script, Apple Shortcuts app. or else)

- You can either edit the scripts via ID/VS Code (or else) or via GitHub (then pull/push/ whatever)

- Both of the instances of the edited script will be updated.

 

If it is what I think it is, that looks like something I'll be happy to try ^^

Translate
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
Community Expert ,
Sep 07, 2025 Sep 07, 2025

> If I understand what you're saying ...

 

Yes! You understand.

 

One gotcha though. Be careful when you're using git for version control and you want to revert to a previous version of a hard-linked file: the normal revert will replace the hard-link with a new non-hard-linked file. Instead I do a copy/paste of the editor in VSCode and update the hard-linked file with the old contents that way. That's where things can get a bit complex. Otherwise it works great. I use an automator shortcut (a service that appears under the context menu on the Finder) to make the hard links and I always give them a gray finder label just to help keep track. I have another automater shortcut that reports how many hard links exist for the selected file. PM me if you want me to send you a copy of those services—I can't easily post them here because they are MacOS bundles.

Translate
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
Engaged ,
Sep 07, 2025 Sep 07, 2025

Thanks for the extra pieces of information

I will definitely PM you. Thanks for the proposal. It'll save me some precious time ;).

 

I've got quite a few scripts I'd like to share and Github is certainly a place where I can easily update everything and avoid sharing hard copies of scripts that are to become obsolete over the time.

 

 

Translate
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
Engaged ,
Sep 07, 2025 Sep 07, 2025

Hey  ,

 

This is a very interesting topic, thanks for bringing it to the table. I'm looking forward to hearing how people deal with their own scripts. It's going to be interesting, possibly very inspiring ^^

 

I would say that the final choice should be something that fits your own workflow, the way you are using scripts. I've tried different ways myself and I've been using the following method for about 1 year, and haven't been across a better way so far. I'll try to describe my process. I believe it's more valuable than the outcome.

 

Statement:
There are 3 different main folders that ID scans for the Scripts Folder: From Community / Application and User folders

I usually delete the Application and Community scripts folders after installing a new version of ID (explaining why below) 

 

How I'm using scripts and questions to ask yourself.

This is the question I asked myself first. How do I want to run my scripts? From there, it's easier to find a process to organise them. The answer was :
- I want to get to them fast. I don't want to waste my time looking for the right script in a long list. With more than a hundred scripts in the Scripts Panel, it would be cumbersome. 
- Use folders? Well, it helps sorting them out, for sure. Creating subfolders like Tools/ Structure/ Objects etc. is useful. But opening/ closing the sub-folders doesn't help for getting to them fast

- Re-Naming them carefully. Yes, this seems straightforward. Why not implementing the folders aspect within the names then? That's a viable option

A script runner?  P.Kahrel did make a script that helps running scripts. I decided to make something similar and ended up with a script that checks folders’ content and adds the scripts in it. It's something I'm using now for special Routines but it's not quite viable for the rest of the scripts.
- Accessing the scripts via Quick Apply. Then I found out that the Quick Apply native ID function was there. With Cmd+Entry, you can access many things. By default, it's not for scripts. But it can. Going into the options of the panel, you can change everything and activate the Scripts access. From there, Cmd+Entry became a script launcher that finds the best match to your scripts’ names while typing the letters. No need to write everything. 2-3 characters are enough to see the script you're looking for. With practice, you see where similar naming can be either an added value or the opposite. Great, you now have to know how to name your scripts better.

- Main folders. Using Quick Apply brings the scripts from Application and Community folders. For me, it was inconvenient. I'm not using them so I decided to delete these folders. (Not entirely true. I did a backup and saved the Break thread text script, which is just fantastic.)

- Naming the scripts. From there, I decided to put all my scripts in the Script panel folder, with a minimum of sub-folders. Sub-folders can still be useful. I'm using them for dropping my JSON files (saves of scripts’ settings mostly), automation routines, table formatting scripts, and "the vault" where I'm testing scripts.

Scripts are methodically renamed along their scope of practice, adding a prefix to their original names.

I'm using the following prefixes.
| Obj. | = for scripts that need selected objects

| Stru. | = for scripts that deal with Structure elements

| Tex. | = for scripts that deal with texts
| To. | = for scripts that are general Tools
| Tab. | = for scripts that deal with tables
| F. | = for scripts that I've done myself and are very specific
| _ | = for scripts for miscellaneous scripts, scripts’ settings readers, or any script that I want at the top of the Scripts Panel folder.
The list goes on with more specific prefixes, but you get the point, I'm sure.

Current use. 

Having set up everything, I can now run my scripts without touching my mouse or even opening the Scripts panel. After a while, you'll know pretty well the names of your scripts. Even if you don't, you can still search for them with words, something you can't achieve with the Scripts panel. Only your eyes will help you there.
Shortcuts. This is something not to forget. You can add a shortcut to your script (via the ID EDIT menu). I'm using about 5 shortcuts for scripts. I've set up some more but I'musually having trouble remembering them. I guess using a Stream Desk (Elgato) doesn't help on the matter…

Translate
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
Contributor ,
Sep 07, 2025 Sep 07, 2025

Thank you for your attention and reply!

I see this will require a learning curve.

In the meantime, the best thing for me is using keyboard shortcuts. But there is one that stubbornly refuses to execute (the script works via the panel,) and when I apply the shortcut, it says "unassigned", weird.

 

I am amazed that nobody has developed a tool that would do everything i mentioned in OP.... sigh....

Translate
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
Engaged ,
Sep 07, 2025 Sep 07, 2025

Hey,

There are a number of shortcuts that are protected and can't be used, for some reasons.

I also experienced that, sometimes, ID seems not to be able to use a Shortcut that you know has worked before (for me, it's CTRL+SHIFT+F - on a Mac). Rebooting ID or the computer usually helps recovering a good behaviour. I would advise you to try that.

 

Shortcuts demand a low level access. Adobe programmers blocked the access via Extendscript for security reasons. This is one of the reasons why nobody has created a custom implementation. This would require a plugin developped in C++. 

Translate
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
Community Expert ,
Sep 07, 2025 Sep 07, 2025
quote

In the meantime, the best thing for me is using keyboard shortcuts. But there is one that stubbornly refuses to execute (the script works via the panel,) and when I apply the shortcut, it says "unassigned", weird.


By @SuzzyFlamingo

Possibly it's the scope of the shortcut you defined? Make sure the product area is aet to Scripts and context to Default.

Translate
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
Contributor ,
Sep 07, 2025 Sep 07, 2025

Yes, that helped. Context was set to "text" because I thought that was correct, as it acts on the selected text frame. But text and text frame are not the same...

Translate
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
Community Expert ,
Sep 07, 2025 Sep 07, 2025

@Fred.L regarding the Quick Apply panel: I do *exactly* that! It feels ironic that when a new version of Indesign is installed the Quick Apply panel filters out scripts and shows everything else, so I have to go through (with no documents open) and switch off everything and turn scripts on. So I *only* use quick apply for scripts. It suits me well.

 

P.S. in Illustrator I use Raycast to give similar functionality, which is awesome.

Translate
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
Engaged ,
Sep 07, 2025 Sep 07, 2025

Quick Apply is really great.

Keith Gilbert wrote a script that show an extensive amount of ID settings but Quick Access prefs are not one of them. I guess they are also low level settings that can't be accessible via Extendscript. It's a shame
I can relate having to manually reset the Quick access settings ^^
Translate
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
Community Expert ,
Sep 07, 2025 Sep 07, 2025
LATEST
quote

Also, i have some vision challenges and I would like to enlarge all the text in the script panel.


By @SuzzyFlamingo

 

Preferences > User Interface Scaling (will enlarge text everywhere).

Translate
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