2ちゃんねる スマホ用 ■掲示板に戻る■ 全部 1- 最新50    

【中の人】Automator【小人】3人目

1 :名称未設定:2014/11/17(月) 19:12:32.44 ID:+W3jGxLM0.net
前スレ
【中の人】Automator【小人】2人目
http://anago.2ch.net/test/read.cgi/mac/1168924788/

【中の人】Automator【小人】
http://pc7.2ch.net/test/read.cgi/mac/1088457299/

419 :名称未設定:2023/02/23(木) 18:08:54.66 ID:nxUMNkhq0.net
>>416
なんでopen locationした後、make new windowしてんの?
余計な空白タブができる原因はこれでしょ
Firefoxは入れてないんで知らんけど、Safariではこれでできてるよ

420 :名称未設定:2023/02/23(木) 18:32:48.64 ID:em7s4B4V0.net
>>419
レスどうも。
うちの環境では(特に特別な設定はしてません)make new documentを外してもやはり空白の新規タブが最初に作られてしまいます。

421 :名称未設定:2023/02/23(木) 20:54:12.12 ID:bqPnJvwt0.net
>>416
do shell script "open -g -b 'org.mozilla.firefox' 'https://www.apple.com/'" --手前にせず背後で開く(新規タブ/ウインドウは作られないはず)
--delay 1 --front windowが見つからないとか言われる場合は少し待たせる。
tell application "Firefox"
tell front window
set bounds to {0, 0, 1000, 1000}
end tell
--delay 1 --activateで新規タブ/ウインドウが開いてしまう場合は少し待たせる。
activate
end tell

422 :名称未設定:2023/02/24(金) 08:05:08.60 ID:TrBITBM/0.net
>>421
レスどうも。
私の環境ではうまくいかないようです。
やはり空白タブが出てきたり、指定してウインドウサイズにならなかったりします。
ちゃんと思うように動作することもあるのですが。
待ち時間も変更してみましたがうまくいかないようです。

423 :名称未設定:2023/02/24(金) 12:00:02.57 ID:C4ZxPTq80.net
Firefoxが起動して既にウィンドウがあっても別の新しいウィンドウでなら、
Firefox実行ファイルのオプションで(起動。新たに別のAppとしては起動しないけど)かな
set firefoxPath to quoted form of ((POSIX path of (path to application id "org.mozilla.firefox")) & "Contents/MacOS/firefox-bin")
set firefoxOption to "--new-window"
set theURL to "https://www.apple.com/"
do shell script firefoxPath & " " & firefoxOption & " " & quoted form of theURL
Firefoxが起動してなくてでは余計なブランクタブができてることが(ままある)のはもうFirefoxの癖(wまあバグといえばバグ)だから、気にくわないならブランクタブを消すようにスクリプトを書くしかないかな

ウィンドウサイズは、許可を与えてないか、ブラウザウィンドウではないなんか不可視の隠しウィンドウがあるからそれに対してか、単なるスクリプトのミスかな
ちゃんとしたドキュメントウィンドウ/ブラウザウィンドウはSystem Eventsでのattributeで得られたはず

424 :名称未設定:2023/02/24(金) 12:13:22.89 ID:C4ZxPTq80.net
>ちゃんとしたドキュメントウィンドウ/ブラウザウィンドウはSystem Eventsでのattributeで得られたはず
System Eventsでの対象ウィンドウは、ドキュメントウィンドウやGUIとしてちゃんと意味あるウィンドウだけで、余計ななんかわからんのは無い方だったか
逆に、他のスペースにあるのは無かったりもするけど。今回のようなのはSystem Events/processでのfront windowでやった方が良さげ

425 :名称未設定:2023/02/24(金) 12:31:57.48 ID:TrBITBM/0.net
みなさんご親切に様々な方法を教えていただいてありがとうございます。
もしかすると当方の環境のせいでうまく動作しないのかもしれないので
一旦Firefoxを初期化して教えていただいている方法を試してみます。
ここまでありがとうざいます。

426 :名称未設定:2023/02/24(金) 14:47:04.71 ID:C+3xlO1/0.net
Firefoxのオプションは、--new-window でなくて -new-window な
コマンドラインから open -a /Applications/Firefox.app --args -new-window https://5ch.net とかって試してみるのオススメ

427 :名称未設定:2023/02/24(金) 15:59:42.97 ID:C4ZxPTq80.net
わざわざそんないちゃもんwはどこから出てきたんだ?
フルネーム的なオプションの場合は、- ではなく -- というのがデファクトスタンダード(どこか策定するとことかでそうすべきという文書があるはず)
Terminalで firefox-bin --help もしくは firefox-bin -h してみ

428 :名称未設定:2023/02/24(金) 16:05:28.86 ID:C4ZxPTq80.net
ああ、
>コマンドラインから open 〜
openに拘ってそれだと動いたうご来ないとかでか??だとしたら色々勘違いしすぎてるな

429 :名称未設定:2023/02/26(日) 22:08:47.27 ID:bYVj+mkG0.net
こんばんは。
いつもお世話になり続けています。

少し教えてください。

tell application "System Events"
if exists (window 1 of process "Safari") then
display dialog "1"
else
display dialog "0"
end if
end tell

Safariを終了してる状態でこのコードを実行するとダイアログで0が出て来るまでに7秒程度かかります。
Safariが起動しているとすぐに表示されます。
また、同じコードのSafariをFirefoxに変えるとアプリの終了起動に関係なくすぐにダイアログが出てきます。

このコード、何かおかしいでしょうか?
ウインドウは有無でコードを変えたいです。

430 :名称未設定:2023/02/26(日) 22:20:22.12 ID:bYVj+mkG0.net
>>429
レスを修正します。
>また、同じコードのSafariをFirefoxに変えるとアプリの終了起動に関係なくすぐにダイアログが出てきます。

Firefoxでもやはりアプリが起動してない場合ダイアログが出て来るまで時間がかかります。

macOS Ventura 13.2.1です。

431 :名称未設定:2023/02/26(日) 23:42:09.04 ID:eFr0FfPK0.net
やりたい事と違うかもだけど、プロセスが無ければ他の処理する案
tell application "System Events"
set p to every process whose name is "Safari"
if p is {} then
display dialog "-1"
else
if (exists window 1 of process "Safari") then
display dialog "1"
else
display dialog "0"
end if
end if
end tell

432 :名称未設定:2023/02/27(月) 01:41:24.20 ID:i6US5sRi0.net
へーexistsで有無を調べられるんだ
tryでやってたわ

433 :名称未設定:2023/02/27(月) 03:45:29.52 ID:kEtidHqu0.net
exists process が目的のprocessが存在しない場合がめっちゃ遅いね
>>431の、existsではない方法でプロセスの存在を確認してからのが適切のよう

434 :名称未設定:2023/02/27(月) 07:31:58.63 ID:kqzhTCxk0.net
おはようございます。
>>431さんの方法でばっちりいけました。
しかも、3通りの確認ができてさらに便利になりました。
大変助かりました。ありがとうざいます。

435 :名称未設定:2023/02/27(月) 17:34:28.49 ID:kqzhTCxk0.net
>>431
昨日教えていただいたこのコードですが、Safariだとうまく行っています。
とても嬉しいです。ありがとうございます。

うまくいってるのでFirefoxに転用しようとやっているのですが、(Safari -> Firefoxに書き換えています)
display dialog “-1”の所に例えば

tell application "Firefox"
activate
make new document
tell front window
set bounds to {0, 25, 1000, 1000}
end tell
end tell

を入れてFirefoxを終了した状態でAutomatorアプリを実行するとなぜかダイアログ1が返ってきます。
Safariではちゃんとダイアログ-1が返って来るのですが、Safariと同じような動作をさせるにはどうすればいいか分かりませんでしょうか。

436 :名称未設定:2023/02/28(火) 20:40:16.19 ID:pHF7uSUD0.net
>>435
念のための確認だけど
display dialog "1"
の上の行の “Safari” を “Firefox” に書き換えてますよね?

437 :名称未設定:2023/02/28(火) 21:42:51.08 ID:zYJXUQmm0.net
>>436
レスありがとうございます。
コードはテキストエディタにコピペして置換してるので漏れなく置き換えできてると思います。

438 :名称未設定:2023/02/28(火) 23:22:01.76 ID:pHF7uSUD0.net
>>437
元の >>435 だけど
> display dialog “-1”の所に例えば
の “-1” は “1” の誤りかな
んで「の所に」ってのは、置き換えで合ってる?
自分の所だと、想定通り(*)動いているような…?
* Firefoxウィンドウがある時だけリサイズ

tell application "System Events"
set p to every process whose name is "Firefox"
if p is {} then
display dialog "-1"
else
if (exists window 1 of process "Firefox") then
tell application "Firefox"
activate
make new document
tell front window
set bounds to {0, 25, 1000, 1000}
end tell
end tell
else
display dialog "0"
end if
end if
end tell

439 :名称未設定:2023/03/01(水) 01:24:47.31 ID:OSoG+7wj0.net
全く関係ないけど、Firefox の make new document は何の意味もないよ
documentオブジェクトは作られるが、何の意味もないのが作られるだけでただのメモリの浪費

440 :名称未設定:2023/03/01(水) 07:47:44.83 ID:vhRk47dZ0.net
>>439
Firefoxでは意味はないが、Safariの場合は意味があるってことですか?

441 :名称未設定:2023/03/01(水) 11:34:17.89 ID:OSoG+7wj0.net
そう

442 :名称未設定:2023/03/01(水) 11:42:34.31 ID:vhRk47dZ0.net
>>441
ありがとうございます。

443 :名称未設定:2023/03/01(水) 19:33:48.14 ID:b6/ZPb9l0.net
FirefoxはStandard Suiteしかないから、Scriptableとは言いがたいな

444 :名称未設定:2023/03/01(水) 20:38:04.76 ID:pTL+u2/O0.net
ちょっと前までは UI scriptingで何とかタブまではアクセスできたが、今のはそれすら全くだからな。今の話題のせいぜいウィンドウ「だけ」
全くScriptableではないよ。make new document の現在の無意味なのも前にScriptableにしようとした名残で残ってるだけで、現在のは全くScriptableではないな

445 :名称未設定:2023/03/01(水) 20:51:42.52 ID:pTL+u2/O0.net
>現在のは全くScriptableではない
かなり前から 正式なScriptable にする気は無くなっていて、その時からScriptableではないが、
普通にCocoa使って/準拠してのアプリを作れば UI Scripting で操作できるアプリになるのに、それすらできなくする、
全く「スクリプトによって」というのを意識しないオレオレな作り(スクリプトによるを排除/拒絶しようとしてんのかさえ思えるw)なアプリだなという意味での 全くScriptableではない ね

446 :名称未設定:2023/03/03(金) 17:25:43.30 ID:XU/16hJ80.net
ワークフローが動かない場合、各アプリごとに許可しないといけないと思いますが設定のどこから許可するんでしたっけ…?
venturaにしてから分からなくなってしまいました…https://i.imgur.com/k9H3rhk.png

447 :名称未設定:2023/03/03(金) 17:36:32.16 ID:3/Wcifio0.net
>>446
システム設定/プライベートとセキュリティ/アクセシビリティ
ですかね。
オートメーションの方は自動で設定されるので。

448 :名称未設定:2023/03/04(土) 13:05:27.47 ID:rvgih+T50.net
いつもお世話になっています。
以前>>421で教えていただいたコードですが、現在

AppleScriptを実行
do shell script "open -g -b 'org.mozilla.firefox' 'https://www.apple.com/'"
delay 0.5

AppleScriptを実行
tell application "Firefox"
activate
tell front window
delay 0.1
set bounds to {0, 0, 1000, 1000}
end tell
end tell

とAppleScriptを実行を2つに分けて使うとなんとなくうまくいくようになりました。
なぜ2つに分けるとなんとなく(1/10くらいの確率で空白タブができたりリサイズされなかったりますが)うまくいくのでしょうか?

1つにまとめるとほぼ毎回空白タブができてしまいます。
なぜそうなるのか理由が知りたいのですがわかりませんでしょうか。

449 :名称未設定:2023/03/04(土) 16:44:46.34 ID:c0bArpRv0.net
なんてーかもう、いちいちここで聞く話じゃない、突き詰めようとし過ぎじゃないの、って感じ
そこそこ回避できてるっぽいなら、それでもう満足しとけば

450 :名称未設定:2023/03/04(土) 17:22:06.75 ID:rvgih+T50.net
そうでしたね。
そうします。
失礼しました。

451 :名称未設定:2023/03/04(土) 18:06:26.17 ID:AmX5dPGZ0.net
でもまあ気になる気持ちはわかるよ。

452 :名称未設定:2023/03/04(土) 20:28:15.27 ID:3WDeF6aa0.net
AppleScriptは基本的に他のアプリに命令を投げるから、それにどれくらい正しく反応するかは投げられた側の実装次第。
起動してウインドウ表示しようとしてる時とか忙しそうな時には微妙なタイミングの違いで動作が変わってしまうのはよくあること。

確実に動かしたいならUI Scriptingで状態をチェックする処理を入れるとかするしかない。
(ただFirefoxは上の話のように対応度が低いのでそれも難しいけど)

453 :名称未設定:2023/08/16(水) 01:21:58.85 ID:QyveK+Ap0.net
Finderで開いているフォルダをカレントディレクトリとしてターミナルで新たなシェルを
開始する、みたいのってAutomatorでできるんでしたっけ?
あと、Finderで開いているフォルダに空のテキストファイルを作成してそれをエディタで
開くとか

以前見たような気がするんだけど、今さら気になって

454 :名称未設定:2023/08/16(水) 02:04:47.64 ID:O4r/RTu/0.net
できるよ

455 :名称未設定:2023/08/16(水) 06:29:04.46 ID:QyveK+Ap0.net
こんなところで「簡単なことは教えない」みたいなマウントしてる感じ?

456 :名称未設定:2023/08/16(水) 08:18:26.64 ID:5G5BuqE80.net
AppleScriptのスレだったと思うけど、一言「頑張れ」って返したら、自力で目的を達成するスクリプトを書いてた人がいた
だから君も「頑張れ」

457 :名称未設定:2023/08/16(水) 08:26:04.74 ID:5G5BuqE80.net
なんだ、一つ目はOS標準機能にあるじゃないの
https://support.apple.com/ja-jp/guide/terminal/trmlb20c7888/mac
> Finderから新しい「ターミナル」ウインドウやタブを開く

458 :名称未設定:2023/08/16(水) 08:49:32.20 ID:YhTSQqEs0.net
システム設定 → キーボード → キーボードショートカット... → サービス → ファイルとフォルダ

「フォルダに新規ターミナル」に好きなショートカットキーを設定する

459 :名称未設定:2023/08/16(水) 13:38:43.69 ID:O4r/RTu/0.net
>>458
これで付けたショートカットって、選択してるフォルダには使えるけど、開いてるフォルダ(タブ/ウインドウ)には使えないのよね

460 :名称未設定:2023/08/26(土) 06:44:11.54 ID:3XwEXjKH0.net
写真アプリから書き出した写真や動画の作成日や更新日時を、撮影した時間に一括変更する方法ないでしょうか?
スクリプトでありそうなのですが見つかりませんでした。
プレビューアプリ→Exif情報の「オリジナルの日時」にはきちんと撮影した時間が入っています。
こちらでFinderでソートしたいのですが、一括変更は出来ないでしょうか?

宜しくお願い致します。

461 :名称未設定:2023/08/26(土) 07:09:43.23 ID:bD2eFFBR0.net
>>460
コマンドラインでだけど、
ExifTool を使えば情報は取れるから、あとは setfile で作成日を変更すれば OK
https://exiftool.org/

462 :名称未設定:2023/08/26(土) 07:13:26.67 ID:bD2eFFBR0.net
あった
ttps://ogawadan.com/mac-photo-exif-date-automator-exiftool/

463 :名称未設定:2023/08/29(火) 05:59:12.42 ID:BOpegPSe0.net
>>462
ありがとうございます!
ただ、こちらにMOVをドラッグ&ドロップしてもCreation Dateを変更日には出来なかったです…。
MOVは無理なのでしょうか

464 :名称未設定:2023/08/29(火) 18:36:34.50 ID:N03P+p1u0.net
>>463
exiftool -CreationDate target.MOV で取れるみたいだけど?
ttps://kiririmode.hatenablog.jp/entry/20220219/1645245471

465 :名称未設定:2023/08/30(水) 21:30:51.49 ID:FfKIVUPE0.net
デフォルトのmdlsコマンドでexifデータを取得することも可能

466 :名称未設定:2024/03/05(火) 12:22:58.65 ID:nKwO8Qjg0.net
凄く初歩的な質問で申し訳ないですが
WindowsとMacのパスを変換するクイックアクションを作ったんですが
そもそも右クリックのクイックアクションの所に作ったクイックアクションが表示されません

システム設定のプライバシーとセキュリティのところにも表示されていません

ユーザー>ライブラリ>Serviceにクイックメニューのファイルはあります

原因分かるかたいますか?

467 :名称未設定:2024/03/05(火) 20:25:06.82 ID:zz+TaPR20.net
>>466
入力は何?
Finderで、ファイルやフォルダを右クリックして実行したいなら、
クイックアクションを作るときに、
ワークフローが受け取る現在の項目を“ファイルまたはフォルダ”にしとけば出るんじゃないの?

468 :名称未設定:2024/03/06(水) 09:04:34.84 ID:A6GvPnJr0.net
>>467
ありがとう

無事出来るようになりました!!

153 KB
新着レスの表示

掲示板に戻る 全部 前100 次100 最新50
名前: E-mail (省略可) :

read.cgi ver 2014.07.20.01.SC 2014/07/20 D ★