Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

Merge remote-tracking branch 'remotes/upstream/master'

  • Loading branch information...
commit 0f52571798941cccc581ece33b6272d9573a6005 2 parents 6d45367 + c5aade6
@tom-seddon tom-seddon authored
View
7 ...in_UserScripts/XCFixin_UserScripts.xcodeproj/project.xcworkspace/contents.xcworkspacedata
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Workspace
+ version = "1.0">
+ <FileRef
+ location = "self:XCFixin_UserScripts.xcodeproj">
+ </FileRef>
+</Workspace>
View
37 README.md
@@ -1,32 +1,35 @@
-__This branch is known to be compatible with Xcode 4.2.1 and 4.3. For Xcode 4.0.2 support, see the xcode_402 branch.__
+__This branch is known to be compatible with Xcode 4.3 and 4.3.2. For Xcode 4.0.2 support, see the xcode_402 branch.__
-__PROJECT DESCRIPTION__
+__===== PROJECT DESCRIPTION =====__
-This project includes plugins that extend Xcode and fix some of its annoying behaviors.
+This project includes plugins that extend Xcode and fix some of its annoying behaviors, known as _fixins_.
-__INSTALLATION__
+__===== INSTALLATION =====__
-To install all of the plugins, open XCFixins.xcworkspace and build it, which will automatically install the plugins as a part of the build process. To install a plugin individually, open its respective project and build it.
+To install all of the stable fixins, open XCFixins.xcworkspace and build it, and the fixins will automatically be installed as a part of the build process. Experimental fixins must be installed individually by building their respective projects found in the _À La Carte Projects_ directory.
-Xcode must be relaunched for the plugins to take effect.
+Xcode must be relaunched for the fixins to take effect.
-Plugins are installed into ~/Library/Application Support/Developer/Shared/Xcode/Plug-ins/.
+Fixins are installed into ~/Library/Application Support/Developer/Shared/Xcode/Plug-ins/.
-__PLUGIN DESCRIPTIONS__
+__===== STABLE FIXINS =====__
-_DisableAnimations_: This plugin disables Xcode's various NSAnimation-based animations. For example, the Show/Hide Debug Area, Show/Hide Navigator, and Show/Hide Utilities animations are disabled with this plugin.
+__DisableAnimations__: This fixin disables Xcode's various NSAnimation-based animations. For example, the Show/Hide Debug Area, Show/Hide Navigator, and Show/Hide Utilities animations are disabled with this fixin.
-_DisableWriteStateData_: This plugin greatly improves Xcode's responsiveness by disabling the -[IDEWorkspaceDocument writeStateData] method. This method is of course undocumented and I'm unsure what data it typically writes. In my testing, I've noticed this plugin prevents the active source file from being remembered across Xcode launches, and it's very likely that it prevents other data from being written as well. I consider this plugin experimental and as such it is not installed automatically when building the XCFixins workspace; you must build this plugin individually to install it. With that said, on my machine this plugin *really* improves Xcode's responsiveness!
+__FindFix__: By default, when Xcode's inline find bar opens, it doesn't display any options to customize searching. This fixin makes Xcode show all find options (such as "Ignore Case") in the find bar when it opens. This fixin also makes text-replacement the default mode in the inline find bar, giving immediate access to the "Replace" and "Replace All" buttons.
-_FindFix_: By default, when Xcode's inline find bar opens, it doesn't display any options to customize searching. This plugin makes Xcode show all find options (such as "Ignore Case") in the find bar when it opens. This plugin also makes text-replacement the default mode in the inline find bar, giving immediate access to the "Replace" and "Replace All" buttons.
+__HideDistractions__: This fixin adds a new "Hide Distractions" menu item to the View menu, which hides auxiliary views in the active source-editing window. This fixin groups various operations into a single menu item, including: View > Hide Toolbar, View > Hide Debug Area, View > Navigators > Hide Navigator, View > Utilities > Hide Utilities, and View > Editor > Standard. Additionally, this menu item maximizes the active window to fill the available screen area. This fixin works best when the XCFixin_DisableAnimations fixin is also installed.
-_HideDistractions_: This plugin adds a new "Hide Distractions" menu item to the View menu, which hides auxiliary views in the active source-editing window. This plugin groups various operations into a single menu item, including: View > Hide Toolbar, View > Hide Debug Area, View > Navigators > Hide Navigator, View > Utilities > Hide Utilities, and View > Editor > Standard. Additionally, this menu item maximizes the active window to fill the available screen area. This plugin works best when the XCFixin_DisableAnimations plugin is also installed.
+In Xcode 4.3, the Navigate > Jump to Instruction Pointer menu item interferes with the default 'Hide Distractions' key combination (command-shift-D). To resolve the conflict, change the 'Jump to Instruction Pointer' key combination in the Xcode preferences, or change the 'Hide Distractions' key combination in the fixin source.
-In Xcode 4.3, the Navigate > Jump to Instruction Pointer menu item interferes with the default 'Hide Distractions' key combination (command-shift-D). To resolve the conflict, change the 'Jump to Instruction Pointer' key combination in the Xcode preferences, or change the 'Hide Distractions' key combination in the plugin source.
+__InhibitTabNextPlaceholder__: This fixin disables using the tab key to select between argument placeholders of a synthesized (by Xcode's code completion) method call. Xcode's default tab functionality can be annoying if you've synthesized a method invocation and attempt to indent something nearby before filling-in the argument placeholders; in such a case, Xcode jumps to the nearest argument placeholder instead of indenting. This fixin does not affect the "Jump to Next Placeholder" key binding in the Xcode preferences.
-_InhibitTabNextPlaceholder_: This plugin disables using the tab key to select between argument placeholders of a synthesized (by Xcode's code completion) method call. Xcode's default tab functionality can be annoying if you've synthesized a method invocation and attempt to indent something nearby before filling-in the argument placeholders; in such a case, Xcode jumps to the nearest argument placeholder instead of indenting. This plugin does not affect the "Jump to Next Placeholder" key binding in the Xcode preferences.
+__OptionClickDocumentation__: This fixin changes Xcode's behavior when option-clicking a symbol, by opening the documentation for the given symbol rather than opening the Quick Help popup. (Normally this behavior is accessed by option-clicking a symbol and then clicking the book icon in the Quick Help popup.) Note that this fixin is necessary because option-double-clicking a symbol doesn't display the documentation for the symbol - it just opens the documentation dialog with the symbol entered into the search field.
-_OptionClickDocumentation_: This plugin changes Xcode's behavior when option-clicking a symbol, by opening the documentation for the given symbol rather than opening the Quick Help popup. (Normally this behavior is accessed by option-clicking a symbol and then clicking the book icon in the Quick Help popup.) Note that this plugin is necessary because option-double-clicking a symbol doesn't display the documentation for the symbol - it just opens the documentation dialog with the symbol entered into the search field.
+__===== EXPERIMENTAL FIXINS =====__
-_UserScripts_: __EXPERIMENTAL__ Reinstates some semblance of the Xcode
-3.x User Scripts menu. Has its own docs in its folder.
+These fixins must be built individually to be installed; see their individual projects in the _À La Carte Projects_ directory.
+
+__DisableWriteStateData__: This fixin improves Xcode's responsiveness by disabling the -[IDEWorkspaceDocument writeStateData] method. This method is of course undocumented and I'm unsure what data it typically writes. In my testing, I've noticed this fixin prevents the active source file from being remembered across Xcode launches, and it's very likely that it prevents other data from being written as well. With that said, on my machine this fixin really improves Xcode's responsiveness.
+
+__UserScripts__: Reinstates some semblance of the Xcode 3.x User Scripts menu. See documentation in the XCFixin_UserScripts directory.
View
2  Shared Code/XCFixin.h
@@ -40,7 +40,7 @@
} \
})
-#define XCFixinAssertOrRaise(condition) XCFixinAssertOrPerform((condition), [NSException raise: NSGenericException format: @"A XCFixin_HideDistractions exception occurred"])
+#define XCFixinAssertOrRaise(condition) XCFixinAssertOrPerform((condition), [NSException raise: NSGenericException format: @"An XCFixin exception occurred"])
#define XCFixinConfirmOrPerform(condition, action) \
({ \
View
14 XCFixins.xcworkspace/xcshareddata/xcschemes/All Fixins.xcscheme
@@ -75,20 +75,6 @@
ReferencedContainer = "container:A&#768; La Carte Projects/XCFixin_OptionClickDocumentation/XCFixin_OptionClickDocumentation.xcodeproj">
</BuildableReference>
</BuildActionEntry>
- <BuildActionEntry
- buildForTesting = "YES"
- buildForRunning = "YES"
- buildForProfiling = "YES"
- buildForArchiving = "YES"
- buildForAnalyzing = "YES">
- <BuildableReference
- BuildableIdentifier = "primary"
- BlueprintIdentifier = "8D5B49AC048680CD000E48DA"
- BuildableName = "XCFixin_UserScripts.xcplugin"
- BlueprintName = "XCFixin_UserScripts"
- ReferencedContainer = "container:A&#768; La Carte Projects/XCFixin_UserScripts/XCFixin_UserScripts.xcodeproj">
- </BuildableReference>
- </BuildActionEntry>
</BuildActionEntries>
</BuildAction>
<TestAction
Please sign in to comment.
Something went wrong with that request. Please try again.