ラベル Mac の投稿を表示しています。 すべての投稿を表示
ラベル Mac の投稿を表示しています。 すべての投稿を表示

2025年12月11日木曜日

Mac の UTM でディレクトリ共有する方法

Mac の UTM でディレクトリ共有する方法

概要

紹介します

環境

  • macOS 15.7.1
  • UTM 4.7.4
  • Ubuntu 24.04

共有設定

マウント

sudo mkdir -p /mnt/share
sudo mount -t 9p -o trans=virtio share /mnt/share

最後に

特にツールのインストールは不要でした
qemu-guest-agent も不要っぽいです

参考サイト

2025年10月2日木曜日

StableDiffusionWebUI を launchctl で管理する

StableDiffusionWebUI を launchctl で管理する

概要

plist を作成し launchctl に登録すると管理が楽になります

環境

  • macOS 15.7

local.mac.sdwebui.plist

今回の設定は Mac 起動時に自動で SD-WebUI も起動する設定です
停止した場合に自動で再起動したい場合は KeepAlive=true を設定します

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
  <dict>
    <key>Label</key>
    <string>local.mac.sdwebui</string>
  
    <key>ProgramArguments</key>
    <array>
      <string>/bin/bash</string>
      <string>/Users/user01/Documents/work/stable-diffusion-webui-forge/webui.sh</string>
      <string>--force-upcast-attention</string>
      <string>--listen</string>
      <string>--api</string>
    </array>
  
    <key>WorkingDirectory</key>
    <string>/Users/user01/Documents/work/stable-diffusion-webui-forge</string>
  
    <key>StandardOutPath</key>
    <string>/tmp/sdwebui.log</string>
    <key>StandardErrorPath</key>
    <string>/tmp/sdwebui.err</string>

    <key>RunAtLoad</key>
    <true/>
  </dict>
</plist>
  • cp local.mac.sdwebui.plist ~/Library/LaunchAgents/
  • launchctl load ~/Library/LaunchAgents/local.mac.sdwebui.plist

起動停止

  • launchctl start local.mac.sdwebui
  • launchctl stop local.mac.sdwebui

最後に

ターミナルを立ち上げてフォアグラウンドでプロセス管理すると辛い場合には素直に launchctl 化しましょう

2025年9月29日月曜日

launchctl に登録した plist がいつ実行されるのか確認する方法

launchctl に登録した plist がいつ実行されるのか確認する方法

概要

直接 plist を見るしかないのでシェルスクリプトを使いましょう

環境

  • macOS 15.7

シェルスクリプト

#!/bin/bash

# launchctl list で "local.mac" を含むタスクのラベルを取得
labels=$(launchctl list | grep local.mac | awk '{print $3}')

echo "Label -> Schedule"

for label in $labels; do
    # plist の候補パス
    plist_path=""
    for dir in ~/Library/LaunchAgents /Library/LaunchAgents /Library/LaunchDaemons /System/Library/LaunchDaemons; do
        if [ -f "$dir/$label.plist" ]; then
            plist_path="$dir/$label.plist"
            break
        fi
    done

    if [ -z "$plist_path" ]; then
        echo "$label -> plist not found"
        continue
    fi

    # plist を JSON に変換して jq でパース
    json=$(plutil -convert json -o - "$plist_path" 2>/dev/null)
    if [ -z "$json" ]; then
        echo "$label -> failed to parse plist"
        continue
    fi

    echo "$label ->"

    # RunAtLoad
    run_at_load=$(echo "$json" | jq -r '.RunAtLoad // empty')
    if [ "$run_at_load" == "true" ]; then
        echo "  RunAtLoad: true"
    fi

    # StartInterval
    start_interval=$(echo "$json" | jq -r '.StartInterval // empty')
    if [ -n "$start_interval" ]; then
        echo "  StartInterval: every $start_interval seconds"
    fi

    # StartCalendarInterval (複数対応)
    intervals=$(echo "$json" | jq -c '.StartCalendarInterval // empty')
    if [ -n "$intervals" ]; then
        echo "  StartCalendarInterval:"
        echo "$intervals" | jq -r 'if type=="array" then .[] else . end | "    Hour: \(.Hour // "-"), Minute: \(.Minute // "0")"' 
    fi

    echo "-------------------------"
done

出力結果

Label -> Schedule
local.mac.1 ->
  StartCalendarInterval:
    Hour: 1, Minute: 0
    Hour: 4, Minute: 0
    Hour: 7, Minute: 0
    Hour: 10, Minute: 0
    Hour: 13, Minute: 0
    Hour: 16, Minute: 0
    Hour: 19, Minute: 0
    Hour: 22, Minute: 0
-------------------------
local.mac.2 ->
  StartCalendarInterval:
    Hour: 8, Minute: 0
-------------------------
local.mac.3 ->
  StartCalendarInterval:
    Hour: 8, Minute: 5
-------------------------
local.mac.4 ->
  StartCalendarInterval:
    Hour: 5, Minute: 30
    Hour: 11, Minute: 30
    Hour: 17, Minute: 30
    Hour: 23, Minute: 30
-------------------------
local.mac.5 ->
  StartCalendarInterval:
    Hour: 9, Minute: 0
    Hour: 12, Minute: 0
    Hour: 18, Minute: 0
    Hour: 21, Minute: 0
-------------------------
local.mac.6 ->
  StartCalendarInterval:
    Hour: 8, Minute: 5
-------------------------

最後に

もっと簡単に確認できる方法はないだろうか

2025年3月1日土曜日

kindleでダウンロードした本が保存してあるパス

kindleでダウンロードした本が保存してあるパス

概要

azw 形式で保存されているようです

環境

  • macOS 15.3.1
  • kindle 7.25.1

パス

~/Library/Containers/com.amazon.Lassen/Data/Library/eBooks/

にあります

ここに例えば

ls -1 ~/Library/Containers/com.amazon.Lassen/Data/Library/eBooks/656E9450124248548B2D10040C0D5C49/8E5F7013-72F0-4E8F-BAA6-7CDEB12AF911/
BookManifest.kfx
BookManifest.kfx-shm
BookManifest.kfx-wal
CR!0B9WM943SN7XB8HF8PSND9217QTB.azw8

という形式で保存されています

最後に

パーソナルドキュメントもそうですが一度 kindle にファイルをアップロードすると PDF などでダウンロードできなくなります
azw という独自の形式を kindle アプリで復号化して閲覧しているようです

2025年2月19日水曜日

mac で pdf を結合する方法その2

mac で pdf を結合する方法その2

概要

過去に pdfunite を使った方法を紹介しましたが更に簡単にできる方法があるので紹介します

環境

  • macOS 15.3.1

方法

  • Finder で結合したい pdf ファイルを選択
    • 最初に選択したファイルが先に結合されます
  • クイックアクション -> PDF を作成

で結合できます

2025年2月11日火曜日

HEIC を jpeg に変換し更に exif 情報を削除するコマンド

HEIC を jpeg に変換し更に exif 情報を削除するコマンド

概要

exiftool が必要です

環境

  • macOS 15.2

コマンド

for file in `ls *.HEIC`; do
  filename=$file:t:r
  sips --setProperty format jpeg $file --out ${filename}.jpg
  exiftool -EXIF= -Orientation='Rotate 90 CW' ${filename}.jpg
done

最後に

Web サービスでもできますが一括でできるのでコマンドのほうが便利です

2025年1月7日火曜日

Mac で Wifi ネットワークの調子が悪いときにすること

Mac で Wifi ネットワークの調子が悪いときにすること

概要

なぜ調子悪くなるのかそしてなぜこれで改善するのかは不明

環境

  • macOS 15.2

方法

https://www.reddit.com/r/apple/comments/116uxf6/solved_apple_mac_mini_m2_pro_wifi_issue/

要は再起動ではなく電源オフ -> オンをしてみましょうということです

ルータのチャネルを固定する

Mac というよりかはルータの設定の可能性もあります
HG8045Q の場合はデフォルトだと Wifi の各周波数帯が自動になっており不安定になることがあるので Wifi チャネルを 1 or 36 に固定しましょう

最後に

Mac は一度起動すると基本シャットダウンしないので定期的にしましょうということなのだと思います

2025年1月6日月曜日

Mac でウィンドウのサイズ座標を簡単に調べる方法

Mac でウィンドウのサイズ座標を簡単に調べる方法

環境

  • macOS 15.2

方法

Command + Shift + 4

最後に

ウィンドウの最大サイズを調べるときにも使えます

2025年1月5日日曜日

Mac で BlueStacks Air をインストールしアプリを起動する

Mac で BlueStacks Air をインストールしアプリを起動する

概要

Apple Sillicon 上に BlueStacks Air をインストールしアプリを起動するまでの手順を紹介します

環境

  • macOS 15.2 (M2pro mac mini)
  • Bluestacks Air 5.21.660

インストール

まだベータ版です
ここ https://www.bluestacks.com/ja/mac からインストールします

通常の Bluestacks は homebrew でインストールできますが Air は直接ダウンロードしインストールします
ダウンロードした dmg からインストールしましょう

インストールが完了したらアプリーケーション配下に移動した「BlueStacks.app」を起動します

起動すると初回は広告のような動画が流れます
起動すると以下のような画面になります

Google Play へのログイン

必須なのでログインしましょう
ログイン後 Google Play のアップデート処理がかかるので待ちましょう
かなり時間がかかる印象です、1時間は見たほうがいいかもしれません

アプリのインストール

「Search for Games & Apps」から好きなアプリを検索します

どうやらまだ起動できないアプリが多いようです
執筆時点では Pokemon TCG はプレイできませんでした

https://support.bluestacks.com/hc/ja/articles/32942109842061-BlueStacks-AirでPokémon-TCG-Pocketがクラッシュする問題の解決方法

最後に

Apple Sillicon で BlueStacks を動かす場合は Air を使いましょう
ただしまだベータ開発で動作しないアプリがあるようです

2025年1月3日金曜日

Mac のストレージが計算中の場合の対処方法

Mac のストレージが計算中の場合の対処方法

概要

なぜかシステムデータの領域と「写真」の領域がずっと計算中の状態で終わりませんでした
再起動やスポットライトの再構築、キャッシュクリア、First Aid、ひたすら待つなど主にやるべき手段はすべて試したのですがダメでした

今回はそのときの対処方法を紹介します

環境

  • macOS 15.2

対処方法

今回のポイントは写真アプリでした
システムデータも計算中なのですが写真も計算中でこっちが怪しいなと思いいろいろ試したらビンゴでした

写真アプリを開き -> 設定 -> 一般 -> システム写真ライブラリとして使用を選択します

これだけです
これで再度ストレージの容量を確認するとすぐに計算が終了しました

最後に

おそらく iCloud との連携部分で計算が終わらない状態だったのだと思います
もし他でも計算中の場合は一度 iCloud との同期の設定を見直すといいかなと思います

2025年1月1日水曜日

HammerSpoon 同一アプリで複数ウィンドウを開いている場合にそれぞれのウィンドウを制御する方法

HammerSpoon 同一アプリで複数ウィンドウを開いている場合にそれぞれのウィンドウを制御する方法

概要

アプリ名で絞り込んでからウィンドウの一覧を取得する方法もありますがプロセスとして独立してる場合にはそれだと取得できないことがあるのですべてのアプリを取得してからアプリ名でウィンドウを絞り込み操作します

環境

  • macOS 15.2
  • HammerSpoon 1.0.0

サンプルコード

hs.hotkey.bind({"cmd", "alt"}, "S", function()
    -- hs.applicatoin.find -> app:allWindows ではミューレータを検知できないのですべてのアプリを取得してからアプリ名で対象のウィンドウを絞り込む
    local activeWindows = {}
    local apps = hs.application.runningApplications()
    for _, app in ipairs(apps) do
        if app:name() == "MuMu Android Device" then
            local windows = app:allWindows()
            for i, win in ipairs(windows) do
                table.insert(activeWindows, win)
            end
        end
    end

    -- 各ウィンドウにサイズと位置を指定、左上の角が指定したX/Yの開始位置
    local width = 275
    local height = 527
    local center_device_x = 960 - (275 / 2)
    local toolbar_mergin_height = 25
    local positions = {
        -- 上段
        {x = center_device_x, y = 0, w = width, h = height},
        {x = center_device_x - width, y = 0, w = width, h = height},
        {x = center_device_x + width, y = 0, w = width, h = height},
        {x = center_device_x - (width * 2), y = 0, w = width, h = height},
        {x = center_device_x + (width * 2), y = 0, w = width, h = height},
        -- 下段
        {x = center_device_x, y = height + toolbar_mergin_height, w = width, h = height},
        {x = center_device_x - width, y = height + toolbar_mergin_height, w = width, h = height},
        {x = center_device_x + width, y = height + toolbar_mergin_height, w = width, h = height},
        {x = center_device_x - (width * 2), y = height + toolbar_mergin_height, w = width, h = height},
        {x = center_device_x + (width * 2), y = height + toolbar_mergin_height, w = width, h = height},
    }

    for i, win in ipairs(activeWindows) do
        if positions[i] then
            win:setFrame(positions[i])
        end
    end
end)

最後に

制御するウィンドウをハッシュに登録してあとからウィンドウを操作するようにしています

2024年12月29日日曜日

HammerSpoon で実行した処理を強制終了する方法

HammerSpoon で実行した処理を強制終了する方法

概要

ツールバーにある hammerspoon から reload config できるのが一番ですが実行中の hammerspoon でツールバーを選択するとクルクルになるので reload できません

またアクティビティモニターで強制終了してもいいですが hammerspoon が動いているとカーソル位置を持っていかれるので大変です

一番簡単に終了できる方法を紹介します

環境

  • macOS 15.2
  • HammerSpoon 1.0.0

強制終了方法

ターミナルで以下を実行します

  • pkill Hammerspoon

or

  • pkill -9 Hammerspoon

これが一番てっとり早いです
終了後は途中から実行したり最初に戻って再実行すれば OK です

最後に

HammerSpoon で長いタスクを実行する場合はカーソル情報が HammerSpoon に乗っ取られるので必ず強制終了する道を残しておきましょう

2024年12月28日土曜日

HammerSpoon でドラッグアンドドロップする方法

HammerSpoon でドラッグアンドドロップする方法

概要

過去 に HammerSpoon で紹介しましたがうまく動作しないケースがあるようです
その場合は event.types.leftMouseDragged イベントをうまく使うとドラッグアンドドロップできるようになります

環境

  • macOS 15.2
  • HammerSpoon 1.0.0

ドラッグアンドドロップする関数

function dragMouse(pointA, pointB, sleep)
    local event = hs.eventtap.event
    local xdiff = pointB.x - pointA.x
    local ydiff = pointB.y - pointA.y
    -- ここの割り算の3の数が少ないほどドラッグが滑らかになる
    -- 速いドラッグにしたい場合は数を大きくする
    local loop = math.floor(math.sqrt((xdiff * xdiff) + (ydiff * ydiff)) / 3)
    local xinc = xdiff / loop
    local yinc = ydiff / loop
    sleep = math.floor((sleep * 1000) / loop)
    midPoint = {x=pointA.x, y=pointA.y}
    for i = 1,loop do
        midPoint.x = midPoint.x + xinc
        midPoint.y = midPoint.y + yinc
        newPoint = {x = math.floor(midPoint.x), y = math.floor(midPoint.y)}
        hs.mouse.absolutePosition(newPoint)
        event.newMouseEvent(event.types.leftMouseDragged, newPoint):post()
        hs.timer.usleep(sleep)
    end
    newPoint = {x = math.floor(pointB.x), y = math.floor(pointB.y)}
    hs.mouse.absolutePosition(newPoint)
    event.newMouseEvent(event.types.leftMouseDragged, newPoint):post()
end

使い方

hs.hotkey.bind({"cmd", "alt"}, "T", function()
    local upSlideStartPoint = {x=500, y=500}
    local upSlideEndPoint = {x=200, y=200}
    -- カーソル位置を移動
    hs.mouse.absolutePosition(upSlideStartPoint)
    -- マウスを押した状態にする
    hs.eventtap.event.newMouseEvent(hs.eventtap.event.types.leftMouseDown, upSlideStartPoint):post()
    -- マウスを押しながら移動する
    -- 1の数字の部分を調整することでドラッグアンドドロップのスピードが変わる
    -- 数が少ないほど速くなる
    dragMouse(upSlideStartPoint, upSlideEndPoint, 1)
    -- マウスを離す
    hs.eventtap.event.newMouseEvent(hs.eventtap.event.types.leftMouseUp, upSlideEndPoint):post()
end)

最後に

ポイントはカーソルを移動した際に event.types.leftMouseDragged を実行する点かなと思います

多くのサンプルはマウスダウンをしてそのままカーソルを移動してその後マウスを上げるになっているのですがそれだとダメなようです

2024年12月27日金曜日

HammerSpoon で Mac の自動操作入門

HammerSpoon で Mac の自動操作入門

概要

Hammerspoon は Mac でショートカットキーを設定しそのショートカットキーに割り当てられたスクリプトを実行し Mac の操作を自動化できるツールです
今回はインストールからマウスクリックとスワイプ操作を実装してみました

環境

  • macOS 15.2
  • hammerspoon 1.0.0

インストール

  • brew install hammerspoon

アプリケーションの一覧に hammerspoon のアイコンがあるのでクリックして起動します

するとツールバーに hammerspoon のアイコンが常駐するようになるのでこれで起動完了です

権限の付与

システム設定 -> プライバシーとセキュリティ -> アクセシビリティ

で権限を付与してあげましょう

通知の許可

システム設定 -> 通知

から hammerspoon の通知を許可してあげましょう

Hello World

まずは Hello World です

ツールバーにある hammerspoon のアイコンをクリックし「Open config」を選択します

するとテキストエディタが起動するので以下の lua スクリプトを貼り付けましょう

hs.hotkey.bind({"cmd", "alt", "ctrl"}, "W", function()
  hs.alert.show("Hello World!")
end)

これで準備 OK です
ツールバーのアイコンから「Reload config」しキーボードで cmd + ctrl + alt + w キーを押すと Hello World と表示されることが確認できます

ファイルの場所は

Open config で開けるファイル ~/.hammerspoon/init.lua にあります
これを直接好きなエディタで編集してから Reload config しても OK です

特定の箇所をクリックする

長いのでキーは cmd + alt + c にしています
特定の箇所を左クリックする場合は hs.eventtap.leftClick します
最後に完了を知らせるために hs.notify.new で通知していますが毎回通知が来て面倒という場合には Hello World で使った hs.alert.show を使うのがいいかなと思います

lua の場合コメントハイフン2つで表現します

hs.hotkey.bind({"cmd", "alt"}, "C", function()
    -- 座標を指定してクリック (: X=500, Y=300)
    local clickPoint = {x=500, y=300}
    
    -- マウスカーソルを指定位置に移動
    hs.mouse.absolutePosition(clickPoint)
    
    -- 左クリックイベントを発生させる
    hs.eventtap.leftClick(clickPoint)

    -- 通知でクリック完了を知らせる (任意)
    hs.notify.new({title="Hammerspoon", informativeText="Left click at (500, 300)"}):send()
end)

スワイプ(ドラッグアンドドロップ)

なぜかテキストが選択状態にはならないようですがちゃんとこれでドラッグアンドドロップできてします

newMouseEvent で leftMouseDown して押しっぱなしにしたあとに移動させて leftMouseUp させます

hs.hotkey.bind({"cmd", "alt"}, "C", function()
    -- スワイプの開始座標と終了座標を設定
    local startPoint = {x=500, y=500}
    local endPoint = {x=700, y=700}

    -- マウスカーソルを開始位置に移動
    hs.mouse.absolutePosition(startPoint)
    hs.timer.usleep(50000) -- 50ms待機

    -- マウスダウン (押しっぱなしにする)
    local mouseDown = hs.eventtap.event.newMouseEvent(hs.eventtap.event.types.leftMouseDown, startPoint)
    mouseDown:post()
    hs.timer.usleep(300000) -- 300ms待機 (長押しエミュレート)

    -- スワイプの動作 (滑らかな移動)
    local steps = 50 -- ステップ数
    for i = 1, steps do
        local progress = i / steps
        local currentPoint = {
            x = startPoint.x + (endPoint.x - startPoint.x) * progress,
            y = startPoint.y + (endPoint.y - startPoint.y) * progress
        }
        hs.mouse.absolutePosition(currentPoint)
        hs.timer.usleep(5000) -- 5ms待機 (スムーズに移動)
    end

    -- マウスアップ (クリック解除)
    local mouseUp = hs.eventtap.event.newMouseEvent(hs.eventtap.event.types.leftMouseUp, endPoint)
    mouseUp:post()
end)

以下で強制的にウィンドウをアクティブにしても選択状態にはなりませんでした
テキストを選択状態にするには別の方法があるのかもしれません

local app = hs.application.get("Google Chrome")
if app then
    app:activate() -- アプリケーションをアクティブにする
else
    hs.alert.show("Google Chrome is not running!")
end

最後に

Mac の HammerSpoon で Mac の自動操作を試してみました
ショートカットキーをフックにして動作するのでこのあたりも自動化できるとさらに便利かなと思いました

他にもいろいろと使い道がありそうなのでもう少し触ってみて追加の Tips があればまた紹介します

参考サイト

2024年10月3日木曜日

Mac に nvm をインストールする

Mac に nvm をインストールする

概要

Homebrew を使います

環境

  • macOS 15.0
  • nvm 0.40.1

インストール方法

  • brew install nvm

.zshrc

# nvm
export NVM_DIR="$HOME/.nvm"
[ -s "/opt/homebrew/opt/nvm/nvm.sh" ] && \. "/opt/homebrew/opt/nvm/nvm.sh"  # This loads nvm
[ -s "/opt/homebrew/opt/nvm/etc/bash_completion.d/nvm" ] && \. "/opt/homebrew/opt/nvm/etc/bash_completion.d/nvm"  # This loads nvm bash_completion

動作確認

一度ターミナルを終了して再度起動してバージョンが表示されるか確認します

  • nvm -v

=> 0.40.1

nodejs インストール

  • nvm install lts/iron
  • nvm use lts/iron

or

  • echo “lts/iron” > .nvmrc
  • nvm use

デフォルトの設定

  • nvm alias default lts/iron

最後に

内部的には nvm のインストールスクリプトが実行されているだけですが mac の場合は Homebrew でインストールしたほうが Brewfile にエクスポートもできるのでいいです

2024年9月18日水曜日

Mac 上で exif 情報を削除する方法

Mac 上で exif 情報を削除する方法

概要

exiftool コマンドを使います

環境

  • macOS 14.6.1
  • exiftool 12.76

コマンド

カレント配下の jpeg ファイルの exif をすべて削除します

for i in `ls *.jpg`; do exiftool -all= -overwrite_original ${i}; done

最後に

HEIC には使えないので注意です
HEIC を jpeg に変換するのはプレビューを使ってファイル -> 書き出しでできます

参考サイト

2024年9月17日火曜日

Siki を別 Mac へ移行する

Siki を別 Mac へ移行する

概要

毎回同じ設定をするは面倒なので前の設定を引き継ぎます

環境

  • macOS 14.6.1
  • Siki 0.31.9

移行元

  • 一旦 Siki を停止
  • cd ~/Library/Application\ Support/Siki
  • tar cvzf profile.tar.gz profile/
  • 作成した profile.tar.gz を移行先のマシンに移動する

移行先

  • 普通に Siki をインストール
  • Siki を一度起動、すぐに終了
  • cd ~/Library/Application\ Support/Siki
  • rm -rf profile
  • mv /tmp/profile.tar.gz .
  • tar xvzf profile.tar.gz
  • vim profile/config.js を編集
    • 「img_dir」「log_dir」「plugin_dir」「backup_dir」「save_dir」「user_dir」の行を削除
  • Siki 起動

最後に

これでいけるはずです

参考サイト

2024年9月7日土曜日

Mac に Roblox をインストールする方法

Mac に Roblox をインストールする方法

概要

少し Mac のバージョンが古いですが Apple Sillicon Mac でも同じ手順でインストール可能です

環境

  • macOS 11.7.10
  • Roblox

アカウントの作成

まずはアカウントから作成します
こちらから作成します

好きなユーザ名とパスワードを設定します
ユーザ名が少し曲があり推測しやすい名前は登録できないので注意しましょう
登録時にメールアドレスは不要なのであとで登録します

アカウントが登録できたらメールアドレスを設定します
確認用のメールがくるので URL をクリックすればメールアドレスの登録は完了です

インストール

Roblox.dmg をダウンロードしてインストールするだけです
Roblox.dmg はいろんなダウンロード方法がありそうですがログインした画面のままやる方法を紹介します

まずは適当なゲームを選択します

そしてプレイボタンを押します

もし Roblox がインストールされていない場合はダウンロードボタンが表示されるのでそこから Roblox.dmg をダウンロードできます

Roblox.dmg を展開してインストール

ダブルクリックしてインストールを開始します
展開すると RobloxPlayerInstaller.app があるのでこれを実行すれば OK です

インストールが完了すると Rolblox が自動で起動します
先ほど作成したアカウントでログインしましょう

動作確認

ログインが完了するとゲームの一覧が表示されるのであとはプレイしたいゲームをダウンロードしてプレイしましょう

もしかしたらサーバ側にゲーム情報があるのでダウンロードは不要っぽいです
読み込めればゲームが始まります

最後に

Mac に Roblox をインストールしゲームを開始する方法を紹介しました
かなり簡単にできる印象です
コントローラなども設定すればできると思います
ゲーム自体のインストールは不要っぽいですが描画などはそれなりのスペックを要するのでゲームをプレイする際はそれなりのスペックのマシンを使いましょう

2024年6月26日水曜日

Skype for mac で録音データが再生もダウンロードもできない場合の対処方法

Skype for mac で録音データが再生もダウンロードもできない場合の対処方法

概要

答え: Skype for cloud からダウンロードしましょう
Mac、iPhone の Skype では再生もダウンロードもできない状態です

環境

  • macOS 11.7.10
  • Skype for mac 8.122.0.205
  • Skype for cloud (2024/06/19時点)

状況

なぜか Mac 上だと再生もダウンロードもできません

ダウンロードしようとすると「ダウンロードに失敗しました」と表示されます

Skype for cloud

ここhttps://web.skype.com/?openPstnPage=true にログインするとブラウザで Skype が使えます

ここからだとダウンロードも再生もできました

最後に

Skype for Mac だとうまくダウンロードできない場合には Skype for cloud を試してみてください

それでもダメな場合は Windows クライアントなども試す価値はありそうです

2024年3月28日木曜日

Kindle for Mac はシステム側の言語が英語になっている場合に Amazon.com に接続してしまう

Kindle for Mac はシステム側の言語が英語になっている場合に Amazon.com に接続してしまう

概要

その場合の対象方法を紹介します

環境

  • macOS 14.4
  • Amazon Kindle 7.4

対処方法

System Settings -> Language & Region の Applications に Kindle アプリを追加する

Kindle アプリから一度ログアウトし再起動する

するとちゃんとログイン画面も日本語になり接続先も Amazon.co.jp になります
ログインするとスマホ側の Kindle や SMS でログイン通知が来ると思います

最後に

システム側のデフォルト言語を英語にしている場合は Amazon.com に接続に行ってしまうようなので注意しましょう

携帯番号の設定やメールアドレスを co.jp と .com で分ける方法もあるようですが一番てっとり早いのは Language & Region を使う方法かなと思います

参考サイト