ReadMe

記事の内容によっては、執筆時の内容が現在の事実と異なったりする場合があります。
内容の真偽は、ご自分でご確認ください。
また
プログラム類につきましても、意図する動作をするのか?は
ご自身でご確認の上、ご自身の責任において実行してください。

お問合せ等ありましたら
本記事のコメント欄にコメントを残してください。
返答のいる内容については、メールアドレス等の連絡先情報をお忘れなく。
ギフト歓迎ですーー>ドトール イーギフト

【コーヒーギフトの送信先アドレスはこちら】



本BLOGの記事は
個別ページにおいて
別途指定していない記事やコンテンツは
CC0 1.0 全世界 (CC0 1.0)
パブリック・ドメインを選択しています。
(外部ライブラリやマテリアル等、個別のライセンス指定がある物もあります。留意ください)
https://creativecommons.org/publicdomain/zero/1.0/deed.ja



引用流用するときに記載してくれたら嬉しいですが、CC0 1.0を選択していますので必要はありません。



| | コメント (0) | トラックバック (0)

[edgemac]キャッシュをゴミ箱に入れる(更新 GraphiteDawnCache追加)


【スクリプトエディタで開く】|

#!/usr/bin/env osascript
----+----1----+----2----+-----3----+----4----+----5----+----6----+----7
#
# 各種キャッシュファイルをゴミ箱に移動します
# 削除はご自分で判断してください
# 
#com.cocolog-nifty.quicktimer.icefloe
----+----1----+----2----+-----3----+----4----+----5----+----6----+----7
##自分環境がos12なので2.8にしているだけです
use AppleScript version "2.8"
use framework "Foundation"
use scripting additions

property refMe : a reference to current application

set appFileManager to refMe's NSFileManager's defaultManager()

set strBundleID to "com.microsoft.edgemac"

###################################
########まずは処理するアプリケーションを終了させる
###################################
doQuitApp2UTI(strBundleID)


###################################
########ヘルパーの終了を確認する
###################################
set listHelperBundleID to {"com.microsoft.edgemac", "com.microsoft.edgespotlight", "com.microsoft.EdgeUpdater", "com.microsoft.edgemac.framework.AlertNotificationService", "com.microsoft.edgemac.helper", "com.microsoft.edgemac.helper.plugin", "com.microsoft.edgemac.helper.renderer"} as list

repeat with itemID in listHelperBundleID
doQuitApp2UTI(itemID)
end repeat

###################################
######## ローカルドメインエラーになるけど
###################################
log doMoveToTrash("/Library/Application Support/Microsoft/EdgeUpdater")
log doMoveToTrash("/Library/Microsoft/EdgeUpdater")


###################################
######## Application Supportフォルダー
###################################

log doMoveToTrash("~/Library/Application Support/Microsoft/EdgeUpdater")


log doMoveToTrash("~/Library/Application Support/Microsoft Edge/component_crx_cache")
log doMoveToTrash("~/Library/Application Support/Microsoft Edge/Crashpad")
log doMoveToTrash("~/Library/Application Support/Microsoft Edge/CrashpadMetrics-active.pma")
log doMoveToTrash("~/Library/Application Support/Microsoft Edge/Diagnostic Data")
log doMoveToTrash("~/Library/Application Support/Microsoft Edge/Diagnostic Data-wal")
log doMoveToTrash("~/Library/Application Support/Microsoft Edge/extensions_crx_cache")
log doMoveToTrash("~/Library/Application Support/Microsoft Edge/GrShaderCache")
log doMoveToTrash("~/Library/Application Support/Microsoft Edge/GraphiteDawnCache")
log doMoveToTrash("~/Library/Application Support/Microsoft Edge/SafetyTips")
log doMoveToTrash("~/Library/Application Support/Microsoft Edge/ShaderCache")
log doMoveToTrash("~/Library/Application Support/Microsoft Edge/SmartScreen")
log doMoveToTrash("~/Library/Application Support/Microsoft Edge/extensions_crx_cache")
log doMoveToTrash("~/Library/Application Support/Microsoft Edge/extensions_crx_cache")
###ゲストは丸ごと削除
log doMoveToTrash("~/Library/Application Support/Microsoft Edge/Guest Profile")

###プロファイル内のキャッシュ
repeat with itemIntNo from 1 to 10 by 1
log doMoveToTrash("~/Library/Application Support/Microsoft Edge/Profile " & itemIntNo & "/Asset Store/assets.db")
log doMoveToTrash("~/Library/Application Support/Microsoft Edge/Profile " & itemIntNo & "/blob_storage")
log doMoveToTrash("~/Library/Application Support/Microsoft Edge/Profile " & itemIntNo & "/BudgetDatabase")
log doMoveToTrash("~/Library/Application Support/Microsoft Edge/Profile " & itemIntNo & "/commerce_subscription_db")
log doMoveToTrash("~/Library/Application Support/Microsoft Edge/Profile " & itemIntNo & "/coupon_db")
log doMoveToTrash("~/Library/Application Support/Microsoft Edge/Profile " & itemIntNo & "/data_reduction_proxy_leveldb")
log doMoveToTrash("~/Library/Application Support/Microsoft Edge/Profile " & itemIntNo & "/DawnCache")
log doMoveToTrash("~/Library/Application Support/Microsoft Edge/Profile " & itemIntNo & "/Download Service")
log doMoveToTrash("~/Library/Application Support/Microsoft Edge/Profile " & itemIntNo & "/GPUCache")
log doMoveToTrash("~/Library/Application Support/Microsoft Edge/Profile " & itemIntNo & "/IndexedDB")
log doMoveToTrash("~/Library/Application Support/Microsoft Edge/Profile " & itemIntNo & "/optimization_guide_hint_cache_store")
log doMoveToTrash("~/Library/Application Support/Microsoft Edge/Profile " & itemIntNo & "/Platform Notifications")
log doMoveToTrash("~/Library/Application Support/Microsoft Edge/Profile " & itemIntNo & "/Service Worker")
log doMoveToTrash("~/Library/Application Support/Microsoft Edge/Profile " & itemIntNo & "/Storage")
log doMoveToTrash("~/Library/Application Support/Microsoft Edge/Profile " & itemIntNo & "/VideoDecodeStats")
log doMoveToTrash("~/Library/Application Support/Microsoft Edge/Profile " & itemIntNo & "/Web Applications")
  
end repeat
###################################
########Containers
###################################
log doMoveToTrash("~/Library/Containers/com.microsoft.edgemac.wdgExtension/Data/Library/Caches")

###################################
########HTTPStorages
###################################
log doMoveToTrash("~/Library/HTTPStorages/com.microsoft.EdgeUpdater")
log doMoveToTrash("~/Library/HTTPStorages/com.microsoft.edgemac")


###################################
########LOGS
###################################
log doMoveToTrash("~/Library/Logs/Microsoft Edge")
log doMoveToTrash("~/Library/Logs/Microsoft Edge (GPU)")
log doMoveToTrash("~/Library/Logs/Microsoft Edge (Renderer)")

###################################
########EdgeUpdater
###################################
log doMoveToTrash("~/Library/Microsoft/EdgeUpdater")

###################################
########EdgeUpdater
###################################
log doMoveToTrash("~/Library/Microsoft/MicrosoftSoftwareUpdate/Actives/com.microsoft.edgemac")

###################################
########キャッシュ
###################################

log doMoveToTrash("~/Library/Caches/com.microsoft.edgemac")
log doMoveToTrash("~/Library/Caches/Microsoft Edge")


###################################
########Saved Application State
###################################
log doMoveToTrash("~/Library/Saved Application State/com.microsoft.edgemac")
log doMoveToTrash("~/Library/Saved Application State/com.microsoft.edgemac.savedState")

###################################
########WebKit
###################################

log doMoveToTrash("~/Library/WebKit/com.microsoft.edgemac")

###################################
########キャッシュNSTemporaryDirectory
###################################
### T
set ocidTempDir to (refMe's NSTemporaryDirectory())
set ocidTemporaryTPathURL to refMe's NSURL's fileURLWithPath:(ocidTempDir)
log doMoveToTrash(ocidTemporaryTPathURL's URLByAppendingPathComponent:"com.microsoft.edgemac")
log doMoveToTrash(ocidTemporaryTPathURL's URLByAppendingPathComponent:"com.microsoft.edgemac.helper")
log doMoveToTrash(ocidTemporaryTPathURL's URLByAppendingPathComponent:"com.microsoft.edgemac.helper-(GPU)")
log doMoveToTrash(ocidTemporaryTPathURL's URLByAppendingPathComponent:"com.microsoft.edgemac.helper-(Renderer)")

###
set ocidTempURL to ocidTemporaryTPathURL's URLByDeletingLastPathComponent()
### C
set ocidTemporaryCPathURL to ocidTempURL's URLByAppendingPathComponent:"C"

log doMoveToTrash(ocidTemporaryCPathURL's URLByAppendingPathComponent:"com.microsoft.edgemac")
log doMoveToTrash(ocidTemporaryCPathURL's URLByAppendingPathComponent:"com.microsoft.edgemac.helper")
log doMoveToTrash(ocidTemporaryCPathURL's URLByAppendingPathComponent:"com.microsoft.edgemac.helper-(GPU)")
log doMoveToTrash(ocidTemporaryCPathURL's URLByAppendingPathComponent:"com.microsoft.edgemac.helper-(Renderer)")



###################################
########処理 ゴミ箱に入れる
###################################

to doMoveToTrash(argFilePath)
  ###ファイルマネジャー初期化
  set appFileManager to refMe's NSFileManager's defaultManager()
  #########################################
  ###渡された値のClassを調べてとりあえずNSURLにする
  set refClass to class of argFilePath
  if refClass is list then
return "エラー:リストは処理しません"
  else if refClass is text then
log "テキストパスです"
    set ocidArgFilePathStr to (refMe's NSString's stringWithString:argFilePath)
    set ocidArgFilePath to ocidArgFilePathStr's stringByStandardizingPath
    set ocidArgFilePathURL to (refMe's NSURL's alloc()'s initFileURLWithPath:ocidArgFilePath)
  else if refClass is alias then
log "エイリアスパスです"
    set strArgFilePath to (POSIX path of argFilePath) as text
    set ocidArgFilePathStr to (refMe's NSString's stringWithString:strArgFilePath)
    set ocidArgFilePath to ocidArgFilePathStr's stringByStandardizingPath
    set ocidArgFilePathURL to (refMe's NSURL's alloc()'s initFileURLWithPath:ocidArgFilePath)
  else
    set refClass to (className() of argFilePath) as text
    if refClass contains "NSPathStore2" then
log "NSPathStore2です"
      set ocidArgFilePathURL to (refMe's NSURL's alloc()'s initFileURLWithPath:argFilePath)
    else if refClass contains "NSCFString" then
log "NSCFStringです"
      set ocidArgFilePath to argFilePath's stringByStandardizingPath
      set ocidArgFilePathURL to (refMe's NSURL's alloc()'s initFileURLWithPath:ocidArgFilePath)
    else if refClass contains "NSURL" then
      set ocidArgFilePathURL to argFilePath
log "NSURLです"
    end if
  end if
  #########################################
  ###
  -->false
  set ocidFalse to (refMe's NSNumber's numberWithBool:false)'s boolValue
  -->true
  set ocidTrue to (refMe's NSNumber's numberWithBool:true)'s boolValue
  #########################################
  ###NSURLがエイリアス実在するか?
  set ocidArgFilePath to ocidArgFilePathURL's |path|()
  set boolFileAlias to appFileManager's fileExistsAtPath:(ocidArgFilePath)
  ###パス先が実在しないなら処理はここまで
  if boolFileAlias = false then
log ocidArgFilePath as text
log "処理中止 パス先が実在しない"
return false
  end if
  #########################################
  ###NSURLがディレクトリなのか?ファイルなのか?
  set listBoolDir to ocidArgFilePathURL's getResourceValue:(reference) forKey:(refMe's NSURLIsDirectoryKey) |error|:(reference)
  # log (item 1 of listBoolDir)
  # log (item 2 of listBoolDir)
  # log (item 3 of listBoolDir)
  if (item 2 of listBoolDir) = ocidTrue then
    #########################################
log "ディレクトリです"
log ocidArgFilePathURL's |path| as text
    ##内包リスト
    set listResult to appFileManager's contentsOfDirectoryAtURL:(ocidArgFilePathURL) includingPropertiesForKeys:{refMe's NSURLPathKey} options:0 |error|:(reference)
    ###結果
    set ocidContentsPathURLArray to (item 1 of listResult)
    if ocidContentsPathURLArray ≠ (missing value) then
      ###リストの数だけ繰り返し
      repeat with itemContentsPathURL in ocidContentsPathURLArray
        ###ゴミ箱に入れる
        set listResult to (appFileManager's trashItemAtURL:itemContentsPathURL resultingItemURL:(missing value) |error|:(reference))
      end repeat
    end if
  else
    #########################################
log "ファイルです"
    set listBoolDir to ocidArgFilePathURL's getResourceValue:(reference) forKey:(refMe's NSURLIsAliasFileKey) |error|:(reference)
    if (item 2 of listBoolDir) = ocidTrue then
log "エイリアスは処理しません"
return false
    end if
    set listBoolDir to ocidArgFilePathURL's getResourceValue:(reference) forKey:(refMe's NSURLIsSymbolicLinkKey) |error|:(reference)
    if (item 2 of listBoolDir) = ocidTrue then
log "シンボリックリンクは処理しません"
return false
    end if
    set listBoolDir to ocidArgFilePathURL's getResourceValue:(reference) forKey:(refMe's NSURLIsSystemImmutableKey) |error|:(reference)
    if (item 2 of listBoolDir) = ocidTrue then
log "システムファイルは処理しません"
return false
    end if
    ###ファイルをゴミ箱に入れる
    set listResult to (appFileManager's trashItemAtURL:ocidArgFilePathURL resultingItemURL:(missing value) |error|:(reference))
  end if
return true
end doMoveToTrash

###################################
########アプリケーションを終了させる
###################################
to doQuitApp2UTI(argUTI)
  set strUTI to argUTI as text
  ### まずは普通に終了を試みる
  try
    tell application id strUTI to quit
  end try
delay 1
  set ocidResultsArray to refMe's NSRunningApplication's runningApplicationsWithBundleIdentifier:strUTI
  set numCntArray to ocidResultsArray count
  if numCntArray ≠ 0 then
    set ocidRunApp to ocidResultsArray's objectAtIndex:0
    
    ###通常終了
    set boolDone to ocidRunApp's terminate()
    ####強制終了
    set boolDone to ocidRunApp's forceTerminate()
    
    #### killallを使う場合
    set ocidExecAppURL to ocidRunApp's executableURL()
    set ocidFileName to ocidExecAppURL's lastPathComponent()
    set strFileName to ocidFileName as text
    
    set strCommandText to ("/usr/bin/killall -z " & strFileName & "") as text
    set ocidCommandText to refMe's NSString's stringWithString:strCommandText
    set ocidTermTask to refMe's NSTask's alloc()'s init()
ocidTermTask's setLaunchPath:"/bin/zsh"
ocidTermTask's setArguments:({"-c", ocidCommandText})
    set listDoneReturn to ocidTermTask's launchAndReturnError:(reference)
    
    
    ####killを使う場合
    set ocidPID to ocidRunApp's processIdentifier()
    set strPID to ocidPID as text
log strPID
    set strCommandText to ("/bin/kill -9 " & strPID & "") as text
    set ocidCommandText to refMe's NSString's stringWithString:strCommandText
    set ocidTermTask to refMe's NSTask's alloc()'s init()
ocidTermTask's setLaunchPath:"/bin/zsh"
ocidTermTask's setArguments:({"-c", ocidCommandText})
    set listDoneReturn to ocidTermTask's launchAndReturnError:(reference)
    
    
  end if
end doQuitApp2UTI



|

[Plist]Plist まとめ 更新



A:入力
B:編集
C:出力
D:備考


A:入力
1:DATA
[Plist]NSDATAを使って読み込む
https://quicktimer.cocolog-nifty.com/icefloe/2023/07/post-14ff50.html
2:Dict
[PLIST]値の取得 基本
https://quicktimer.cocolog-nifty.com/icefloe/2023/06/post-46307d.html
[Plist]Plistの値の変更 writeToURL:atomicallyが非推奨→ writeToURL:errorに変更
https://quicktimer.cocolog-nifty.com/icefloe/2024/03/post-ee5c62.html
3:キーアーカイブ
セキュリティ上の理由もあるが
NSURL等 PLISTには保存できない形式も保存が可能
[基本]NSKeyedArchiver
https://quicktimer.cocolog-nifty.com/icefloe/cat76056161/index.html
NSKeyedUnarchiver
https://quicktimer.cocolog-nifty.com/icefloe/cat76055043/index.html
4:ファイルから
[PLIST]値の取得 基本 その1 plistを読み込んでPlistで保存
https://quicktimer.cocolog-nifty.com/icefloe/2023/09/post-e591c4.html
[plutil]Plistのフォーマット変更(サービスメニュー用)
https://quicktimer.cocolog-nifty.com/icefloe/2023/09/post-4fcfa5.html
5:JSON
[JSON]JSONの取扱 その1(rootがDict形式の場合
https://quicktimer.cocolog-nifty.com/icefloe/2023/09/post-7ac684.html
[JSON]JSONの取扱 その2(rootがArray形式の場合)
https://quicktimer.cocolog-nifty.com/icefloe/2023/09/post-0ed292.html
その他
https://quicktimer.cocolog-nifty.com/icefloe/cat76049735/index.html


B:編集
[PLIST]値の取得 基本
https://quicktimer.cocolog-nifty.com/icefloe/2023/06/post-46307d.html
1: /usr/bin/defaults
[Plist]defaults read
https://quicktimer.cocolog-nifty.com/icefloe/2023/09/post-035836.html
[Plist]defaults write
https://quicktimer.cocolog-nifty.com/icefloe/2023/09/post-8926ec.html
2: /usr/libexec/PlistBuddy
https://quicktimer.cocolog-nifty.com/icefloe/cat76027586/index.html
3: /usr/bin/plutil
https://quicktimer.cocolog-nifty.com/icefloe/2023/09/post-892166.html
[plutil]他のコマンド類との比較
https://quicktimer.cocolog-nifty.com/icefloe/2024/04/post-99d8b7.html
4: /usr/bin/xmllint
https://quicktimer.cocolog-nifty.com/icefloe/2023/09/post-c9efbb.html
5: AppleScript System Events
https://quicktimer.cocolog-nifty.com/icefloe/cat76056176/index.html
6: AppleScript Oc
https://quicktimer.cocolog-nifty.com/icefloe/2023/09/post-e591c4.html
7:Xcode
https://quicktimer.cocolog-nifty.com/icefloe/2023/09/post-cdefb1.html
8:Visual Studio Code
https://quicktimer.cocolog-nifty.com/icefloe/2023/09/post-d25c0e.html


C:出力
NSDATA
[Plist]Plistの値の変更 writeToURL:atomicallyが非推奨→ writeToURL:errorに変更
https://quicktimer.cocolog-nifty.com/icefloe/2024/03/post-ee5c62.html

writeToURL:options:error:
writeToURL:atomically: での保存になります
Plistはバイナリー形式が基本です。アクセスや読み込みが速いからかな?と思います
1:バイナリ


【スクリプトエディタで開く】|

set ocidFormat to (refMe's NSPropertyListBinaryFormat_v1_0)
set ocidPlistData to refMe's NSPropertyListSerialization's dataWithPropertyList:("ここにDICTデータ") format:(ocidFormat) options:0 |error|:(reference)


2: XMLモバイルコンフィグ等XMLであった方が編集しやすい時は迷わずこちら

【スクリプトエディタで開く】|

set ocidFormat to (refMe's NSPropertyListXMLFormat_v1_0)
set ocidPlistData to refMe's NSPropertyListSerialization's dataWithPropertyList:("ここにDICTデータ") format:(ocidFormat) options:0 |error|:(reference)


3:キーアーカイブ
[基本]NSKeyedArchiver 圧縮
https://quicktimer.cocolog-nifty.com/icefloe/cat76056161/index.html

カテゴリー 解凍 NSKeyedUnarchiver
https://quicktimer.cocolog-nifty.com/icefloe/cat76055043/index.html
4:JSON
https://quicktimer.cocolog-nifty.com/icefloe/cat76049735/index.html



D:備考
mobileconfigは中身はPLIST
[mobileconfig]AppleScriptでの処理の基本(再考)
https://quicktimer.cocolog-nifty.com/icefloe/2022/05/post-9dad8c.html
LSSharedFileListはキーアーカイブされたPLIST
AppleScript LSSharedFileList
https://quicktimer.cocolog-nifty.com/icefloe/cat76055054/index.html
検索条件を記録してあるsavedSearchもPLIST
[savedSearch]検索条件ファイルを作成する
https://quicktimer.cocolog-nifty.com/icefloe/2023/06/post-e476bb.html


[Webloc]ロケーションファイル(com.apple.generic-internet-location)もPLIST
インターネット・ロケーションファイルまとめ
https://quicktimer.cocolog-nifty.com/icefloe/cat76053046/index.html


plutil defaults PlistBuddyの文法の比較


#!/bin/bash
#com.cocolog-nifty.quicktimer.icefloe
#
#plutil
STR_USR_LANG=$(/usr/bin/plutil -extract AppleLanguages.0 raw -expect string $HOME/Library/Preferences/.GlobalPreferences.plist ) 
/bin/echo "plutil:ユーザー設定の第1言語は $STR_USR_LANG です"
#defaults
STR_USR_LANG=$(/usr/bin/defaults read $HOME/Library/Preferences/.GlobalPreferences AppleLanguages| tr -d "[:space:][(][)]\""|cut -d , -f 1 )
/bin/echo "defaults:ユーザー設定の第1言語は $STR_USR_LANG です"
#PlistBuddy
STR_USR_LANG=$(/usr/libexec/PlistBuddy -c "Print:AppleLanguages:0" "$HOME/Library/Preferences/.GlobalPreferences.plist")
/bin/echo "PlistBuddy:ユーザー設定の第1言語は $STR_USR_LANG です"

exit 0




Serialization004_20231028110801


Screen-20231028-110332

|

[plutil]他のコマンド類との比較


ダウンロード - desktopshowhide.zip

ダウンロード - allfilesshowhide.zip



【スクリプトエディタで開く】|

#!/bin/bash
#com.cocolog-nifty.quicktimer.icefloe
###実行しているユーザー名
STAT_USR=$(/usr/bin/stat -f%Su /dev/console)
/bin/echo "STAT_USR(console): $STAT_USR"
###############
STR_PLIST_PATH="$HOME/Library/Preferences/com.apple.finder.plist"
#plutil
STR_BOOL_VALUE=$(/usr/bin/plutil -extract CreateDesktop raw -expect bool "$STR_PLIST_PATH")
/bin/echo "plutil:ユーザー設定は $STR_BOOL_VALUE です"

if [ "$STR_BOOL_VALUE" = "true" ]; then
/usr/bin/plutil -replace CreateDesktop -bool false "$STR_PLIST_PATH"
else
/usr/bin/plutil -replace CreateDesktop -bool true "$STR_PLIST_PATH"
fi

STR_BOOL_VALUE=$(/usr/bin/plutil -extract CreateDesktop raw -expect bool "$STR_PLIST_PATH")
/bin/echo "plutil:ユーザー設定は $STR_BOOL_VALUE に変わりました"

/usr/bin/killall cfprefsd
sleep 1
/usr/bin/killall Finder

exit 0


|

[NSKeyedUnarchiver]FInderでiPhoneを開くスクリプトを生成する(macOS14対応)


【スクリプトエディタで開く】|

#!/usr/bin/env osascript
----+----1----+----2----+-----3----+----4----+----5----+----6----+----7
#com.cocolog-nifty.quicktimer.icefloe
# USB接続中のiPhoneをくスクリプトを生成します
# スクリプトメニューから実行しても戻り値がありません
----+----1----+----2----+-----3----+----4----+----5----+----6----+----7
use AppleScript version "2.8"
use framework "Foundation"
use framework "AppKit"
use scripting additions

property refMe : a reference to current application

############################################
####設定項目
###iPhoneの名前(一部でもOK)
set strPhoneName to ("iPhone") as text


##スクリプトメニューから実行させない
tell current application
  set strName to name as text
end tell
####スクリプトメニューから実行したら
if strName is "osascript" then
  tell application "Finder"
    set aliasPathToMe to path to me as alias
    tell application "Script Editor"
open aliasPathToMe
    end tell
return "中止しました"
  end tell
else
  tell current application
activate
  end tell
end if

##################
set listDockPath to {} as list
###処理開始
set appFileManager to refMe's NSFileManager's defaultManager()
###ファイル名
set strFileName to "com.apple.LSSharedFileList.FavoriteVolumes.sfl3" as text
###パス
set ocidURLArray to appFileManager's URLsForDirectory:(refMe's NSApplicationSupportDirectory) inDomains:(refMe's NSUserDomainMask)
set ocidAppSuppDirPathURL to ocidURLArray's firstObject()
set strAppendPath to ("com.apple.sharedfilelist/" & strFileName) as text
set ocidFavoriteServersURL to ocidAppSuppDirPathURL's URLByAppendingPathComponent:(strAppendPath) isDirectory:false
##NSdataに読み込み
set ocidPlistData to refMe's NSData's dataWithContentsOfURL:(ocidFavoriteServersURL)
###解凍してDictに
#set ocidArchveDict to refMe's NSKeyedUnarchiver's unarchiveObjectWithData:(ocidPlistData)
set listResponse to refMe's NSKeyedUnarchiver's unarchivedObjectOfClass:((refMe's NSObject)'s class) fromData:(ocidPlistData) |error|:(reference)
set ocidArchveDict to (item 1 of listResponse)

###ここは不要なんだけど、値も変更できるように準備
set ocidArchveDictM to refMe's NSMutableDictionary's alloc()'s initWithCapacity:0
ocidArchveDictM's setDictionary:(ocidArchveDict)
###ALLkeys
set ocidAllKeysArray to ocidArchveDictM's |allKeys|()

###items のArrayを取り出しhて
set ocidItemsArray to ocidArchveDictM's objectForKey:("items")
set numCntArray to (ocidItemsArray's |count|()) as integer

###itemsの数だけ繰り返し
#repeat with itemArray in ocidItemsArray

repeat with itemIntNo from 0 to (numCntArray - 1) by 1
  set itemArray to (ocidItemsArray's objectAtIndex:(itemIntNo))
  
  # log className() of itemArray as text
  # log itemArray's allKeys() as list
  --> (*visibility, CustomItemProperties, Bookmark, uuid*)
  set ocidVisibility to (itemArray's objectForKey:("visibility"))
  # log className() of ocidVisibility as text
  # log ocidVisibility as integer
  set ocidCustomItemProperties to (itemArray's objectForKey:("CustomItemProperties"))
  # log className() of ocidCustomItemProperties as text
  # log ocidCustomItemProperties as record
  set ocidUUID to (itemArray's objectForKey:("uuid"))
  # log className() of ocidUUID as text
  # log ocidUUID as text
  set ocidName to (itemArray's objectForKey:("Name"))
  try
log className() of ocidName as text
log "■" & ocidName as text
    set strName to ocidName as text
  on error
    set strName to ("missing value") as text
  end try
  if strName contains strPhoneName then
    set ocidBookMarkData to (itemArray's objectForKey:("Bookmark"))
    ###エイリアスの解決
    set listResponse to (refMe's NSURL's URLByResolvingBookmarkData:(ocidBookMarkData) options:11 relativeToURL:(missing value) bookmarkDataIsStale:(false) |error|:(reference))
    set ocidBookMarkURL to item 1 of listResponse
    ###エイリアスが無い場合=すでに削除された場合や移動してしまった場合
    if ocidBookMarkURL is not (missing value) then
      ###パスにして
      set strFilePath to ocidBookMarkURL's absoluteString() as text
log strFilePath
      ###リストに追加
      if strFilePath contains "x-finder-iTunes" then
        set end of listDockPath to strFilePath
      end if
    end if
  end if
end repeat

if listDockPath is {} then
return "接続中のiPhone無し"
end if

try
  ###ダイアログ
  set strName to (name of current application) as text
  if strName is "osascript" then
    tell application "Finder" to activate
  else
    tell current application to activate
  end if
  set listResponse to (choose from list listDockPath with title "選んでください" with prompt "FavoriteVolumesから取得した\n接続中のiPhoneのURL\n複数選択時は対象を選んでください" default items (item 1 of listDockPath) OK button name "このiPhoneのURLを取得する" cancel button name "閉じる" without multiple selections allowed and empty selection allowed) as list
on error
log "エラーしました"
return "エラーしました"
end try
if (item 1 of listResponse) is false then
return "キャンセルしました"
end if
set strOpenURL to (item 1 of listResponse) as text


####クリップボードに渡す用のスクリプトテンプレート
set strScript to ("#!/usr/bin/env osascript\n----+----1----+----2----+-----3----+----4----+----5----+----6----+----7\n#\n#com.cocolog-nifty.quicktimer.icefloe\n----+----1----+----2----+-----3----+----4----+----5----+----6----+----7\nuse AppleScript version \"2.8\"\nuse framework \"Foundation\"\nuse scripting additions\nset strURL to \"" & strOpenURL & "\"\ntell application \"Finder\"\nopen location strURL\nend tell") as text

set strMes to ("↓接続中のiPhoneのURLです\n" & strOpenURL & "\n↓は次回から利用可能なスクリプト") as text
###ダイアログ
set strName to (name of current application) as text
if strName is "osascript" then
  tell application "Finder" to activate
else
  tell current application to activate
end if
set aliasIconPath to POSIX file "/System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/AlertNoteIcon.icns"
set recordResult to (display dialog strMes with title "接続中のiPhoneのURL" default answer strScript buttons {"スクリプトをクリップボードにコピー", "キャンセル", "iPhoneをFinderで開く"} default button "iPhoneをFinderで開く" cancel button "キャンセル" giving up after 20 with icon aliasIconPath without hidden answer)
if button returned of recordResult is "iPhoneをFinderで開く" then
  tell application "Finder"
open location strOpenURL
  end tell
  ###クリップボードコピー
else if button returned of recordResult is "スクリプトをクリップボードにコピー" then
  set strText to text returned of recordResult as text
  ####ペーストボード宣言
  set appPasteboard to refMe's NSPasteboard's generalPasteboard()
  set ocidText to (refMe's NSString's stringWithString:(strText))
appPasteboard's clearContents()
appPasteboard's setString:(ocidText) forType:(refMe's NSPasteboardTypeString)
end if


display notification "処理終了" with title "処理が終了" subtitle "処理が終了しました" sound name "Sonumi"
log ">>>>>>>>>>>>処理終了<<<<<<<<<<<<<<<"
return ">>>>>>>>>>>>処理終了<<<<<<<<<<<<<<<"



|

QRコード (更新)

https://chart.googleapis.com/chart?
404 Not Foundになるようになったので更新



1:作成する
2:内容を読み取る(デコード)


1:作成する
カテゴリ
https://quicktimer.cocolog-nifty.com/icefloe/cat76026037/index.html
2:内容を読み取る(デコード)
カテゴリ
https://quicktimer.cocolog-nifty.com/icefloe/cat76054001/index.html


1:作成する
1−1:WEBサービスを利用する
1−2:アプリケーションを利用する
1−3:スクリプト等で作成する
1−4:種類別


1−1:WEBサービスを利用する作成する
Google
https://developers.google.com/chart/infographics/docs/qr_codes?hl=ja
Adobe svg保存あり
https://new.express.adobe.com/tools/generate-qr-code
QRQR(denso系)EPS保存あり
https://m.qrqrq.com/
tec-it QRコード以外も豊富なラインナップで作成できます ※おすすめ
https://barcode.tec-it.com/en/QRCode


1−2:アプリケーションを利用する
ショートカットを利用する
https://quicktimer.cocolog-nifty.com/icefloe/2024/02/post-79e2f8.html
tec-it  QRコード以外も豊富なラインナップ(有料だが高機能)
Barcode Studio
https://www.tec-it.com/en/download/barcode-studio/mac-os-x/Download.aspx
QR Code Studio(非商用なら無料)
https://www.tec-it.com/en/download/free-software/qrcode-studio/Download.aspx
Barcode Generator (有料)
https://boxshot.com/barcode/
iBarcoder (ベクトル保存あり 有料 お試しあり)
https://cristallight.com/iBarcoder/


1−3:作成する
Python
[pyqrcode]QRコードを生成する
https://quicktimer.cocolog-nifty.com/icefloe/2024/02/post-aabb60.html
[qrcode]QRコードを生成する
https://quicktimer.cocolog-nifty.com/icefloe/2024/02/post-b8a0c5.html
Bash
libqrencodeを使う 比較的簡単にMakeできますしおすすめです
https://fukuchi.org/works/qrencode/


1−4:種類別
1:Text URL
2:Mail
3:Tel
4:SMS
5:Vcard
6:Event
7:Map
8:Wifi


1:URL
[URL]URLリンク用バーコード (GoogleChart利用)
https://quicktimer.cocolog-nifty.com/icefloe/2023/09/post-874e67.html
[URL]URLリンク用バーコード (CoreImage利用)
https://quicktimer.cocolog-nifty.com/icefloe/2023/09/post-764eea.html
[URL]URLリンク用バーコード (CoreImage利用 背景配色あり)
https://quicktimer.cocolog-nifty.com/icefloe/2023/09/post-817481.html
2:Mail
[QR]MAILTO形式のURL型メール送信用QRバーコード(一般的にはこの形式)
https://quicktimer.cocolog-nifty.com/icefloe/2024/01/post-dc0be0.html
[QR] MATMSG形式のメール送信用QR
https://quicktimer.cocolog-nifty.com/icefloe/2024/01/post-09ddc0.html
3:Tel
[TEL]電番リンク用バーコード (CoreImage利用)
https://quicktimer.cocolog-nifty.com/icefloe/2023/09/post-aa6cf7.html
[TEL]電番リンク用バーコード (GoogleChart利用)
https://quicktimer.cocolog-nifty.com/icefloe/2023/09/post-6eb0e4.html
[TEL]電番リンク用バーコード (CoreImage利用 背景配色あり)
https://quicktimer.cocolog-nifty.com/icefloe/2023/09/post-cc5d40.html
4:SMS
[SMS]SMS送信用バーコード (CoreImage利用 背景配色あり)
https://quicktimer.cocolog-nifty.com/icefloe/2023/09/post-24ed0c.html
[SMS]SMS送信用バーコード (CoreImage利用)
https://quicktimer.cocolog-nifty.com/icefloe/2023/09/post-0754d1.html
[SMS]SMS送信用バーコード (GoogleChart利用)
https://quicktimer.cocolog-nifty.com/icefloe/2023/09/post-e180d0.html
[QR] SMS送信用バーコード生成
https://quicktimer.cocolog-nifty.com/icefloe/2023/03/post-d38c42.html
5:Vcard
[VCARD]連絡先登録用バーコード (GoogleChart利用)
https://quicktimer.cocolog-nifty.com/icefloe/2023/09/post-b473f7.html
[VCARD]連絡先登録用バーコード (CoreImage利用)
https://quicktimer.cocolog-nifty.com/icefloe/2023/09/post-7a4a71.html
[VCARD]連絡先登録用バーコード (CoreImage利用 背景配色あり)
https://quicktimer.cocolog-nifty.com/icefloe/2023/09/post-eb42ec.html
6:Event
[Event]ICSカレンダーイベント送信用バーコード (GoogleChart利用)
https://quicktimer.cocolog-nifty.com/icefloe/2023/09/post-3f84cf.html
[Event]ICSカレンダーイベント送信用バーコード (CoreImage利用)
https://quicktimer.cocolog-nifty.com/icefloe/2023/09/post-f03b55.html
[Event]ICSカレンダーイベント送信用バーコード (CoreImage利用 背景配色あり)
https://quicktimer.cocolog-nifty.com/icefloe/2023/09/post-2b7799.html
7:Map
緯度情報を取得する方法+表示させるURLの組み合わせが無限…
https://github.com/force4u/AppleScript/tree/main/Script%20Menu/Pictures/MakeQR/Map
8:Wifi
[WIFI]WIFIバーコード (CoreImage利用 背景配色あり)
https://quicktimer.cocolog-nifty.com/icefloe/2023/09/post-bf12f4.html
[WIFI]WIFIバーコード (CoreImage利用)
https://quicktimer.cocolog-nifty.com/icefloe/2023/09/post-437b60.html
[WIFI]WIFIバーコード (chart.googleapis利用)
https://quicktimer.cocolog-nifty.com/icefloe/2023/09/post-bf12f4.html



001_20240218144201

|

«Adobe アンインストール