Menu

Skip to content
AppleScriptの穴
  • Home
  • Products
  • Books
  • Docs
  • Events
  • Forum
  • About This Blog
  • License
  • 仕事依頼

AppleScriptの穴

Useful & Practical AppleScript archive. Click '★Click Here to Open This Script' Link to download each AppleScript

月: 2018年6月

Finder上で選択中の画像をアンチエイリアスなしで200%にリサイズ

Posted on 6月 3, 2018 by Takaaki Naganoya

Finder上で選択中の画像をアンチエイリアスなしで200%にリサイズするAppleScriptです。

よく使う拡大/縮小倍率のScriptを用意してmacOS標準装備のScript Menuに入れておき、Menuから呼び出して使っています。

AppleScript名:Finder上で選択中の画像をアンチエイリアスなしで200%にリサイズ
— Created 2014-02-21 Shane Stanley
— Modified 2018-06-01 Takaaki Naganoya
use AppleScript version "2.5"
use scripting additions
use framework "Foundation"
use framework "AppKit"

property |NSURL| : a reference to current application’s |NSURL|
property NSArray : a reference to current application’s NSArray
property NSPredicate : a reference to current application’s NSPredicate
property NSURLTypeIdentifierKey : a reference to current application’s NSURLTypeIdentifierKey

set zoomPercent to 2.0

tell application "Finder"
  set inFiles to selection as alias list
end tell

–指定のAlias listのうち画像のみ抽出
set filRes1 to filterAliasListByUTI(inFiles, "public.image") of me
if filRes1 = {} then return

–選択中のファイルのうちの1つから親フォルダを求め、出力先ファイルパスを組み立てる
set outPathTarg to POSIX path of (first item of filRes1)
set pathString to current application’s NSString’s stringWithString:outPathTarg
set newPath to (pathString’s stringByDeletingLastPathComponent()) as string

repeat with i in filRes1
  
  
set outPOSIXpath to newPath & "/" & (current application’s NSUUID’s UUID()’s UUIDString()) as string
  
  
set aNSImage to (current application’s NSImage’s alloc()’s initWithContentsOfFile:(i))
  
set theImage to (my resizeNSImageWithoutAntlialias:aNSImage toScale:zoomPercent)
  
  
–ファイルパスの拡張子を取得する
  
set pathString to (current application’s NSString’s stringWithString:i)
  
set fileExt to (pathString’s pathExtension()) as string
  
  
set newPath to outPOSIXpath & "." & fileExt
  
  
–元画像のファイルファイルフォーマットに合わせて同じフォーマットに
  
if fileExt is in {"png", "PNG"} then
    my saveNSImageAtPathAsPNG(theImage, newPath)
  else if fileExt is in {"jpg", "jpeg"} then
    my saveNSImageAtPathAsJPG(theImage, newPath, 1.0 as real)
  else if fileExt is in {"tif", "tiff"} then
    my saveNSImageAtPathAsTIFF(theImage, newPath)
  else if fileExt is in {"bmp"} then
    my saveNSImageAtPathAsBMP(theImage, newPath)
  end if
  
end repeat

–NSImageを指定倍率で拡大(アンチエイリアス解除状態で)
on resizeNSImageWithoutAntlialias:aSourceImg toScale:imgScale
  set aSize to aSourceImg’s |size|()
  
set aWidth to (aSize’s width) * imgScale
  
set aHeight to (aSize’s height) * imgScale
  
  
set aRep to current application’s NSBitmapImageRep’s alloc()’s initWithBitmapDataPlanes:(missing value) pixelsWide:aWidth pixelsHigh:aHeight bitsPerSample:8 samplesPerPixel:4 hasAlpha:true isPlanar:false colorSpaceName:(current application’s NSCalibratedRGBColorSpace) bytesPerRow:0 bitsPerPixel:0
  
  
set newSize to {width:aWidth, height:aHeight}
  
aRep’s setSize:newSize
  
  
current application’s NSGraphicsContext’s saveGraphicsState()
  
  
set theContext to current application’s NSGraphicsContext’s graphicsContextWithBitmapImageRep:aRep
  
current application’s NSGraphicsContext’s setCurrentContext:theContext
  
theContext’s setShouldAntialias:false
  
theContext’s setImageInterpolation:(current application’s NSImageInterpolationNone)
  
  
aSourceImg’s drawInRect:(current application’s NSMakeRect(0, 0, aWidth, aHeight)) fromRect:(current application’s NSZeroRect) operation:(current application’s NSCompositeCopy) fraction:(1.0)
  
  
current application’s NSGraphicsContext’s restoreGraphicsState()
  
  
set newImg to current application’s NSImage’s alloc()’s initWithSize:newSize
  
newImg’s addRepresentation:aRep
  
  
return newImg
end resizeNSImageWithoutAntlialias:toScale:

–Alias listから指定UTIに含まれるものをPOSIX pathのリストで返す
on filterAliasListByUTI(aList, targUTI)
  set newList to {}
  
repeat with i in aList
    set j to POSIX path of i
    
set tmpUTI to my retUTIfromPath(j)
    
set utiRes to my filterUTIList({tmpUTI}, targUTI)
    
if utiRes is not equal to {} then
      set the end of newList to j
    end if
  end repeat
  
return newList
end filterAliasListByUTI

–指定のPOSIX pathのファイルのUTIを求める
on retUTIfromPath(aPOSIXPath)
  set aURL to |NSURL|’s fileURLWithPath:aPOSIXPath
  
set {theResult, theValue} to aURL’s getResourceValue:(reference) forKey:NSURLTypeIdentifierKey |error|:(missing value)
  
  
if theResult = true then
    return theValue as string
  else
    return theResult
  end if
end retUTIfromPath

–UTIリストが指定UTIに含まれているかどうか演算を行う
on filterUTIList(aUTIList, aUTIstr)
  set anArray to NSArray’s arrayWithArray:aUTIList
  
set aPred to NSPredicate’s predicateWithFormat_("SELF UTI-CONFORMS-TO %@", aUTIstr)
  
set bRes to (anArray’s filteredArrayUsingPredicate:aPred) as list
  
return bRes
end filterUTIList

–NSImageを指定パスにJPEG形式で保存、qulityNumは0.0〜1.0。1.0は無圧縮
on saveNSImageAtPathAsJPG(anImage, outPath, qulityNum as real)
  set imageRep to anImage’s TIFFRepresentation()
  
set aRawimg to current application’s NSBitmapImageRep’s imageRepWithData:imageRep
  
set pathString to current application’s NSString’s stringWithString:outPath
  
set newPath to pathString’s stringByExpandingTildeInPath()
  
set myNewImageData to (aRawimg’s representationUsingType:(current application’s NSJPEGFileType) |properties|:{NSImageCompressionFactor:qulityNum})
  
set aRes to (myNewImageData’s writeToFile:newPath atomically:true) as boolean
  
return aRes –true/false
end saveNSImageAtPathAsJPG

–NSImageを指定パスにTIFF形式で保存
on saveNSImageAtPathAsTIFF(anImage, outPath)
  set imageRep to anImage’s TIFFRepresentation()
  
set aRawimg to current application’s NSBitmapImageRep’s imageRepWithData:imageRep
  
set pathString to current application’s NSString’s stringWithString:outPath
  
set newPath to pathString’s stringByExpandingTildeInPath()
  
set myNewImageData to (aRawimg’s representationUsingType:(current application’s NSTIFFFileType) |properties|:(missing value))
  
set aRes to (myNewImageData’s writeToFile:newPath atomically:true) as boolean
  
return aRes –true/false
end saveNSImageAtPathAsTIFF

–NSImageを指定パスにPNG形式で保存
on saveNSImageAtPathAsPNG(anImage, outPath)
  set imageRep to anImage’s TIFFRepresentation()
  
set aRawimg to current application’s NSBitmapImageRep’s imageRepWithData:imageRep
  
set pathString to current application’s NSString’s stringWithString:outPath
  
set newPath to pathString’s stringByExpandingTildeInPath()
  
set myNewImageData to (aRawimg’s representationUsingType:(current application’s NSPNGFileType) |properties|:(missing value))
  
set aRes to (myNewImageData’s writeToFile:newPath atomically:true) as boolean
  
return aRes –true/false
end saveNSImageAtPathAsPNG

–NSImageを指定パスにBMP形式で保存
on saveNSImageAtPathAsBMP(anImage, outPath)
  set imageRep to anImage’s TIFFRepresentation()
  
set aRawimg to current application’s NSBitmapImageRep’s imageRepWithData:imageRep
  
set pathString to current application’s NSString’s stringWithString:outPath
  
set newPath to pathString’s stringByExpandingTildeInPath()
  
set myNewImageData to (aRawimg’s representationUsingType:(current application’s NSBMPFileType) |properties|:(missing value))
  
set aRes to (myNewImageData’s writeToFile:newPath atomically:true) as boolean
  
return aRes –true/false
end saveNSImageAtPathAsBMP

★Click Here to Open This Script 

Posted in file Image | Tagged 10.11savvy 10.12savvy 10.13savvy Finder | Leave a comment

Finder上で選択中の画像をアンチエイリアスありで50%にリサイズ

Posted on 6月 3, 2018 by Takaaki Naganoya

Finder上で選択中の画像をアンチエイリアスありで50%にリサイズするAppleScriptです。

よく使う拡大/縮小倍率のScriptを用意してmacOS標準装備のScript Menuに入れておき、Menuから呼び出して使っています。

AppleScript名:Finder上で選択中の画像をアンチエイリアスありで50%にリサイズ
— Created 2014-02-21 Shane Stanley
— Modified 2018-06-01 Takaaki Naganoya
use AppleScript version "2.5"
use scripting additions
use framework "Foundation"
use framework "AppKit"

property |NSURL| : a reference to current application’s |NSURL|
property NSArray : a reference to current application’s NSArray
property NSPredicate : a reference to current application’s NSPredicate
property NSURLTypeIdentifierKey : a reference to current application’s NSURLTypeIdentifierKey

set zoomPercent to 0.5

tell application "Finder"
  set inFiles to selection as alias list
end tell

–指定のAlias listのうち画像のみ抽出
set filRes1 to filterAliasListByUTI(inFiles, "public.image") of me
if filRes1 = {} then return

–選択中のファイルのうちの1つから親フォルダを求め、出力先ファイルパスを組み立てる
set outPathTarg to POSIX path of (first item of filRes1)
set pathString to current application’s NSString’s stringWithString:outPathTarg
set newPath to (pathString’s stringByDeletingLastPathComponent()) as string

repeat with i in filRes1
  set outPOSIXpath to newPath & "/" & (current application’s NSUUID’s UUID()’s UUIDString()) as string
  
set fRes1 to resizeImage(i, outPOSIXpath, zoomPercent) of me
end repeat

on resizeImage(imagePath, newPath, aZoom as real)
  –ファイルパスの拡張子を取得する
  
set pathString to current application’s NSString’s stringWithString:imagePath
  
set fileExt to (pathString’s pathExtension()) as string
  
  
–画像ファイルをNSImageに読み込み
  
set theImage to current application’s NSImage’s alloc()’s initWithContentsOfFile:imagePath — load the file as an NSImage
  
  
— calculate required sizes
  
set theSize to (theImage’s |size|()) as record
  
  
set oldWidth to width of theSize
  
set oldHeight to height of theSize
  
  
set theWidth to oldWidth * aZoom
  
set theHeight to oldHeight * aZoom
  
  
set newImage to current application’s NSImage’s alloc()’s initWithSize:(current application’s NSMakeSize(theWidth, theHeight))
  
  
newImage’s lockFocus()
  
theImage’s drawInRect:{origin:{x:0, y:0}, |size|:{width:theWidth, height:theHeight}} fromRect:(current application’s NSZeroRect) operation:(current application’s NSCompositeSourceOver) fraction:1.0
  
newImage’s unlockFocus()
  
  
set theData to newImage’s TIFFRepresentation()
  
set newRep to current application’s NSBitmapImageRep’s imageRepWithData:theData
  
  
–元画像のファイルファイルフォーマットに合わせて同じフォーマットに
  
if fileExt is in {"png", "PNG"} then
    set theData to (newRep’s representationUsingType:(current application’s NSPNGFileType) |properties|:{NSImageGamma:1.0})
  else if fileExt is in {"jpg", "jpeg"} then
    set theData to (newRep’s representationUsingType:(current application’s NSJPEGFileType) |properties|:{NSImageCompressionFactor:1.0})
  else if fileExt is in {"tif", "tiff"} then
    set theData to (newRep’s representationUsingType:(current application’s NSTIFFFileType) |properties|:(missing value))
  else if fileExt is in {"bmp"} then
    set theData to (newRep’s representationUsingType:(current application’s NSBMPFileType) |properties|:(missing value))
  end if
  
  
set newPath to newPath & "." & fileExt
  
return (theData’s writeToFile:newPath atomically:true)
  
end resizeImage

–Alias listから指定UTIに含まれるものをPOSIX pathのリストで返す
on filterAliasListByUTI(aList, targUTI)
  set newList to {}
  
repeat with i in aList
    set j to POSIX path of i
    
set tmpUTI to my retUTIfromPath(j)
    
set utiRes to my filterUTIList({tmpUTI}, targUTI)
    
if utiRes is not equal to {} then
      set the end of newList to j
    end if
  end repeat
  
return newList
end filterAliasListByUTI

–指定のPOSIX pathのファイルのUTIを求める
on retUTIfromPath(aPOSIXPath)
  set aURL to |NSURL|’s fileURLWithPath:aPOSIXPath
  
set {theResult, theValue} to aURL’s getResourceValue:(reference) forKey:NSURLTypeIdentifierKey |error|:(missing value)
  
  
if theResult = true then
    return theValue as string
  else
    return theResult
  end if
end retUTIfromPath

–UTIリストが指定UTIに含まれているかどうか演算を行う
on filterUTIList(aUTIList, aUTIstr)
  set anArray to NSArray’s arrayWithArray:aUTIList
  
set aPred to NSPredicate’s predicateWithFormat_("SELF UTI-CONFORMS-TO %@", aUTIstr)
  
set bRes to (anArray’s filteredArrayUsingPredicate:aPred) as list
  
return bRes
end filterUTIList

★Click Here to Open This Script 

Posted in file Image | Tagged 10.11savvy 10.12savvy 10.13savvy Finder | Leave a comment

各デスクトップのデスクトップピクチャをPreviewでオープン

Posted on 6月 1, 2018 by Takaaki Naganoya

各デスクトップに設定してあるデスクトップピクチャのパスをもとめ、Preview.appでオープンするAppleScriptです。

こんな感じに複数のディスプレイにデスクトップピクチャが設定してある状態で実行すると、

すべてのディスプレイのデスクトップピクチャの画像をPreview.appでオープンします。

Keynoteで資料を作っているときに、デスクトップのキャプチャを行なったような場合に、デスクトップピクチャを含めて合成できたほうが便利なケースがあって、そのようなときに書いた「作り捨て」レベルのScriptです。

AppleScript名:各デスクトップのデスクトップピクチャをPreviewでオープン
tell application "System Events"
  set aList to picture of every desktop
end tell

repeat with i in aList
  try
    set targFile to (POSIX file i) as alias
    
tell application "Preview"
      open targFile
    end tell
  end try
end repeat

★Click Here to Open This Script 

Posted in System | Tagged 10.11savvy 10.12savvy 10.13savvy Preview System Events | Leave a comment

HoudahSpotのコントロールを行う

Posted on 6月 1, 2018 by Takaaki Naganoya

HoudahSpotの各種コントロールを行うAppleScriptです。

HoudahSpotは、Spotlightの検索を行うアプリケーションで、AppleScript対応しています。

検索自体は非同期で実行され、検索が終了したかどうかは最前面のドキュメント(front document)のプロパティ「search completed」がtrueになるかどうかをループで確認することになります。このさい、delayコマンドで時間待ちしないと負荷が高くなって全体のパフォーマンスが低下するので、0.1秒ぐらいの時間待ちを行うのが非同期アプリケーションのコントロール時の「お約束」です(Xcodeとか)。

HoudahSpotの検索条件についてはAppleScriptから一切コントロールできないので、HoudahSpot書類に保存しておいてオープンして再検索を行うという利用スタイルを考えているのでしょう。

みどころは、Finderの最前面のウィンドウのパス以下を対象にSpotlight検索するfinder searchコマンド。ちょっと目の付け所がいいと思います。あと、HoudahSpot HelperをオンにするとStatus Bar上にmacOS純正のSpotlightアイコンと同様のアイコンが出てきて検索できます。これもいいと思います。

ただ、わざわざGUIアプリケーションで実行しなくても、AppleScriptから直接Spotlightの機能を呼び出せるので、HoudahSpotを利用する必然性があまり感じられません。

AppleScript名:アプリケーションのプロパティを取得する
tell application "HoudahSpot"
  properties
  
–> {frontmost:false, class:application, name:"HoudahSpot", version:"4.3.7"}
end tell

★Click Here to Open This Script 

AppleScript名:ドキュメントのプロパティを取得する
tell application "HoudahSpot"
  tell document 1
    properties
    
–> {modified:false, name:"Untitled", details pane visible:false, search completed:false, selection:{}, search active:false, file:missing value, results view:list view, search pane visible:true, class:document}
  end tell
end tell

★Click Here to Open This Script 

AppleScript名:ドキュメントをかぞえる
tell application "HoudahSpot"
  set dCount to count every document
  
–> 1
end tell

★Click Here to Open This Script 

AppleScript名:Windowのプロパティを取得する
tell application "HoudahSpot"
  tell window 1
    properties
    
–> {zoomable:true, closeable:true, current tab:tab 1 of window id 89717 of application "HoudahSpot", zoomed:false, class:window, index:1, visible:true, sidebar visible:false, name:"Untitled", toolbar visible:true, miniaturizable:true, id:89717, miniaturized:false, resizable:true, bounds:{0, 22, 1407, 797}, document:document "Untitled" of application "HoudahSpot"}
    
  end tell
end tell

★Click Here to Open This Script 

AppleScript名:WindowのTabをかぞえる
tell application "HoudahSpot"
  tell window 1
    set tCount to count every tab
    
–> 1
  end tell
end tell

★Click Here to Open This Script 

AppleScript名:検索を実行
tell application "HoudahSpot"
  search "Piyowolf"
  
–> document "Untitled 3" of application "HoudahSpot"
end tell

★Click Here to Open This Script 

AppleScript名:検索結果のプロパティをすべて取得する
tell application "HoudahSpot"
  set resList to every result of front document
  
  
set rList to {}
  
repeat with i in resList
    set aRes to properties of i
    
log aRes
    
(*class:result, path:/Users/maro/Library/Mail/V4/DA40FA88-F9E4-45A0-A3C9-4DCD4DCE3C38/Sent Messages.mbox/8DD46D63-E6F7-4A3C-81DF-4D4FDBFBE19B/Data/7/9/0/2/Messages/2097257.emlx, id:/Users/maro/Library/Mail/V4/DA40FA88-F9E4-45A0-A3C9-4DCD4DCE3C38/Sent Messages.mbox/8DD46D63-E6F7-4A3C-81DF-4D4FDBFBE19B/Data/7/9/0/2/Messages/2097257.emlx, name: Yasu for Mac*)
  end repeat
end tell

★Click Here to Open This Script 

AppleScript名:検索結果をカウントする
tell application "HoudahSpot"
  set resCount to count every result of front document
end tell

★Click Here to Open This Script 

AppleScript名:キーワード検索して結果を取得する
tell application "HoudahSpot"
  set resDoc to search "AppleScriptObjC"
  
  
repeat
    tell resDoc
      set resC to search completed
    end tell
    
if resC is equal to true then exit repeat
    
delay 0.1
  end repeat
  
  
set resList to count every result of front document
end tell

★Click Here to Open This Script 

AppleScript名:検索結果からフィルタ参照でしぼりこみ
tell application "HoudahSpot"
  set resList to every result of front document whose path ends with ".md"
end tell

★Click Here to Open This Script 

AppleScript名:検索結果を指定パスに保存する
set aSavePath to choose file name

tell application "HoudahSpot"
  save front document in aSavePath
end tell

★Click Here to Open This Script 

AppleScript名:保存しておいた検索結果をオープンする
set aFile to choose file

tell application "HoudahSpot"
  open aFile
end tell

★Click Here to Open This Script 

AppleScript名:キーワードをFinderの最前面のウィンドウのパスを対象に検索
tell application "HoudahSpot"
  set resDoc to finder search "EXIF"
  
  
repeat
    tell resDoc
      set resC to search completed
    end tell
    
if resC is equal to true then exit repeat
    
delay 0.1
  end repeat
  
  
set resList to count every result of front document
  
end tell

★Click Here to Open This Script 

Posted in Spotlight | Tagged 10.11savvy 10.12savvy 10.13savvy HoudahSpot | Leave a comment

Post navigation

  • Newer posts

電子書籍(PDF)をオンラインストアで販売中!

Google Search

Popular posts

  • macOS 13, Ventura(継続更新)
  • アラートダイアログ上にWebViewで3Dコンテンツを表示(WebGL+three.js)v3
  • Xcode 14.2でAppleScript App Templateを復活させる
  • UI Browserがgithub上でソース公開され、オープンソースに
  • macOS 13 TTS Voice環境に変更
  • 2022年に書いた価値あるAppleScript
  • ChatGPTで文章のベクトル化(Embedding)
  • 新発売:AppleScriptからSiriを呼び出そう!
  • iWork 12.2がリリースされた
  • 従来と異なるmacOS 13の性格?
  • 新発売:CotEditor Scripting Book with AppleScript
  • macOS 13対応アップデート:AppleScript実践的テクニック集(1)GUI Scripting
  • AS関連データの取り扱いを容易にする(はずの)privateDataTypeLib
  • macOS 13でNSNotFoundバグふたたび
  • macOS 12.5.1、11.6.8でFinderのselectionでスクリーンショット画像をopenできない問題
  • ChatGPTでchatに対する応答文を取得
  • 新発売:iWork Scripting Book with AppleScript
  • Finderの隠し命令openVirtualLocationが発見される
  • macOS 13.1アップデートでスクリプトエディタの挙動がようやくまともに
  • あのコン過去ログビューワー(暫定版)

Tags

10.11savvy (1101) 10.12savvy (1242) 10.13savvy (1390) 10.14savvy (586) 10.15savvy (434) 11.0savvy (277) 12.0savvy (186) 13.0savvy (59) CotEditor (60) Finder (47) iTunes (19) Keynote (99) NSAlert (60) NSArray (51) NSBezierPath (18) NSBitmapImageRep (20) NSBundle (20) NSButton (34) NSColor (51) NSDictionary (27) NSFileManager (23) NSFont (18) NSImage (41) NSJSONSerialization (21) NSMutableArray (62) NSMutableDictionary (21) NSPredicate (36) NSRunningApplication (56) NSScreen (30) NSScrollView (22) NSString (117) NSURL (97) NSURLRequest (23) NSUTF8StringEncoding (30) NSView (33) NSWorkspace (20) Numbers (57) Pages (38) Safari (41) Script Editor (20) WKUserContentController (21) WKUserScript (20) WKUserScriptInjectionTimeAtDocumentEnd (18) WKWebView (23) WKWebViewConfiguration (22)

カテゴリー

  • 2D Bin Packing
  • 3D
  • AirDrop
  • AirPlay
  • Animation
  • AppleScript Application on Xcode
  • beta
  • Bluetooth
  • Books
  • boolean
  • bounds
  • Bug
  • Calendar
  • call by reference
  • Clipboard
  • Code Sign
  • Color
  • Custom Class
  • dialog
  • drive
  • exif
  • file
  • File path
  • filter
  • folder
  • Font
  • Font
  • GAME
  • geolocation
  • GUI
  • GUI Scripting
  • Hex
  • History
  • How To
  • iCloud
  • Icon
  • Image
  • Input Method
  • Internet
  • iOS App
  • JavaScript
  • JSON
  • JXA
  • Keychain
  • Keychain
  • Language
  • Library
  • list
  • Locale
  • Machine Learning
  • Map
  • Markdown
  • Menu
  • Metadata
  • MIDI
  • MIME
  • Natural Language Processing
  • Network
  • news
  • Noification
  • Notarization
  • Number
  • Object control
  • OCR
  • OSA
  • PDF
  • Peripheral
  • PRODUCTS
  • QR Code
  • Raw AppleEvent Code
  • Record
  • rectangle
  • recursive call
  • regexp
  • Release
  • Remote Control
  • Require Control-Command-R to run
  • REST API
  • Review
  • RTF
  • Sandbox
  • Screen Saver
  • Script Libraries
  • sdef
  • search
  • Security
  • selection
  • shell script
  • Shortcuts Workflow
  • Sort
  • Sound
  • Spellchecker
  • Spotlight
  • SVG
  • System
  • Tag
  • Telephony
  • Text
  • Text to Speech
  • timezone
  • Tools
  • Update
  • URL
  • UTI
  • Web Contents Control
  • WiFi
  • XML
  • XML-RPC
  • イベント(Event)
  • 未分類

アーカイブ

  • 2023年9月
  • 2023年8月
  • 2023年7月
  • 2023年6月
  • 2023年5月
  • 2023年4月
  • 2023年3月
  • 2023年2月
  • 2023年1月
  • 2022年12月
  • 2022年11月
  • 2022年10月
  • 2022年9月
  • 2022年8月
  • 2022年7月
  • 2022年6月
  • 2022年5月
  • 2022年4月
  • 2022年3月
  • 2022年2月
  • 2022年1月
  • 2021年12月
  • 2021年11月
  • 2021年10月
  • 2021年9月
  • 2021年8月
  • 2021年7月
  • 2021年6月
  • 2021年5月
  • 2021年4月
  • 2021年3月
  • 2021年2月
  • 2021年1月
  • 2020年12月
  • 2020年11月
  • 2020年10月
  • 2020年9月
  • 2020年8月
  • 2020年7月
  • 2020年6月
  • 2020年5月
  • 2020年4月
  • 2020年3月
  • 2020年2月
  • 2020年1月
  • 2019年12月
  • 2019年11月
  • 2019年10月
  • 2019年9月
  • 2019年8月
  • 2019年7月
  • 2019年6月
  • 2019年5月
  • 2019年4月
  • 2019年3月
  • 2019年2月
  • 2019年1月
  • 2018年12月
  • 2018年11月
  • 2018年10月
  • 2018年9月
  • 2018年8月
  • 2018年7月
  • 2018年6月
  • 2018年5月
  • 2018年4月
  • 2018年3月
  • 2018年2月

https://piyomarusoft.booth.pm/items/301502

メタ情報

  • ログイン
  • 投稿フィード
  • コメントフィード
  • WordPress.org

Forum Posts

  • 人気のトピック
  • 返信がないトピック

メタ情報

  • ログイン
  • 投稿フィード
  • コメントフィード
  • WordPress.org
Proudly powered by WordPress
Theme: Flint by Star Verte LLC