All Projects → DoubleSpeak → Gitdiff9

DoubleSpeak / Gitdiff9

Licence: mit
Highlights lint, deltas and recent changes against git repo in Xcode 9

Projects that are alternatives of or similar to Gitdiff9

Linex
Feature packed Xcode extension
Stars: ✭ 210 (+388.37%)
Mutual labels:  xcode, xcode-plugin
Clangformat Xcode
Xcode plug-in to to use clang-format from in Xcode and consistently format your code with Clang
Stars: ✭ 2,852 (+6532.56%)
Mutual labels:  xcode, xcode-plugin
Awesome Xcode Extensions
Awesome native Xcode extensions.
Stars: ✭ 2,628 (+6011.63%)
Mutual labels:  xcode, xcode-plugin
Luft
The Xcode Plugin that helps you write lighter view controllers
Stars: ✭ 179 (+316.28%)
Mutual labels:  xcode, xcode-plugin
Swiftmockgeneratorforxcode
An Xcode extension (plugin) to generate Swift test doubles automatically.
Stars: ✭ 522 (+1113.95%)
Mutual labels:  xcode, xcode-plugin
Amappexporttoipa Xcode Plugin
AMAppExportToIPA-Xcode-Plugin is a simple Xcode plugin to export .app to .ipa file.
Stars: ✭ 185 (+330.23%)
Mutual labels:  xcode, xcode-plugin
Dxxcodeconsoleunicodeplugin
转换Xcode控制台中一些不可阅读的字符,比如 \u22AD 这种
Stars: ✭ 268 (+523.26%)
Mutual labels:  xcode, xcode-plugin
Timliu Ios
iOS开发常用三方库、插件、知名博客等等
Stars: ✭ 10,898 (+25244.19%)
Mutual labels:  xcode, xcode-plugin
Swiftai
SwiftAI, write Swift code smart. SwiftAI can generate Model class from JSON now. Codable and HandyJSON is supported. More features will be add.
Stars: ✭ 470 (+993.02%)
Mutual labels:  xcode, xcode-plugin
Tulsi
An Xcode Project Generator For Bazel
Stars: ✭ 365 (+748.84%)
Mutual labels:  xcode, xcode-plugin
Xcodeplugintool
🎧a easy way use plugins after Xcode upgraded
Stars: ✭ 174 (+304.65%)
Mutual labels:  xcode, xcode-plugin
Peckham
Add #import-s from anywhere in the code.
Stars: ✭ 719 (+1572.09%)
Mutual labels:  xcode, xcode-plugin
Ammethod2implement
Xcode plugin to generate implement code for the selected method and const string.
Stars: ✭ 148 (+244.19%)
Mutual labels:  xcode, xcode-plugin
Xcodeequatablegenerator
Xcode 8 Source Code Extension will generate conformance to Swift Equatable protocol based on type and fields selection.
Stars: ✭ 188 (+337.21%)
Mutual labels:  xcode, xcode-plugin
Nef Plugin
🔌 an Xcode extension to use nef features easily
Stars: ✭ 144 (+234.88%)
Mutual labels:  xcode, xcode-plugin
Showingithub
Xcode plugin to open the GitHub page of the commit of the currently selected line in the editor window.
Stars: ✭ 243 (+465.12%)
Mutual labels:  xcode, xcode-plugin
Swimat
An Xcode formatter plug-in to format your swift code.
Stars: ✭ 1,388 (+3127.91%)
Mutual labels:  xcode, xcode-plugin
Xcode developer disk images
Stars: ✭ 125 (+190.7%)
Mutual labels:  xcode, xcode-plugin
Xcode Wakatime
Xcode plugin for automatic time tracking and metrics generated from your programming activity.
Stars: ✭ 360 (+737.21%)
Mutual labels:  xcode, xcode-plugin
Scxcodeswitchexpander
Xcode plugin that enables switch cases autocompletion
Stars: ✭ 662 (+1439.53%)
Mutual labels:  xcode, xcode-plugin

GitDiff9 - GitDiff for Xcode 9

A port of the "GitDiff" Xcode plugin to the Xcode 9 beta now that the Source editor has been implemented in Swift. It uses an extensible framework of generalised providers of line number gutter highlights with which it communicates using JSON IPC. This version of GitDiff includes the implementations for four types of line number highlighters:

  • Unstaged differences against a project's git repo
  • Highlight of changes committed in the last week
  • Format linting hints provided by swiftformat and clang-format
  • A viewer that makes explicit inferred types in declarations.

To use, clone this project and build target "LNXcodeSupport". You'll need to unsign your Xcode binary for the Xcode side of the plugin to load. The user interface is largely as it was before.

Icon

Lines that have been changed relative to the repo are highlighted in amber and new lines highlighted in blue. Code lint suggestions are highlighted in dark blue and lines with a recent commit to the repo (the last 7 days by default) are highlighted in light green, fading with time.

Hovering over a change or lint highlight will overlay the previous or suggested version over the source editor and if you would like to revert the code change or apply the lint suggestion, continue hovering over the highlight until a very small button appears and click on it. The plugin runs a menubar app that contains colour preferences and allows you to turn on and off individual highlights.

Icon

Expandability

The new implementation has been generalised to provide line number highlighting as a service from inside a new Legacy Xcode plugin. The project includes an menubar app "LNProvider" which is run to provide the default implementations using XPC. Any application can register with the plugin to provide line number highlights if it follows the Distributed Objects messaging protocol documented in "LNExtensionProtocol.h". Whenever a file is saved or reloaded, a call is made from the plugin to your application to provide JSON describing the intended highlights, their colours and any associated text. See the document "LineNumberPlugin.pages" for details about the architecture.

Code linting

This repo includes binary releases of swiftformat and clang-format under their respective licenses. To modify code linting preferences, edit the files swift_format.sh and clang_format.sh in the "FormatImpl" directory and rebuild the plugin.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].