犬ターネット

Archive : 2024年02月

Firefox で marquee タグが動かなくなっている

どのバージョンから動かないのかわからないけれど、現 ver 122.0.1 の Firefox では marquee タグが動作しなくなっている↓

マーキータグなのでテキストスクロールするよ!

Chrome や Edge もそのうち追随するのだろう。俺たちHTML手打ち世代のおもちゃがまたひとつ消えていく。R.I.P. marquee

--- 追記 ---

と思ったら動いている、、、? Windows10だと動かない、Windows11だと動くぽい、、、?


blueskyにPHPからPOSTする

PHPというか curl を実行するだけ。公式ドキュメントの この辺 をみて実装。

<?php

function getJWT($handle, $password)
{
    $ch = curl_init("https://bsky.social/xrpc/com.atproto.server.createSession");
    curl_setopt_array($ch, [
        CURLOPT_CONNECTTIMEOUT => 10,
        CURLOPT_SSL_VERIFYPEER => false, // 手元の環境だとこれがないと接続できなかった
        CURLOPT_RETURNTRANSFER => true,
        CURLOPT_POST => true,
        CURLOPT_HTTPHEADER => [
            "Content-Type: application/json",
        ],
        CURLOPT_POSTFIELDS => json_encode([
            "identifier" => $handle,
            "password" => $password,
        ]),
    ]);
    $response = curl_exec($ch);
    curl_close($ch);
    $responseJson = json_decode($response, true);
    return $responseJson["accessJwt"];
}

function post($handle, $jwt, $text)
{
    $ch = curl_init("https://bsky.social/xrpc/com.atproto.repo.createRecord");
    curl_setopt_array($ch, [
        CURLOPT_CONNECTTIMEOUT => 10,
        CURLOPT_SSL_VERIFYPEER => false, // 手元の環境だとこれがないと接続できなかった
        CURLOPT_RETURNTRANSFER => true,
        CURLOPT_POST => true,
        CURLOPT_HTTPHEADER => [
            "Content-Type: application/json",
            "Authorization: Bearer {$jwt}",
        ],
        CURLOPT_POSTFIELDS => json_encode([
            "repo" => $handle,
            "collection" => "app.bsky.feed.post",
            "record" => [
                "text" => $text,
                "createdAt" => (new DateTime())->format("c"),
            ],
        ]),
    ]);
    $response = curl_exec($ch);
    curl_close($ch);
    $responseJson = json_decode($response, true);
    return $responseJson;
}

// ----------------

$handle = "あなたのハンドル";
$password = "ログイン時のパスワード";

// JWT取得
$jwt = getJWT($handle, $password);

// POST
$response = post($handle, $jwt, "bsky API POSTテスト\n改行もある");
print_r($response);

$handle は blueskyのハンドル。自分の場合は mgng.bsky.social になる。

以下、実行結果。コンソールには以下のような表示がされ、

Array
(
    [uri] => at://did:plc:6mg3az35umpyc....
    [cid] => bafyreibcmciqub7bu3y....
)

ちゃんと投稿された。

https://bsky.app/profile/mgng.bsky.social/post/3klbvr7bhno2x

bluesky


さいたまマラソン

さいたまマラソンに参加した。

マラソンに参加するときは何かしらのバンドTシャツを着る。ここ最近はずっと sumac のTシャツを着ている。

さいたまマラソン

9時にスタート。参加人数が15000人ってこともあって、スタートゲートをくぐれたのは18分後だった。

広い道路を走れるのはとても気持ちがいい。写真は有料道路からの景色。

有料道路を走る

今回は1キロ6分ペースで走ろうと決めていて、20キロ付近まではいいペースだったけれど、そこからはなかなかに厳しく、給水所のタイミングで少し止まって屈伸したりという感じだった。

ラスト5キロは膝も痛いし股関節も痛いしで早歩きみたいなペースだったけれどなんとか持ちこたえて頑張った。今年はゴールが屋内で暖かくてよかった。

ゴール

手元のアプリの計測によるとタイムは4時間26分。最初のフルマラソンは 5時間37分、2回目は 4時間40分 だったから少しずつ記録は伸びてきている。でも、給水所で屈伸したりトイレで5分くらい並んだりした時間はカウントされていないようだから、実際は+10分くらいかなあ。

記録

一緒に走った友達とそのまま飲み屋へ。ハイボールが身体に沁みる。

ハイボール

フルマラソンは体を壊すから来年からは参加は要検討だねって話してたんだけど、ゴールのあの達成感は何事にも代えがたい感じだから、きっとまた来年走ってしまうかもしれない。人間は学習しない生き物。


EGC(Electrical Guitar Company)でギターをオーダーした

EGC(Electrical Guitar Company)でギターをオーダーした。前回は手元に届くまで 1年半 かかった。今回は何年後に届くのか。いったんメモで残しておく。