X



AppleScript アップルスクリプト 質問、発表 8
0001名称未設定
垢版 |
2023/03/25(土) 06:38:03.65ID:4gHvNmU30
質問、発表どっちでもスレ。

■注意
安直なスクリプト作成依頼、丸投げ、「こういうの作ってください!」はお断り。
わからない点、エラーが解決できない点についてはスクリプト片を添えて質問すること。
OSバージョンも忘れずに。

■参考
AppleScript Language Guide
https://developer.apple.com/library/mac/documentation/AppleScript/Conceptual/AppleScriptLangGuide/
TN2065: do shell script
https://developer.apple.com/library/mac/technotes/tn2065/
AppleScript: The Language of Automation
http://www.macosxautomation.com/applescript/
MacWiki - AppleScript
http://macwiki.osdn.jp/wiki/index.php/AppleScript
鳶嶋工房 / AppleScript
http://tonbi.jp/AppleScript/
AS Hole(AppleScriptの穴)
http://piyocast.com/as/

■過去スレ
https://egg.5ch.net/test/read.cgi/mac/1491018171/
https://potato.5ch.net/test/read.cgi/mac/1387630245/
https://anago.5ch.net/test/read.cgi/mac/1330350325/
https://anago.5ch.net/test/read.cgi/mac/1256127156/
https://pc11.5ch.net/test/read.cgi/mac/1223026902/
https://pc11.5ch.net/test/read.cgi/mac/1197443062/
https://pc11.5ch.net/test/read.cgi/mac/1174045850/
0002sage
垢版 |
2023/03/30(木) 09:27:37.12ID:kX8I7vAN0
「発表8」で、JavaScriptでのQuickTime動画の操作でお世話になった者です。
macOS Ventura 13.2.1を使用してます。追加の質問です。
 再生中のQuickTime動画のタイムコードを表示(取得)する目的で
次のスクリプト(1)を作成し実行しすると、スクリプトエディターの
「返された値」のタブには(2)のようなエラーが出ます。
currentTimeの値を表示(取得)する方法をご教示いただけると幸いです。

(1) スクリプト
quickTimePlayer = Application("QuickTime Player");
quickTimePlayer.activate();
console.log(quickTimePlayer.documents[0].currentTime);

(2) 「返された値」のタブ
app = Application("QuickTime Player")
app.activate()
app.currentTime.Symbol.toPrimitive()
--> Error -1700: タイプを変換できません。
/* */
結果:
Error -1700: タイプを変換できません。
0004sage
垢版 |
2023/03/30(木) 16:38:03.10ID:kX8I7vAN0
>>3
ご助言ありがとうございます。.currentTime() で見事に値が得られました。
「これ読みなさい」も読んでみます。
本来のJavaScriptとPythonを頻繁に使用しますが、()の有無によるget, setの
使い分けは、まったく使ったことがないため、ご指摘いただけなかったら
自己解決は絶対に無理でした。
0005名称未設定
垢版 |
2023/03/31(金) 11:55:38.36ID:vKM7biIA0
>本来のJavaScriptとPythonを頻繁に使用しますが〜
JavaScriptとPythonを頻繁に使用するがそれで使うライブラリ/フレームワークを調べようともしてないってことか
言い訳にならない言い訳をなぜしようとするのか
0006名称未設定
垢版 |
2023/03/31(金) 15:06:59.83ID:TkCwcdDa0
質問者には悪いけどまだそこまで学習できてないからだろう
おまえがすごいのは分かるけど全員がおまえのようにすごくはないってことだろう
むしろなぜそんなに追い込みたい?
0007名称未設定
垢版 |
2023/03/31(金) 15:16:23.14ID:QtRnibsT0
無意味なプライドは早めにへし折った方が後のためではある
0008名称未設定
垢版 |
2023/03/31(金) 16:10:40.47ID:uiczv8AF0
ブラック企業で新人研修とかやってそう
0009sage
垢版 |
2023/03/31(金) 17:43:25.36ID:qskCkcAt0
>>5
>ライブラリ/フレームワークを調べよう
JavaScriptとPythonはユーザー数が多いので、単純にエラーメッセージなどを
Google検索すれば、回答が出てきます。一方、ASのJavaScriptは、同じような
Google検索を実行しても、答えが出てこないため、これまでも皆様のご助言に
救われてきました。心より感謝しております。
(JavaScriptは20年以上、Pythonは10年以上、ASは25年以上使用し続けていて
このレベル(笑)です。)
0010名称未設定
垢版 |
2023/03/31(金) 17:54:04.01ID:N9rawXqw0
JXAは確かに情報少ないけど、
サンプルみてたら()つけるぐらいは試してみて良さそうなもの
ましてそれだけのプログラミング歴があるなら
0011sage
垢版 |
2023/03/31(金) 20:16:20.53ID:qskCkcAt0
>>10
>ましてそれだけのプログラミング歴があるなら
Python, JavaScriptは毎日平均2、3時間書き続けてますが
25年以上のASの方は1ヶ月に数時間というレベルで、どんどん
忘れていくばかりです。このスレッドで、これまで同じような質問をして
(「()をつける」など)ご迷惑をおかけして心よりお詫び申し上げます。
0012名称未設定
垢版 |
2023/03/31(金) 20:34:48.70ID:cbz9QJLh0
プログラミング歴を自ら出せるレベルじゃないと自覚してるなら、そうしなよ
言い訳が自分の為であって、なんら他人のためではない

タイプを変換できません ってことはそこのどこかの型がおかしいって推察できそうなもんだが、その自称歴からは
そこのどこかの型がおかしいってのも、JavaScriptの基本で調べられることであろうに
とか細かく言いたくはなるなw
0014sage
垢版 |
2023/04/01(土) 06:14:44.94ID:FJUfEib90
>>12
>どこかの型がおかしいってのも、JavaScriptの基本で
JavaScriptの型変換から類推して、いろいろとあがきました:
String(quickTimePlayer.documents[0].currentTime)
parseInt(quickTimePlayer.documents[0].currentTime)
' '.join(quickTimePlayer.documents[0].currentTime)

正解の()は、自分では全く思いつきませんでした。
0015名称未設定
垢版 |
2023/04/01(土) 11:08:00.02ID:uzMYvOEx0
typeof quickTimePlayer.documents[0].currentTime
() に決まってるだろ
typeof知らないでよくJavaScriptを頻繁にとか20年以上とかよく言うわ
0016名称未設定
垢版 |
2023/04/02(日) 12:26:43.22ID:ry1cBscG0
20年以上やってまだ初学者の勉強中を脱してないって
0017名称未設定
垢版 |
2023/04/02(日) 12:44:34.81ID:Sm5klonn0
只々スクリプトを読まずに横流ししてただけじゃねーか勉強もクソもあるかいなって
0018名称未設定
垢版 |
2023/04/02(日) 12:56:08.53ID:ry1cBscG0
勉強という姿勢はそもそも全くないのは今までのレスでわかってるよ
そういう意味じゃない
0019名称未設定
垢版 |
2023/04/02(日) 13:31:19.50ID:Sm5klonn0
意味なんてどっちでも良いけどvbaもluaもpythonもcもライブラリは型()やし、
あの質問はtbn初めてイチから書いた文章だと思う。

批判はしねぇけど長年やってきたと言う割には超基礎抜けしてるから
良く今まで指摘されなかったな/(^o^)\って感じ
0020sage
垢版 |
2023/04/02(日) 16:37:36.83ID:GzNiqVqQ0
>>19
>批判はしねぇけど長年やってきたと言う割には超基礎抜けしてるから
Mac歴は35年以上。元々はHyperCardというスクリプトから
始めましたが、それが消滅して、4th DimensionやAppleScriptを
使うようになりました。4Dは10年前にやめて、pythonやSQLiteに
乗り換えましたが、AppleScriptは今でも時々、使っています。
いつまで経っても素人レベルで申し訳ないです。老化のため、10年前に
できたことも「超基礎抜け」し始めています。
0021sage
垢版 |
2023/04/02(日) 17:01:19.93ID:GzNiqVqQ0
ChatGPTがpythonやJavaScriptのスクリプトを自動生成してくれる
ようですが、「私のパソコン内に保存された動画ファイルaaa.mp4を
QuickTimeで開き、1分10秒から再生するスクリプトを
書いてくれ」というチャットには、ChatGPTver.99でも対応
できないのでは?!
0023名称未設定
垢版 |
2023/04/02(日) 19:05:09.17ID:5I5/ISZg0
>>20
マイコン世界のまま来たんだ…

>>22
開く訳ないんだよなぁ…
0024名称未設定
垢版 |
2023/04/02(日) 20:30:26.73ID:FscbEeZn0
DOSだとバッチ書くレベルってことか
0025名称未設定
垢版 |
2023/04/02(日) 21:03:49.94ID:AXL0/p0g0
>>23
え?当たり前だけどちゃんと動くけど?
スクリプト見たら分かるよね?
まさかパスそのままじゃないよね?
0026名称未設定
垢版 |
2023/04/02(日) 21:30:37.94ID:5I5/ISZg0
>>25
何年前のmac使ってるねんパス書いてみーや
0028名称未設定
垢版 |
2023/04/02(日) 22:47:21.97ID:Cquplh/30
>>23
マイコンの世界ママからというより、色々手を出すがどれもこれも何も身についてないって感じ
経歴を色々出す意味が全くわからんな。どれもこれも知見が全くない素人レベルでしかないだろうに
単にど素人ですって言われた方が...いやそれでも自分で何か色々したいなら勉強する姿勢を見せろってなるか
0029名称未設定
垢版 |
2023/04/02(日) 23:20:58.98ID:AXL0/p0g0
なんだろう酔っ払ってんのかな?
0030名称未設定
垢版 |
2023/04/02(日) 23:36:40.87ID:Czp/YtDG0
まあ、動かないことは動かなかったり
原因がパス形式がではなく、fileもしくはaliasが足りなくなくない?

AppleScriptではHFS形式が隠れデフォなのは前スレで話題にあったな
そうでなくても使うことがないのに、普通に目にするわな
Script Editorの結果表示とかで
0031名称未設定
垢版 |
2023/04/03(月) 03:50:16.77ID:XXLTJpsc0
>>30
ヒント与えちゃダメでしょ〜
コロンの付いたhfsパスではapfsコンテナを通過できなくてPOSIXに変える必要があるんだけど、
chatGPTチャンの"アレ"で完璧に動作するのはsierra以前になるのよね。

誰かさんの誇らしげな書き込みがどんな転末を迎えるか楽しみだったのにw
0032名称未設定
垢版 |
2023/04/03(月) 05:47:41.81ID:j1U2e0A30
ん?Veatura13.2.1でコロンのついたパスでも動作するけど?
POSIX形式のパスじゃなくても。
Macintosh HD:Users:ほにゃらら:Movies:aaa.mp4で
0034sage
垢版 |
2023/04/03(月) 11:32:15.05ID:bEtEcRxy0
>>22
>すぐ書いてくれましたよ
驚きです! 対話を続けて「今のAppleScriptをJavaScriptに
書き換えてください」とChatGPTへ返答すると、ChatGPT は
JavaScriptで書き直してくれるのでしょうか?
 JXAのJavaScriptは、学習するデータが他の言語より少ない
はずなので、ChatGPTが正しい回答をするのは難しいと予想してますが
ChatGPTの進化は「マイコンの世界ママ」の老人の予想を遥かに
超えてるんですかね?
0035名称未設定
垢版 |
2023/04/03(月) 12:32:56.52ID:VRS4RdW80
マイコンの世界ママでもない単なる勉強嫌いのくせに
ホンマこの老害は老害らしい
0036名称未設定
垢版 |
2023/04/03(月) 12:34:32.64ID:VRS4RdW80
× 学習するデータ
○ 問題の答えを教えてくれる
0037名称未設定
垢版 |
2023/04/03(月) 12:42:06.18ID:VRS4RdW80
>>31
>コロンの付いたhfsパスではapfsコンテナを通過できなくてPOSIXに変える必要があるんだけど、
違うんじゃね
MacOSXになった頃から、MacOSXのAPIはPOSIXパスのばかり、HFSパスを受け取れるのはMacOSの頃のAPI(Carbon)だけだったような
aliasはMacOSの頃のAPIなので、名残でHFSパスの方になるという。ファイルシステムは無関係で、APIの問題。AppleScriptはまた別の問題でもある

間違いは素直に認めような。気持ち悪いw
0038名称未設定
垢版 |
2023/04/03(月) 12:50:58.77ID:VRS4RdW80
>>36
>学習するデータ
ああ、AIのか
トンチキなレスだったな。まあ似たようなもんだがw
0039名称未設定
垢版 |
2023/04/03(月) 13:04:03.90ID:XXLTJpsc0
>>37
お前それだけツラツラ書いときながら馬鹿だろ…

>MacOSXになった頃から、MacOSXのAPIはPOSIXパスのばかり、HFSパスを受け取れるのはMacOSの頃のAPI(Carbon)だけだったような

path to meは一体何だよ(笑)venturaでも稼働するぞ

>aliasはMacOSの頃のAPIなので、名残でHFSパスの方になるという。ファイルシステムは無関係で、APIの問題。AppleScriptはまた別の問題でもある

エイリアスだけじゃねーぞ、お前一体何食ったらそんな脳みそ小さくなるんだ
0040sage
垢版 |
2023/04/03(月) 13:05:20.14ID:bEtEcRxy0
以前の私は、掌田 津耶乃氏の書籍でAppleScriptの
勉強をしていた時期もありますが、2002年以降日本語での
書籍が消滅して、私のような素人がAppleScriptを学ぶのは
難しくなってきたと感じておりました。しかしChatGPTが >>22
ような見事なスクリプトを作成する時代が来たので
「単なる勉強嫌い」でもAppleScriptに触れる機会が
増えそうです。
0041名称未設定
垢版 |
2023/04/03(月) 13:09:12.03ID:VRS4RdW80
>>39
「もちろん」AppleScriptもMacOSの頃からなので、方々でHFSの名残はある
aliasは端的にMacOSの頃のAPIを「使うしかない」という代表
「AppleScriptはまた別の問題でもある」はそういう意味だよ

レスの趣旨は端的にはファイルシステムなんて関係ないよ、何言い出してるのってってことなんだがw
0042名称未設定
垢版 |
2023/04/03(月) 13:18:41.24ID:VRS4RdW80
>>41
>HFSの名残
HFSパス形式の名残
それもある意味単なる文字列でしかなかったり。そうでなかったり

>何年前のmac使ってるねんパス書いてみーや
と言っていたくせにw単なる 動かしてみーや ではなく
明らかに間違いかあえてミスリードする根性悪だな
前者だったら後のレスが根性悪すぎでどっちにしろ根性悪だなw
0043名称未設定
垢版 |
2023/04/03(月) 13:50:15.40ID:XXLTJpsc0
前書き。
そんだけ連投しといて書いてる事が何1つの意味が無いのはあんたの特技か。
落ち着ついてよく読んでよく"考えて"書け。
初めて見たぞ、全部が全部間違えてるなんて

重複もあるけど一つ一つ書くからね

>>37
>carbonだけだったような

>>39で書いた通りhfsパスで取得するライブラリが残ってます。
と言うかposix指定しないと基本的にhfsパスです。

>>41
>「もちろん」AppleScriptもMacOSの頃からなので、方々でHFSの名残はある
名残ではなく下位互換。

>レスの趣旨は端的にはファイルシステムなんて関係ないよ、何言い出してるのってってことなんだがw
ExFatはPOSIX pathプロパティのみ受け付けます。

>>42
>HFSパス形式の名残
下位互換です。関数によってhfsパスを要求する事があります。(特にNS系)

>前者だったら後のレスが根性悪すぎでどっちにしろ根性悪だなw
結果彼はventura(veanturaだから私の知らないosかもしれません)のapfsに見事hfsパスを書きました。
初志貫徹ぷりが良いところです。あなたの様な気持ち悪さが無いのがものすごく好きになれそうです
0044名称未設定
垢版 |
2023/04/03(月) 14:14:58.87ID:VRS4RdW80
>>43

>>carbonだけだったような
>>39で書いた通りhfsパスで取得するライブラリが残ってます。
と言うかposix指定しないと基本的にhfsパスです。

path to me って拘るが、それも単にAppleScriptの話だろうが。ライブラリ??
API=OS APIの話をしてるんだが。ファイルシステムの話を言い出してるのにわからないのか。Carbonって言われてもわからないようなのか...??

AppleScript -> OS API -> ファイルシステム
HFS形式/POSIX形式をどう扱うかはAppleScriptの中での話でしかない、AppleScriptの実装がどのOS APIを使うかだが、MacOSXの主流はPOISX形式でしかないってこと。AppleScriptの実装で場合によってはHFS形式/POSIX形式相互変換もしてるだろう
もちろんHFS形式とPOSIX形式の変換をするAPIはあるかもね(使ったことはないけど)
APFSが出る前、HFSが出る前からの話でファイルシステムなんて関係ない、MacOSXの主流はPOISX形式って話での話だからな

>hfsパスを要求する事があります。(特にNS系)
>特にNS系
特にNS系????あったっけ。単なる互換性の極一部ではなく??なに?
(NS = NeXT Step だよ。イミフw)

名残でもあるな。ScriptEditorの結果表示は別にPOSIX形式で表されて何も困らないだろう
いや、今時、HFS形式ではほぼあんま書かんだろうから(お前もそう言ってるようだけど)

>結果彼はventura(veanturaだから私の知らないosかもしれません)のapfsに見事hfsパスを書きました。
なに言い出してるの??
「彼」は書いてないだろうし、そもそもそこの文が何を言い出してるのか全くわからんわ
気持ち悪すぎwww
0045名称未設定
垢版 |
2023/04/03(月) 14:20:37.65ID:VRS4RdW80
>>44
>APFSが出る前、HFSが出る前からの話でファイルシステムなんて関係ない、
APFSが出る前、HFSしか(?)の頃からの話で、ファイルシステムなんて関係ない、
0046名称未設定
垢版 |
2023/04/03(月) 14:26:22.07ID:XXLTJpsc0
>>44
しっかり読んだら只の口ごもりな愚痴やん。
お前マジで何しに来たん?
0047名称未設定
垢版 |
2023/04/03(月) 14:38:27.43ID:VRS4RdW80
>>46
口ごもりwww
ながーくなるからある程度「知ってるだろう」と言う前提になるだけだよ
トンチンカンなこと言ってるから違うよってのと、なんか無茶苦茶絡むから違うよって言ってる。根性と絡み方がキモいってお話をしてるんですけどw

でさー、ちょっとマニアックな調査しようとして、同じようなスクリプトを再度書いてたんだわ
そしたらさー、fileもaliasも無くても動いてしまったんだわぁ
wwww
>>32もそういうことだったのね
いや、本当に、>>30はfileとaliasを付けた外したで明らかに動く動かなかったんだけど

なんかあるなあwなんなんかわからんけど。まあ、確実にはfileとaliasは付けましょうってことで
(なんか色々残念だったなwwwww)
0049名称未設定
垢版 |
2023/04/03(月) 14:41:24.62ID:VRS4RdW80
何が?
お前が大丈夫じゃないようけど?w
0050名称未設定
垢版 |
2023/04/03(月) 14:43:48.90ID:VRS4RdW80
>誰かさんの誇らしげな書き込みがどんな転末を迎えるか楽しみだったのにw

www
0051名称未設定
垢版 |
2023/04/04(火) 01:41:47.93ID:eFMJagTS0
世の中にはとんでもねーばかがいるもんだ
0052名称未設定
垢版 |
2023/04/04(火) 07:56:37.11ID:OtoLQTv90
過去にも居たし適当に遇らえばいいわな
0053名称未設定
垢版 |
2023/04/04(火) 08:06:17.48ID:XnwutBKq0
ついていけなくなって爆発して消えるのもいつものこと
0054名称未設定
垢版 |
2023/04/04(火) 10:51:47.66ID:XL8NSFAq0
どうせステレオタイプとか妄想人は救われないから
気づいたら距離置くわ
0055名称未設定
垢版 |
2023/04/08(土) 02:06:13.60ID:CZSkcLV50
素人なら素人らしくしておけばいいのに
0057名称未設定
垢版 |
2023/04/08(土) 08:41:38.77ID:QJaO4tpE0
頭悪い人が頭良い様に振る舞えるわけ無いんだ
0058名称未設定
垢版 |
2023/04/09(日) 14:24:24.17ID:Ul464Pms0
chatgptに勝った気になったの?😄
0059名称未設定
垢版 |
2023/04/10(月) 00:07:25.82ID:EjEWjgVm0
自覚のない無知が知ったかで妄想ばら撒いただけ
馬鹿の典型
0060名称未設定
垢版 |
2023/04/10(月) 00:29:03.05ID:RoicIzvd0
今回は馬鹿が沢山いたね
0061名称未設定
垢版 |
2023/04/10(月) 00:40:23.91ID:VlLpsHnQ0
時間を無駄にした老人とAI信奉者と連投妄想奇人とよりどりみどり
0062名称未設定
垢版 |
2023/04/13(木) 19:06:28.27ID:TGWJwIAp0
人をバカにしちゃいけないよその行為がmacを使うヤツは愚か者だと紹介していることになる
0063名称未設定
垢版 |
2023/04/13(木) 19:11:05.11ID:7PLQR+JG0
まるでmacではない何か、なんでもいいが、ではそんなことは無いような言いよう
この頭の悪さはいったい
0064名称未設定
垢版 |
2023/04/13(木) 19:17:29.74ID:VBxbyMck0
一定の悟性持ってなきゃ扱いは最低なのは普通でしょ
学習しなと促した結果が未成熟AIと連投に縋ったんだから
0065名称未設定
垢版 |
2023/04/16(日) 22:10:18.01ID:EbBqcrxS0
前スレでVenturaのシステム設定でpaneが使えなくなってるって書いたけど最新13.3.1だと使えるようになってる
ただ書き方はちょっと変えないといけない

tell application id "com.apple.systempreferences"
--set current pane to pane "com.apple.settings.PrivacySecurity.extension" --これだとエラーになる
set current pane to (first pane that id is "com.apple.settings.PrivacySecurity.extension")
end tell
0066sage
垢版 |
2023/04/17(月) 06:20:07.94ID:95ExQ/iX0
配列listXには、複数のフォルダーのフルパスが登録されてます。これらのフォルダーを
すべてcolumnViewOptionsで開きたいのですが、次のスクリプトだと失敗します。
ご指導いただけると幸いです。(macOS: 13.3(22E252))

var finder = Application('Finder');
finder.Prerences.foldersOpenInNewWindows = true
finder.Prerences.columnViewOptions = true
listX.forEach(function(element){
fullPath2 = Path(element);
finder.open(fullPath2);
});
0067名称未設定
垢版 |
2023/04/17(月) 07:49:27.46ID:LPPIkgZT0
>>66
気づいていると思うけど
finder.Prerences.❌
finder.Preferences.⭕

それにjavaはここじゃ無いよ
0068名称未設定
垢版 |
2023/04/17(月) 07:52:34.36ID:LPPIkgZT0
※javaでも動きませんが
0070名称未設定
垢版 |
2023/04/17(月) 09:26:01.15ID:hgN5L63o0
>>66
finder.finderPreferencesな。ちゃんと用語説明に書いてあるから。
だが結局は>>69の通りr/o
007166
垢版 |
2023/04/17(月) 10:47:39.46ID:sIZO2aSy0
>>67-70
ご指導、ありがとうございました。
>それにjavaはここじゃ無いよ
jxaは、ここのスレッドでよろしいでしょうか?
0073名称未設定
垢版 |
2023/04/17(月) 11:15:38.22ID:hgN5L63o0
java java 言ってるけど、javaとjsは別物だからな
それにjs関係のスレで聞く方が内容的にスレ違いなんで聞くとしたらココでしょ
0074名称未設定
垢版 |
2023/04/17(月) 18:50:24.27ID:370gsz9h0
本当はAppleScriptでやりたいのに、AppleScriptでサポートせずJXAに丸投げのもあるし、AppleScriptでJXA書ける呼べるからなあw
言語が違うだけでやりたい本質は同じだよね
0075名称未設定
垢版 |
2023/04/30(日) 16:28:13.17ID:VVEg+A200
ASで tailコマンドみたいなの出来ませんか
007775
垢版 |
2023/04/30(日) 18:31:57.54ID:VVEg+A200
do shell script 使わずに AS のみで tailを取りたい
before 使えば1行目取れるから最終行なんとかならん
0078名称未設定
垢版 |
2023/04/30(日) 20:52:58.22ID:5JkMKu+/0
AppleScriptで位置を指定するときに負数の場合は後ろからというのは何のときだったかなあ
そゆことでしょ。何のときだったけ
0079名称未設定
垢版 |
2023/04/30(日) 20:57:10.58ID:5JkMKu+/0
ああ、thru の時か、これでいいんじゃないの??
何に使いたいのかさぱりだから、これではダメかも知れんが
0080名称未設定
垢版 |
2023/04/30(日) 21:11:25.36ID:5JkMKu+/0
あ、thru だけじゃなく、普通の位置指定でもだな
位置指定でマイナスは後ろか。thruはそれに則ってるだけとも言えるか
008175
垢版 |
2023/04/30(日) 22:15:01.85ID:VVEg+A200
追加さてれ行くファイルの差分を取りたいんです
無限ループで飲み込むのにdo shell script使ってます
ASで直接お尻から読めたら速くなりませんか
0082名称未設定
垢版 |
2023/04/30(日) 22:52:31.72ID:5JkMKu+/0
イマイチ何したいのかわからんw
速くなるかもしれないしならないかもしれない
読むファイルのサイズ、およびファイル数、差分判定のステップ数によるだろうしな
0083名称未設定
垢版 |
2023/04/30(日) 22:56:11.69ID:5JkMKu+/0
ああ、追加されていく行 なのか
だったら、元のファイルの バイト数 以降のを read で読めばいいだけのような、後ろからとはちょっと違うような。元のはバイト数ではなく行で管理保存してるとかか
シェルスクリプトでもそう変わらないような
008575
垢版 |
2023/05/01(月) 21:39:22.89ID:etCKBamX0
read f from eof to -10 using delimiter "
"
バイト単位しか取れません、行で取りたい
0086名称未設定
垢版 |
2023/05/01(月) 22:20:45.68ID:4W7KdNjR0
行で取りたい時点で、ファイルの最初から読まなければならない
readで全て読んでその後でもそれほど変わりはないだろう。
バイト単位ならまだ読み飛ばしはできる、効果は顕著にもなる期待はできるがな
0087名称未設定
垢版 |
2023/05/01(月) 22:41:25.01ID:4W7KdNjR0
>行で取りたい時点で
(先頭からの)行番号行数を指定したい時点で
が、より正確か
後ろから何行文ファイルから読むというのは逆に面倒なのでサポートしてなくても何ら不思議ではないな
0088名称未設定
垢版 |
2023/05/02(火) 00:18:27.47ID:HmUjTxkj0
> from eof to -10

なんでこんな少量ぽっち読んでんの、ていうか値の根拠はなに
毎度小出しな感じがしてなんかイマイチ
0089名称未設定
垢版 |
2023/05/02(火) 01:40:22.72ID:ZrCjAFUj0
それはさすがに単なるテストだろってわかりそうなもんじゃないの
10行分取れなかった、10バイトだったってだけでしょ
それで行単位で指定できるのかの確認はできるんだから、何をつっこんでるんだかイマイチ
0090名称未設定
垢版 |
2023/05/02(火) 01:51:47.88ID:ZrCjAFUj0
Script Editor の Library から見る説明では、明確に byte と書いてるのは for でしかない(関連性ある for from to で)が、
>>84のではちゃんと逐一 byte って書いてるね。書いてるんだからそうでしかないのはまあ当たり前かな
0091名称未設定
垢版 |
2023/05/02(火) 03:00:43.03ID:tlim7HQJ0
>>89
俺にはわからん、ろくに説明なしじゃ

わからんから tail -f ぽいの。欲しいのと全然違うだろうけど
a.scptとして保存したらターミナルで osascript a.scpt /var/log/system.log 等

property LINEMAX : 2048 -- sysctl user.line_max
global lastpos

on run argv
set lastpos to 0
set f to POSIX file (item 1 of argv)

repeat
set ll to getnewlines(f)
if ll is not {} then
repeat with l in ll
log l
end repeat
else
delay 1
end if
end repeat
end run

-- 続く
0092名称未設定
垢版 |
2023/05/02(火) 03:01:22.07ID:tlim7HQJ0
-- 続き

on getnewlines(f)
if lastpos = 0 then
set eofpos to get eof f
if eofpos > LINEMAX * 11 then
set pos to eofpos - LINEMAX * 11
else
set pos to 1
end if
set ll to read f from pos using delimiter "
"
set lastpos to eofpos
if (count of ll) > 10 then
set ll to items -10 thru -1 of ll
end if
else
set eofpos to get eof f
if eofpos > lastpos then
set ll to read f from lastpos + 1 using delimiter "
"
set lastpos to eofpos
else
set ll to {}
end if
end if
return ll
end getnewlines
0093名称未設定
垢版 |
2023/05/02(火) 06:54:19.12ID:w1r2s5yA0
延々となスクリプトを何書いて何したいんだかだな
009475
垢版 |
2023/05/02(火) 19:42:26.78ID:W1Rq2hwb0
>>91
ありがとうございます、良いヒントになりました
ループ内のシェル呼び出し減らせそうです
正規表現やワンライナーだけシェルに任せます
0095名称未設定
垢版 |
2023/05/12(金) 03:06:06.63ID:YVxalhzE0
property kBackwardsReadBlockSize : 1

on openBackwardsBlockReading(theFile)
script instance
property _fileRef : open for access theFile
property _readPos : (get eof of _fileRef) + 1
property _pendingPrevious1stItem : ""

on closeFile()
try
close access _fileRef
end try
set {_fileRef, _pendingPrevious1stItem} to {missing value, missing value}
end closeFile
0096名称未設定
垢版 |
2023/05/12(金) 03:06:13.77ID:YVxalhzE0

on readNext()
if _readPos is 1 then return missing value

local readLen, readItems
set readLen to kBackwardsReadBlockSize
if _readPos is not greater than readLen then set readLen to _readPos - 1
set _readPos to _readPos - readLen

set readItems to paragraphs of (read _fileRef from _readPos for readLen)
set last item of readItems to last item of readItems & _pendingPrevious1stItem
set _pendingPrevious1stItem to ""

if _readPos is 1 then return readItems
set _pendingPrevious1stItem to first item of readItems
if (count of readItems) is 1 then return {}
return items 2 thru -1 of readItems
end readNext
end script

return instance
end openBackwardsBlockReading
009775
垢版 |
2023/05/14(日) 22:57:40.73ID:739XKzPu0
>>95
素晴らしいです、シェル呼び出しの30倍以上速いです、早速使わせて頂きます
シェル呼び出しは負荷が高いのでASで全て表現出来れば良いのですが難しいですね

コマンドプロセス確認の取得方法がわからないので ps aux
不特定行に現れる特定の文言があればエラーにする部分は sed
前後する数値の特定は sed と uniq と perl ワンライナー <= こいつの負荷が高い

ループ内のシェル呼び出し消せたので随分軽くなりました、感謝です
0100名称未設定
垢版 |
2023/05/15(月) 12:51:37.06ID:beIsdW340
小学5年生よりバカだな
0101名称未設定
垢版 |
2023/05/15(月) 17:50:33.79ID:rZq5I0a40
誤った歳の取り方、馬鹿な誤魔化しの人生が透けて見える感じ
0102名称未設定
垢版 |
2023/05/19(金) 20:22:12.13ID:6RV5/2XX0
ヒント出してるのに、コードイメージ出来ないとは、薄っぺらい人生が透けて見える感じ
0103名称未設定
垢版 |
2023/05/20(土) 00:28:30.48ID:McRngYgT0
それを本人が気づいてないんだからそのまま
余計な口を開くほど薄っぺらさが出るだけなのにな
0104名称未設定
垢版 |
2023/05/20(土) 12:13:26.64ID:mYrM2yKk0
ぷっ笑 反応速いなー、寂しいんだね
しばらく付き合ってあげようか?
0106名称未設定
垢版 |
2023/05/20(土) 21:10:19.46ID:qK358pVE0
そらこんなマイナーな言語のスレに貼り付いて……いないな
0107名称未設定
垢版 |
2023/07/27(木) 17:09:09.76ID:eQcQ7Kl+0
Venturaで
システム設定.app>一般>ストレージ>すべてのボリューム
を開くスクリプトって可能でしょうか
0110名称未設定
垢版 |
2023/07/27(木) 17:54:15.26ID:um6pLo6D0
>>107
tell application "System Events" to get every disk
0111名称未設定
垢版 |
2023/07/27(木) 18:42:45.19ID:eQcQ7Kl+0
ありがとうございます
>>108さんのアドバイスで解決しました
頑張る、なんてコマンド、リファレンスのどこにも書かれていない...(´・ω・`)

on run {input, parameters}
tell application "System Settings"
activate
reveal pane id "com.apple.systempreferences.GeneralSettings" -- works as expected
delay 1
tell application "System Events"
tell process "System Settings"
click button 3 of group 1 of scroll area 1 of group 1 of group 2 of splitter group 1 of group 1 of window "一般"
delay 4 --接続している外部機器がスリープしている場合、すべてのストレージ機器がウェィ苦するまでに要する時間にする
click button 1 of group 1 of scroll area 1 of group 1 of group 1 of group 2 of splitter group 1 of group 1 of window "ストレージ"
end tell
end tell
end tell
end run

ショートカット化して「cmd-F19」で起動可能にして便利になたよ(`・ω・´)
0112sage
垢版 |
2023/09/09(土) 09:06:08.82ID:chRMarHQ0
JavaScript(JXA)をAutomatorで効率的に実行する方法についての
質問です。現在は同じ内容のJavaScript(JXA)を
「ライブラリー==>JavaScriptを実行」で複数回
次のようにAutomatorに書き込んでいます。

function run(input, parameters) {
 [50行の同一のJXA]
return input;
}

この[50行の同一のJXA]を外部ファイルに書き出して,それをAutomator
から実行する(呼び出す)方法はございますか? 
なお「同じ内容のJavaScript(JXA)」の前後には,Automatorで
JXA以外のコマンドを実行しております。
0114sage
垢版 |
2023/09/09(土) 14:35:16.01ID:chRMarHQ0
ご教示ありがとうございます。(1)フォルダーを作成し:
mkdir ~/Library/Script Libraries/
(2)そこにQuickTimeを制御するplayQt.scpt起き
function playMov() {
quickTimePlayer = Application("QuickTime Player");
quickTimePlayer.activate();
途中省略
}

(3)Automatorの方には次のようなJXAを書き込み
function run(input, parameters) {
toolbox = Library('playQt');
toolbox.playMov();
return input;
}

Automatorを実行すると,「Automatorが予期しない理由で終了しました」となりエラーが発生しました。
試しに(2)のスクリプトを次のように実質空にしても
function playMov() {
;
}
同じエラーメッセージが発生するので,(3)に問題があるようです。
0115名称未設定
垢版 |
2023/09/09(土) 16:35:45.33ID:GVt2qfmi0
(3)の中の2行は、Automatorでなしに、スクリプトエディタ上では動くの?
toolbox = Library('playQt');
toolbox.playMov();
0116sage
垢版 |
2023/09/09(土) 20:01:13.47ID:chRMarHQ0
>>115
>スクリプトエディタ上では動くの?
スクリプトエディタ上で(3)を実行すると
「スクリプトエディタが予期しない理由で終了しました。」と
エラーメッセージが表示され,クラッシュします。
2行目のtoolbox.playMov();を削除して
toolbox = Library('playQt');だけを実行すると
クラッシュはせず,エラーメッセージも表示されませんが
(予想通り)何も起こりません。
0117sage
垢版 |
2023/09/09(土) 20:40:36.00ID:chRMarHQ0
>>113
ここに紹介されているtoolbox.scptをコピペして
スクリプトエディタから,同じく紹介されている:
toolbox = Library('toolbox')
toolbox.log('Hello world')
を実行しても,「スクリプトエディタが予期しない理由で終了しました。」
と表示されて,クラッシュします。
 どこかで致命的なミス・思い違いをしているかもしれません。
0118名称未設定
垢版 |
2023/09/10(日) 07:43:40.20ID:63TOklfs0
JXAの実行環境がぶっ壊れてるのかも

作りかけのJXAスクリプトであっけなくクラッシュしてしまうことは時々あるけど、今回のスクリプトは間違ってるわけでなし、うちでは動く
0119118
垢版 |
2023/09/10(日) 08:17:24.02ID:iEK5/xd+0
ご報告
別OSで試してみたらクラッシュしたw

どちらも古いけど
High Sierraでは動く
Catalinaではクラッシュ
0122117,116
垢版 |
2023/09/10(日) 13:20:58.13ID:zhde7ZtV0
>>120
ありがとうございます。家に帰り次第,試してみます!
0123sage
垢版 |
2023/09/10(日) 19:20:04.66ID:gle52nXw0
>>122
「実効専用」の「scptd (Script Bundle)で保存」して
見事,動きました!!! Ventura13.4.1では
「実効専用」のチェックボックスを
チェクしないと,動かないようです。
0124123
垢版 |
2023/09/14(木) 09:34:29.15ID:LjTlinaE0
(2)のJXAで,動画ファイル/Users/taro/13.mp4を開こうとすると,
 (1)「書類“13.mp4”を開けませんでした。
   このファイルはQuickTime Playerと互換性がありません。」
というエラーが表示されます。
 (2) quickTimePlayer = Application("QuickTime Player");
   quickTimePlayer.activate();
   result1 = quickTimePlayer.open("/Users/taro/13.mp4");
しかし(2)を実行する直前に:
 (3) この動画ファイル13.mp4をQuickTime Player.appで開き
   次にQuickTime Player.appを終了(Quit)する
作業を行い,その後に(2)を実行すると,(1)のエラーは表示されずに
正常に動画13.mp4が再生されます。
 ご教示いただきたいのは,(3)の作業を行わずに,直接(2)の
ようなJXAだけで正常に動画13.mp4を再生する方法です。
よろしくお願いします。
0126名称未設定
垢版 |
2023/09/14(木) 10:42:09.43ID:eXesN4Bq0
>>124
>quickTimePlayer.open("/Users/taro/13.mp4");
quickTimePlayer.open(Path("/Users/taro/13.mp4"));
JXAでファイルパスは単なる文字列表現で済ますのではなく、Pathで明示した方がいいだろう
0128123
垢版 |
2023/09/14(木) 10:56:24.98ID:LjTlinaE0
無事解決できました。いつもありがとうございます!
0129名称未設定
垢版 |
2023/09/23(土) 00:20:22.81ID:IY+9UYOO0
変数が 0 なら 1 を代入するスマートな方法ある?
0130名称未設定
垢版 |
2023/09/23(土) 01:55:15.11ID:lC4/k50A0
try
A * 1
on error
set A to 1
end try

---

item ((A / A) + 1) of {1, A}
set A to result
0131名称未設定
垢版 |
2023/09/23(土) 04:11:04.50ID:sFUrl3EY0
結局ベタが一番な気が
if x is 0 then set x to 1
x = x === 0 ? 1 : x;
0132名称未設定
垢版 |
2023/09/30(土) 20:46:51.36ID:7T7n9Pw50
Dockから特定のアプリを削除
Dockに特定のアプリを登録
これわかんねー
0133名称未設定
垢版 |
2023/10/08(日) 02:59:22.19ID:bQMpxACO0
DockもAppleScript対応して欲しいもんだ
0134名称未設定
垢版 |
2023/10/15(日) 19:43:16.88ID:YNkZQK1R0
SonomaでNight-shiftをapplescriptで実行する方法ご存知ありませんか?
https://github.com/ravicious/toggle-night-shift
これは試してみましたがダメでした。

本当は「カラーを反転」の状態でNight-Shiftをやりたいのですが
デフォルトではNight-Shiftで自動的にカラー反転が戻ってしまいます。
そこでカラープロファイルを2つ用意してトグルするともう一度反転が起こって
Night-Shiftとカラー反転を両立できるところまで分かっているのですが、
それをスクリプトで実行したくて質問したものです。
0135名称未設定
垢版 |
2023/10/16(月) 02:49:48.86ID:+ATjpBY00
GUI scriptingでコントロールセンターを操作するとか
0137名称未設定
垢版 |
2023/10/19(木) 13:33:15.36ID:lQy+IAGn0
ご返事ありがとうございます。
Python は無知ですのでハードルが高そうですけど試してみます。
0138名称未設定
垢版 |
2023/10/20(金) 03:43:56.56ID:/Qbn3qeO0
そこのグレースケールを操作するところの話、JXAで

var bundle = $.CFBundleCreate($.kCFAllocatorDefault, $.NSURL.fileURLWithPath('/System/Library/PrivateFrameworks/UniversalAccess.framework'));
var UAGrayscaleSetEnabled = $.CFBundleGetFunctionPointerForName(bundle, $('UAGrayscaleSetEnabled'));
ObjC.bindFunction('UAGrayscaleSetEnabled', ['void', ['bool']]);

$.UAGrayscaleSetEnabled(true);
0139名称未設定
垢版 |
2023/10/22(日) 11:04:42.65ID:ujAeEBxd0
Night Shiftの設定、JXAで
ObjC.import('CoreBrightness') が使えなかったんでこんな風にしてみた
合ってんだか合ってないんだか

ObjC.import('objc');
$.NSBundle.bundleWithPath('/System/Library/PrivateFrameworks/CoreBrightness.framework').load;
$.CBBlueLightClient = $.objc_getClass('CBBlueLightClient');

var client = $.CBBlueLightClient.alloc.init;
client.setEnabled(true);
0140名称未設定
垢版 |
2023/10/25(水) 23:18:00.58ID:x0BI0MYx0
システム環境設定を開かずに優先する言語を逆順に入れ替えるJXA一行
$.NSLocale.setPreferredLanguages($.NSLocale.preferredLanguages.reverseObjectEnumerator.allObjects)

普段は英語を優先してて日本語にすることもあるものの、毎度システム環境設定を開いて入れ替えるのが面倒になった
なお10.13 High Sierraではメニューバーの時計の表示は(システム環境設定を開いて変更したときのように)連動して変わってくれないのが難点
0141123
垢版 |
2023/10/27(金) 10:02:02.02ID:YFWw4ZOQ0
>>134
>SonomaでNight-shift
画面の明るさの話題が出たので関連質問です。
スクリプトエディター.appの真っ白な背景色を
変更する方法などはございますでしょうか? 
システム設定>アクセシビリティ>カラーを反転
だと,スクリプトエディターはダークになりますが
他のダークモード対応のアプリ・画面が白く輝き
目が疲れてしまいます。
0142名称未設定
垢版 |
2023/10/27(金) 10:46:31.09ID:gy+qqABI0
Script Debugger 8 試したら
8でDark Mode対応
試用期限20日後は"lite"モードになって使える
0143名称未設定
垢版 |
2023/10/27(金) 10:50:12.16ID:gy+qqABI0
> 試用期限20日後は"lite"モードになって使える

Dark Mode対応がどうなるかは不明
0145名称未設定
垢版 |
2023/11/03(金) 23:21:28.92ID:J/5IhoXs0
ターミナルで
printf 'あ' | pbcopy -pboard find
ってやると検索文字に入るのにdo shell scriptだと入らないのなんなん
0146名称未設定
垢版 |
2023/11/03(金) 23:32:29.70ID:J/5IhoXs0
自決
これで逝けました
do shell script "export LANG='ja_JP.UTF-8'; printf 'あ' | pbcopy -pboard find"
0147名称未設定
垢版 |
2023/11/11(土) 16:52:53.29ID:FmhRWB130
JXAで、ObjC.import('signal')すると、定数宣言されてるsys_signame(やsys_siglist)が見えそうなんだけど、$.sys_signameでクラッシュしてしまって(Segmentation fault: 11)何もできない
どうにか中の文字列を読めないか悩んでたのがとりあえず解決したので記録(元々これ使って何がしたかったって訳でもなく、import関係なくなっちゃったけど)

結論としては、dlsym()の戻り値を本来の'void*'から'void**'に変えてみるとポインタが指す先の文字列を読めた('void*'のままだとポインタそのものは見えるけど、その先はどうにもできなかった)

なお、このimportで参照されるのは/System/Library/PrivateFrameworks/JavaScriptAppleEvents.framework配下、BridgeSupportCache下signal.plistで、sys_signame(やsys_siglist)のtypeは[32*]
元となるsignal.hでの宣言は
extern __const char *__const sys_signame[NSIG]; 等、内容は https://opensource.apple.com/source/Libc/Libc-1244.50.9/gen/FreeBSD/siglist.c.auto.html のように
const char *const sys_signame[NSIG] = {
"Signal 0",
"hup", /* SIGHUP */
"int", /* SIGINT */ 等、これは/usr/lib/system/libsystem_c.dylib内にある
0148名称未設定
垢版 |
2023/11/11(土) 16:53:27.38ID:FmhRWB130
続き

読み出し例:
ObjC.bindFunction('dlopen', ['void*', ['char*', 'int']])
ObjC.bindFunction('dlsym', ['void**' /* 本来は 'void*' */, ['void*', 'char*']])
libref = $.dlopen('/usr/lib/libc.dylib', 2 /* RTLD_NOW */)
ptrref = $.dlsym(libref, 'sys_signame' /* または 'sys_siglist' */)
strs = []
for (i = 0; i < 32; i++) {
str = ''
for (j = 0; ; j++) {
if (ptrref[i][j] == 0) {
strs.push(str)
break
}
str += String.fromCharCode(ptrref[i][j])
}
}
strs.forEach((str, i) => console.log(i, str))

結果:
/* 0 Signal 0 */
/* 1 hup */
/* 2 int */ 等

他にも似たようなのあるけど、import用の.plistって、.hから機械的に変換、生成してるだけで、簡単に使えないのも混ざってるぽい
0149名称未設定
垢版 |
2023/11/13(月) 22:12:12.75ID:aSkuUmIr0
今更ながら前スレ https://egg.5ch.net/test/read.cgi/mac/1491018171/669 のJXA版

ObjC.import('AppKit')
ObjC.import('IOKit') // NX_KEYTYPE_SOUND_UP, etc.
ObjC.import('objc')
var fkey = $.NX_KEYTYPE_SOUND_UP
function fkeydown(fkey, down = true) {
var nil = $()
var flags = down ? 0xa00 : 0xb00
var event = $.NSEvent.otherEventWithTypeLocationModifierFlagsTimestampWindowNumberContextSubtypeData1Data2($.NSSystemDefined, $.NSZeroPoint, flags, 0, 0, nil, 8, ((fkey << 16) | flags), -1)
// $.CGEventPost($.kCGHIDEventTap, event.CGEvent)では動かない。無視される(システムログにエラー'Invalid event'が出る)か、クラッシュする
$.CGEventPost($.kCGHIDEventTap, event.performSelector($.sel_registerName('CGEvent')))
}
fkeydown(fkey)
fkeydown(fkey, false) // fkeyup

時々思い出しては解決できずにもやもやしてたけど、これでどうにか気が晴れた
0150名称未設定
垢版 |
2023/12/14(木) 13:14:31.45ID:zezJY19P0
MBPが壊れて買い換えて大幅に環境が変わったらAppletが動かなくなってた。色々影響あるのかな? すいません独り言の愚痴でした
0151名称未設定
垢版 |
2023/12/15(金) 08:32:16.45ID:PTesWRWe0
再保存、Script Editorで開いて保存しなければ動かないってあったな
0152名称未設定
垢版 |
2024/03/03(日) 04:30:45.67ID:Xj5rIMR50
iTermで現在のフォルダ名を記述するスクリプトを作りたいのですが
https://daeudaeu.com/finder-terminal/
を参考に下記を実行してみましたが
動作してくれません。
どなたか解決方法ご存知ありませんか?
iTermがデフォルトのTerminalでなくても実行できるようにしたいのですが。

on run {input, parameters}

tell application "Finder"
set hfsCurrentFolder to insertion location as Unicode text
set currentFolder to get POSIX path of hfsCurrentFolder
end tell

set command to "cd " & currentFolder

tell application "iTerm"
do script command
activate
end tell

end run
0154名称未設定
垢版 |
2024/03/03(日) 10:23:56.17ID:ms+RoSBt0
見たところcreate tabかcreate windowにcommand "command"あるけど、それを実行してもsession終わって閉じちゃうようだし、write text "text"の方かな
create window with default profile
tell current session of current window
write text "cd ~/Desktop"
end tell
とか
0155名称未設定
垢版 |
2024/03/03(日) 12:19:33.20ID:Xj5rIMR50
ご教示ありがとうございます。
下記を試してみましたが上手く行きませんでした。
mycommandをテキスト化できていないと思うのですが。
----------------------------------------

on run {input, parameters}

tell application "Finder"
set hfsCurrentFolder to insertion location as Unicode text
set currentFolder to get POSIX path of hfsCurrentFolder
end tell

set mycmd to "cd " & currentFolder

tell application "iTerm"
create window with default profile
tell current session of current window
write text mycmd
end tell

end run
0156名称未設定
垢版 |
2024/03/03(日) 12:34:44.59ID:ms+RoSBt0
tell と end が対になってないじゃん
それに、動作してくれません、上手くいきませんじゃなくて、エラーメッセージちゃんと書かないと
それと、いきなり組み込むんじゃなくて、あの程度なら、外から渡す変数もないようだし、スクリプトエディタで確認した方がいい

すまん、文句しか出ないw
0157名称未設定
垢版 |
2024/03/03(日) 12:50:00.54ID:Xj5rIMR50
ありがとうございます!
end tell を追記したら上手く行きました。
レスを投稿する


ニューススポーツなんでも実況