My User Breakpoints_v2.xcbkptlist
<?xml version="1.0" encoding="UTF-8"?>
<Bucket
type = "2"
version = "2.0">
<Breakpoints>
<!-- All Exceptions -->
<BreakpointProxy
BreakpointExtensionID = "Xcode.Breakpoint.ExceptionBreakpoint">
<BreakpointContent
shouldBeEnabled = "No"
ignoreCount = "0"
continueAfterRunningActions = "No"
scope = "0"
stopOnStyle = "0">
</BreakpointContent>
</BreakpointProxy>
<!-- All Objective-C Exceptions -->
<BreakpointProxy
BreakpointExtensionID = "Xcode.Breakpoint.ExceptionBreakpoint">
<BreakpointContent
shouldBeEnabled = "Yes"
ignoreCount = "0"
continueAfterRunningActions = "No"
scope = "1"
stopOnStyle = "0">
</BreakpointContent>
</BreakpointProxy>
<!-- All C++ Exceptions -->
<BreakpointProxy
BreakpointExtensionID = "Xcode.Breakpoint.ExceptionBreakpoint">
<BreakpointContent
shouldBeEnabled = "No"
ignoreCount = "0"
continueAfterRunningActions = "No"
scope = "2"
stopOnStyle = "0">
</BreakpointContent>
</BreakpointProxy>
<!-- Swift Error -->
<BreakpointProxy
BreakpointExtensionID = "Xcode.Breakpoint.SwiftErrorBreakpoint">
<BreakpointContent
shouldBeEnabled = "No"
ignoreCount = "0"
continueAfterRunningActions = "No">
</BreakpointContent>
</BreakpointProxy>
<!-- Test Failure -->
<BreakpointProxy
BreakpointExtensionID = "Xcode.Breakpoint.IDETestFailureBreakpoint">
<BreakpointContent
shouldBeEnabled = "Yes"
ignoreCount = "0"
continueAfterRunningActions = "No"
breakpointStackSelectionBehavior = "1">
</BreakpointContent>
</BreakpointProxy>
<!-- OpenGL ES Error -->
<BreakpointProxy
BreakpointExtensionID = "Xcode.Breakpoint.OpenGLErrorBreakpoint">
<BreakpointContent
shouldBeEnabled = "Yes"
ignoreCount = "0"
continueAfterRunningActions = "No"
breakpointStackSelectionBehavior = "1"
symbolName = "__GPUTOOLS_HAS_DETECTED_AN_OPENGL_ERROR__"
moduleName = "libglInterpose.dylib">
<Actions>
<BreakpointActionProxy
ActionExtensionID = "Xcode.BreakpointAction.OpenGLError">
<ActionContent>
</ActionContent>
</BreakpointActionProxy>
</Actions>
<Locations>
</Locations>
</BreakpointContent>
</BreakpointProxy>
<!-- Import UIKit -->
<BreakpointProxy
BreakpointExtensionID = "Xcode.Breakpoint.SymbolicBreakpoint">
<BreakpointContent
shouldBeEnabled = "Yes"
ignoreCount = "0"
continueAfterRunningActions = "Yes"
symbolName = "UIApplicationMain"
moduleName = "">
<Actions>
<BreakpointActionProxy
ActionExtensionID = "Xcode.BreakpointAction.DebuggerCommand">
<ActionContent
consoleCommand = "expr @import Foundation">
</ActionContent>
</BreakpointActionProxy>
<BreakpointActionProxy
ActionExtensionID = "Xcode.BreakpointAction.DebuggerCommand">
<ActionContent
consoleCommand = "expr @import UIKit">
</ActionContent>
</BreakpointActionProxy>
</Actions>
<Locations>
</Locations>
</BreakpointContent>
</BreakpointProxy>
<!-- Import AppKit -->
<BreakpointProxy
BreakpointExtensionID = "Xcode.Breakpoint.SymbolicBreakpoint">
<BreakpointContent
shouldBeEnabled = "Yes"
ignoreCount = "0"
continueAfterRunningActions = "Yes"
symbolName = "NSApplicationMain"
moduleName = "">
<Actions>
<BreakpointActionProxy
ActionExtensionID = "Xcode.BreakpointAction.DebuggerCommand">
<ActionContent
consoleCommand = "expr @import Foundation">
</ActionContent>
</BreakpointActionProxy>
<BreakpointActionProxy
ActionExtensionID = "Xcode.BreakpointAction.DebuggerCommand">
<ActionContent
consoleCommand = "expr @import Cocoa">
</ActionContent>
</BreakpointActionProxy>
</Actions>
<Locations>
</Locations>
</BreakpointContent>
</BreakpointProxy>
<!-- Unsatisfiable Constraints -->
<BreakpointProxy
BreakpointExtensionID = "Xcode.Breakpoint.SymbolicBreakpoint">
<BreakpointContent
shouldBeEnabled = "Yes"
ignoreCount = "0"
continueAfterRunningActions = "No"
symbolName = "UIViewAlertForUnsatisfiableConstraints"
moduleName = "">
<Actions>
<BreakpointActionProxy
ActionExtensionID = "Xcode.BreakpointAction.Log">
<ActionContent
message = ""
conveyanceType = "0">
</ActionContent>
</BreakpointActionProxy>
</Actions>
<Locations>
</Locations>
</BreakpointContent>
</BreakpointProxy>
<!-- KVO Deallocate -->
<BreakpointProxy
BreakpointExtensionID = "Xcode.Breakpoint.SymbolicBreakpoint">
<BreakpointContent
shouldBeEnabled = "Yes"
ignoreCount = "0"
continueAfterRunningActions = "No"
symbolName = "NSKVODeallocateBreak"
moduleName = "">
<Locations>
</Locations>
</BreakpointContent>
</BreakpointProxy>
<!-- CGPostError -->
<BreakpointProxy
BreakpointExtensionID = "Xcode.Breakpoint.SymbolicBreakpoint">
<BreakpointContent
shouldBeEnabled = "No"
ignoreCount = "0"
continueAfterRunningActions = "No"
symbolName = "CGPostError"
moduleName = "">
<Actions>
<BreakpointActionProxy
ActionExtensionID = "Xcode.BreakpointAction.Log">
<ActionContent
message = ""
conveyanceType = "0">
</ActionContent>
</BreakpointActionProxy>
</Actions>
<Locations>
</Locations>
</BreakpointContent>
</BreakpointProxy>
<!-- NSData Reinitialization -->
<BreakpointProxy
BreakpointExtensionID = "Xcode.Breakpoint.SymbolicBreakpoint">
<BreakpointContent
shouldBeEnabled = "No"
ignoreCount = "0"
continueAfterRunningActions = "No"
symbolName = "_NSDataReinitializationBreak"
moduleName = "">
<Locations>
</Locations>
</BreakpointContent>
</BreakpointProxy>
<!-- Reveal -->
<BreakpointProxy
BreakpointExtensionID = "Xcode.Breakpoint.SymbolicBreakpoint">
<BreakpointContent
shouldBeEnabled = "Yes"
ignoreCount = "0"
continueAfterRunningActions = "Yes"
symbolName = "UIApplicationMain"
moduleName = "">
<Actions>
<BreakpointActionProxy
ActionExtensionID = "Xcode.BreakpointAction.DebuggerCommand">
<ActionContent
consoleCommand = "reveal load">
</ActionContent>
</BreakpointActionProxy>
</Actions>
<Locations>
</Locations>
</BreakpointContent>
</BreakpointProxy>
</Breakpoints>
</Bucket>
@import UIKit
and @import Foundation
@import Cocoa
and @import Foundation
Read more about Automatic LLDB import of UIKit
et al here: http://furbo.org/2015/05/11/an-import-ant-change-in-xcode/
Thanks Steve, Natasha for misc https://gist.github.com/forbze/919c7fced35f6ff59cbd
Thanks @vlas-voloshin for KVO
Thanks Reveal
Read my blog post on breakpoints here: https://www.ashton-w.net/2015/10/14/Breakpoints.html
Another great blog by Michael Ochs with more goodies: https://pspdfkit.com/blog/2017/user-breakpoints-in-xcode/
The Reveal breakpoint is as described in the Reveal Integration Guide.
Since Reveal 5 you need to install the debugger commands before using the breakpoint.
Just clone this gist:
git clone https://gist.github.com/5c1ede17f8cec1f8b529.git ~/Library/Developer/Xcode/UserData/xcdebugger/
Or place Breakpoints_v2.xcbkptlist
in ~/Library/Developer/Xcode/UserData/xcdebugger/
manually.