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.1.tar.gz (7.8 kB view details)

Uploaded Source

Built Distribution

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

Uploaded Python 3

File details

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

File metadata

  • Download URL: xcode-toolbox-1.3.1.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.1.tar.gz
Algorithm Hash digest
SHA256 8e67b14a2ee8de430935435408037ae92daba8b0826e36e68b10bbf4483690f0
MD5 e0924cfb010e5ba2a14c9ccadcaf0448
BLAKE2b-256 607e2326f37154f852c970114d1c81341582c25e318f63130e3835961fc1fc22

See more details on using hashes here.

File details

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

File metadata

  • Download URL: xcode_toolbox-1.3.1-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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 dd005886f40d088b053df6f6f10b34d373ad8b672f1d89d2917e6c4f291fc08e
MD5 7f110e4967da73ee99d8de9d0e024962
BLAKE2b-256 9502f144cb9c194fb7596b3de5c6eda8e5687575089da1a852667ffe1aa89643

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