You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cordova.apache.org by mw...@apache.org on 2013/06/12 19:50:40 UTC

[05/46] many copy edits; nonlinear search/destroy edits; needs a more controlled pass

http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/726c9630/docs/en/edge/guide/getting-started/windows-phone-7/index.md
----------------------------------------------------------------------
diff --git a/docs/en/edge/guide/getting-started/windows-phone-7/index.md b/docs/en/edge/guide/getting-started/windows-phone-7/index.md
index 7cf023a..6f0ec3d 100644
--- a/docs/en/edge/guide/getting-started/windows-phone-7/index.md
+++ b/docs/en/edge/guide/getting-started/windows-phone-7/index.md
@@ -34,54 +34,54 @@ Video Tutorials:
 
 - Windows 7 or Windows Vista with SP2
 
-Note: Running in VM has issues, if you are on a Mac, you will need to setup a bootcamp partition with Windows 7 or Vista
-
-Necessary for Installing on Device and Submitting to Market Place:
-
-- Become an [App Hub member](http://create.msdn.com/en-US/home/membership).
+__NOTE:__ Running in VM does not work well. If you are on a Mac, you need to set up a bootcamp partition with Windows 7 or Vista.
 
+- Become an [App Hub member](http://create.msdn.com/en-US/home/membership). You need to do so to install onto a device and submit the application to the market place.
 
 2. Install SDK + Cordova
 ----------------------------
 
 - Download and install [Windows Phone  SDK](http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=27570/)
-- Download the latest copy of [Cordova](http://phonegap.com/download) and extract its contents. We will be working with the subfolder: lib\windows-phone\
-- copy the file CordovaStarter-x.x.x.zip to the folder : \My Documents\Visual Studio 2010\Templates\ProjectTemplates\
-( if the template file does not exist, you will need to build it. See 2.1 below )
+- Download and extract the latest copy of [Cordova](http://phonegap.com/download). You will be working in the `lib\windows-phone` subfolder.
+- Copy the `CordovaStarter-x.x.x.zip` to the `\My Documents\Visual Studio 2010\Templates\ProjectTemplates\` folder.
+(If the template file does not exist, you need to build it as described in 2.1 below.)
 if you have just installed VisualStudio, you should launch it once to create this folder
-if you prefer, you may add the project instead to the "Silverlight for Windows Phone" subfolder of "Visual C#". This is up to you, and only affects where the project template is shown when creating a new project. Also, You may need to create this folder. 
+if you prefer, you may add the project instead to the "Silverlight for Windows Phone" subfolder of "Visual C#". This is up to you, and only affects where the project template is shown when creating a new project. Also, You may need to create this folder.
 
 
 2.1. Building the template
 -----------------------------
-( note, this step may not be required.  If the lib\windows-phone directory already contains a file CordovaStarter-x.x.x.zip then you may skip this step )
-- Open the file lib\windows-phone\templates\standalone\CordovaSolution.sln in Visual Studio Express for Windows Phone
-- From the file menu, select 'Export Template...' 
-- Choose template type 'Project template'
-- Give the exported template a name, ex. CordovaStarter-2.1.0 will produce CordovaStarter-2.1.0.zip
-- Optionally, you may add a description, icon image, and Preview image.  These are what is displayed in Visual Studio in the 'New Project' dialog.- 
-- Note: If you select ( 'Automatically import the template ... ') then you will not need to copy the .zip file over as outlined in step 2.
-- Press 'Finish'
 
+__NOTE:__ Skip this step if the `lib\windows-phone` directory already contains a `CordovaStarter-x.x.x.zip` file.
+
+- Open the `lib\windows-phone\templates\standalone\CordovaSolution.sln` in Visual Studio Express for Windows Phone
+- Select __Export Template...__ from the __File__ menu.
+- Choose template type __Project template__
+- Supply a name of the exported template, such as `CordovaStarter-2.1.0` to produce a `CordovaStarter-2.1.0.zip` file.
 
+- Optionally, add a description, icon image, or Preview image.  These are displayed in Visual Studio's __New Project__ dialog.
+- __NOTE:__ If you select __Automatically import the template...__, then you don't need to copy the `.zip` file over as outlined in step 2.
+- Press __Finish__.
 
 
-3. Setup New Project
+
+
+3. Set up New Project
 --------------------
 
 - Open Visual Studio Express for Windows Phone and choose **New Project**.
-- Select **CordovaStarter**. ( the version number will be displayed in the template description )
-- - note: If you do not see it, you may have to select the top level 'Visual C#' to see it
-- Give your project a name, and select OK.
+- Select **CordovaStarter**. (The version number displays in the template description.)
+- - __NOTE:__ If you do not see it, you may have to select the top-level 'Visual C#'.
+- Give your project a name, and select __OK__.
 
     ![](img/guide/getting-started/windows-phone-7/wpnewproj.PNG)
 
- 
+
 4. Review the project structure
 -------------------------------
 
 - The 'www' folder contains your Cordova html/js/css and any other resources included in your app.
-- Any content that you add here needs to be a part of the Visual Studio project, and it must be set as content. 
+- Any content that you add needs to be a part of the Visual Studio project, and it must be set as content.
 
     ![](img/guide/getting-started/windows-phone-7/wp7projectstructure.PNG)
 
@@ -89,8 +89,8 @@ if you prefer, you may add the project instead to the "Silverlight for Windows P
 5. Build and Deploy to Emulator
 -------------------------------
 
-- Make sure to have **Windows Phone Emulator** selected in the top drop-down menu.
-- Hit the green **play button** beside the Windows Phone Emulator drop-down menu to start debugging or press F5.
+- Make sure **Windows Phone Emulator** is selected in the main drop-down menu.
+- Press the green **play** button next to the drop-down menu to start debugging, or else type __F5__.
 
     ![](img/guide/getting-started/windows-phone-7/wprun.png)
     ![](img/guide/getting-started/windows-phone-7/wpfirstrun.PNG)
@@ -99,11 +99,11 @@ if you prefer, you may add the project instead to the "Silverlight for Windows P
 6. Build your project for the device
 ------------------------------------
 
-In order to test your application on a device, the device must be registered. Click [here](http://msdn.microsoft.com/en-us/library/gg588378(v=VS.92).aspx) to read documentation on deploying and testing on your Windows Phone.
+To test your application on a device, the device must be registered. MSDN provides [documentation](http://msdn.microsoft.com/en-us/library/gg588378(v=VS.92).aspx) to help deploy and test your Windows Phone.
 
 - Make sure your phone is connected, and the screen is unlocked
 - In Visual Studio, select 'Windows Phone Device' from the top drop-down menu.
-- Hit the green **play button** beside the drop-down menu to start debugging or press F5.
+- Press the green **play** button next to the main drop-down menu to start debugging, or type __F5__.
 
     ![](img/guide/getting-started/windows-phone-7/wpd.png)
 

http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/726c9630/docs/en/edge/guide/getting-started/windows-phone-8/index.md
----------------------------------------------------------------------
diff --git a/docs/en/edge/guide/getting-started/windows-phone-8/index.md b/docs/en/edge/guide/getting-started/windows-phone-8/index.md
index 4f6aa5d..4e9406f 100644
--- a/docs/en/edge/guide/getting-started/windows-phone-8/index.md
+++ b/docs/en/edge/guide/getting-started/windows-phone-8/index.md
@@ -22,12 +22,12 @@ Getting Started with Windows Phone 8
 
 This guide describes how to set up your development environment for Cordova and run a sample application.  Note that Cordova used to be called PhoneGap, so some of the sites still use the old PhoneGap name.
 
-Note: Applications built with Apache Cordova for Windows Phone 8 will only run on Windows Phone 8 devices. If you are looking to target both 7.5 AND 8 devices, then you should be using Apache Cordova for Windows Phone 7, which does not have all the new shiny features included in IE10, but implements the same APIs.
+__NOTE:__ Applications built with Apache Cordova for Windows Phone 8 run only on Windows Phone 8 devices. If you want to target both 7.5 'and' 8 devices, then use Apache Cordova for Windows Phone 7, which does not have all the advanced features included in IE10, but implements the same APIs.
 
 1. System Requirements
 ---------------
 
-- Operating System: 
+- Operating System:
     - Windows 8 or Windows 8 Pro
         - The 64-bit version (x64) of Windows is required for the SDK.
         - The Pro version is recommended so you can run a device emulator.
@@ -38,7 +38,7 @@ Note: Applications built with Apache Cordova for Windows Phone 8 will only run o
     - 64-bit (x64) CPU
 
 - Windows Phone 8 Emulator
-    - The phone emulator uses Hyper-V, so this list includes those pre-reqs.
+    - The phone emulator uses Hyper-V, so this list includes those pre-requisites.
     - Windows 8 Pro 64-bit edition or greater
     - Requires a processor that supports virtualization and [Second Level Address Translation (SLAT)](http://en.wikipedia.org/wiki/Second_Level_Address_Translation)
         - See the [list of Intel processors that support VT-x (virtualization) and EPT (SLAT)](http://ark.intel.com/Products/VirtualizationTechnology)
@@ -49,57 +49,75 @@ Note: Applications built with Apache Cordova for Windows Phone 8 will only run o
 
 - Register and pay for a [Windows Phone Dev Center](http://dev.windowsphone.com/en-us/publish) account if you want to install your app on a real device and/or submit it to Market Place.
 
-Note: Running the SDK in Virtual Machine might present some challenges. You can read this blog post that gives insight on the solutions to develop for [Windows Phone on a Mac](http://aka.ms/BuildaWP8apponaMac).
+__NOTE:__ Running the SDK in Virtual Machine might present some challenges. You can read this blog post that gives insight on the solutions to develop for [Windows Phone on a Mac](http://aka.ms/BuildaWP8apponaMac).
 
 
 2. Install SDK + Cordova
 ----------------------------
 
 - Download and install [Windows Phone SDK](http://www.microsoft.com/en-us/download/details.aspx?id=35471)
-- Download the latest copy of [Cordova](http://phonegap.com/download) and extract its contents. We will be working with the subfolder: lib\windows-phone-8\
+- Download and extract the latest copy of [Cordova](http://phonegap.com/download). You will be working in the `lib\windows-phone-8` subfolder.
 - copy the file CordovaWP8AppFull-x.x.x.zip to the folder : \My Documents\Visual Studio 2012\Templates\ProjectTemplates\
 
 
 2.1. Building the template
 -----------------------------
-Note: this step may not be required.  If the lib\windows-phone directory already contains a file CordovaStarter-x.x.x.zip then you may skip this step.
+__NOTE:__ this step may not be required.  If the lib\windows-phone directory already contains a file CordovaStarter-x.x.x.zip then you may skip this step.
 
 In order to simplify the development process, Cordova comes with a Visual Studio template that allows creating a Cordova application rapidly. This template can be modified if needed and the below steps indicate how to proceed if you want to modify and re-generate the template.
 
-- Open the file lib\windows-phone\templates\standalone\CordovaSolution.sln in Visual Studio Express for Windows Phone
-- From the file menu, select 'Export Template...' 
-- Choose template type 'Project template'
-- Give the exported template a name, ex. CordovaStarter-2.1.0 will produce CordovaStarter-2.1.0.zip
-- Optionally, you may add a description, icon image, and Preview image.  These are what is displayed in Visual Studio in the 'New Project' dialog.- 
-- Note: If you select ( 'Automatically import the template ... ') then you will not need to copy the .zip file over as outlined in step 2.
-- Press 'Finish'
+- Open the `lib\windows-phone\templates\standalone\CordovaSolution.sln` file in Visual Studio Express for Windows Phone.
+- Select __Export Template...__ from the __File__ menu.
+- Choose template type __Project template__
+- Give the exported template a name, such as `CordovaStarter-2.1.0`, which produces a `CordovaStarter-2.1.0.zip` archive.
+- Optionally, you may add a description, icon image, and preview image.  These  display in Visual Studio's __New Project__ dialog.
+- __NOTE:__ If you select __Automatically import the template...__, then you don't need to copy the `.zip` file over as outlined in step 2.
+- Press __Finish__
 
 
 2.2 About the different templates
 --------------------
-Apache Cordova for Windows Phone 8 supports 2 different types of templates.  
-
-The 'Full' template includes a pre-built dll containing all the framework code for Apache Cordova.  This template will create a project that is easy to update, as you can simply replace the JavaScript and .dll in your project and rebuild when a new version comes out. The downside of this approach is that because the dll contains ALL of the Cordova API, it requires all available permissions even if the APIs are not called.  When you submit an app to the App store, Microsoft will run a static analyzer against your application, and detect that you require all available permissions, and place a disclaimer on you app that is presented to the user when they choose to install your app.  Users may be discouraged if they see a required permission that does not make sense ( ie, why does this drawing program need access to my media library and contacts ).
-
-The 'Stand-Alone' template includes ALL the source code for Apache Cordova.  This project is easier to fine-tune to use just the features you need, thereby working around the permissions issues of the 'Full' template, however this type of project will be more difficult to update, as you will need to update individual files within your project and manage any dependancies yourself.  In order to exclude an API you are not using, you can simply right-click-select the Command class file in Visual Studio and choose 'do not include in project'.
-
-
-3. Setup New Project
+Apache Cordova for Windows Phone 8 supports 2 different types of templates.
+
+The 'Full' template includes a pre-built 'dll' that contains all the
+framework code for Apache Cordova.  This template creates a project
+that is easy to update, as you can simply replace the JavaScript and
+'.dll' in your project and rebuild as new versions are released. The
+downside of this approach is that because the dll contains 'all' of
+the Cordova API, it requires all available permissions even if the
+APIs are not called.  When you submit an app to the App store,
+Microsoft runs a static analyzer against your application, detects
+that you require all available permissions, and places a disclaimer on
+your app that is presented to the user when they choose to install
+your app.  Users may be discouraged if they see a required permission
+that does not make sense ( ie, why does this drawing program need
+access to my media library and contacts ).
+
+The 'Stand-Alone' template includes _all_ the source code for Apache
+Cordova.  This project is easier to fine-tune to use just the features
+you need, thereby working around the permissions issues of the 'Full'
+template, however this type of project is more difficult to update, as
+you update individual files within your project and manage any
+dependancies yourself.  In order to exclude an unused API, simply
+right-click-select the __Command__ class file in Visual Studio and
+choose __do not include in project__.
+
+3. Set up New Project
 --------------------
 
 - Open Visual Studio Express for Windows Phone and choose **New Project**.
-- Select **CordovaWP8AppFull** or **CordovaWP8AppStandalone**. ( the version number will be displayed in the template description )
-- Give your project a name, and select OK.
+- Select **CordovaWP8AppFull** or **CordovaWP8AppStandalone**. (The version number is displayed in the template description.)
+- Give the project a name, and select __OK__.
 
 ![](img/guide/getting-started/windows-phone-8/FullTemplate.PNG)
 ![](img/guide/getting-started/windows-phone-8/StandAloneTemplate.PNG)
 
- 
+
 4. Review the project structure
 -------------------------------
 
 - The 'www' folder contains your Cordova html/js/css and any other resources included in your app.
-- Any content that you add here needs to be a part of the Visual Studio project, and it must be set as content. 
+- Any content that you add here needs to be a part of the Visual Studio project, and it must be set as content.
 
 ![](img/guide/getting-started/windows-phone-8/projectStructure.PNG)
 
@@ -107,8 +125,8 @@ The 'Stand-Alone' template includes ALL the source code for Apache Cordova.  Thi
 5. Build and Deploy to Emulator
 -------------------------------
 
-- Make sure to have **Windows Phone Emulator** selected in the top drop-down menu.
-- Hit the green **play button** beside the Windows Phone Emulator drop-down menu to start debugging or press F5.
+- Make sure **Windows Phone Emulator** is selected in the main drop-down menu.
+- Press the green **play** button next to the drop-down menu to start debugging, or type __F5__.
 
 ![](img/guide/getting-started/windows-phone-8/BuildEmulator.PNG)
 
@@ -118,9 +136,9 @@ The 'Stand-Alone' template includes ALL the source code for Apache Cordova.  Thi
 
 In order to test your application on a device, the device must be registered. Click [here](http://msdn.microsoft.com/en-us/library/gg588378(v=VS.92).aspx) to read documentation on deploying and testing on your Windows Phone 8.
 
-- Make sure your phone is connected, and the screen is unlocked
+- Make sure your phone is connected, and the screen is unlocked.
 - In Visual Studio, select 'Device' from the top drop-down menu.
-- Hit the green **play button** beside the drop-down menu to start debugging or press F5.
+- Press the green **play** button next to the main drop-down menu to start debugging, or type __F5__.
 
 ![](img/guide/getting-started/windows-phone-8/BuildDevice.PNG)
 
@@ -128,7 +146,7 @@ In order to test your application on a device, the device must be registered. Cl
 Done!
 -----
 
-Further Reading 
+Further Reading
 -------
 
 For more details on the specific differences between IE10 and WebKit browsers, and how to support both MS has a helpful [guide here](http://blogs.windows.com/windows_phone/b/wpdev/archive/2012/11/15/adapting-your-webkit-optimized-site-for-internet-explorer-10.aspx)

http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/726c9630/docs/en/edge/guide/plugin-development/android/index.md
----------------------------------------------------------------------
diff --git a/docs/en/edge/guide/plugin-development/android/index.md b/docs/en/edge/guide/plugin-development/android/index.md
index e262c8a..01ab080 100644
--- a/docs/en/edge/guide/plugin-development/android/index.md
+++ b/docs/en/edge/guide/plugin-development/android/index.md
@@ -23,27 +23,29 @@ Writing a plugin requires an understanding of the architecture of Cordova-Androi
 of an Android WebView with hooks attached to it. These plugins are represented as class mappings in the config.xml
 file.
 
-A plugin will consist of at least a single Java class that extends the `CordovaPlugin` class. A plugin must override one
-of the `execute` methods from `CordovaPlugin`. In addition to this, there is a best practice that
-the plugin should handle pause and resume events, and should handle message passing between plugins.
-Plugins with long-running requests, background activity (e.g. playing media), listeners or internal state should implement the `onReset()` method as well. This method is run when the `WebView` navigates to a new page or refreshes, which reloads the Javascript.
+A plugin consists of at least one Java class that extends the `CordovaPlugin` class. A plugin must override one
+of the `execute` methods from `CordovaPlugin`.
+As best practice, the plugin should handle `pause` and `resume` events, and any message passing between plugins.
+Plugins with long-running requests, background activity such as media payback, listeners, or internal state should implement the `onReset()` method as well. This method is run when the `WebView` navigates to a new page or refreshes, which reloads the JavaScript.
 
-## Plugin Class Mapping 
+## Plugin Class Mapping
 
 The JavaScript portion of a plugin always uses the `cordova.exec` method as follows:
 
     exec(<successFunction>, <failFunction>, <service>, <action>, [<args>]);
 
-This will marshal a request from the WebView to the Android native
-side, more or less boiling down to calling the `action` method on the
+This marshals a request from the WebView to the Android native side,
+more or less boiling down to calling the `action` method on the
 `service` class, with the arguments passed in the `args` Array.
 
 Whether you distribute your plugin as Java file or as a JAR of its own, the plugin must be added to the `config.xml` file in your Cordova-Android application's `res/xml/` folder.
 
     <plugin name="<service_name>" value="<full_name_including_namespace>"/>
 
-The service name should match what you use in the JavaScript `exec` call, and the value will be the full name of the Java class including the namespace. Without this added, the plugin may compile but 
-will not be reachable by Cordova.
+The service name should match the one used in the JavaScript `exec`
+call, and the value is the Java classes full name, including the
+namespace.  Otherwise the plugin may compile but still be unreachable
+by Cordova.
 
 ## Writing an Android Java Plugin
 
@@ -65,11 +67,13 @@ implementations look like this:
         return false;  // Returning false results in a "MethodNotFound" error.
     }
 
-We compare the value of the `action` parameter, and dispatch
-the request off to a (private) method in the class, optionally passing
+We compare the value of the `action` parameter, and dispatch the
+request off to a (private) method in the class, optionally passing
 some of the parameters to the method.
 
-When catching exceptions and returning errors, it's important that the error we return to JavaScript match the Java exception as much as possible, for clarity.
+When catching exceptions and returning errors, it's important for the
+sake of clarity that errors returned to JavaScript match Java's
+exception names as much as possible.
 
 ### Threading
 
@@ -135,7 +139,7 @@ application:
         @Override
         public boolean execute(String action, JSONArray args, CallbackContext callbackContext) throws JSONException {
             if (action.equals("echo")) {
-                String message = args.getString(0); 
+                String message = args.getString(0);
                 this.echo(message, callbackContext);
                 return true;
             }
@@ -143,7 +147,7 @@ application:
         }
 
         private void echo(String message, CallbackContext callbackContext) {
-            if (message != null && message.length() > 0) { 
+            if (message != null && message.length() > 0) {
                 callbackContext.success(message);
             } else {
                 callbackContext.error("Expected one non-empty string argument.");
@@ -151,38 +155,38 @@ application:
         }
     }
 
-Let's take a look at the code. At the top we have all of the necessary
-Cordova `imports`. Our class extends from `CordovaPlugin`. We override
-the execute() method in order to recieve messages from exec(). Our method
-first compares against `action`: this plugin only supports
-one action, the `echo` action. Any other action will return false, which
-results in an error of type `INVALID_ACTION` - this will translate
-into an error callback invocation on the JavaScript side. Next, we grab
-the echo string using the `getString` method on our `args`, telling it
-we want to get the 0th parameter in the parameter array. We do a bit of
-parameter checking: make sure it is not `null`, and make sure it is not
-a zero-length string. If it is, we call callbackContext.error() (which,
-by now, you should know will invoke the error callback). If all of those
-checks pass, then we call callbackContext.success(), and pass in the
-`message` string we received as a parameter. This will finally translate
-into a success callback invocation on the JavaScript side. It will also
-pass the `message` parameter as a parameter into the JavaScript success
-callback function.
+Let's take a look at the code. The necessary Cordova `imports` are at
+the top. Our class extends from `CordovaPlugin`. We override the
+execute() method in order to recieve messages from exec(). Our method
+first compares against `action`: this plugin only supports one action,
+the `echo` action. Any other action returns false, which results in an
+error of type `INVALID_ACTION`, which translates into an error
+callback invocation on the JavaScript side. Next, we grab the echo
+string using the `getString` method on our `args`, telling it we want
+to get the 0th parameter in the parameter array. We do a bit of
+parameter checking: make sure it is not `null`, and make sure it is
+not a zero-length string. If it is, we call `callbackContext.error()`
+(which, by now, you should know invokes the error callback). If all of
+those checks pass, then we call `callbackContext.success()` and pass
+in the `message` string we received as a parameter. This finally
+translates into a success callback invocation on the JavaScript
+side. It also passes the `message` parameter as a parameter into the
+JavaScript success callback function.
 
 ## Debugging Plugins
 
-Eclipse can be used to debug an Android project, and the plugins can be debugged if the Java source is included in the project. Only the latest version of the Android Dev Tools is known to allow source code attachment to JAR dependencies, this is not fully supported at this time.
+Eclipse can be used to debug an Android project, and the plugins can be debugged if the Java source is included in the project. Only the latest version of the Android Developer Tools is known to allow source code attachment to JAR dependencies, so this is not fully supported at this time.
 
 ## Common Pitfalls
 
 * Plugins have access to a `CordovaInterface` object. This object has access to the Android `Activity` that is running the application. This is the `Context` required to launch
 a new Android `Intent`. The `CordovaInterface` allows plugins to start an `Activity` for a result, and to set the callback plugin for when the `Intent` comes back to the application. This is important, since the
 `Intent`s system is how Android communicates between processes.
-* Plugins do not have direct access to the `Context` as they have in the past. The legacy `ctx` member is deprecated, and will be removed six months after 2.0 is released. All the methods that `ctx` has exist on the `Context`, so both `getContext()` and `getActivity()` are capable of returning the proper object required.
+* Plugins do not have direct access to the `Context` as they have in the past. The legacy `ctx` member is deprecated, and will be removed six months after 2.0 is released. All of `ctx` methods exist on the `Context`, so both `getContext()` and `getActivity()` are capable of returning the proper object required.
 
 ## Use the Source
 
 One of the best ways to prepare yourself to write your own plugin is to
-have a [look at other plugins that already exist](https://github.com/apache/cordova-android/tree/master/framework/src/org/apache/cordova).
+[look over existing plugins](https://github.com/apache/cordova-android/tree/master/framework/src/org/apache/cordova).
 
 You should also read through the comments in [CordovaPlugin.java](https://github.com/apache/cordova-android/blob/master/framework/src/org/apache/cordova/api/CordovaPlugin.java).

http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/726c9630/docs/en/edge/guide/plugin-development/bada/index.md
----------------------------------------------------------------------
diff --git a/docs/en/edge/guide/plugin-development/bada/index.md b/docs/en/edge/guide/plugin-development/bada/index.md
index 3e059a8..a33b98c 100644
--- a/docs/en/edge/guide/plugin-development/bada/index.md
+++ b/docs/en/edge/guide/plugin-development/bada/index.md
@@ -22,13 +22,13 @@ Developing a Plugin on Bada
 
 Plugins are only supported on Bada 2.0 and above. Bada 1.2 does not support plugins.
 
-The Bada implementation is a full javascript implementation. Therefore, adding a custom plugin involves updating CordovaJS with your plugin code. Follow these steps to add a simple _Hello World_ plugin:
+The Bada implementation is a full JavaScript implementation. Therefore, adding a custom plugin involves updating CordovaJS with your plugin code. Follow these steps to add a simple _Hello World_ plugin:
 
 1. Clone the CordovaJS repository
 
         git clone https://git-wip-us.apache.org/repos/asf/cordova-js.git
 
-2. Create a new javascript file under __lib/bada/plugin/bada/__ and name it _HelloWorld.js_. Add the following content:
+2. Create a new JavaScript file under __lib/bada/plugin/bada/__ and name it _HelloWorld.js_. Add the following content:
 
         function HelloWorld() {
         }
@@ -40,11 +40,11 @@ The Bada implementation is a full javascript implementation. Therefore, adding a
         module.exports = new HelloWorld();
 
 3. Add a link to your newly created plugin in __lib/bada/platform.js__ under the objects property:
-    
+
         objects: {
             ...
             HelloWorld: {
-                'cordova/plugin/bada/HelloWorld' 
+                'cordova/plugin/bada/HelloWorld'
             },
             ...
         }
@@ -55,7 +55,7 @@ The Bada implementation is a full javascript implementation. Therefore, adding a
             ...
             "HelloWorld": require('cordova/plugin/bada/HelloWorld')
         };
-5. Now you can write your user-facing javascript however you like but remember that in order for your plugin to execute you need to call the following method
+5. Now you can write your user-facing JavaScript however you like but remember that in order for your plugin to execute you need to call the following method
 
         exec(success, fail, 'HelloWorld', 'printHello', ['Jackson!']);
 
@@ -65,10 +65,10 @@ The Bada implementation is a full javascript implementation. Therefore, adding a
     'printHello' is your plugin action
     Finally, the last argument is your plugin parameters (if any).
 
-6. Run the following command to generate the new common javascript (make sure you have the jake npm module installed)
+6. Run the following command to generate the new common JavaScript (make sure you have the jake npm module installed)
 
         jake
 
-7. Copy the newly generated javascript under __pkg/cordova.bada.js__ to your Bada project under __Res/js__
+7. Copy the newly generated JavaScript under __pkg/cordova.bada.js__ to your Bada project under __Res/js__
 
 6. That is it! You can now add new Bada plugins and implement the many features that are not currently supported by Cordova Bada.

http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/726c9630/docs/en/edge/guide/plugin-development/blackberry/index.md
----------------------------------------------------------------------
diff --git a/docs/en/edge/guide/plugin-development/blackberry/index.md b/docs/en/edge/guide/plugin-development/blackberry/index.md
index 84394e8..d7c8dea 100644
--- a/docs/en/edge/guide/plugin-development/blackberry/index.md
+++ b/docs/en/edge/guide/plugin-development/blackberry/index.md
@@ -22,19 +22,23 @@ Developing a Plugin on BlackBerry
 
 ## How to make the Echo plugin on Blackberry
 
-In this article, we will explore how to develop the Echo plugin on BlackBerry. If you haven't read the
-top level article about the JavaScript part of the plugin, it would be best if you read that first
-and then this article. In addition, please download the [Cordova Blackberry repo](https://git-wip-us.apache.org/repos/asf?p=cordova-blackberry-webworks.git;a=summary).
-
-To note, the Cordova-BlackBerry project allows you to deploy to BlackBerry devices like the
-Torch, Bold, etc and as well as the Playbook. There exists a distinction between deploying to
-normal BlackBerry hand held devices (ie, Torch and Bold) and the Playbook. The code base between
-the two are separate so when you develop for one, you have to duplicate your efforts for the other!
-Therefore in this article, the focus will be on the hand held devices and not the tablet. In the future,
-this guide should cover both platforms.
-
-Continuing on from the previous article, the Echo plugin is essentially returning whatever message a user 
-provides to the `window.echo` function. 
+This guide explores how to develop the Echo plugin on BlackBerry.
+If you haven't read the top-level guide about the JavaScript part of
+the plugin, it would be best if you read that first and then this
+guide. In addition, please download the [Cordova Blackberry
+repo](https://git-wip-us.apache.org/repos/asf?p=cordova-blackberry-webworks.git;a=summary).
+
+The Cordova-BlackBerry project allows you to deploy to BlackBerry
+devices such a the Torch and Bold, as well as the Playbook. There's a
+difference between deploying to normal BlackBerry handheld devices and
+the Playbook. They use two different code bases, so when you develop
+for one, you have to duplicate your efforts for the other!  This guide
+focuses on the handheld devices rather than the tablet. (In the future,
+this guide should cover both platforms.)
+
+Continuing on from the previous guide, the Echo plugin essentially
+returns whatever message a user provides to the `window.echo`
+function.
 
 The Echo function:
 
@@ -46,9 +50,11 @@ The Echo function:
 
 ## Modifying plugins.xml
 
-This file resides in your project's www folder and contains all of the references to the plugins that 
-your Cordova project uses. We are going to add an additional reference so that when cordova.exec is called,
-Cordova will know how to map the "Echo" argument of `cordova.exec` to the Echo class that we want to write natively.
+Your project's `www/plugins.xml` folder contains all of the necessary
+references to your Cordova project's plugins. Add an
+additional reference so that when `cordova.exec` is called, Cordova
+knows how to map the `Echo` argument of `cordova.exec` to the `Echo`
+class that we want to write natively:
 
     <plugins>
       ...
@@ -58,20 +64,24 @@ Cordova will know how to map the "Echo" argument of `cordova.exec` to the Echo c
 
 ## Adding Echo.java
 
-If you notice the structure of the value attribute, you'll see a defined path that leads to the Echo
-plugin. In the root folder of the Cordova BlackBerry WebWorks repo, look for a folder called framework.
-This folder contains all of the source code that runs natively on the BlackBerry. cd into the folder 
-structure until you reach the path: `framework/ext/src/org/apache/cordova`. At this point, you'll see
-all of the plugin folders and inside each folder is the plugins' source code. So, we will add
-the folder echo to `framework/ext/src/org/apache/cordova/echo` and create a file called `Echo.java`
-at `framework/ext/src/org/apache/cordova/echo/Echo.java`.
+If you notice the structure of the value attribute, you'll see a
+defined path that leads to the Echo plugin. In the root folder of the
+Cordova BlackBerry WebWorks repo, look for a folder called framework.
+This folder contains all of the source code that runs natively on the
+BlackBerry. Navigate to `framework/ext/src/org/apache/cordova`. At
+this point, you'll see all of the plugin folders, inside of which is
+the source code. So add the folder echo to
+`framework/ext/src/org/apache/cordova/echo` and create a file called
+`Echo.java` at `framework/ext/src/org/apache/cordova/echo/Echo.java`.
 
 ## Writing Echo.java
 
-The basic idea of writing a plugin is to create a class that extends the Plugin class and have
-a method called execute to return a PluginResult class. Any call to cordova.exec will pass in 
-the action that we want to execute within the class as well as the arguments. In this case,
-"echo" is the action we want to execute within the class "Echo" and [str] are the arguments we are passing in.
+The basic idea behind writing a plugin is to create a class that
+extends the Plugin class and have a method called `execute` to return
+a `PluginResult` class. Any call to `cordova.exec` passes in the
+action to execute within the class, as well as the arguments. In this
+case, "echo" is the action we want to execute within the class "Echo"
+and [str] are the arguments we are passing in.
 
     package org.apache.cordova.echo;
 
@@ -82,7 +92,7 @@ the action that we want to execute within the class as well as the arguments. In
     import org.apache.cordova.json4j.JSONObject;
     /**
      * A simple plugin to demonstrate how to build a plugin for Blackberry
-     * Basically echos back the msg that a user calls to this plugin 
+     * Basically echos back the msg that a user calls to this plugin
      */
     public final class Echo extends Plugin {
 
@@ -93,7 +103,7 @@ the action that we want to execute within the class as well as the arguments. In
             if(action.equals(echo)){
                 try {
                     String theMsg = args.getString(0);
-                    if(theMsg!= null || theMsg.length()>0){   
+                    if(theMsg!= null || theMsg.length()>0){
                         result = new PluginResult(PluginResult.Status.OK, theMsg);
                     }else{
                         result = new PluginResult(PluginResult.Status.ERROR, "Nothing to echo.");
@@ -108,29 +118,36 @@ the action that we want to execute within the class as well as the arguments. In
 
     }
 
-So if we look at the code above, we can see that within the execute method, we are first looking for
-what actions are coming in. The Echo plugin has only one action, "echo" so we will be only checking for 
-that. If our plugin had more actions, it's simply a matter of adding more if-conditionals to check
-for those actions.
-
-We are then going to grab the message coming in from the arguments which is supplied by the args parameter.
-We can grab the first argument by simply doing `String theMsg = args.getString(0);`.
-
-We will do some error checking and if the message looks okay, we will instantiate a new PluginResult with
-an ok status: PluginResult.Status.OK and return the message: theMsg. After this, we will then return the 
-result which will then pass back to JavaScript to be fired in the success callback. If something should fail, 
-we can return various status exceptions like PluginResult.Status.ERROR, PluginResult.Status.JSON_EXCEPTION,
-or PluginResult.Status.INVALID_ACTION. When these types of results are passed back, they will fire the fail 
-callback in JavaScript. 
+So if we look at the code above, we can see that within the execute
+method, we are first looking for what actions are coming in. The Echo
+plugin has only one action, "echo", so we will be only checking for
+that. If our plugin had more actions, it's simply a matter of adding
+more conditional tests to check for those actions.
+
+We are then going to grab the message coming in from the arguments
+which is supplied by the args parameter.  We can grab the first
+argument by simply doing `String theMsg = args.getString(0);`.
+
+We will do some error checking and if the message looks okay, we will
+instantiate a new PluginResult with an ok status:
+`PluginResult.Status.OK` and return the message: `theMsg`. After this,
+we return the result which to be passed back to JavaScript to be fired
+in the success callback. If something fails, we can return various
+status exceptions like `PluginResult.Status.ERROR`,
+`PluginResult.Status.JSON_EXCEPTION`, or
+`PluginResult.Status.INVALID_ACTION`. When passed back, these types of
+results fire the fail callback in JavaScript.
 
 ## Updating the .jar in your project's www folder
 
-The addition of the Echo.java needs to be updated in your project so to build the .jar file, cd
-to the root directory of the BlackBerry WebWorks repo. Use the ant command:
+The added `Echo.java` needs to be updated in your project.  To build
+the `.jar` file, Navigate to the BlackBerry WebWorks repo's root
+directory and run the `ant` command:
 
     ant update -Dproject.path="~/path_to_my_project"
 
-This will build a new .jar file in the build/ext folder. Copy the `build/ext/cordova.jar` file into your
-project/www/ext folder. 
+This builds a new `.jar` file in the `build/ext` directory. Copy the
+`build/ext/cordova.jar` file into your `project/www/ext` directory.
 
-If all goes well, that should allow you to use the Echo plugin in BlackBerry.
+If all goes well, that allows you to use the Echo plugin in
+BlackBerry.

http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/726c9630/docs/en/edge/guide/plugin-development/index.md
----------------------------------------------------------------------
diff --git a/docs/en/edge/guide/plugin-development/index.md b/docs/en/edge/guide/plugin-development/index.md
index 2c6f0cf..6201c95 100644
--- a/docs/en/edge/guide/plugin-development/index.md
+++ b/docs/en/edge/guide/plugin-development/index.md
@@ -23,18 +23,17 @@ A Cordova plugin bridges a bit of functionality between the WebView
 powering a Cordova application and the native platform the Cordova
 application is running on. Plugins are composed of a single JavaScript
 interface used across all platforms, and native implementations
-following platform-specific Plugin interfaces that the JavaScript will
-call into. It should be noted that all of the core Cordova APIs are
-implemented using this exact architecture.
+following platform-specific Plugin interfaces that the JavaScript
+calls into. All of the core Cordova APIs are implemented using this
+architecture.
 
-This guide will go through each step necessary to write a simple Echo
-Plugin. The Echo Plugin will pass a string from JavaScript and send it
-into the native environment for the supported platforms. The native code
-will then return the same string back into the callbacks inside the
-plugin's JavaScript.
+This guide steps the process of writing a simple Echo Plugin that
+passes a string from JavaScript and sends it into the native
+environment for the supported platforms. The native code then returns
+the same string back to the callbacks inside the plugin's JavaScript.
 
-This guide should give anyone the necessary overview and level of
-detail to write more complex plugins.
+This guide provides enough overview on which you can build to write
+more complex plugins.
 
 ## JavaScript
 
@@ -54,20 +53,19 @@ thing you _must_ use to communicate between the Cordova JavaScript
 The parameters explained in more detail:
 
 1. `function(winParam) {}` - Success function callback. Assuming your
-   `exec` call completes successfully, this function will be invoked
-    (optionally with any parameters you pass back to it)
+   `exec` call completes successfully, this function is invoked
+    (optionally with any parameters you pass back to it).
 2. `function(error) {}` - Error function callback. If the operation does
-   not complete successfully, this function will be invoked (optionally
-   with an error parameter)
+   not complete successfully, this function is invoked (optionally
+   with an error parameter).
 3. `"service"` - The service name to call into on the native side. This
-   will be mapped to a native class. More on this in the native guides
-   below
+   is mapped to a native class, about which more information is
+   available in the native guides listed below.
 4. `"action"` - The action name to call into. This is picked up by the
    native class receiving the `exec` call, and, depending on the
-   platform, essentially maps to a class's method. For more detail
-   please check out the native guides located at the end of this article.
-5. `[/* arguments */]` - Arguments to get passed into the native
-   environment
+   platform, essentially maps to a class's method.
+   The native guides listed below provide details.
+5. `[/* arguments */]` - Arguments to pass into the native environment.
 
 ### Echo Plugin JavaScript Example
 
@@ -93,15 +91,15 @@ which is the first parameter into the `window.echo` function.
 The success callback passed into `exec` is simply a reference to the
 callback function that `window.echo` takes. We do a bit more for the
 error callback: if the native side fires off the error callback, we
-simply invoke the success callback and pass into it a "default" string.
+simply invoke the success callback and pass into it a "default"
+string.
 
 ## Native
 
-Once you have defined a JavaScript for your plugin, you need to
-complement it with at least one native implementation. Below are
-specific guides for each platform Cordova supports. The below guides
-will continue on building the simple Echo Plugin example we started in
-this guide.
+Once you define JavaScript for your plugin, you need to complement it
+with at least one native implementation. Details to do so for each
+platform are listed below.  These guides continue to build on the
+simple Echo Plugin example discussed above.
 
 - Developing a Plugin on Android
 - Developing a Plugin on Bada

http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/726c9630/docs/en/edge/guide/plugin-development/ios/index.md
----------------------------------------------------------------------
diff --git a/docs/en/edge/guide/plugin-development/ios/index.md b/docs/en/edge/guide/plugin-development/ios/index.md
index f1de066..09b0f0c 100644
--- a/docs/en/edge/guide/plugin-development/ios/index.md
+++ b/docs/en/edge/guide/plugin-development/ios/index.md
@@ -23,19 +23,25 @@ A plugin is an Objective-C class that extends the `CDVPlugin` class.
 
 Each plugin class must be registered using the config.xml file, as a &lt;plugin&gt; tag under the &lt;plugins&gt; key.
 
-## Plugin Class Mapping 
+## Plugin Class Mapping
 
 The JavaScript portion of a plugin always uses the `cordova.exec` method as follows:
 
     exec(<successFunction>, <failFunction>, <service>, <action>, [<args>]);
 
-This will marshal a request from the UIWebView to the iOS native side, more or less boiling down to calling the `action` method on the `service` class, with the arguments passed in the `args` Array. 
+This marshals a request from the `UIWebView` to the iOS native side,
+more or less boiling down to calling the `action` method on the
+`service` class, with the arguments passed in the `args` array.
 
-The plugin must be added under the `<plugins>` tag of the `config.xml` file in your Cordova-iOS application's project folder.
+The plugin must be added under the `<plugins>` tag of your Cordova-iOS
+application's project's `config.xml` file.
 
     <plugin name="service_name" value="PluginClassName" />
 
-The key `service_name` should match what you use in the JavaScript `exec` call, and the value will be the name of the Objective-C class of the plugin. Without this added, the plugin may compile but will not be reachable by Cordova.
+The key `service_name` should match what you use in the JavaScript
+`exec` call, and the value matches the name of the plugin's
+Objective-C class. Otherwise the plugin may compile but would not be
+reachable by Cordova.
 
 ## Plugin Initialization and Lifetime
 
@@ -45,7 +51,7 @@ There is one instance of a plugin object that is created per-UIWebView, and the
 
 There is *no* designated initializer for plugins. Instead, plugins should use the `pluginInitialize` method for their start-up logic.
 
-Plugins with long-running requests, background activity (e.g. playing media), listeners or internal state should implement the `onReset` method and stop or clean up those activities. This method is run when the `UIWebView` navigates to a new page or refreshes, which reloads the Javascript.
+Plugins with long-running requests, background activity (e.g. playing media), listeners or internal state should implement the `onReset` method and stop or clean up those activities. This method is run when the `UIWebView` navigates to a new page or refreshes, which reloads the JavaScript.
 
 
 ## Writing an iOS Cordova Plugin
@@ -61,28 +67,32 @@ What gets dispatched to the plugin via JavaScript's `exec` function gets passed
 
         if (myarg != nil) {
             pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK];
-        } else { 
+        } else {
             pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_ERROR messageAsString:@"Arg was null"];
         }
         [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId];
     }
-    
+
 1. [CDVInvokedUrlCommand.h](https://github.com/apache/cordova-ios/blob/master/CordovaLib/Classes/CDVInvokedUrlCommand.h)
 2. [CDVPluginResult.h](https://github.com/apache/cordova-ios/blob/master/CordovaLib/Classes/CDVPluginResult.h)
 3. [CDVCommandDelegate.h](https://github.com/apache/cordova-ios/blob/master/CordovaLib/Classes/CDVCommandDelegate.h)
 
 ## iOS CDVPluginResult message types
 
-Using CDVPluginResult you can return a variety of result types back to your javascript callbacks, using class methods that look like:
+Using CDVPluginResult you can return a variety of result types back to your JavaScript callbacks, using class methods that look like:
 
     + (CDVPluginResult*)resultWithStatus:(CDVCommandStatus)statusOrdinal messageAs...
 
-The types you can create are: `String`, `Int`, `Double`, `Bool`, `Array`, `Dictionary`, `ArrayBuffer`, and `Multipart`.  Or, don't attach any arguments (just send a status).  Or, return an Error.  You can even chose to not send any plugin result at all (your callback will not fire).
+You can create `String`, `Int`, `Double`, `Bool`, `Array`,
+`Dictionary`, `ArrayBuffer`, and `Multipart` types.  Or, don't attach
+any arguments (just send a status).  Or, return an Error.  You can
+even choose to not send any plugin result at all, in which case the
+callback does not fire.
 
 ### Notes
 
- * `messageAsArrayBuffer` expects `NSData*` and will convert to an `ArrayBuffer` for your javascript callback (and `ArrayBuffers` sent to a plugin from javascript are converted to `NSData*`).
- * `messageAsMultipart` expects an `NSArray*` containing any of the other supported types, and will send the whole array as the `arguments` to your javascript callback.
+ * `messageAsArrayBuffer` expects `NSData*` and converts to an `ArrayBuffer` for your JavaScript callback (and `ArrayBuffers` sent to a plugin from JavaScript are converted to `NSData*`).
+ * `messageAsMultipart` expects an `NSArray*` containing any of the other supported types, and sends the whole array as the `arguments` to your JavaScript callback.
    *  Quirk: this is not just syntactic sugar (though it is sweet).  This way, all of the arguments are serialized/deserialized as necessary.  e.g. it is safe to return `NSData*` as multipart, but not as `Array`/`Dictionary`.
 
 ## Plugin Signatures
@@ -95,7 +105,7 @@ The **old (deprecated)** signature is:
 
         - (void)myMethod:(NSMutableArray*)arguments withDict:(NSMutableDictionary*)options;
 
-Basically, the options dictionary has been removed for the new signature, and the callbackId is not the 0th index item for the arguments array, but it is now in a separate property. 
+Basically, the options dictionary has been removed for the new signature, and the callbackId is not the 0th index item for the arguments array, but it is now in a separate property.
 
 ## Echo Plugin iOS Plugin
 
@@ -115,9 +125,9 @@ application folder:
     - (void)echo:(CDVInvokedUrlCommand*)command;
 
     @end
-    
+
     /********* Echo.m Cordova Plugin Implementation *******/
-    
+
     #import "Echo.h"
     #import <Cordova/CDV.h>
 
@@ -140,17 +150,29 @@ application folder:
     @end
 
 
-Let's take a look at the code. At the top we have all of the necessary Cordova imports. Our class extends from `CDVPlugin` - very important. 
+Let's take a look at the code. At the top we have all of the necessary Cordova imports. Our class extends from `CDVPlugin` - very important.
 
-This plugin only supports one action, the `echo` action. First, we grab the echo string using the `objectAtIndex` method on our `args`, telling it we want to get the 0th parameter in the arguments array. We do a bit of parameter checking: make sure it is not `nil`, and make sure it is not a zero-length string.
+This plugin only supports one action, the `echo` action. First, we
+grab the echo string using the `objectAtIndex` method on our `args`,
+telling it we want to get the 0th parameter in the arguments array. We
+do a bit of parameter checking: make sure it is not `nil`, and make
+sure it is not a zero-length string.
 
-If it is, we return a `PluginResult` with an `ERROR` status. If all of those checks pass, then we return a `PluginResult` with an `OK` status, and pass in the `echo` string we received in the first place as a parameter.
+If it is, we return a `PluginResult` with an `ERROR` status. If all of
+those checks pass, then we return a `PluginResult` with an `OK`
+status, and pass in the `echo` string we received in the first place
+as a parameter.
 
-Finally, we send the result to `self.commandDelegate`, which will execute the JavaScript that will callback to success or failure callbacks of the exec method on the JavaScript side. If the success callback was called, it will pass the `echo` parameter as a parameter.
+Finally, we send the result to `self.commandDelegate`, which executes
+the `exec` method's success or failure callbacks on the JavaScript
+side. If the success callback is called, it passes in the `echo`
+parameter.
 
 ## Threading
 
-Plugin methods are executed on the UI thread. If your plugin requires a non-trivial amount of processing or requires a blocking call, you should make use of a background thread. An example:
+Plugin methods are executed in the same thread as the UI. If your
+plugin requires a great deal of processing or requires a blocking
+call, you should use a background thread. For example:
 
     - (void)myPluginMethod:(CDVInvokedUrlCommand*)command
     {
@@ -172,18 +194,22 @@ See other methods that you can override in:
 1. [CDVPlugin.h](https://github.com/apache/cordova-ios/blob/master/CordovaLib/Classes/CDVPlugin.h)
 2. [CDVPlugin.m](https://github.com/apache/cordova-ios/blob/master/CordovaLib/Classes/CDVPlugin.m)
 
-For example, you can hook into the pause, resume, app terminate and handleOpenURL events.
+For example, you can hook into the `pause`, `resume`, app terminate and `handleOpenURL` events.
 
 ## Debugging Plugins
 
-To debug the Objective-C side, you would use Xcode's built in debugger. For JavaScript, on iOS 5.0 you can use [Weinre, an Apache Cordova Project](https://github.com/apache/cordova-weinre) or [iWebInspector, a third-party utility](http://www.iwebinspector.com/)
+To debug the Objective-C side, you would use Xcode's built-in debugger.
+For JavaScript, on iOS 5.0 you can use
+[Weinre, an Apache Cordova Project](https://github.com/apache/cordova-weinre) or
+[iWebInspector, a third-party utility](http://www.iwebinspector.com/)
 
-For iOS 6, you would use Safari 6.0 to simply attach to your app running in the iOS 6 Simulator.
+For iOS 6, you would use Safari 6.0 to simply attach to your app
+running in the iOS 6 Simulator.
 
 ## Common Pitfalls
 
-* Don't forget to add your plugin's mapping to config.xml - if you forgot, an error will be printed to the Xcode console log
-* Don't forget to add any hosts you connect to in the [whitelist](guide_whitelist_index.md.html#Domain%20Whitelist%20Guide) - if you forgot, an error will be printed to the Xcode console log
+* Don't forget to add your plugin's mapping to config.xml. If you forget, an error is logged in the Xcode console.
+* Don't forget to add any hosts you connect to in the [whitelist](guide_whitelist_index.md.html#Domain%20Whitelist%20Guide). If you forget, an error is logged in the Xcode console.
 
 ## Deprecated Plugin Signature Note
 
@@ -191,4 +217,13 @@ The **old (deprecated)** signature is:
 
         - (void) myMethod:(NSMutableArray*)arguments withDict:(NSMutableDictionary*)options;
 
-The options parameter for the Objective-C plugin method is deprecated, and it should not be used. For legacy reasons - the last JavaScript object passed in the args Array will be passed in as the options dictionary of the method in Objective-C. You must make sure that any JavaScript object that is passed in as an element in the args array occurs as the last item in the Array, if not it will throw off the array index of all subsequent parameters of the Array in Objective-C. Only one JavaScript object is supported for the options dictionary, and only the last one encountered will be passed to the native method. It is because of these error-prone reasons that they are being deprecated.
+The Objective-C plugin method's `options` parameter is deprecated, and
+should not be used. For legacy reasons, the last JavaScript object
+passed in the `args` array is passed in as the `options` dictionary of
+the Objective-C method. You must make sure that any JavaScript object
+that is passed in as an element in the `args` appears as the last item
+in the array. Otherwise it throws off the array index for all
+subsequent parameters of the Objective-C array. Only one JavaScript
+object is supported for the options dictionary, and only the last one
+encountered will be passed to the native method. Errors stemming from
+this problem are the reason `options` has been deprecated.

http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/726c9630/docs/en/edge/guide/plugin-development/windows-phone/index.md
----------------------------------------------------------------------
diff --git a/docs/en/edge/guide/plugin-development/windows-phone/index.md b/docs/en/edge/guide/plugin-development/windows-phone/index.md
index c2ec89d..6ec0bd3 100644
--- a/docs/en/edge/guide/plugin-development/windows-phone/index.md
+++ b/docs/en/edge/guide/plugin-development/windows-phone/index.md
@@ -22,7 +22,7 @@ Developing a Plugin on Windows Phone
 
 Writing a plugin for Cordova on Windows Phone requires a basic understanding of
 the architecture of Cordova. Cordova-WP7 consists of a WebBrowser which hosts the
-application javascript code and manages native API calls. There is a BaseCommand
+application JavaScript code and manages native API calls. There is a BaseCommand
 (`WP7CordovaClassLib.Cordova.Commands.BaseCommand`) class in C# which you can extend,
 and it comes with the majority of the 'plumbing' built for you already.
 
@@ -64,8 +64,9 @@ The default namespace for unqualified commands is:
         // ...
     }
 
-If you would like to use your own namespace, you will need to make a fully qualified
-call to `cordova.exec`. For example, if you wanted to define your C# class like this:
+If you want to use your own namespace, you need to make a fully
+qualified call to `cordova.exec`. For example, if you want to define
+your C# class like this:
 
     namespace com.mydomain.cordovaExtensions
     {
@@ -75,7 +76,7 @@ call to `cordova.exec`. For example, if you wanted to define your C# class like
         }
     }
 
-Then, in JS you would need to call exec like this:
+Then, in JS you need to call `exec` like this:
 
     cordova.exec(win, fail, "com.mydomain.cordovaExtensions.Echo", ...);
 
@@ -88,12 +89,12 @@ Looking back at our JS call to `cordova.exec`, we see we passed `[str]`:
 
     cordova.exec(win, fail, "Echo", "echo", ["input string"]);
 
-If we inspect the options string passed in to our `Echo.echo` method, we will
-see that the value is actually:
+If we inspect the options string passed in to our `Echo.echo` method,
+we see that the value is actually:
 
     "[\"input string\"]"
 
-All javascript exec arguments are JSON encoded before being passed into C#.
+All JavaScript exec arguments are JSON encoded before being passed into C#.
 
 If we want to treat this as the string we were expecting, we need to decode it.
 We can use simple JSON deserialization.
@@ -110,7 +111,7 @@ you can can simply call:
 
     DispatchCommandResult(); // calls back with an empty plugin result, considered a success callback
 
-To pass data back, you will need to call a different version of `DispatchCommandResult`:
+To pass data back, you need to call a different version of `DispatchCommandResult`:
 
     DispatchCommandResult(new PluginResult(PluginResult.Status.OK, "Everything went as planned, this is a result that is passed to the success handler."));
 
@@ -130,13 +131,13 @@ in case we have bad input. This is a pattern used throughout the Cordova C# code
 
     string optVal = null;
 
-    try 
+    try
     {
         optVal = JsonHelper.Deserialize<string[]>(options)[0];
     }
     catch(Exception)
     {
-        // simply catch the exception, we will handle null values and exceptions together
+        // simply catch the exception, we handle null values and exceptions together
     }
 
     if (optVal == null)
@@ -162,8 +163,9 @@ For example, you can hook into the 'pause' and 'resume' application events.
 To debug the C# side, you can use Visual Studio's debugger, just set a break point
 at any of the methods exposed by your class.
 
-Javascript is a little more difficult to debug on Windows Phone, you will need to
-use `console.log` to output the state of your plugin, or inform yourself of errors.
+JavaScript is a little more difficult to debug on Windows Phone. You
+need to use `console.log` to output the state of your plugin, or
+inform yourself of errors.
 
 Common Pitfalls
 ---------------
@@ -175,7 +177,7 @@ Common Pitfalls
 
         cordova.exec(win, fail, "ServiceName", "MethodName", ["this is a string", 54, {literal:'trouble'}]);
 
-    - This will mean that your C# code will receive a difficult to decode string value, such as:
+    - This means that your C# code receives a difficult to decode string value, such as:
 
             "[\"this is a string\", 54, { literal:'trouble' }]"
 
@@ -185,7 +187,8 @@ Common Pitfalls
 
             string[] optValues = JsonHelper.Deserialize<string[]>(options);
 
-- It is usually a good idea to do parameter checking in your JavaScript code,
-  before you call exec.  This will let you re-use more JS code between different
-  native implementations of your plugin.
+- It is usually a good idea to do parameter checking in your
+  JavaScript code, before you call `exec`.  This allows you to re-use
+  more JavaScript code among your plug-in's various native
+  implementations.
 

http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/726c9630/docs/en/edge/guide/project-settings/bada/index.md
----------------------------------------------------------------------
diff --git a/docs/en/edge/guide/project-settings/bada/index.md b/docs/en/edge/guide/project-settings/bada/index.md
index f5507d9..6d3f7a6 100644
--- a/docs/en/edge/guide/project-settings/bada/index.md
+++ b/docs/en/edge/guide/project-settings/bada/index.md
@@ -19,6 +19,6 @@
 #
 -->
 
-Project Settings for Bada 
+Project Settings for Bada
 ===================================
 

http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/726c9630/docs/en/edge/guide/project-settings/blackberry/index.md
----------------------------------------------------------------------
diff --git a/docs/en/edge/guide/project-settings/blackberry/index.md b/docs/en/edge/guide/project-settings/blackberry/index.md
index c08e3fe..69b870b 100644
--- a/docs/en/edge/guide/project-settings/blackberry/index.md
+++ b/docs/en/edge/guide/project-settings/blackberry/index.md
@@ -19,7 +19,11 @@
 #
 -->
 
-Project Settings for BlackBerry 
+Project Settings for BlackBerry
 ===================================
 
-BlackBerry has full support for the [W3C Widget Specfication](http://www.w3.org/TR/widgets/) as well as proprietary RIM extensions. Please see the full [BlackBerry WebWorks documentation regarding config.xml](https://developer.blackberry.com/html5/documentation/working_with_config_xml_file_1866970_11.html) for details. 
+BlackBerry fully supports the
+[W3C Widget Specification](http://www.w3.org/TR/widgets/)
+as well as proprietary RIM extensions. Please see the full
+[BlackBerry WebWorks documentation regarding config.xml](https://developer.blackberry.com/html5/documentation/working_with_config_xml_file_1866970_11.html)
+for details.

http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/726c9630/docs/en/edge/guide/project-settings/firefoxos/index.md
----------------------------------------------------------------------
diff --git a/docs/en/edge/guide/project-settings/firefoxos/index.md b/docs/en/edge/guide/project-settings/firefoxos/index.md
index 89f53b8..aed24a3 100644
--- a/docs/en/edge/guide/project-settings/firefoxos/index.md
+++ b/docs/en/edge/guide/project-settings/firefoxos/index.md
@@ -19,6 +19,6 @@
 #
 -->
 
-Project Settings for FirefoxOS 
+Project Settings for FirefoxOS
 ===================================
 

http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/726c9630/docs/en/edge/guide/project-settings/index.md
----------------------------------------------------------------------
diff --git a/docs/en/edge/guide/project-settings/index.md b/docs/en/edge/guide/project-settings/index.md
index 3dfb4f5..ab90101 100644
--- a/docs/en/edge/guide/project-settings/index.md
+++ b/docs/en/edge/guide/project-settings/index.md
@@ -21,9 +21,9 @@ Project Settings
 ================
 
 You can set various application configuration parameters using a platform-agnostic configuration file, `config.xml`.
-This file is based on the W3C [Packaged Web Apps (Widgets)](http://www.w3.org/TR/widgets/) specification. 
+This file is based on the W3C [Packaged Web Apps (Widgets)](http://www.w3.org/TR/widgets/) specification.
 
-The location of the `config.xml` file is different depending on the platform. The contents, in general, are not. 
+The location of the `config.xml` file is different depending on the platform. The contents, in general, are not.
 
 ## Platform-Specific Properties
 
@@ -62,14 +62,19 @@ A list of supported elements across major platforms which are supported in Apach
 
 ### `<plugin>`
 
-These elements map to native APIs that the application will be able to access. At runtime, the Apache Cordova framework checks
-the `<plugin>` elements and maps them to native code to enable your Cordova application to access device APIs otherwise
-unavailable to typical web-based applications.
+These elements map to native APIs that the application accesses. At
+runtime, the Apache Cordova framework checks the `<plugin>` elements
+and maps them to native code to enable your Cordova application to
+access device APIs otherwise unavailable to typical web-based
+applications.
 
 ### `<access>`
 
-These elements define how your whitelist works. Please see the Domain Whitelist Guide for more information.  
+These elements define how your whitelist works. Please see the
+Domain Whitelist Guide for more information.
 
 ### `<content>`
 
-This element defines the start page of your application, relative to the project's standard web assets root folder. The default is "index.html". 
+This element defines your application's start page relative to the
+project's standard web assets root folder. The default is
+`index.html`.

http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/726c9630/docs/en/edge/guide/project-settings/ios/index.md
----------------------------------------------------------------------
diff --git a/docs/en/edge/guide/project-settings/ios/index.md b/docs/en/edge/guide/project-settings/ios/index.md
index a401f10..ed4404d 100644
--- a/docs/en/edge/guide/project-settings/ios/index.md
+++ b/docs/en/edge/guide/project-settings/ios/index.md
@@ -57,4 +57,4 @@ Various preferences (as **&lt;preference&gt;** tags) default on not breaking exi
 
 14. **HideKeyboardFormAccessoryBar (boolean, defaults to false)** - set to true to hide the additional toolbar that is on top of the keyboard (this is the toolbar that has the Prev, Next and Done buttons)
 
-15. **KeyboardShrinksView (boolean, defaults to false)** -  set to true to shrink the WebView when the keyboard comes up. The WebView shrinks instead of the viewport shrinking and the page scrollable. This applies to apps that position their elements relative to the bottom of the WebView. This is the default behaviour on Android, and makes a lot of sense when building apps as opposed to webpages.
\ No newline at end of file
+15. **KeyboardShrinksView (boolean, defaults to false)** -  set to true to shrink the WebView when the keyboard comes up. The WebView shrinks instead of the viewport shrinking and the page scrollable. This applies to apps that position their elements relative to the bottom of the WebView. This is the default behaviour on Android, and makes a lot of sense when building apps as opposed to webpages.

http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/726c9630/docs/en/edge/guide/project-settings/webos/index.md
----------------------------------------------------------------------
diff --git a/docs/en/edge/guide/project-settings/webos/index.md b/docs/en/edge/guide/project-settings/webos/index.md
index bd47e17..ad1ab0d 100644
--- a/docs/en/edge/guide/project-settings/webos/index.md
+++ b/docs/en/edge/guide/project-settings/webos/index.md
@@ -19,7 +19,7 @@
 #
 -->
 
-Project Settings for webOS 
+Project Settings for webOS
 ===================================
 
-WebOS does not currently have any additional configurable features.
\ No newline at end of file
+WebOS does not currently have any additional configurable features.

http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/726c9630/docs/en/edge/guide/project-settings/windows8/index.md
----------------------------------------------------------------------
diff --git a/docs/en/edge/guide/project-settings/windows8/index.md b/docs/en/edge/guide/project-settings/windows8/index.md
index e38dbbb..7a4f706 100644
--- a/docs/en/edge/guide/project-settings/windows8/index.md
+++ b/docs/en/edge/guide/project-settings/windows8/index.md
@@ -19,7 +19,7 @@
 #
 -->
 
-Project Settings for Windows 8 
+Project Settings for Windows 8
 ===================================
 
 Windows 8 does not currently support this feature.

http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/726c9630/docs/en/edge/guide/project-settings/wp7/index.md
----------------------------------------------------------------------
diff --git a/docs/en/edge/guide/project-settings/wp7/index.md b/docs/en/edge/guide/project-settings/wp7/index.md
index 9c4a410..8c4da6c 100644
--- a/docs/en/edge/guide/project-settings/wp7/index.md
+++ b/docs/en/edge/guide/project-settings/wp7/index.md
@@ -19,7 +19,7 @@
 #
 -->
 
-Project Settings for Windows Phone 7 
+Project Settings for Windows Phone 7
 ===================================
 
-Windows Phone 7 does not currently have any additional configurable features.
\ No newline at end of file
+Windows Phone 7 does not currently have any additional configurable features.

http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/726c9630/docs/en/edge/guide/upgrading/bada/index.md
----------------------------------------------------------------------
diff --git a/docs/en/edge/guide/upgrading/bada/index.md b/docs/en/edge/guide/upgrading/bada/index.md
index 52d73ab..52f16fb 100644
--- a/docs/en/edge/guide/upgrading/bada/index.md
+++ b/docs/en/edge/guide/upgrading/bada/index.md
@@ -33,9 +33,9 @@ older version to a current version of Cordova.
 
 ## Upgrade to 1.8.x from 1.7.0 ##
 
-1. Remove the cordova.bada.js file from the Res/js directory 
-2. Add the new cordova.js file to your Res/js directory 
-3. Update your Res/index.html to reference cordova.js instead of cordova.bada.js 
+1. Remove the cordova.bada.js file from the Res/js directory
+2. Add the new cordova.js file to your Res/js directory
+3. Update your Res/index.html to reference cordova.js instead of cordova.bada.js
 
 Change this line:
 
@@ -44,5 +44,6 @@ to:
 
     <script type="text/javascript" src="./js/cordova.js"></script>
 
-As of Cordova 1.8, Bada 1.2 is no longer supported! The repository will be kept
-there as an archive for people who still want to use it. It contains some outdated APIs.
+As of Cordova 1.8, Bada 1.2 is no longer supported! The repository
+remains as an archive for people who still want to use it. It contains
+some outdated APIs.