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

Update Link, Update All Links, SHORTCUT?

Advisor ,
Aug 14, 2013 Aug 14, 2013

Found a great way to work live, on the iPad, from the computer.

BUT, Adobe being Adobe, it's not perfect.

If I click to "Edit Original" and then edit, and save, I must switch back to InDesign before it actually does the update. 

That's problem 1.  I'd really rather not have to make that switch back.  Any way around that?

Second, haivng switched back to InDesign to get that "live" update, if I [Command + Tab] back to the editing app, the "live" updating link is lost, so the next change I make I must go back to InDesign and use the TINY little button at the top of the screen to find the Update Link choice.

I'd much rather a Keyboard Shortcut for Update All Links, rather than having to deal with this.

Better yet, constant live updates would be epic.  Anyways to do this?    

28.2K
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

correct answers 1 Correct answer

Contributor , Aug 14, 2013 Aug 14, 2013

@dissidently: You can  define a shortcut for the Update All Links command. It's in the Panel Menus area of the Keyboard Shortcuts dialog box. Look for "Links: Update All Links".

@Sandee: I guess the original poster is using some kind of screen sharing application (like VNC) on his iPad, mirroring his Mac. The tiny little button he mentioned may be the yellow triangle with an exclamation point that appears on the top of changed-but-not-yet-updated image frames in ID.

Translate
Advisor ,
Aug 14, 2013 Aug 14, 2013

argh, so here comes the limitation, that scripts are "run once" things?

So, if that's the problem, could I invoke the ExtendScript the moment I switch back to InDesign?


This way I could [Command + Tab] twice, into InDesign and back to Illustrator, and see the update happen without any other input from me.

And I'm guessing this would be a modest scripting excercise to get me started on scripting in Adobe apps.  And get me at least a little more stoked about working with Adobe's general other "clunkiness".

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 ,
Aug 14, 2013 Aug 14, 2013

I'm not following the urgency of keeping the status as updated. Eventually you're going to have to save the document so you could fold the update into the save like this:

tell application "Adobe InDesign CS6"

    tell active document

        update every link

        save

    end tell

end tell

Also, updating just  updates the link’s preview on the page, if you print a layout with modified links the modification is printed. And if you open the link from the layout rather than the Finder via Option-Double-Click, changes will be updated automatically when you save the link.

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
Advisor ,
Aug 14, 2013 Aug 14, 2013

I'm editing elements of a User Interface for iPad within Artboards in Illustrator.

Those Artboards are then structured inside InDesign so they perfectly fit a 2048x1536 Retina iPad, and that's "broadcast" out through AirDisplay onto the iPad so I can "live" preview all the changes I'm making, on the intended device. 

See the reply here, for how I'm doing this:

http://forums.adobe.com/message/5585004#5585004

So the faster I can make this happen, the more dynamic the editing process, and the faster I can get the desired look and feel to the UI I'm designing.

And there's more than a few "pages" to this UI, so the better I have this running the faster and more profoundly it can help me.

Does that make sense as to what and why?

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 ,
Aug 14, 2013 Aug 14, 2013

Open the Illustrator files from the InDesign page rather than the Finder and the updates will happen automatically.

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
Advisor ,
Aug 14, 2013 Aug 14, 2013

This only happens the first time I switch back to Indesign.  All subsequent returns require updating the link.

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 ,
Aug 14, 2013 Aug 14, 2013

You need to use edit original (or edit with) every time you want to make

a change or you will be faced with updating the link manually.

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 ,
Aug 14, 2013 Aug 14, 2013

You could script it from AI. Something like this:

tell application "Adobe Illustrator"

    tell document 1

        save

    end tell

end tell

tell application "Adobe InDesign CS6"

    tell active document

        delay 3

        update every link

        save

    end tell

end tell

Paste the code into a AppleScript Editor doc and save it to your AI scripts folder and will be available in File>Scripts.

It needs to go in ~:Applications:Adobe Illustrator CS6:Presets:en_US:Scripts

(not ~:Applications:Adobe Illustrator CS6:Scripting:)

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
Advisor ,
Aug 14, 2013 Aug 14, 2013

First thing, Rob, I cannot believe that's a scripting language.  It's like Apple was left in charge of what a scripting language should look like.  AMAZING!

I thought you'd just posted pseudo code.  But I dropped it into the script editor in the off chance that it wasn't.  WOW!

WOW WOW!  Everyone should have a chance to work with this.  It's better than the day I found out about Macros in Word being programmable.  (LONG TIME AGO!)

Some oddness, while I figure out how to get this working.

-  Indesign launched the moment I saved this into the folder: Applications:Adobe Illustrator CS6:Presets:en_US:Scripts

That was a bit spooky.  Clearly Apple Script really is OS functionality powerful. 

- Once in Illustrator, I didn't see the script in the Script list, but choose "Other..." and load it in...

but...

- File>Script insn't isn't loading a script, it's "run once..." but now where is the script for re-invocation?

so, excuse me while I sound like a moron, but this is what I understand is happening:

1. I am invoking the script by loading it through the File>Script menu

2. Script initiates communication with Illustrator via the name "Adobe Illustrator" // why does this not need the appendage "CS6" that you use later for Indesign?

3 It saves "document 1" which I assume is an Indesign or OS X variable for the first opened Illustrator doc in this session (or the only document if there's only one open)

4. The two "end tell"'s close out the communication between the script and Illustrator and the script and document 1. 

5. Indesign is called

6. Indesign's active document is called

7 A delay is summoned (probably you being safe, but I deleted this line for speed of response)

8. "update every link" is called //truly baffled that this is THIS easy.  REALLY?  AMAZING!!!

9. Save the current doc

10, 2x end tell close communication with the active doc and Indesign.

So, my big question, how do I make this script automatically invoke everytime I save in Illustrator?

Or, failing that, how do I assign this Script to a shortcut?

And...

How do I buy you a case of beer?

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
Guru ,
Aug 14, 2013 Aug 14, 2013

This only happens the first time I switch back to Indesign.  All subsequent returns require updating the link.

Keep the frame holding the image active and it will update automatically.

Don't complain until you know how to use the program.

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
Guru ,
Aug 14, 2013 Aug 14, 2013

This way I could [Command + Tab] twice, into InDesign and back to Illustrator, and see the update happen without any other input from me.

Good Lord! You REALLY are stubborn when it comes to forcing the program to work the way you want it to.

If it were me I would Cmd-Tab into ID, invoke the shortcut for Update All Links, and then Cmd-Tab back to AI.

One keyboard shortcut extra is all you need.

You want to jump through hoops to get an ID script to auto update the links.

I believe there are ways to get scripts to "watch" ID to be invoked when necessary. But why? It's not that hard to press a key.

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 ,
Aug 14, 2013 Aug 14, 2013

If it were me I would Cmd-Tab into ID, invoke the shortcut for Update All Links, and then Cmd-Tab back to AI.

The script I posted doesn't add any key commands and there's no need for a listener because we know the update just happened with the Save in Illustrator. The script doesn't need to activate ID in order to update. It would save at least 3 keystrokes for every save.

The OP's workflow is clever but not common, and Adobe shouldn't be expected to address uncommon workflows directly—that's what scripting is for.

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
Advisor ,
Aug 14, 2013 Aug 14, 2013

Rob, there is some weirdness to this.

The script, when invoked manually inside Illustrator, works.

However not fully.  The updated changes show, but the file is not completely updated, so it's the low resolution "proxy" image that's shown, and when switching to InDesign it's still in need of a manual update before it will show the native resolution of the changes done in Illustrator.  The warning for a required update is ON in the Links panel.

btw where are you getting a reference from to know things like "update every link" are the functions?

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 ,
Aug 15, 2013 Aug 15, 2013

A delay is summoned (probably you being safe, but I deleted this line for speed of response)

You need a delay otherwise save and update are called at the same time and the update can't happen without a complete save.

So, my big question, how do I make this script automatically invoke everytime I save in Illustrator?

Unfortunately AI doesn't let you assign key commands to scripts. I do it with QuickKeys, but there are also shareware utilities like QuickSilver. If it isn't showing in the menu you didn't get it completely saved to the right folder. Make sure the File Format is Script when you save from ScriptEditor.  Here's my example in the menu:

ScreenSnapz001.png

Every scriptable app has a dictionary including the Finder. SriptEditor>File>Open Dictionary.

ID has an AppleScript manual, which you can Google. Also checkout the ID Scripting Forum or www.macscripters.net.

AppleScript is readable, which is good for beginners but in the end makes it clumsy for advanced uses. You'll see most scripters are using JavaScript because it is cross platform.

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
Advisor ,
Aug 15, 2013 Aug 15, 2013

argh,

Rob Day wrote:

A delay is summoned (probably you being safe, but I deleted this line for speed of response)

You need a delay otherwise save and update are called at the same time and the update can't happen without a complete save.

hahaha. A slap to the forehead, for me.  I'll try it with the Delay, see if it works more thoroughly.  Don't mind me.  I'm old school, I like every bit of performance i can get.

Which is to say I think Illustrator might be programmed in Smalltalk, be then translated, on the fly, to Java, before being run as a MONO framework single thread, low priority, step-child.  I'd never ever imagine something running this slowly in this day and age.  EPIC Fail.  Cue trumpets.

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 ,
Aug 15, 2013 Aug 15, 2013

I'd never ever imagine something running this slowly in this day and age.

Maybe something's wrong with your file or system. AI runs fine here.

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
Advisor ,
Aug 15, 2013 Aug 15, 2013

Rob Day wrote:

I'd never ever imagine something running this slowly in this day and age.

Maybe something's wrong with your file or system. AI runs fine here.

I'm using a Retina Macbook Pro, 15 inch.  I'm not alone in noticing it's woeful performance on these.  And someone else recently mentioned they've bought a new Haswell Windows 8 PC, fully rigged out, and it's woeful on that as well.

I actually have also tested it on Bootcamp... mild improvement, but still woeful.

Best performance increase is from turning off "Smart Guides".  Which are in no way "smart".

btw it seems everyone I've spoken to has noticed the same patterns of woeful illustrator (and InDesign) performance.

And without any taxing of CPU/GPU.

A friend of mine told me Adobe might be using a weird UI framework for their code.  Don't know how true that is.  Haven't had it verified.  Imagine if it was Qt.

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 ,
Aug 15, 2013 Aug 15, 2013

I also have a Retina laptop and an iMac—lightning fast on both.

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
Advisor ,
Aug 15, 2013 Aug 15, 2013

AppleScript is readable, which is good for beginners but in the end makes it clumsy for advanced uses. You'll see most scripters are using JavaScript because it is cross platform.

The legibility, elegance and power of AppleScript (on first impression) is tooooo attractive.  I'm lured in.  I want to know more.


That Adobe has had the good foresight to make Indesign and Illustrator work with this language is compelling enough to likely make it easier to suffer through some of their other (less admirable) decisions.

However nothing is helping me get through Illustrator's performance woes without wanting to find a way to speed it up.  I really cannot believe how sluggish and unresponsive it is.  //might have mentioned this before.

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 ,
Aug 15, 2013 Aug 15, 2013

The legibility, elegance and power of AppleScript (on first impression) is tooooo attractive.  I'm lured in.  I want to know more.

It's not exactly a recent development ID1 had a dictionary and AS has been around for more than 15 years.

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
Advisor ,
Aug 15, 2013 Aug 15, 2013

Very new to me.  I've been an "Apple user in Denial" for a while, now. 

I miss the ALT key on Windows.  Muchly. 

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 ,
Aug 15, 2013 Aug 15, 2013

The updated changes show, but the file is not completely updated

Looks like you might need to activate ID to get a complete the update. And the delay probably could be replaced with a listener.

tell application "Adobe Illustrator"

    tell document 1

        save

    end tell

    delay 2

    tell application "Adobe InDesign CS6"

        activate

        tell active document

            update every link

        end tell

    end tell

    activate

end tell

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
Advisor ,
Aug 15, 2013 Aug 15, 2013

so this is pulling InDesign to the foreground for a moment?

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
Advisor ,
Aug 15, 2013 Aug 15, 2013

I was lazy... I just copy/pasted this in... and it works flawlessly.  A little flicker across to Indesign, and back... and the update is done.

tell application "Adobe Illustrator"

    tell document 1

        save

    end tell

    delay 2

    tell application "Adobe InDesign CS6"

        activate

        tell active document

            update every link

        end tell

    end tell

    activate

end tell

And again, thank you so very much for getting me so far - I had no idea this could be solved, let alone would be solved, in these forums, where I'm SUPER POPULAR /s

I have a question... why does it, and how does it know, to flick back to Illustrator?

I'm guessing that the first "activate" summons InDesign because it's inside a "tell", and that the closure of that "tell" with "end tell" means the second activate operates on Illustrator.  Is that right?

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 ,
Aug 15, 2013 Aug 15, 2013

Is that right?

Yes.

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
Advisor ,
Aug 14, 2013 Aug 14, 2013

Sandee, this is really just about getting the absolute best possible workflow, because I'm going to be spending days, posssibly weeks, refining this design the first time around.  THEN, the fun part, I have to work with the developers to make it into a reality, which means I'll have to come back to these files, and live, demonstrate the nuances of the design to them, since developers never ever want to do things the right way the first time.  They prefer shortcuts, every single time, and compromise designs in every single way possible to save themselves time and effort.  The exceptions to this rule are worth their weight in gold.  And then some.

Sorry it wasn't clear, somewhere else I mentioned that I'd already configured a shortcut for Update All Links, and what that shortcut is:  [Command + Option + A], which is explicitly designed to be easy, and represent "ALL".  It's a simple roll of the thumb from the [Command + Tab] to the [Command + Option + A] combined with a bizarre inward move of the fourth finger to get at that "A" to invoke this as fast as possible and return.

Of course the non-ideal part of this is that Indesign might not always be the last app I was in, given that skype, email and browsing for techniques pull other apps into that second spot from time to time.

So a script that's automatically able to Save, then Update InDesign is ideal.

And that's the real elegance of Rob's solution.  He's put the Illustrator Save into the script as well as the Indesign update, so invoking the script in Illustrator does everything required. 

THE CATCH:  I havn't figured out how to assign a Shortcut to invoking the script, yet.  Do you know how?

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