DTPabスマートフォン用の表示で見るDTPabDTPにまつわるあれこれ2019-12-20パスワード付きzip圧縮を行うAppleScriptAppleScriptパスワード付きzipファイルを作業のたびに毎回作成する...というお仕事がありまして。全体の流れシェルコマンドを小分けにしてリストに登録パスワードやzipファイル名を変数として受け取り、そのリストに加えるリストをスペースでつなげてシェルコマンドとして実行という処理になっています。linefeedの部分です。cdの後ろの~/Desktop/に適当なパスを書いてください。これはシェルのzipコマンドのオプションです。詳しくは調べてみてください。dialogのオプションを利用します。answerのすぐ後に文字列を渡すと、それがテキスト入力欄にすでに入った状態でダイアログが生成されます。空のテキスト入力エリアにしたい場合は、スクリプトのように空の文字列""を渡しておきます。戻り値テキスト入力ダイアログの戻り値はレコードになっています。テキスト入力エリアの内容JSONと違い、キーにスペースがさしはさまれていることに以前つまづいた覚えがあります。例外の処理InDesignのExtendScriptだと、便利なexit()メソッドが存在するので、ネストを深くすることなく例外時に強制的にスクリプトを終了することができます。AppleScriptでも似たようなことができて、特定のエラーを渡すことでユーザーにキャンセルされたとしてスクリプトを終了できます。--スクリプトの終了このエラー処理がそれです。スクリプトが終わってくれるので、ifでネストせずに処理を書けます。ファイル選択ダイアログこれは定型句。allowedというオプションを付けています。ファイル選択じゃなくて、ドロップレットにするとか、Finderで選択したファイルを右クリックから*1、ってやったほうがもう少し使いやすいと思われる。.DS_Storeファイルを除外zipコマンドの-xオプションで実装。詳しくは末尾の参考サイトを参照ください。リストをテキストに変換これももはや定型句ですね。defaultDelimit以前書いた別のスクリプトからコピペした。scptBodyこれでシェルコマンドとして実行できる。こんなん出てましたね。目指しつつ、バグの検証や後工程の事をぼんやり考えるDTPブログです。Uske_Sはてなブログをはじめよう!uske_Sさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。