├── .travis.yml ├── Dangerfile └── README.md /.travis.yml: -------------------------------------------------------------------------------- 1 | language: ruby 2 | rvm: 3 | - 2.4.1 4 | before_script: 5 | - gem install awesome_bot 6 | - gem install danger 7 | script: 8 | - allowed_redirects=gist.github.com 9 | - awesome_bot README.md --allow-ssl --white-list $allowed_redirects 10 | - danger 11 | notifications: 12 | email: false -------------------------------------------------------------------------------- /Dangerfile: -------------------------------------------------------------------------------- 1 | # Ensure there is a summary for a pull request 2 | fail 'Please provide a summary in the Pull Request description' if github.pr_body.length < 5 3 | 4 | # Warn when there are merge commits in the diff 5 | warn 'Please rebase to get rid of the merge commits in this Pull Request' if git.commits.any? { |c| c.message =~ /^Merge branch 'master'/ } 6 | 7 | # Only one library per pull request 8 | warn 'Too many changes (when adding, please keep it to one project per Pull Request)' if git.insertions > 1 9 | 10 | # Warn if pull request is not updated 11 | warn 'Please update the Pull Request title to contain the library name' if github.pr_title.include? 'Update README.md' 12 | 13 | # Check links 14 | require 'json' 15 | results = File.read 'ab-results-README.md-markdown-table.json' 16 | j = JSON.parse results 17 | if j['error']==true 18 | m = j['title'] 19 | m << ', a project collaborator will take care of these, thanks :)' 20 | warn m 21 | markdown j['message'] 22 | end -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Awesome native Xcode extensions 2 | 3 | Awesome native Xcode extensions. Feel free to contribute! 4 | 5 | ## Contributing 6 | 7 | Please submit a pull request to improve this file. Thank you to all contributors; you rock! 8 | 9 | ## The list 10 | 11 | ### Tutorials of Xcode Source Editor Extension 12 | 13 | * [XTExtension](https://github.com/wuwen1030/XTExtension) - Comment lines. 14 | * [XcodeExtensionSample](https://github.com/takasek/XcodeExtensionSample) - Various sample commands for your Xcode Source Editor Extension implementation. 15 | * [Xcode Source Editor Extension Tutorial: Getting Started](https://www.vadimbulavin.com/xcode-source-editor-extension-tutorial/) 16 | 17 | ### Formatters 18 | 19 | * [🔮 Snowonder](https://github.com/Karetski/Snowonder) — an import declarations formatter Xcode Extension. 20 | * [Imp😈](https://github.com/shalamowww/imp) - Sorting imports in Xcode files has never been that fun and easy 21 | * [XAlign](https://github.com/qfish/XAlign) - An amazing Xcode Source Editor extension to align regular code. 22 | * [Alignment](https://github.com/tid-kijyun/XcodeSourceEditorExtension-Alignment) -This Xcode source editor extension align your assignment statement. 23 | * [CleanClosureXcode](https://github.com/BalestraPatrick/CleanClosureXcode) - An Xcode Source Editor extension to clean the closure syntax. 24 | * [strimmer](https://github.com/squarefrog/strimmer) - Strimmer is an Xcode 8 Source Code Extension that quickly strips all trailing whitespace from the current file. 25 | * [xcsort](http://apps.brrm.ru/xcsort/) - Sort text or code lines from a text selection. An Xcode extension by [battlmonstr](https://github.com/battlmonstr). 26 | * [SwiftFormat](https://github.com/nicklockwood/SwiftFormat) - A code library and command-line formatting tool for reformatting Swift code 27 | * [SwiftLintForXcode](https://github.com/norio-nomura/SwiftLintForXcode) - SwiftLint for Xcode is a Xcode Extension that was created to run SwiftLint. 28 | * [Swimat](https://github.com/Jintin/Swimat) - An Xcode formatter plug-in to format your swift code 29 | * [CleanHeaders-Xcode](https://github.com/insanoid/CleanHeaders-Xcode) - A Xcode Source Editor Extension to sort your header imports and remove duplicates, similar to iSort. 30 | * [PPImportArrangerExtension](https://github.com/VernonVan/PPImportArrangerExtension) - A Xcode Source Editor Extension to arrange current file's all #import lines, support Objective-C、Swift、C. 31 | * [LinesSorter](https://github.com/V8tr/LinesSorter-Xcode-Extension) - LinesSorter helps you keep your import statements and long code lists organized and uniform. Easy to install: no need to hack Xcode. 32 | * [AccessControlKitty](https://github.com/zoejessica/accesscontrolkitty) - Change the access control level (public, private etc.) of selected Swift code. 33 | 34 | ### Typed Boilerplate Code Generators 35 | * [SwiftAI](https://github.com/hhfa008/SwiftAI) - generate Codable&HandyJSON model class from JSON automatically 36 | * [TrickerX](https://github.com/wleii/TrickerX) - Help you make Swift `Codable` `CodingKeys` automatically. 37 | * [Paste JSON as Code (quicktype)](https://github.com/quicktype/quicktype-xcode) – Paste JSON as Swift, Java, C++ or Obj-C++ models and serialization helpers. 38 | * [SwiftMockGeneratorForXcode](https://github.com/seanhenry/SwiftMockGeneratorForXcode) - An Xcode 9 extension (plugin) to generate Swift mock classes automatically. 39 | * [JSON-to-Swift-Converter](https://github.com/mrlegowatch/JSON-to-Swift-Converter) - an open-source Xcode Source Editor extension for creating Swift code from JSON-formatted text. 40 | * [Json2Property](https://github.com/keepyounger/Json2Property) - a open-source Xcode Extension by [keepyounger](https://github.com/keepyounger), allow you conveniently to convert Json to Objective-C model. 41 | * [CodeGenerator](https://github.com/WANGjieJacques/CodeGenerator/) - Xcode editor extension for swift code generation. 42 | * [GenerateSwiftInit](https://github.com/bkobilansky/GenerateSwiftInit) - Proof of concept for Xcode 8 source extensions; generate a Swift init from current selection 43 | * [Localizer](https://github.com/esttorhe/Localizer) - It then breaks apart any String declarations it founds by splitting the selection based off " and then wrap the resulting String inside NSLocalizedString. 44 | * [SwiftInitializerGenerator](https://github.com/Bouke/SwiftInitializerGenerator) - This Xcode 8 Source Code Extension will generate a Swift initializer based on the lines you've selected. 45 | * [Swift Init Generator](https://github.com/Atimca/SwiftInitGenerator) - This Xcode 10 Source Code Extension generates a Swift initialezer based on the lines you've selected. Also suports filtering unnecessary fields and transition to a new line, when the init string is long. 46 | * [XcodeEquatableGenerator](https://github.com/sergdort/XcodeEquatableGenerator) - Xcode 8 Source Code Extension will generate conformance to Swift Equatable protocol based on type and fields selection. 47 | * [Switch Enum Case Generator](https://github.com/timaktimak/SwitchCaseGenerator) - Instant switch with selected enum cases 48 | * [Rubicon](https://github.com/raptorxcz/Rubicon) - Swift parser + Spy generator. 49 | * [BExtension](https://github.com/DominikBucher12/BEExtension) - Xcode Source extension for delivering enums and variables from enum cases, see [this article](https://www.linkedin.com/pulse/xcode-extension-defining-enum-variables-swift-moreerror-bucher?trk=v-feed&lipi=urn%3Ali%3Apage%3Ad_flagship3_feed%3BGQbYZpETZvH9TQq77%2BltRg%3D%3D) 50 | * [DocumenterXcode](https://github.com/serhii-londar/DocumenterXcode) - Xcode source editor extension which helps you write documentation comment easier, for both Objective-C and Swift. 51 | * [ViewGenerator](https://github.com/funzin/ViewGenerator) - ViewGenerator generates view code from variable name automatically in iOS development. 52 | * [ThenGenerator](https://github.com/87kangsw/ThenGenerator) - Xcode Source Editor Extension for 'Then' 53 | * [MappingCoder](https://github.com/wgy6055/MappingCoder) - This Xcode Source Editor Extension generates [ObjectMapper](https://github.com/tristanhimmelman/ObjectMapper) class/struct based on the lines you've selected. Also, it auto completes `init(map:)` and `mapping(map:)` based on SwiftSyntax. 54 | 55 | ### Helper on editing 56 | 57 | * [Comment Here](https://apps.apple.com/us/app/comment-here/id1406737173?mt=12) - Insert // just before indented text 58 | * [NSLayoutConstraintSourceEditorExtension](https://github.com/shindyu/NSLayoutConstraintSourceEditorExtension) - Quickly add NSLayoutConstraint. Also support multiple variables. 59 | * [XSpellCheck](https://github.com/wangjiejacques/XSpellCheck) - XSpellCheck is a Xcode extension for swift code spell check. 60 | * [XCJumpToTests](https://github.com/takasek/XCJumpToTests) - the Xcode Source Editor Extension / AppleScript to jump files of Implementation⇄Tests 61 | * [Sharpshooter](https://github.com/twostraws/Sharpshooter) - A tiny Xcode extension for people who debug with print() 62 | * [Linex](https://github.com/uchuugaka/Linex) - Packed with a lot of useful tools for everyday editing (*may no longer be maintained*) 63 | * [XCExpandRegion](https://bitbucket.org/rjchatfield/xcexpandregion) - Select text by expanding the current selection 64 | * [xTextHandler](https://github.com/cyanzhong/xTextHandler) - Xcode Source Editor Extension based tools to improve the text editing experience of Xcode 8 and provide extensions with simple code. 65 | * [XcodeCComment](https://github.com/flexih/XcodeCComment) - Xcode Source Editor Extension for C Style Comment /**/ 66 | * [Duplicate Line](https://github.com/castus/Xcode8Extensions) - Xcode's source editor extension to duplicate selected line or lines. 67 | * [XcodeEditorPlus](https://github.com/wangshengjia/XcodeEditorPlus) - Bring some convenient editor shortcuts to Xcode using Xcode Source Editor Extension, inspired from AppCode. 68 | * [XcodeColorSense2](https://github.com/onmyway133/XcodeColorSense2) - An Xcode source editor extension that makes working with color easier 69 | * [XcodeTopComment](https://github.com/alexito4/XcodeTopComment) - Xcode Source Editor Extension to remove or modify the top comment of a file 70 | * [FastCommentLine](https://github.com/ebaker355/FastCommentLine) - Moves cursor to next line after commenting/uncommenting current line (like AppCode). 71 | * [Import☝️](https://github.com/markohlebar/Import) - Add imports from anywhere in the code. 72 | * [Mark](https://github.com/velyan/Mark) - Generates MARK comments from protocol conformance in class declaration. 73 | * [Eric’s Mark](https://github.com/richardfrk/EricsMark) - Identifies IBOutlets, IBActions, Super Classes, Properties (and more) and MARK them. 74 | * [Quick Add](https://github.com/funky-monkey/QuickAdd) - A Xcode Source Editor Extension to quickly add a method implementation with comment from selected text 75 | * [HandyXcode](https://github.com/konkontos/HandyXcode) - A few 'Handy' Xcode commands (insert code placeholder, multi-line comment, etc.) 76 | * [LocalizedString](https://github.com/mateusfsilva/LocalizedString) - Xcode Source Editor Extension that helps to localize Swift and Objective-C source files 77 | * [DeclareType](https://github.com/timaktimak/DeclareType) - Generate the type declaration in your file based on the file name 78 | * [LineEscapeEx](https://github.com/sidepelican/LineEscapeEx) - Duplicate lines as comment 79 | * [MGTextPlus](https://github.com/tuan188/MGTextPlus) - A Xcode Source Editor extension to duplicate line, delete line, join lines and more. 80 | * [TabifyIndents](https://apps.apple.com/jp/app/tabifyindents-for-xcode/id1179234554?mt=1) - This application adds two feature that Tabify and Untabify to Xcode Source Editor. 81 | * [Literals](https://github.com/Igor-Palaguta/LiteralsExtension) - Converts UIColor, NSColor, UIImage to literals 82 | * [LanguageTranslator]( https://apps.apple.com/app/languagetranslator-for-xcode/id1218781096?mt=12) - A Xcode Source Editor extension to translate selected text into other language. 83 | * [NamingTranslator]( https://apps.apple.com/app/namingtranslator-for-xcode/id1218784832?mt=12) - A Xcode Source Editor extension to translate selected variable or method between PascalCase, camelCase and snake_case. 84 | * [DevHelper](https://github.com/AlexeyGolovenkov/DevHelper) - Several inline tools - sort, comment out etc. 85 | * [AutoImport](https://github.com/hhfa008/AutoImport) - AutoImport, handy Xcode plugin to import header file automatically. 86 | * [ConflictResolver](https://github.com/liaojinxing/ConflictResolver) - An Xcode Source Editor Extension that helps resolving merge conflicts. 87 | * [XCSmartCutCopyPaste](https://github.com/mretondo/XCSmartCutCopyPaste) - Apply Cut or Copy commands to blank lines in line mode when there is no selection. 88 | * [CommentSpellChecker](https://github.com/velyan/Comment-Spell-Checker) - Runs spell check and auto correct on code comments. 89 | * [XPaste](https://github.com/rickytan/XPaste) - A Xcode Source Extension to power up your text paste abilities 90 | * [Convert to Multi-Line Function](https://github.com/chrischute/xcode-multi-line-func) - XCode Source Editor Command to put each function argument on its own line. 91 | * [SwitchIt](https://github.com/HarmVanRisk/SwitchIt) - An Xcode Extension that auto generates your switch statements from your defined enums. Can be downloaded on the app store [here]( https://apps.apple.com/ie/app/switchit/id1244401606?mt=12) 92 | * [DoubleTake](https://github.com/HarmVanRisk/DoubleTake) - An Xcode Extension that removes duplicate imports/@class defined in a class. Can be downloaded on the app store [here]( https://apps.apple.com/ie/app/doubletake/id1453300536?mt=12) 93 | * [BlockComment](https://github.com/bradhowes/BlockComment) - Parses Swift code to generate block comment contents 94 | 95 | ### Collaborations with internal/external services 96 | 97 | * [GithubIssuesExtension](https://github.com/ambientlight/GithubIssuesExtension) - Xcode editor extension that adds an ability to post and edit github issues through comment templates 98 | * [Xcode-Search](https://github.com/skyline75489/Xcode-Search) - A Xcode Source Editor Extension that searches external sources 99 | * [XcodeWay](https://github.com/onmyway133/XcodeWay) - Navigate to many places from Xcode 100 | * [Xgist](https://github.com/Bunn/Xgist) - Xcode Source Editor Extension that sends code to GitHub's [Gist](https://gist.github.com) 101 | * [PlayAlways](https://github.com/insidegui/PlayAlways) - Create Xcode playgrounds from your menu bar. 102 | * [XShared](https://github.com/Otbivnoe/XShared) - Xcode extension which allows you copying the code with special formatting quotes for social (Slack, Telegram) 103 | * [nef](https://github.com/bow-swift/nef-plugin) - This Xcode extension enables you to make a code selection and export it to a snippets. __Available on Mac App Store__. 104 | * [GitBlamePR](https://github.com/maoyama/GitBlamePR) - An Xcode Source Editor Extension that shows pull request last modified each line of a file. 105 | * [RaySo](https://github.com/artemnovichkov/RaySo) - share your awesome code to [ray.so](https://ray.so) with Xcode Extension. 106 | * [XcodeUniversalSearch](https://github.com/sm11963/XcodeUniversalSearch) - Search or open custom URLs from Xcode - just like custom Chrome search engines. 107 | 108 | ### For Objective-C 109 | 110 | * [EasyCode-Xcode](https://github.com/music4kid/EasyCode-Xcode) - "legal" Xcode Plugin for inserting code in super duper fast lazy way. 111 | * [Swiftify Xcode extension]( https://apps.apple.com/us/app/swiftify-objective-c-to-swift/id1183412116) - allows you to convert Objective-C code to Swift right from Xcode. 112 | * [Dotify](https://github.com/cyanzhong/Dotify) - Convert [[AnObject method1] method2] to AnObject.method1.method2 with Xcode Extension 113 | * [Propertizer](https://github.com/josipbernat/Propertizer) - Autocompletes statements with desired type. 114 | * [Basics](https://github.com/b-yng/Basics) - Generates __NSCopying__, __isEquals__, __hash__, and more. 115 | * [Pragmatic](https://github.com/bgannin/Pragmatic) - An Xcode 8.*x* Source Editor extension for simplifying common pragma driven tasks 116 | * [Xcode-NSCoding](https://github.com/joelekstrom/xcode-nscoding) - Automatically creates NSCoding-implementations from properties 117 | * [CodeGenerator](https://github.com/MrPans/CodeGenerator) - A Xcode Source Editor extension to generate lazy getter methods from property. 118 | 119 | ### Joke 120 | 121 | * [XcodeExtension-TotsuzenNoShi](https://github.com/safx/XcodeExtension-TotsuzenNoShi) - A small "sudden" example of Xcode source code extension 122 | * [CodeCows]( https://apps.apple.com/us/app/codecows/id1176112058?mt=12) - Add hundreds of ASCII cows to your source code 123 | 124 | ### Uncategorized 125 | 126 | * [Jumpy](https://github.com/eddiekaiger/Jumpy) - Jumpy is an Xcode source editor extension for jumping across multiple lines of code. 127 | * [SETools](https://github.com/AfricanSwift/SETools) - Xcode 8 Extension - Figlet Font Titles 128 | * [VS-Key-Bindings-For-Xcode](https://github.com/SlavaBreath/VS-Key-Bindings-For-Xcode) - Visual Studio Comment Selection and Uncomment Selection for Xcode 8 extension. 129 | * [EmojifySourceEditorExtension](https://github.com/bhargavg/EmojifySourceEditorExtension) - A Proof-Of-Concept implementation of the new Xcode Source Editor Extension 130 | * [EmojifyApplication](https://github.com/huangxinping/EmojifyApplication) - Same as above. 131 | * [Jump](https://github.com/deszip/Jump) - XCode source editor extension for quick navigating 132 | * [CwlWhitespace](https://github.com/mattgallagher/CwlWhitespace) - The first command uses multiple selections to select every text range in your file that it believes is violating a whitespace rule. If a line contains a zero-length problem (missing whitespace or missing indent) then the whole line will be selected. 133 | * [DemoXcodeExtension](https://github.com/rickytan/DemoXcodeExtension) - Select the current scope / block. 134 | * [TestXcodeSourceExtensions](https://github.com/hugofalkman/TestXcodeSourceExtensions) - Replace entire files with literals 135 | * [FBXCodeExtension](https://github.com/flybrotherlixiang/FBXCodeExtension) - An Xcode Source Editor Extension providing convenient line manipulation such like __line deletion__ and __duplication__. 136 | * [BDDShortcuts](https://github.com/tjarratt/BDDShortcuts) - BDD Shortcuts is an Xcode 8+ plugin that adds handy shortcuts for Swift and BDD frameworks such as Cedar, Quick, Kiwi or Specta. 137 | * [XVim2](https://github.com/XVimProject/XVim2) - Vim key-bindings for Xcode. 138 | * [Code Friend](https://github.com/qvcodefriend/CodeFriend) - JavaScript interface for XcodeKit. Users can develop Xcode Extensions rapidly. 139 | * [SwiftPlantUML](https://github.com/MarcoEidinger/SwiftPlantUML-Xcode-Extension) - Xcode Extension for generating class diagrams from Swift code (powered by PlantUML). View and modify those generated diagrams in your browser. 140 | * [XCDoTo](https://github.com/pyretttt/XCDoTo) - Xcode extension adding todo list for tracking project tasks. Supports multiproject environment. 141 | --------------------------------------------------------------------------------