No description, website, or topics provided.
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.

GitGutter for Xcode

Documenting my progress... zero experience with non-iOS Cocoa development.

  • 7/27/2014
    • Looks like someone got there first... check out GitDiff!
  • 4/22/2014
    • Added AWRulerView to the right of the line numbers. Next: try to figure out how to use the NSRuler properly (hooking up its clientView property to the source code view).
  • 4/14/2014
    • Swizzled some methods of DVTTextSidebarView to see what can be modified. Doesn't look like I can do much, next steps: retry to add a new view (NSRuler) next to the original gutter.
    • Found Xcode Explorer, could be useful
  • 4/7/2014
    • Tried to move the editorScrollView to the right to make room for a new sibling view (a new gutter), the frame seems to be tied to the editorContainerView, changing scrollview's frame changes the containerview's frame for some reason. Looked at SCMiniMapView.m's show/hide methods to see how they do it
  • 4/6/2014
    • Used SCXodeMiniMap as reference to see how they added stuff
    • Development is annoying... build > quit Xcode > restart Xcode > look at the system log to view print statements
    • Use tail -f /var/log/system.log to view NSLog's from the plugin... seems like there's no other way to debug
    • Poked around by printing out/traversing the view hierarchy, printing out the methods and properties that the classes contain. Trying to find the left gutter element.
    • Found the gutter, it's a DVTTextSidebarView : NSRulerView. Looks like it has a lot of properties. Was able to change the font of the line numbers in the gutter successfully.
    • Next steps: try to add a new NSRulerView to the right of the existing one
    • Other useful links:
  • 4/5/2014
    • Initialized with template for Xcode5 plugins
    • Installed UI Browser to try to inspect Xcode's "DOM" (as if I were inspecting Firefox's chrome), not too helpful, but learned that the gutter is a "ruler" element
    • Found some info about class-dump to reverse engineer Apple's code