nanoant / ClangFormat-for-Xcode

A better ClangFormat plugin for Xcode

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

ClangFormat for Xcode

What is it?

This plugin is intended to do better job than other plugins, since it does all formatting replacements directly in source code buffer, rather than using temporary files or whatsoever, so it is quick and it allows undo.

Features

  1. Formatting using replacements rather replacing whole file buffer

  2. Preserving cursor placement and highlight

  3. Preserving Xcode template placeholders

Installation

  1. Open the project and build the plug-in.

  2. After a successful build the plug-in should automatically be installed; to install it manually move the product (AMSXcodeClangFormat.xcplugin) to ~/Library/Application Support/Developer/Shared/Xcode/Plug-ins (create the directory if necessary).

  3. Restart Xcode.

Settings

All settings of this plugin are accessible via defaults. Restart should be not required normally when changing these defaults.

Values shown here are the default built-in values.

  • defaults write -app Xcode AMSClangFormatPath "" (empty to disable)
  • defaults write -app Xcode AMSClangFormatStyle "file"

License

This software is provided under MIT license:

Copyright (c) 2014 Adam Strzelecki

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

About

A better ClangFormat plugin for Xcode


Languages

Language:Objective-C 100.0%