Skip to main content

A CLI tool which aims to provide a convenient operation toolbox on XCode project. You can use it to:(1) open XCode project or workspace. (2) remove project's derived data.(3) [WIP] force kill XCode process. (4) [WIP] generate Objective-C function signatures.

Project description

xcode-toolbox

A CLI tool which aims to provide a convenient operation toolbox on XCode project. It's faster and cleaner than xed. You can use it to:

(1) Open XCode project or workspace. 
(2) Remove project's derived data, or just the Build or Index folder.
(3) [WIP] Force kill XCode process. 
(4) [WIP] Generate Objective-C function signatures.

The argument path is a path to the directory containing at least 1 .xcodeproj or .xcworkspace file, default to the current directory. .xcworkspace has higher priority than .xcodeproj.

Installation

pip3 install xcode-toolbox

Requirements

  • Python 3.6+
  • requests
  • click

Usage

Usage: xc [OPTIONS] [PATH]

  A CLI tool which aims to provide a convenient operation toolbox on XCode
  project. It's faster and cleaner than `xed`. You can use it to: (1) open
  XCode project or workspace. (2) remove project's derived data. (3) [WIP]
  force kill XCode process. (4) [WIP] generate Objective-C function
  signatures.

  The argument `path` is a path to the directory containing at least 1
  `.xcodeproj` or `.xcworkspace` file, default to the current directory.
  `.xcworkspace` has higher priority than `.xcodeproj`.

  Contribute: https://github.com/zlrs/xcode-opener

Options:
  --rm-all    Remove the project's derived data in
              ~/Library/Developer/Xcode/DerivedData.

  --rm-build  Similar to --rm-all, but only remove the `Build` subdirectory.
  --rm-index  Similar to --rm-all, but only remove the `Index` subdirectory.
  --help      Show this message and exit.

Example

  1. open a XCode project or workspace
    • specify folder explicitly
    git clone git@github.com:SDWebImage/SDWebImage.git ~/GitHub
    xc ~/GitHub/SDWebImage/Examples
    
    • open project/workspace of current folder without parameters
    git clone git@github.com:SDWebImage/SDWebImage.git
    cd SDWebImage/Examples
    xc
    
  2. clear project derived folder
# remove project's index from derived data
xc <Path> --rm-index

# remove project's build from derived data
xc <Path> --rm-build

#remove project's all derived data
xc <Path> --rm-all

Todo features

  • toolbox subcommands
    • kill subcommand. To kill all running XCode processes, equivalent to the following shell command.
    kill $(ps aux | grep 'Xcode' | awk '{print $2}')
    
    • find subcommand. Find a source file/project file(s) under the given directory tree.
    • generate Objective-C method signature.
  • clear XCode project index folder
  • clear XCode project derivedData folder

Contribution

Comments, pull requests or other kind of contributions are welcome!

Also if you have any requirements or you encounter any bugs, feel free to open an issue or create a pull request!

LICENSE

MIT @ zlrs

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

xcode-toolbox-1.3.1rc0.tar.gz (7.8 kB view details)

Uploaded Source

Built Distribution

xcode_toolbox-1.3.1rc0-py3-none-any.whl (9.0 kB view details)

Uploaded Python 3

File details

Details for the file xcode-toolbox-1.3.1rc0.tar.gz.

File metadata

  • Download URL: xcode-toolbox-1.3.1rc0.tar.gz
  • Upload date:
  • Size: 7.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.8.5

File hashes

Hashes for xcode-toolbox-1.3.1rc0.tar.gz
Algorithm Hash digest
SHA256 5ee80e77fbed090dd5acf7ea88473c334f64f0907b8b3860765459df67fa2b7e
MD5 c2365ed4212209e6bd5cfbc6348fb284
BLAKE2b-256 0168d2c5ddcfd52d5f1027ec1f5fd11e1686d83d49e676d8a04a089f5ba5b4a4

See more details on using hashes here.

File details

Details for the file xcode_toolbox-1.3.1rc0-py3-none-any.whl.

File metadata

  • Download URL: xcode_toolbox-1.3.1rc0-py3-none-any.whl
  • Upload date:
  • Size: 9.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.8.5

File hashes

Hashes for xcode_toolbox-1.3.1rc0-py3-none-any.whl
Algorithm Hash digest
SHA256 9c97cbf86eb85a569417225abed1550dd0de7ddf647a5e47edbf0458c927f8ec
MD5 a613fc41bda903f2db4df413cf69f072
BLAKE2b-256 c4faa764d66fee597f22dd145e2d0d9d1f67d60e276ed25989d7841e47976dbf

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page