macOS Catalina(10.15)でのApplescriptではまった(file消したら動いた)


2021/08/24:追記2

memo: 類似(as aliasで回避)

Bug details
  • 4 votes
  • 7 comments

Can't Place Images with Applescript on MacOS 10.15 Catalina

InDesign 15.0.1

The Place command now fails in Applescript, following an upgrade to Catalina.
The "Image Catalog" sample script also fails to place the images in the same manner. Image placement fails with an error 1708, <<the file string>> doesn't understand the "place" message.

indesign.uservoice.com

forum.latenightsw.com


2021/08/24:追記

10.14で OSAX の廃止が原因か…?

developer.apple.com

こやつが「よしなに」やってくれてた(か?)
/Library/ScriptingAdditions/Adobe Unit Types.osax

現象は、14>OK, 15>NG なので、違うかぁ。

でも 13>14の更新インストールだから動いたとか? うーん。


2021/08/23:追記

シンプルに書き直したら14でも15でも動作した。

下記の「"macHD:data:hoge.indd"」は、実際はこんな感じでテストしてた。

tell "Adobe InDesign xxxx" 
set myItem to  1 of all graphics of document 1

set A to  POSIX path of file (path of item link of myItem) ★ 15でエラーに…
set A to  POSIX path of (path of item link of myItem)

InDesign側の返り値が変わったのかな?



初回 記載

10.14までどちらでも大丈夫だった(気がする)

POSIX path of "macHD:data:hoge.indd"
POSIX path of file "macHD:data:hoge.indd"


10.15(Catalina) で実行したら file のある方がうまく動作しない(気がする)

POSIX path of "macHD:data:hoge.indd"
POSIX path of file "macHD:data:hoge.indd" ★ ← NGなの?

Catalina からの仕様変更なのか、Catalinaだけの不具合なのか…。

macOS 11は未検証

回避

file 消せばいいんだけど…

同じような人がチラホラいるけど・・・。

forum.xojo.com

stackoverflow.com

stackoverflow.com

developer.apple.com

InDesignプラグインのビルドで(よく分からん)エラーになる(memo: Zt/merge_res.cmd /idrc/ IntelliSense)

WindowsVisual Studio)環境で、InDesign CC2021 のプラグイン開発で

  • 初回、何もファイルを開かない(ソリューション/プロジェクトは開いている)状態でビルドすると成功する。
  • 何かしら C++/Headerファイルなど 開いて(編集せず)ビルドすると失敗した。

カスタムビルド付近(merge_res.cmd)。.idrc ファイルが生成されずエラーになってるっぽいので、ODFRC関連だと思っていたが違った。

>Performing Custom Build Tools
>CUSTOMBUILD : # error : Could not open response file 'Zt'
>CUSTOMBUILD : # Fatal error :
>odfrc - Execution terminated!
>C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(241,5): error MSB8066: '..\Source\Cs.fr' のカスタム ビルドがコード 1 で終了しました。

IntelliSense を無効にしたら解決した(と思う)

SDKのPorting Guide に「相性悪いから無効にしろ」って書いてあった。

IntelliSense has never worked very well for InDesign code, and you may find that IntelliSense red squiggles appear under nearly every InDesign type or API, despite your project compiling successfully.

C/C++ ファイルの時だけ、無効にすればいい。

オプション>テキストエディタC/C++>詳細設定>IntelliSense (On/Off)

ほんとに解決した・・・のか?(不安)

InDesign cc2021 SDKSamples.slnのビルドで_Getloctxtが見つからない旨のエラー

メモ:

InDesign cc2021 のプラグインSDKで、サンプル(SDKSamples.sln)をビルド時 エラーになったのでメモ:

エラー C2672  '_Getloctxt': 一致するオーバーロードされた関数が見つかりませんでした。...SDK\source\precomp\msvc\xlocnum_hack_vs2019.h  383 
エラー C2780 'int std::_Getloctxt(_InIt &,_InIt &,size_t,const _Elem *,const std::_Case_sensitive)': 5 引数が必要です - 4 が設定されます。 ..SDK\source\precomp\msvc\xlocnum_hack_vs2019.h    383 

community.adobe.com

↑ にある通り、xlocnum_hack_vs2019.h を直で書き換え

_Case_sensitive _MATCHING = _Case_sensitive::_Yes;  ★ 追加
//  switch (_Getloctxt(_First, _Last, 2, _Str.c_str())) {
switch (_Getloctxt(_First, _Last, 2, _Str.c_str(), _MATCHING)) { ★更新

RemoveBlank2 更新(Visual Studio Extensions)

Visual Studio Extensions:RemoveBlank2 更新

  • Vs2019に対応

marketplace.visualstudio.com

補足:

更新といっても別アプリ(Extensions)でリリース。

(バージョン混在のやり方が分からんかった)

以前のやつ

marketplace.visualstudio.com




メモ(つまづいた点とか)

  • マニフェストにて:Author にカンマ入れたらビルドが通らなかった

f:id:kawaishi2:20210726102351p:plain

f:id:kawaishi2:20210726102653p:plain

  • VS-MarketPlaceの編集ページのがMarkdownでも書けるようになってた

(前からだっけ???)

f:id:kawaishi2:20210726103029p:plain

  • 非同期読込のやり方

難しく考えない。3周くらいグルグル試行錯誤して、元の書き方に戻ったら(なぜか)できた。