Skip to content

Instantly share code, notes, and snippets.

View tuna-wtl's full-sized avatar

tuna-wtl tuna-wtl

View GitHub Profile
@tuna-wtl
tuna-wtl / stay_home.html
Created April 12, 2020 08:41
Stay Home
<!doctype html>
<html lang="ja">
<head>
<meta charset="utf-8">
<meta http-equiv="x-ua-compatible" content="ie=edge">
<title>Stay Home</title>
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<link href="https://fonts.googleapis.com/css2?family=Courgette" rel="stylesheet">
@tuna-wtl
tuna-wtl / 2016-05-15-01.md
Last active May 20, 2016 17:00
【AppleScript】Firefox は do JavaScript が使えない!

AppleScript 上で、アプリケーションの起動の状態を知る、って、意外と難しい。 いろいろ調べているけど、未だに決定打と言える方法が見つけられないでいる…。

コンピュータの内部的には、既にプロセスとして起動しているけれど、我々人間がそれを認知・操作するのはメニューやウインドウの出現以後だから。そしてそれは前者の方が後者より圧倒的に速いので、いろいろと困ったことになる (笑) 。

そんなことから、AppleScript で activate とかやって処理書いても、上手く行かない場合が出て来て。 アプリケーションをフロントに出すだけでなく、その状態を判定してから操作しないと上に書いたような「時差」があるために、例えば他のアプリケーションのウインドウを触ってしまいエラーになったり (・・;)

つまり操作の直前までアプリケーションが前面に出ていることを確認しなければならない。 基本路線としては、イベントループ的機構で待ちの状態を作るほかないんだろうなと。

@tuna-wtl
tuna-wtl / 2015-05-26-01.md
Last active August 29, 2015 14:21
AppleScript + jQuery のそりゅ〜しょん

以前、らじ子の選局を自動でやる AppleScript を書いていた時に、実装はしていないものの、ページからエリアコードを取り出して一致したらうんぬんということをやろうとした。

こんな感じで。

set hoge to do JavaScript "$('#area span').attr('class');"

このページでは jQuery をロードしていたのでたまたまこれで取得できたわけだけど、そうじゃないページで、どうにかして jQuery 使えないかな、と、その時ぼんやり思っていたわけです。

そして今、定型のフォームへの自動入力をやってくれるスクリプト書いてて必要になってきた。やっぱりホラ、jQuery ないと要素へのアクセス面倒だし。その他いろいろ。

@tuna-wtl
tuna-wtl / 2015-05-12-01.md
Last active August 29, 2015 14:21
Growl を使ってみる

週1度のラジオ番組を聞き逃さないように、通知できないものかと思って。

音だとアレなんで、最近の OSX のような通知をしたいなと思ったんだけど、通常使用しているのは 10.6。

そこで、Growl を今頃使ってみようと。

Growl に同梱されている growlnotify を AS に書いて .app として書き出した後、それを iCal のイベントとして登録。

いい感じです。

idle, timer, observe

先の「iTunes でラジオ」にフローティングウィンドウを、という機能をひっつけたいということで、やはり Xcode で Cocoa-AppleScript にしなければ実現できないと諦めがついたので (笑) いろいろと調べてまして。

ウインドウ出すからには、現在のステーションや曲タイトルなんか見せたい。

で、それは、リアルタイムに変更したいということで、iTunes の状態を監視しておく必要があるわけですよね。

AppleScript でいう、on idle みたいなことをやることになるんだろうな、と。

@tuna-wtl
tuna-wtl / 2014-10-30-02.md
Last active August 29, 2015 14:08
iTunes のプレイリストに登録されたラジオステーションを一定時間で切り替えながら鳴らす(AppleScript)

使い方

まずラジオステーションを登録したプレイリストを一つ作ってください。
受信できないステーションはスキップします。その場合数秒の時間が空きます。
複数のステーションを登録しておくと良いでしょう。
そのリストの名前を【1】プレイリスト名へ。ダブルクオートの囲みは消さずに。

続く【2】【3】にそれぞれの(最大)音量を。
例えば両方「50」と数値を書き換えたら、システム/iTunes それぞれ
ボリュームスライダの針を中央にしたのと同じことになります。

"Resources" の中のファイル

Macintosh な人は知ってるけど、アプリケーション(.app)は、実体がフォルダで
その中に、アプリケーション自身が必要とするファイルが収められている。

「そこ」へ、アクセスしたい。
つまり今書いているスクリプト(最終的にアプリケーション)自身の中に。
調べていたら「path to resource」だとわかった。

AppleScript

音も簡単に鳴らすことができます

というわけで、afplay。

Macintosh には標準で入ってます。(Mac OS X 10.6〜)

これなら、どこにも tell する必要がない。

AppleScript

システム音量はコレでいいじゃん、て話

元々はアラーム時計を作りたかったので、
AppleScript での音関係についても調べてたんだけど、音量を設定/取得する時、
そのそれぞれでなぜか分解能というか、単位が違うのが気になる。

http://tonbi.jp/AppleScript/Dictionary/OSAX/Command/setVolume.html

だから、もうこれでやろう。 osascript。
0〜100 の数値で一貫する。

数値判定、これがあったか

AppleScript で数値判定するためにいろいろ探しまわってて。
こういう基本的なのは、先人の知恵を拝借した方がいいと思い 笑

http://piyocast.com/as/archives/299

こちらを拝見したんだけど、全角での数字が通っちゃうんだよね。
AppleScript の上だけならまだよかったのかもしれないけど
シェルに渡す必要があって(do shell script)、エラーになっちゃう。