blob: 278e138d99cf57df98e1d99d81786d6fb3cb56dd [file]
import subprocess
def attach(pid: int, suspended: bool = False) -> None:
script = """
on run argv
set targetPID to item 1 of argv as integer
set shouldSuspend to item 2 of argv as boolean
tell application "Xcode"
activate
if (count of workspace documents) is greater than 0 then
set debuggingWorkspace to workspace document 1
else
set debuggingWorkspace to create temporary debugging workspace
end if
attach debuggingWorkspace to process identifier targetPID suspended shouldSuspend
end tell
end run
"""
subprocess.run(["osascript", "-e", script, str(pid), str(suspended)], check=True)