AppleScript:在Xcode中检索当前项目/工作区的路径 短版

AppleScript:在Xcode中检索当前项目/工作区的路径 短版,xcode,bash,applescript,Xcode,Bash,Applescript,我想使用AppleScript在Xcode中检索当前项目/工作区的路径。我该怎么做 长版本 我想创建一个Xcode行为,显示当前分支和默认分支之间的差异。我的计划是: 使用AppleScript获取当前项目/工作区的路径 将路径传递给bash脚本,该脚本: 确定默认的git分支 运行git difftool{DEFAULT_BRANCH} 我被困在第一步 (我已经编程超过20年了,但我仍然无法理解AppleScript。)这非常简单 tell application "Xcode"

我想使用AppleScript在Xcode中检索当前项目/工作区的路径。我该怎么做

长版本 我想创建一个Xcode行为,显示当前分支和默认分支之间的差异。我的计划是:

  • 使用AppleScript获取当前项目/工作区的路径
  • 将路径传递给bash脚本,该脚本:
    • 确定默认的git分支
    • 运行
      git difftool{DEFAULT_BRANCH}
  • 我被困在第一步


    (我已经编程超过20年了,但我仍然无法理解AppleScript。)

    这非常简单

    tell application "Xcode"
        set currentWorkspacePath to path of active workspace document
    end tell
    

    以下是我最终得到的结果:

    #! /bin/bash
    
    WORKSPACE_PATH=$(osascript -e 'tell application "Xcode"
        set workspacePath to path of active workspace document
    end tell')
    
    source ~/.bash_profile
    cd "$WORKSPACE_PATH/.."
    GIT_DEFAULT_BRANCH=$(git symbolic-ref refs/remotes/origin/HEAD | sed 's@^refs/remotes/origin/@@')
    git difftool "$GIT_DEFAULT_BRANCH"
    
    非常感谢@vadian