xcode: add version-based xcselv()

This commit is contained in:
Andrew Janke 2015-09-04 17:17:16 -04:00 committed by Marc Cornellà
parent d95589d4e4
commit 5584aa05c7

View File

@ -17,6 +17,35 @@ alias xcb='xcodebuild'
alias xcp='xcode-select --print-path' alias xcp='xcode-select --print-path'
alias xcdd='rm -rf ~/Library/Developer/Xcode/DerivedData/*' alias xcdd='rm -rf ~/Library/Developer/Xcode/DerivedData/*'
# "XCode-SELect by Version" - select Xcode by just version number
# Uses naming convention:
# - different versions of Xcode are named Xcode-<version>.app or stored
# in a folder named Xcode-<version>
# - the special version name "-" refers to the "default" Xcode.app with no suffix
function xcselv {
emulate -L zsh
local version=$1
local apps_dirs apps_dir apps app
apps_dirs=( $HOME/Applications /Applications )
for apps_dir ($apps_dirs); do
if [[ $version == "-" ]]; then
apps=( $apps_dir/Xcode.app $apps_dir/Xcode/Xcode.app )
else
apps=( $apps_dir/Xcode-$version.app $apps_dir/Xcode-$version/Xcode.app )
fi
for app ($apps); do
if [[ -e "$app" ]]; then
echo "selecting Xcode $version: $app"
xcsel "$app"
return
fi
done
done
echo "xcselv: Xcode version $version not found"
return 1
}
function simulator { function simulator {
local devfolder local devfolder
devfolder="$(xcode-select -p)" devfolder="$(xcode-select -p)"