‘未分類’ カテゴリーのアーカイブ

ChatGPT3.5でのスクリプティングを試してみた

2023/04/12

 話題の生成系AI、OpenAIのChatGPTでのスクリプトコード作成を遅ればせながら簡単に試してみました。2023年4月現在、無料で使えるのはChatGPT3.5ですのでそちらでのテストになります。なお、Bing Chatはまだ順番待ち状態なので素のChatGPTです。試した言語はAppleScriptとPerlになります。

AppleScript

 まずAppleScriptです。DTP作業で多用する処理を試しました。

・Photoshopの画像のカラーモードをグレースケールに

 結果:×
概要:「convert mode」ではなく「change mode to」にしないとエラーになる。

・Photoshopの画像の解像度を350dpiに

 結果:×
概要:「set resolution to」ではなく「resize image resolution」にしないとエラーになる。

・InDesignドキュメント内のJIS X 0213外の文字だけを赤くする

 結果:×
概要:文法がおかしいらしくスクリプトエディタでの保存自体ができない。JIS X 0213外の文字の判別式もこんなに短いわけがない。

Perl

 次にPerlのテストです。なお何も指定せずにコードを生成させたら内部文字列UTF-16のコードを出してきたので内部文字列UTF-8を指定して再生成しました。条件をちゃんと指定するのは大事ですね。また、動作チェック時に「use utf8;」の指定を書き足しています。

・与えられた文字列内にJIS X 0213外の文字が含まれているかどうかのチェック

 結果:×
概要:JIS X 0213はラテンアルファベットを含んでいるので(参考)、説明自体がおかしい。まあJIS規格は著作物扱いのはずなのでここですんなり出てきてしまったらむしろ問題かもしれない。

・与えられた文字列内にcp932の機種依存文字が含まれているかどうかのチェック

 結果:×
概要:判定ルーチン自体は正しいように見えるのだが、判定のリストがおかしいらしくよく問題になる丸数字やローマ数字が引っかからない。そこを書き換えられれば実用範囲か。

・与えられた文字列内にUnicodeのBMP(基本多言語面)外の文字が含まれているかどうかのチェック

 結果:○
概要:これは問題なかった。


 どうもChatGPT3.5の時点では、AppleScriptのような比較的マイナーな言語やJIS X 0213など日本のローカル規格の学習は足りていないのかもしれません。文法自体はパーツとしては使えそうに見えるのでその辺を割り切って使うなら許容範囲でしょうか。つまり元々コードが書ける人が時短目的で使うのなら有用かもしれないですね。いずれバージョンが進めば今回問題になったような「学習が足りない」ことが原因の間違いは減っていきそうですが、「AIにどういった問いを与えるのか」はおそらく相当先まで人間が考えるしかないので、そこをやれる人が効率化のために使うツールという位置づけになるのかなと思った次第です。

(2023.4.12)

「EPUB3トータルデータチェッカー」アップル公証対応しました

2022/11/11

 日本語EPUB3用のバリデーションチェックアプリ『EPUB3トータルデータチェッカー』アップル公証対応しました。

http://sanyoshasmds.xsrv.jp/main/?page_id=184

 これは以前から公開していたものですが、macOSのセキュリティ周りの厳格化改訂によって外部に配布して使用してもらうことが難しくなっていたものです。最初の公開時に簡単な説明は書いているのですが、その後チェック項目を追加したりしたこともありますので以下に改めて説明を書いておきます。

動作環境

 Apple silicon/Intel環境ユニバーサル対応
 macOS 12.6(Apple silicon採用Mac)/ macOS10.14(Intel Mac)にて動作確認済です。内部的にPerlおよびJava(Epubcheckで使います)を使っていますので、そちらの環境次第では正しく動作しないかもしれません。

著作権など

 このアプリケーションソフトの権利はJunTajima/三陽社メディア開発室に帰属します。
 また、内包するライブラリ「epubcheck」に関する権利は、同梱したフォルダ「epubchecklicenses」内テキストの記述に従います。

使い方

 アプリケーションを起動すると出てくるドロップウィンドウ内にepubファイルをドラッグ&ドロップするとepubファイルの各パラメータをチェックし、epubファイルと同じ場所にログファイル「EpubTotalDataCheck.log」を出力します。同名ファイルがすでに存在していた場合はテキスト末尾に追記します。

チェック可能なパラメータ

・SarrogatePair Character Check Result
 UTF-16環境でサロゲートペアとして扱われる文字(Unicodeで基本多言語面外の文字)が入っていないかを見ます。

・Unicode IVS Character Check Result
 Unicode IVS(漢字の異体字セレクタ)の異体字表示文字が入っていないかを見ます。

・Unicode SVS Character Check Result
 Unicode SVS(絵文字など)の異体字表示文字が入っていないかを見ます。

・Irregular Space Character Check Result
 U+2004〜U+200Dの特殊幅スペース文字が入っていないかを見ます。

・Voiced Soundmark Check Result
 濁点半濁点が合字扱いで入っていないかを見ます。macOSがFinder等で濁点半濁点を分離して扱う処理をする(Unicode正規化)ため、そこ由来の文字列が混入していないかを見るためのものです。

・JIS2004Character Check Result
 JIS X 0213:2004(JIS2004)で外字扱いとなる文字が入っていないかを見ます。電書協ガイドではJIS2004内の文字のみを使用するように規定しています。

・Adobe-Japan1-6Character Check Result
 Adobe-Japan1-6で外字扱いとなる文字が入っていないかを見ます。多くのEPUBビューアはAdobe-Japan1-6規格のフォントを採用しているため、そこからはみ出た文字は外字画像等にしないと化けるリスクがあります。

・SVG Wrapping Image Pixel Count Check Result
 SVGラッピング配置ページのViewPort記述サイズと画像の実ピクセル数が一致しているかどうかを見ます。電書協ガイド仕様のフィックス型EPUBおよびKADOKAWAフィックスドハイブリッド仕様のチェック対応です。KADOKAWAの仕様についてはこちらを参照してください。

・ImageFile ColorMode Check Result
 EPUB内で使用されている画像のカラーモードにCMYKが使用されていないかを見ます。

・ImageFile PixelCount Check Result
 EPUB内で画像が400万画素を越える画像が使用されていないかを見ます。「Apple Books アセットガイド」の規約に準じたチェック項目です。

・ImageTagFileName Check Result
 imgタグの属性値srcで指定されている画像ファイル名末尾にスペース文字が入っていないかを見ます。epubcheckでスペースが入っていてもエラー扱いにならなくなったため入れました。

・epubcheckのチェック結果
 epubcheckのチェック結果を出します。

 以上です。なお、epubcheck以外の独自追加項目は通知の性格としてはERRORではなくWARNINGで、制作物の性質上無視してよいと判断できるならそれで構わない性質のものと考えています。ご理解の上でご利用ください。

(2022.11.11)

アップル公証対応その2(.ZIPの場合)

2022/11/10

 その1はこちら。今回はパッケージをpkg形式でなく.zip形式にするためのメモです。

圧縮元の配布フォルダを作る

 署名を済ませたアプリおよびドキュメント類を入れた圧縮元の配布用フォルダを作ります。

圧縮用フォルダの構成例

圧縮用フォルダの構成例

 なお、テスト時に.appファイルのみを入れた状態でZIPパッケージ化したところダウンロード時に.appの中身だけが展開されてしまってアプリとして実行できなくなる現象が見られたのですが、別ファイルを含めてパッケージ化することで回避できたようです。まあこれは圧縮方法の設定がどうこうというよりはブラウザがダウンロード後のファイルをどう扱うかという話のように思います。

ZIPパッケージを作る

 ターミナルで以下のコマンドを使ってリソースフォークごとZIPパッケージ化します。アプリ本体の署名を済ませておくのはpkg形式と同様です。

ZIPパッケージに署名を行う

 ZIPパッケージに署名を行います。キーチェーンアクセスにDeveloper IDが登録されているのが前提です。

アップルの公証サーバにアップロードして登録

 以下のコマンドを実行してアップルの公証サーバに登録します。pkg形式と同じです。App用パスワードについては前回記事を参照のこと。

 公証が通ったかの確認はpkg形式の場合と同様です。メールで通知が来るほかターミナルから確認することもできます。念のためにコマンドは以下。

 なお、アップルは公証の仕組みを切り替える予定のようで、現在altoolで公証を行うと新コマンドのnotarytoolへの移行案内メッセージが出ます。2023年秋には完全切り替えの予定の模様です。流れが速くてなかなかついて行くのが大変です。

(2022.11.10)

プロフィール
Jun Tajima

こちらにて、電子書籍&Web制作を担当しています。
このブログは、EPUB3をはじめとした電子書籍制作担当オペレータからの、「電子書籍の制作時にたとえばこんな問題が出てきていますよ」的な「現地レポート」です。少しでも早い段階で快適な電子書籍閲覧・制作環境が整うことを願って、現場からの声を発信していこうと目論んでおります。

当ブログ内の記事・資料は、私の所属しております組織の許諾を得て掲載していますが、内容は私個人の見解に基づくものであり、所属する組織の見解を代表するものではありません。また、本ブログの情報・ツールを利用したことにより、直接的あるいは間接的に損害や債務が発生した場合でも、私および私の所属する組織は一切の責任を負いかねます。