diff --git a/documentation/bundles/index.md b/documentation/bundles/index.md
index d358924..cea56d9 100644
--- a/documentation/bundles/index.md
+++ b/documentation/bundles/index.md
@@ -5,15 +5,15 @@ title: Bundles
---
### Bundles
-If you want to support updating for a non-app bundle, such as a Preference Pane, you cannot simply instantiate an SUUpdater instance in your MainMenu.nib as described in [Basic Setup](/documentation#basic-setup). The reason is that SUUpdater creates a separate shared instance for every bundle, and the instance that is instantiated in a .nib file will always be the instance for the hosting .app bundle. This is the SUUpdater instance returned by [SUUpdater sharedUpdater] or [[SUUpdater alloc] init]. Note that the latter is used to instantiate an instance of a custom class in a .nib.
+If you want to support updating for a non-app bundle, such as a Preference Pane, you cannot simply instantiate an SUUpdater instance in your MainMenu.nib as described in [Basic Setup](/documentation#basic-setup). The reason is that SUUpdater creates a separate shared instance for every bundle, and the instance that is instantiated in a .nib file will always be the instance for the hosting .app bundle. This is the SUUpdater instance returned by `[SUUpdater sharedUpdater]` or `[[SUUpdater alloc] init]`. Note that the latter is used to instantiate an instance of a custom class in a .nib.
For a non-app bundle, you can get the updater instance for your bundle as follows:
-[SUUpdater updaterForBundle:[NSBundle bundleForClass:[self class]]]
+`[SUUpdater updaterForBundle:[NSBundle bundleForClass:[self class]]]`
This will return the SUUpdater instance for the bundle in which the class of the calling object is defined.
To use Sparkle for updating a non-app bundle, most of the steps described in [Basic Setup](/documentation#basic-setup) still apply. Only step 2 will not work. Instead, you should instantiate the SUUpdater instance for your bundle in code at an early stage, just after your bundle was loaded.
-For Sparkle version 1.5b6 there is one more consideration. If SUUpdater is instantiated during the launch of the hosting application, before the hosting application has finished launching, there is nothing extra you need to do. However, if your bundle may be loaded after the hosting application finished launching and you want Sparkle to automatically check for updates, you will have to manually start the update cycle. This can be done by simply calling -resetUpdateCycle on your updater instance; make sure you set SUEnableAutomaticChecks to YES in Info.plist to schedule the checks appropriately.
+For Sparkle version 1.5b6 there is one more consideration. If SUUpdater is instantiated during the launch of the hosting application, before the hosting application has finished launching, there is nothing extra you need to do. However, if your bundle may be loaded after the hosting application finished launching and you want Sparkle to automatically check for updates, you will have to manually start the update cycle. This can be done by simply calling `-resetUpdateCycle` on your updater instance; make sure you set `SUEnableAutomaticChecks` to `YES` in Info.plist to schedule the checks appropriately.
Due to poor design, if you want to use profiling with a bundle, you'll have to proxy a call to applicationDidFinishLaunching to get the permission dialog to appear:
@@ -27,7 +27,7 @@ The subclass only needs to implement the following two methods:
{
return [self updaterForBundle:[NSBundle bundleForClass:[self class]]];
}
-
+
- (id)init
{
return [self initForBundle:[NSBundle bundleForClass:[self class]]];
diff --git a/documentation/index.md b/documentation/index.md
index 68821dd..55e81aa 100644
--- a/documentation/index.md
+++ b/documentation/index.md
@@ -18,12 +18,12 @@ If you are using [CocoaPods](https://cocoapods.org), then follow these [alternat
* Now we'll make sure the framework is copied into your app bundle:
* Click on your project in the Project Navigator.
* Click your target in the project editor.
- * Click on the Build Phases tab.
+ * Click on the Build Phases tab.
* Choose Editor › Add Build Phase › Add Copy Files Build Phase.
* Click the disclosure triangle next to the new build phase.
- * Choose Frameworks from the Destination list.
- * Drag Sparkle.framework from the Project Navigator left sidebar to the list in the new Copy Files phase.
-* In Build Settings tab set "Runpath Search Paths" to @loader_path/../Frameworks (for non-Xcode projects add the flags -Wl,-rpath,@loader_path/../Frameworks).
+ * Choose Frameworks from the Destination list.
+ * Drag Sparkle.framework from the Project Navigator left sidebar to the list in the new Copy Files phase.
+* In Build Settings tab set "Runpath Search Paths" to `@loader_path/../Frameworks` (for non-Xcode projects add the flags `-Wl,-rpath,@loader_path/../Frameworks`).
* If you have your own process for copying/packaging Sparkle make sure to preserve symlinks!
### 2. Set up a Sparkle updater object
@@ -33,9 +33,9 @@ If you are using [CocoaPods](https://cocoapods.org), then follow these [alternat
* Type "Object" in the search field under the object library (at the bottom of the right sidebar) and drag an Object into the left sidebar of the document editor.
* Select the Object that was just added.
* Choose View › Utilities › Identity Inspector.
-* Type SUUpdater in the Class box of the Custom Class section in the inspector.
-* If you'd like, make a "Check for Updates..." menu item in the application menu; set its target to the SUUpdater instance and its action to checkForUpdates:.
-* These instructions only work for .app bundles, because the SUUpdater instance instantiated in the nib will always be the sharedUpdater, which updates the hosting .app bundle. If you want to update a non-app bundle, such as a Preference Pane, see [bundles](/documentation/bundles) for alternative instructions.
+* Type `SUUpdater` in the Class box of the Custom Class section in the inspector.
+* If you'd like, make a "Check for Updates..." menu item in the application menu; set its target to the `SUUpdater` instance and its action to `checkForUpdates:`.
+* These instructions only work for .app bundles, because the `SUUpdater` instance instantiated in the nib will always be the `sharedUpdater`, which updates the hosting .app bundle. If you want to update a non-app bundle, such as a Preference Pane, see [bundles](/documentation/bundles) for alternative instructions.
### 3. Segue for security concerns
@@ -51,7 +51,7 @@ If you are not serving updates over HTTPS and you are linking against the 10.11
We recommend signing updates with DSA signatures. This type of signature is most secure and supported for all types of Sparkle updates.
-* Updates using Installer package (.pkg) must be signed with DSA.
+* Updates using Installer package (`.pkg`) must be signed with DSA.
* Binary Delta updates must be signed with DSA.
* [Updates of preference panes and plugins](/documentation/bundles/) must be signed with DSA.
@@ -60,10 +60,10 @@ DSA signatures are optional for updates using regular app bundles that are signe
To sign update's archive with a DSA signature:
* First, make yourself a pair of DSA keys. This needs to be done only once. Sparkle includes a tool to help: (from the Sparkle distribution root):
- ./bin/generate_keys
+ `./bin/generate_keys`
* Back up your private key (dsa_priv.pem) and keep it safe. You don't want anyone else getting it, and if you lose it, you may not be able to issue any new updates.
* Add your public key (dsa_pub.pem) to the Resources folder of your Xcode project.
- * Add an SUPublicDSAKeyFile key to your Info.plist; set its value to your public key's filename—unless you renamed it, this will be dsa_pub.pem.
+ * Add an `SUPublicDSAKeyFile` key to your Info.plist; set its value to your public key's filename—unless you renamed it, this will be dsa_pub.pem.
#### Apple code signing
@@ -81,12 +81,12 @@ Sparkle uses appcasts to get information about software updates. An appcast is a
* Make a copy of the sample appcast included in the Sparkle distribution.
* Read the sample appcast to familiarize yourself with the format, then edit out all the items and add one for the new version of your app by following the instructions at [Publishing an update](/documentation/publishing#publishing-an-update).
* Upload your appcast to a webserver.
-* Add a SUFeedURL key to your Info.plist; set its value to the URL of your appcast. We [strongly encourage you to use HTTPS](/documentation/app-transport-security/) URLs for the appcast.
-* Remember that your bundle must have a [properly formatted](/documentation/publishing#publishing-an-update) CFBundleVersion key in your Info.plist.
+* Add a `SUFeedURL` key to your Info.plist; set its value to the URL of your appcast. We [strongly encourage you to use HTTPS](/documentation/app-transport-security/) URLs for the appcast.
+* Remember that your bundle must have a [properly formatted](/documentation/publishing#publishing-an-update) `CFBundleVersion` key in your Info.plist.
### 5. Test Sparkle out
-* Make sure the version specified for the update in your appcast is _greater than the CFBundleVersion of the app you're running_.
+* Make sure the version specified for the update in your appcast is _greater than the `CFBundleVersion` of the app you're running_.
* Run your app, then quit, Sparkle doesn't ask the user about updates until the _second_ launch, in order to make your users' first-launch impression cleaner.
* Run your app again. The update process should proceed as expected.