[NETBEANS-1870] Reviewing the Asciidoc of PHP tutorials (#434)

* [kb/docs/php] Set 1
* [php] wishlist-lesson3
diff --git a/netbeans.apache.org/src/content/kb/docs/php/ajax-quickstart.asciidoc b/netbeans.apache.org/src/content/kb/docs/php/ajax-quickstart.asciidoc
index 878639e..48f13c1 100644
--- a/netbeans.apache.org/src/content/kb/docs/php/ajax-quickstart.asciidoc
+++ b/netbeans.apache.org/src/content/kb/docs/php/ajax-quickstart.asciidoc
@@ -79,21 +79,29 @@
 
 1. Choose File > New Project. Under Categories, select *PHP*. Under Projects, select *PHP Application* then click *Next*.
 2. In Step 2: Name and Location, name the project `MyAjaxApp`. The Sources Folder field enables you to specify the location of the project on your computer. Leave other options at their defaults and click *Next*. 
+
 image::images/php-name-location.png[title="New PHP Project wizard - Name and Location panel"]
-3. In Step 3: Run Configuration, specify how you want to deploy your application. If you have set up your PHP development environment by configuring an *AMP package, you should select *Local Web Site* from the drop-down list, and specify the URL of the project, as it will appear in a browser.
-4. Select the Copy files from Sources Folder to another location option. Then, in the Copy to Folder field, type in the path to the deployment location on the server. (On Apache, this is the default `htdocs` directory.) 
+
+[start=3]
+. In Step 3: Run Configuration, specify how you want to deploy your application. If you have set up your PHP development environment by configuring an *AMP package, you should select *Local Web Site* from the drop-down list, and specify the URL of the project, as it will appear in a browser.
+. Select the Copy files from Sources Folder to another location option. Then, in the Copy to Folder field, type in the path to the deployment location on the server. (On Apache, this is the default `htdocs` directory.) 
+
 [.feature]
 --
 image::images/php-run-config.png[role="left", link="images/php-run-config.png"]
 --
-5. Click *Finish*. The IDE creates the project folder in your file system and the project opens in the IDE. 
+
+[start=5]
+. Click *Finish*. The IDE creates the project folder in your file system and the project opens in the IDE. 
 
 You can also use the Project wizard to add  framework support to your project (provided in Step 4 of the wizard).
 
 A default `index.php` index page is generated and opens in the IDE's editor. Also, your project appears in the Projects window.
 
 image::images/php-proj-win.png[title="Projects window displays MyAjaxApp project"]
-6. Before beginning to code, quickly try running the application to ensure that configuration between the IDE, your server, and browser is set up properly. 
+
+[start=6]
+. Before beginning to code, quickly try running the application to ensure that configuration between the IDE, your server, and browser is set up properly. 
 
 In the IDE's editor, add an `echo` statement to the index page:
 
@@ -106,7 +114,9 @@
 ?>
 
 ----
-7. In the Projects window, right-click on the project node and choose Run. The IDE opens your default browser and displays the Hello World message you just created in `index.php`. 
+
+[start=7]
+. In the Projects window, right-click on the project node and choose Run. The IDE opens your default browser and displays the Hello World message you just created in `index.php`. 
 
 NOTE: If you have difficulty setting up your project or establishing communication between the IDE, the server and browser, see link:project-setup.html[+Setting Up a PHP Project+] for a more thorough description. The link:../../trails/php.html[+PHP Learning Trail+] can provide more information on configuring your environment.
 
@@ -129,7 +139,7 @@
 2. In the HTML File wizard, name the file `index`, then click *Finish*. The new `index.html` file opens in the editor.
 3. Replace the existing content for the file as follows.
 
-[source,xml]
+[source,html]
 ----
 
 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
@@ -146,7 +156,9 @@
 </html>
 
 ----
-4. Add some explanatory text to describe the purpose of the text field. You can copy and paste in the following text at a point just beneath the `<h1>` tags:
+
+[start=4]
+. Add some explanatory text to describe the purpose of the text field. You can copy and paste in the following text at a point just beneath the `<h1>` tags:
 
 [source,html]
 ----
@@ -159,16 +171,21 @@
     then click on one of the selections to see composer details.</p>
 
 ----
-5. Add an HTML form to the page. You can do this by making use of the elements listed in the IDE's Palette. If the Palette is not open, choose Window > Palette from the main menu. Then, under HTML Forms, click on and drag a Form element into the page to a point beneath the `<p>` tags that you just added. The Insert Form dialog box opens. Specify the following: 
+
+[start=5]
+. Add an HTML form to the page. You can do this by making use of the elements listed in the IDE's Palette. If the Palette is not open, choose Window > Palette from the main menu. Then, under HTML Forms, click on and drag a Form element into the page to a point beneath the `<p>` tags that you just added. The Insert Form dialog box opens. Specify the following: 
 
 * Action: autocomplete.php
 * Method: GET
 * Name: autofillform
+
 image::images/php-insert-form.png[title="Insert form dialog"]
 
 Click OK. The HTML `<form>` tags are inserted into the page containing the attributes you specified. (GET is applied by default, and so is not explicitly declared.)
 
-6. Add an HTML table to the page. Under the HTML category in the Palette, click on a Table element and drag it to a point between the `<form>` tags. The Insert Table dialog box opens. Specify the following: 
+
+[start=6]
+. Add an HTML table to the page. Under the HTML category in the Palette, click on a Table element and drag it to a point between the `<form>` tags. The Insert Table dialog box opens. Specify the following: 
 
 * Rows: 2
 * Columns: 2
@@ -176,10 +193,13 @@
 * Width: 0
 * Cell Spacing: 0
 * Cell Padding: 5
-image::images/insert-table.png[title="Insert table dialog"]
-7. Right-click inside the Source Editor and choose Format. This tidies up the code. Your form should now display similar to that below:
 
-[source,xml]
+image::images/insert-table.png[title="Insert table dialog"]
+
+[start=7]
+. Right-click inside the Source Editor and choose Format. This tidies up the code. Your form should now display similar to that below:
+
+[source,html]
 ----
 
 <form name="autofillform" action="autocomplete.php">
@@ -204,16 +224,20 @@
 </form>
 
 ----
-8. Within the first row of the table, type the following text into the first column (changes in *bold*):
 
-[source,xml]
+[start=8]
+. Within the first row of the table, type the following text into the first column (changes in *bold*):
+
+[source,html]
 ----
 
 <td>*<strong>Composer Name:</strong>*</td>
 ----
-9. Within the second column of the first row, instead of dragging a Text Input field from the Palette, type in the code below manually.
 
-[source,java]
+[start=9]
+. Within the second column of the first row, instead of dragging a Text Input field from the Palette, type in the code below manually.
+
+[source,html]
 ----
 
 <input type="text"
@@ -223,14 +247,20 @@
 
 ----
 When you type, try using the IDE's built-in code completion support. For example, type in `<i`, then press Ctrl-Space. A list of suggested options displays below your cursor, and a description of the selected element appears in a box above. You can in fact press Ctrl-Space at anytime you are coding in the Source Editor to bring up possible options. Also, if there is only one possible option, pressing Ctrl-Space will automatically complete the element name. 
-image::images/code-completion.png[title="Ctrl-Space triggers code completion in the Source Editor"] 
+image:images/code-completion.png[title="Ctrl-Space triggers code completion in the Source Editor"] 
 The `onkeyup` attribute that you typed in above points to a JavaScript function named `doCompletion()`. This function is called each time a key is pressed in the form text field, and maps to the JavaScript call depicted in the Ajax <<flow-diagram,flow diagram>> above.
-10. Before moving on to work in the JavaScript editor, make the new `index.html` file replace the `index.php` file as the entry point for the application. 
 
-To do so, right-click the project node in the Projects window and choose Properties. Select the *Run Configuration* category, then enter `index.html` in the Index File field. image::images/php-entry-point.png[title="Specify the application's entry point in the Project Properties window"]
-11. Click OK to save changes and exit the Project Properties window.
-12. Run the project to see what it looks like in a browser. Click the Run Project ( image::images/run-project-btn.png[] ) button. The `index.html` file displays in your default browser. 
-image::images/index-page.png[title="Run project to view its current state in browser"]
+[start=10]
+. Before moving on to work in the JavaScript editor, make the new `index.html` file replace the `index.php` file as the entry point for the application. 
+
+To do so, right-click the project node in the Projects window and choose Properties. Select the *Run Configuration* category, then enter `index.html` in the Index File field. image:images/php-entry-point.png[title="Specify the application's entry point in the Project Properties window"]
+
+[start=11]
+. Click OK to save changes and exit the Project Properties window.
+
+[start=12]
+. Run the project to see what it looks like in a browser. Click the Run Project ( image:images/run-project-btn.png[] ) button. The `index.html` file displays in your default browser. 
+image:images/index-page.png[title="Run project to view its current state in browser"]
 
 
 [[javascript]]
@@ -250,7 +280,7 @@
 2. Name the file `javascript`, then click Finish. The new JavaScript file appears in the Projects window and opens in the editor.
 3. Type the code below into `javascript.js`.
 
-[source,java]
+[source,php]
 ----
 
 var req;
@@ -284,9 +314,11 @@
 
 The above code performs a simple browser compatibility check for Firefox 3 and Internet Explorer versions 6 and 7). If you would like to incorporate more robust code for compatibility issues, consider using this link:http://www.quirksmode.org/js/detect.html[+browser detect script+] from link:http://www.quirksmode.org[+http://www.quirksmode.org+].
 
-4. Switch back to `index.html` and add a reference to the JavaScript file between the `<head>` tags.
 
-[source,xml]
+[start=4]
+. Switch back to `index.html` and add a reference to the JavaScript file between the `<head>` tags.
+
+[source,html]
 ----
 
 <script type="text/javascript" src="javascript.js"></script>
@@ -295,9 +327,11 @@
 
 You can quickly toggle between pages opened in the editor by pressing Ctrl-Tab.
 
-5. Insert a call to `init()` in the opening `<body>` tag.
 
-[source,java]
+[start=5]
+. Insert a call to `init()` in the opening `<body>` tag.
+
+[source,html]
 ----
 
 <body *onload="init()"*>
@@ -319,7 +353,7 @@
 
 * The URL `autocomplete.php`, and the text entered into the `complete-field` by the user:
 
-[source,java]
+[source,php]
 ----
 
 var url = "autocomplete.php?action=complete&amp;id=" + escape(completeField.value);
@@ -327,7 +361,7 @@
 * `GET`, signifying that HTTP interactions use the `GET` method, and
 * `true`, signifying that the interaction is asynchronous:
 
-[source,java]
+[source,php]
 ----
 
 req.open("GET", url, true);
@@ -336,7 +370,7 @@
 If the interaction is set as asynchronous, a callback function must be specified. The callback function for this interaction is set with the statement:
 
 
-[source,java]
+[source,php]
 ----
 
 req.onreadystatechange = callback;
@@ -408,7 +442,9 @@
 
 }
 ----
-4. In the editor, paste in the following code within the class (changes in *bold*).
+
+[start=4]
+. In the editor, paste in the following code within the class (changes in *bold*).
 
 [source,php]
 ----
@@ -492,9 +528,13 @@
 Implement the logic to handle the `autocomplete` URL that is received by the incoming request. Instead of creating a new PHP file using the File wizard as demonstrated in the previous section, modify the existing `index.php` file for this purpose.
 
 1. In the Projects window, click the `index.php` file node. The file name becomes editable, enabling you to modify the name. 
-image::images/edit-file-name.png[title="Click on file nodes to edit names"]
-2. Name the file `autocomplete`, then click Enter. Double-click the new `autocomplete.php` file to have it display in the editor.
-3. Replace the file's existing code with the following script.
+image:images/edit-file-name.png[title="Click on file nodes to edit names"]
+
+[start=2]
+. Name the file `autocomplete`, then click Enter. Double-click the new `autocomplete.php` file to have it display in the editor.
+
+[start=3]
+. Replace the file's existing code with the following script.
 
 [source,php]
 ----
@@ -666,7 +706,10 @@
 </tr>
 ----
 This new row, which can be identified as '`auto-row`', serves as a handle for the JavaScript code in order to insert a new HTML table that will form the auto-complete box.
-2. Open `javascript.js` in the editor and the following three variables to the top of the file.
+
+
+[start=2]
+. Open `javascript.js` in the editor and the following three variables to the top of the file.
 
 [source,java]
 ----
@@ -675,7 +718,9 @@
 var completeTable;
 var autoRow;
 ----
-3. Add the following lines (in *bold*) to the `init()` function.
+
+[start=3]
+. Add the following lines (in *bold*) to the `init()` function.
 
 [source,java]
 ----
@@ -701,7 +746,9 @@
     <td/>
 </tr>
 ----
-4. Add `appendComposer()` to `javascript.js`.
+
+[start=4]
+. Add `appendComposer()` to `javascript.js`.
 
 [source,java]
 ----
@@ -734,7 +781,9 @@
 }
 ----
 This function creates a new table row, inserts a link to a composer into it using the data passed to the function via its three parameters, and inserts the row into the index page's `complete-table` element.
-5. Add `clearTable()` to `javascript.js`.
+
+[start=5]
+. Add `clearTable()` to `javascript.js`.
 
 [source,java]
 ----
@@ -749,7 +798,9 @@
 }
 ----
 This function sets the display of the `complete-table` element to 'none', (i.e., makes it invisible), and it removes any existing composer name entries that were created.
-6. Add `getElementY()` to `javascript.js`.
+
+[start=6]
+. Add `getElementY()` to `javascript.js`.
 
 [source,java]
 ----
@@ -773,7 +824,8 @@
 
 NOTE: See link:http://www.quirksmode.org/js/findpos.html[+this explanation+] of `offset` on link:http://www.quirksmode.org/[+http://www.quirksmode.org/+].
 
-7. Modify the `callback()` function to call `clearTable()` each time new data is received from the server. Any composer entries that already exist in the auto-complete box are therefore removed before it becomes populated with new entries.
+[start=7]
+. Modify the `callback()` function to call `clearTable()` each time new data is received from the server. Any composer entries that already exist in the auto-complete box are therefore removed before it becomes populated with new entries.
 
 [source,java]
 ----
@@ -789,7 +841,9 @@
     }
 }
 ----
-8. Add `parseMessages()` to `javascript.js`.
+
+[start=8]
+. Add `parseMessages()` to `javascript.js`.
 
 [source,java]
 ----
@@ -843,14 +897,14 @@
 
 At this stage, you have completed all the code needed for the functionality of the application. To see the results of your efforts, try running the application now.
 
-1. Run the project to see what it looks like in a browser. Click the Run Project ( image::images/run-project-btn.png[] ) button. The `index.html` file displays in your browser. 
-image::images/no-css.png[title="Successful deployment without stylesheet"]
+1. Run the project to see what it looks like in a browser. Click the Run Project ( image:images/run-project-btn.png[] ) button. The `index.html` file displays in your browser. 
+image:images/no-css.png[title="Successful deployment without stylesheet"]
 
 To attach a stylesheet to your application, simply create a CSS (Cascading Style Sheets) file and link to it from your presentation page(s). When you work in CSS files, the IDE provides you with code completion support, as well as several other features that can aid in producing stylesheet rules. These include:
 
 * *CSS Style Builder:* An interface designed to enable you to create rules using a selection of controls and widgets. (Window > Other > CSS Style Builder)
 * *CSS Preview:* A preview window which, when you place your cursor within a rule, displays sample text rendered according to the declaration block of that rule. (Window > Other > CSS Preview)
-* *Style Rule Editor:* A dialog enabling you to create rules based on classes, ID's and HTML elements, and set their position in the document hierarchy. (Create Rule ( image::images/style-rule-editor-btn.png[] ) button, located in upper-left region of CSS editor toolbar)
+* *Style Rule Editor:* A dialog enabling you to create rules based on classes, ID's and HTML elements, and set their position in the document hierarchy. (Create Rule ( image:images/style-rule-editor-btn.png[] ) button, located in upper-left region of CSS editor toolbar)
 
 NetBeans 6.9 provides Rename Refactoring and Find Usages support. This support is available not only in css files, but in all files containing embedded CSS code (e.g., HTML, PHP). CSS classes, id's and type elements can be refactored in all project files. To make use of this refactoring support, press Ctrl-R on a given CSS element and use the provided dialog to perform the rename action. You can also preview changes before performing the rename action. To utilize Find Usages support, right-click a CSS element and choose Find Usages. See link:http://wiki.netbeans.org/wiki/index.php?title=NewAndNoteworthy69m1&section=T-25#Web_Languages[+NewAndNoteworthy69m1+] for more details.
 
@@ -930,7 +984,8 @@
 
 Perform a check on the validity of your CSS code by right-clicking in the CSS Editor and choosing Check CSS. Any errors encountered are displayed in the Output window (Windows > Output).
 
-5. Switch to the `index.html` page in the editor (press Ctrl-Tab), and add a reference to the stylesheet between the `<head>` tags.
+[start=5]
+. Switch to the `index.html` page in the editor (press Ctrl-Tab), and add a reference to the stylesheet between the `<head>` tags.
 
 [source,java]
 ----
@@ -938,7 +993,9 @@
 <link rel="stylesheet" type="text/css" href="stylesheet.css">
 
 ----
-6. Run the application again. The index page displays in the browser using the stylesheet you just created. Each time you type in a character, an asynchronous request is sent to the server, and returned with XML data that has been prepared by `autocomplete.php`. As you enter more characters, the number of composer names decreases to reflect the new list of matches.
+
+[start=6]
+. Run the application again. The index page displays in the browser using the stylesheet you just created. Each time you type in a character, an asynchronous request is sent to the server, and returned with XML data that has been prepared by `autocomplete.php`. As you enter more characters, the number of composer names decreases to reflect the new list of matches.
 
 
 
diff --git a/netbeans.apache.org/src/content/kb/docs/php/ajax-quickstart_ja.asciidoc b/netbeans.apache.org/src/content/kb/docs/php/ajax-quickstart_ja.asciidoc
index c122ef3..f5b17cb 100644
--- a/netbeans.apache.org/src/content/kb/docs/php/ajax-quickstart_ja.asciidoc
+++ b/netbeans.apache.org/src/content/kb/docs/php/ajax-quickstart_ja.asciidoc
@@ -89,21 +89,30 @@
 
 1. 「ファイル」>「新規プロジェクト」を選択します。「カテゴリ」から「*PHP*」を選択します。「プロジェクト」で「*PHPアプリケーション*」を選択し、「*次*」をクリックします。
 2. ステップ2の「名前と場所」で、プロジェクト名に「`MyAjaxApp`」と入力します。「ソース・フォルダ」フィールドでコンピュータ上でのプロジェクトの場所を指定できます。他のオプションはデフォルトのままにして、「*次*」をクリックします。
+
 image::images/php-name-location.png[title="新規PHPプロジェクト・ウィザード - 「名前と場所」パネル"]
-3. ステップ3の「実行構成」で、アプリケーションのデプロイ方法を指定します。*AMPパッケージを構成してPHP開発環境を設定した場合は、ドロップダウン・リストから「*ローカルWebサイト*」を選択し、ブラウザに表示するプロジェクトのURLを指定します。
-4. 「ファイルをソース・フォルダから別の場所にコピー」オプションを選択します。次に、「フォルダにコピー」フィールドに、サーバー上のデプロイ先のパスを入力します。(Apacheでは、デフォルトの`htdocs`ディレクトリを使用します。)
+
+[start=3]
+. ステップ3の「実行構成」で、アプリケーションのデプロイ方法を指定します。*AMPパッケージを構成してPHP開発環境を設定した場合は、ドロップダウン・リストから「*ローカルWebサイト*」を選択し、ブラウザに表示するプロジェクトのURLを指定します。
+
+[start=4]
+. 「ファイルをソース・フォルダから別の場所にコピー」オプションを選択します。次に、「フォルダにコピー」フィールドに、サーバー上のデプロイ先のパスを入力します。(Apacheでは、デフォルトの`htdocs`ディレクトリを使用します。)
 [.feature]
 --
 image:images/php-run-config.png[role="left", link="images/php-run-config.png"]
 --
-5. 「*終了*」をクリックします。IDEによってプロジェクト・フォルダがファイル・システム内に作成され、プロジェクトがIDEで開きます。
+
+[start=5]
+. 「*終了*」をクリックします。IDEによってプロジェクト・フォルダがファイル・システム内に作成され、プロジェクトがIDEで開きます。
 
 プロジェクト・ウィザードを使用して、  フレームワークのサポートをプロジェクトに追加することもできます(ウィザードのステップ4)。
 
 デフォルトの`index.php`インデックス・ページが生成され、IDEのエディタで開きます。また、「プロジェクト」ウィンドウにプロジェクトが表示されます。
 
 image::images/php-proj-win.png[title="MyAjaxAppプロジェクトが表示された「プロジェクト」ウィンドウ"]
-6. コーディングを始める前に、アプリケーションを実行してみて、IDE、サーバー、ブラウザの間の構成が正しく設定されていることを確認します。
+
+[start=6]
+. コーディングを始める前に、アプリケーションを実行してみて、IDE、サーバー、ブラウザの間の構成が正しく設定されていることを確認します。
 
 IDEのエディタで、indexページに次の`echo`文を追加します。
 
@@ -116,7 +125,9 @@
 ?>
 
 ----
-7. 「プロジェクト」ウィンドウでプロジェクト・ノードを右クリックし、「実行」を選択します。IDEによってデフォルトのブラウザが開き、`index.php`で作成したメッセージ「Hello World」が表示されます。
+
+[start=7]
+. 「プロジェクト」ウィンドウでプロジェクト・ノードを右クリックし、「実行」を選択します。IDEによってデフォルトのブラウザが開き、`index.php`で作成したメッセージ「Hello World」が表示されます。
 
 *注意:* プロジェクトを設定できない場合、またはIDE、サーバー、およびブラウザ間で通信を確立できない場合は、link:project-setup.html[+PHPプロジェクトの設定+]を参照して、詳細な手順を確認してください。環境の構成については、link:../../trails/php.html[+PHPの学習+]を参照してください。
 
@@ -139,7 +150,7 @@
 2. HTMLファイル・ウィザードで、ファイル名に「`index`」と入力し、「*終了*」をクリックします。新しい`index.html`ファイルがエディタで開きます。
 3. このファイルの既存の内容を次の内容に置き換えます。
 
-[source,xml]
+[source,html]
 ----
 
 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
@@ -156,7 +167,9 @@
 </html>
 
 ----
-4. テキスト・フィールドの目的を説明するテキストを追加します。次のテキストをコピーして、`<h1>`タグのすぐ下に貼り付けることもできます。
+
+[start=4]
+. テキスト・フィールドの目的を説明するテキストを追加します。次のテキストをコピーして、`<h1>`タグのすぐ下に貼り付けることもできます。
 
 [source,html]
 ----
@@ -169,16 +182,21 @@
     then click on one of the selections to see composer details.</p>
 
 ----
-5. ページにHTMLフォームを追加します。この操作を行うには、IDEのパレットに表示されている要素を使用します。パレットが開いていない場合は、メイン・メニューから「ウィンドウ」>「パレット」を選択します。次に「HTMLフォーム」の下にある「フォーム」要素をクリックし、ページ内に追加した`<p>`タグの下までドラッグします。「挿入フォーム」ダイアログ・ボックスが表示されます。次の値を指定します。
+
+[start=5]
+. ページにHTMLフォームを追加します。この操作を行うには、IDEのパレットに表示されている要素を使用します。パレットが開いていない場合は、メイン・メニューから「ウィンドウ」>「パレット」を選択します。次に「HTMLフォーム」の下にある「フォーム」要素をクリックし、ページ内に追加した`<p>`タグの下までドラッグします。「挿入フォーム」ダイアログ・ボックスが表示されます。次の値を指定します。
 
 * アクション: autocomplete.php
 * メソッド: GET
 * 名前: autofillform
+
 image::images/php-insert-form.png[title="「挿入フォーム」ダイアログ"]
 
 「OK」をクリックします。指定した属性を含むHTMLの`<form>`タグがページに挿入されます。(GETはデフォルトで適用されるので、明示的に宣言しません。)
 
-6. HTML表をページに追加します。パレットの「HTML」カテゴリの下で「表」要素をクリックし、`<form>`タグの間の位置までドラッグします。「挿入表」ダイアログ・ボックスが開きます。次の値を指定します。
+
+[start=6]
+. HTML表をページに追加します。パレットの「HTML」カテゴリの下で「表」要素をクリックし、`<form>`タグの間の位置までドラッグします。「挿入表」ダイアログ・ボックスが開きます。次の値を指定します。
 
 * 行: 2
 * 列: 2
@@ -186,10 +204,13 @@
 * 幅: 0
 * セルの間隔: 0
 * セルのパディング: 5
-image::images/insert-table.png[title="「挿入表」ダイアログ"]
-7. ソース・エディタ内を右クリックし、「フォーマット」を選択します。これでコードの体裁が整います。フォームは次のようになります。
 
-[source,xml]
+image::images/insert-table.png[title="「挿入表」ダイアログ"]
+
+[start=7]
+. ソース・エディタ内を右クリックし、「フォーマット」を選択します。これでコードの体裁が整います。フォームは次のようになります。
+
+[source,html]
 ----
 
 <form name="autofillform" action="autocomplete.php">
@@ -214,16 +235,20 @@
 </form>
 
 ----
-8. 表の1行目の1列目に次のテキストを入力します(*太字*部分が変更箇所)。
 
-[source,xml]
+[start=8]
+. 表の1行目の1列目に次のテキストを入力します(*太字*部分が変更箇所)。
+
+[source,html]
 ----
 
 <td>*<strong>Composer Name:</strong>*</td>
 ----
-9. 1行目の2列目では、パレットから「テキスト入力」フィールドをドラッグしないで、次のコードを手動で入力します。
 
-[source,java]
+[start=9]
+. 1行目の2列目では、パレットから「テキスト入力」フィールドをドラッグしないで、次のコードを手動で入力します。
+
+[source,html]
 ----
 
 <input type="text"
@@ -233,14 +258,20 @@
 
 ----
 入力するときは、IDEに組み込まれているコード補完サポートを使用してみてください。たとえば、「`<i`」と入力して[Ctrl]-[Space]を押します。カーソルの下に候補のリストが表示され、選択されている要素の説明が上のボックスに表示されます。ソース・エディタでコーディングしているときはいつでも[Ctrl]-[Space]を押して候補を表示できます。候補が1つのみの場合は、[Ctrl]-[Space]を押すと要素名が自動的に補完されます。
-image::images/code-completion.png[title="[Ctrl]-[Space]を押してソース・エディタでトリガーされたコード補完"]
+image:images/code-completion.png[title="[Ctrl]-[Space]を押してソース・エディタでトリガーされたコード補完"]
 入力した`onkeyup`属性はJavaScript関数`doCompletion()`を指しています。この関数は、フォームのテキスト・フィールド内でキーが押されるたびにコールされ、Ajaxの<<flow-diagram,フロー図>>に示したJavaScriptコールに対応します。
-10. JavaScriptエディタでの作業に移る前に、アプリケーションのエントリ・ポイントとして`index.php`ファイルを新しい`index.html`ファイルに置き換えます。
 
-これを行うには、「プロジェクト」ウィンドウでプロジェクト・ノードを右クリックし、「プロパティ」を選択します。「*実行構成*」カテゴリを選択し、「開始ファイル」フィールドに「`index.html`」と入力します。image::images/php-entry-point.png[title="「プロジェクト・プロパティ」ウィンドウで、アプリケーションのエントリ・ポイントを指定します。"]
-11. 「OK」をクリックして変更を保存し、「プロジェクト・プロパティ」ウィンドウを終了します。
-12. プロジェクトを実行して、ブラウザでどのように表示されるかを確認します。「プロジェクトの実行」(image::images/run-project-btn.png[])ボタンをクリックします。`index.html`ファイルがデフォルトのブラウザに表示されます。
-image::images/index-page.png[title="プロジェクトを実行してブラウザに現在の状態を表示"]
+[start=10]
+. JavaScriptエディタでの作業に移る前に、アプリケーションのエントリ・ポイントとして`index.php`ファイルを新しい`index.html`ファイルに置き換えます。
+
+これを行うには、「プロジェクト」ウィンドウでプロジェクト・ノードを右クリックし、「プロパティ」を選択します。「*実行構成*」カテゴリを選択し、「開始ファイル」フィールドに「`index.html`」と入力します。image:images/php-entry-point.png[title="「プロジェクト・プロパティ」ウィンドウで、アプリケーションのエントリ・ポイントを指定します。"]
+
+[start=11]
+. 「OK」をクリックして変更を保存し、「プロジェクト・プロパティ」ウィンドウを終了します。
+
+[start=12]
+. プロジェクトを実行して、ブラウザでどのように表示されるかを確認します。「プロジェクトの実行」(image:images/run-project-btn.png[])ボタンをクリックします。`index.html`ファイルがデフォルトのブラウザに表示されます。
+image:images/index-page.png[title="プロジェクトを実行してブラウザに現在の状態を表示"]
 
 
 [[javascript]]
@@ -260,7 +291,7 @@
 2. ファイル名を`javascript`にし、「終了」をクリックします。新しいJavaScriptファイルが「プロジェクト」ウィンドウに表示され、エディタで開きます。
 3. 次のコードを`javascript.js`に入力します。
 
-[source,java]
+[source,php]
 ----
 
 var req;
@@ -294,9 +325,11 @@
 
 上のコードは、Firefox 3およびInternet Explorerバージョン6と7の単純なブラウザ互換性チェックを行います。互換性の問題に対してさらに堅牢なコードを取り込むには、link:http://www.quirksmode.org[+http://www.quirksmode.org+]のlink:http://www.quirksmode.org/js/detect.html[+ブラウザ検出スクリプト+]を使用することを検討してください。
 
-4. `index.html`に戻り、JavaScriptファイルへの参照を`<head>`タグの間に追加します。
 
-[source,xml]
+[start=4]
+. `index.html`に戻り、JavaScriptファイルへの参照を`<head>`タグの間に追加します。
+
+[source,html]
 ----
 
 <script type="text/javascript" src="javascript.js"></script>
@@ -305,9 +338,11 @@
 
 [Ctrl]-[Tab]を押すと、エディタ内で開いているページを簡単に切り替えることができます。
 
-5. `init()`へのコールを開始`<body>`タグ内に挿入します。
 
-[source,java]
+[start=5]
+. `init()`へのコールを開始`<body>`タグ内に挿入します。
+
+[source,html]
 ----
 
 <body *onload="init()"*>
@@ -329,7 +364,7 @@
 
 * URL `autocomplete.php`、およびユーザーが`complete-field`に入力したテキスト
 
-[source,java]
+[source,php]
 ----
 
 var url = "autocomplete.php?action=complete&amp;id=" + escape(completeField.value);
@@ -337,7 +372,7 @@
 * `GET` (HTTPの相互作用で`GET`メソッドを使用することを示します)
 * `true` (相互作用は非同期であることを示します)
 
-[source,java]
+[source,php]
 ----
 
 req.open("GET", url, true);
@@ -346,7 +381,7 @@
 相互作用を非同期に設定する場合は、コールバック関数を指定します。この相互作用のコールバック関数は次の文で設定します。
 
 
-[source,java]
+[source,php]
 ----
 
 req.onreadystatechange = callback;
@@ -418,7 +453,9 @@
 
 }
 ----
-4. エディタで、次のコードをクラス内に貼り付けます(変更箇所は*太字*で表示)。
+
+[start=4]
+. エディタで、次のコードをクラス内に貼り付けます(変更箇所は*太字*で表示)。
 
 [source,php]
 ----
@@ -502,9 +539,12 @@
 受信リクエストによって受け取る`autocomplete` URLを処理するロジックを実装します。前の項で説明したように、ファイル・ウィザードを使用して新しいPHPファイルを作成するかわりに、ここでは既存の`index.php`ファイルを変更します。
 
 1. 「プロジェクト」ウィンドウで`index.php`ファイル・ノードをクリックします。ファイル名が編集可能になり、名前を変更できるようになります。
+
 image::images/edit-file-name.png[title="ファイル・ノードをクリックして名前を編集"]
-2. ファイル名を`autocomplete`にし、[Enter]を押します。新しい`autocomplete.php`ファイルをダブルクリックし、エディタに表示します。
-3. このファイルの既存のコードを次のスクリプトに置き換えます。
+
+[start=2]
+. ファイル名を`autocomplete`にし、[Enter]を押します。新しい`autocomplete.php`ファイルをダブルクリックし、エディタに表示します。
+. このファイルの既存のコードを次のスクリプトに置き換えます。
 
 [source,php]
 ----
@@ -676,7 +716,9 @@
 </tr>
 ----
 この新しい行は「`auto-row`」として識別でき、オートコンプリート・ボックスを形成する新しいHTML表を挿入するための、JavaScriptコード用のハンドルの役割を果たします。
-2. `javascript.js`をエディタで開き、次の3つの変数をファイルの先頭に追加します。
+
+[start=2]
+. `javascript.js`をエディタで開き、次の3つの変数をファイルの先頭に追加します。
 
 [source,java]
 ----
@@ -685,7 +727,9 @@
 var completeTable;
 var autoRow;
 ----
-3. 次の*太字*の行を`init()`関数に追加します。
+
+[start=3]
+. 次の*太字*の行を`init()`関数に追加します。
 
 [source,java]
 ----
@@ -711,7 +755,9 @@
     <td/>
 </tr>
 ----
-4. `appendComposer()`を`javascript.js`に追加します。
+
+[start=4]
+. `appendComposer()`を`javascript.js`に追加します。
 
 [source,java]
 ----
@@ -744,7 +790,9 @@
 }
 ----
 この関数は、表の新しい行を作成し、3つのパラメータによって関数に渡されたデータを使用して作曲家へのリンクを挿入してから、行をindexページの`complete-table`要素に挿入します。
-5. `clearTable()`を`javascript.js`に追加します。
+
+[start=5]
+. `clearTable()`を`javascript.js`に追加します。
 
 [source,java]
 ----
@@ -759,7 +807,9 @@
 }
 ----
 この関数は`complete-table`要素の表示を'none'に設定し(非表示にし)、作成された既存の作曲家の名前エントリを除去します。
-6. `getElementY()`を`javascript.js`に追加します。
+
+[start=6]
+. `getElementY()`を`javascript.js`に追加します。
 
 [source,java]
 ----
@@ -783,7 +833,9 @@
 
 *注意: *link:http://www.quirksmode.org/[+http://www.quirksmode.org/+]にある`offset`に関するlink:http://www.quirksmode.org/js/findpos.html[+説明+]を参照してください。
 
-7. `callback()`関数を変更して、サーバーから新しいデータを受け取るたびに`clearTable()`をコールするようにします。オートコンプリート・ボックスに作曲家のエントリがある場合は、新しいエントリが入力される前に除去されます。
+
+[start=7]
+. `callback()`関数を変更して、サーバーから新しいデータを受け取るたびに`clearTable()`をコールするようにします。オートコンプリート・ボックスに作曲家のエントリがある場合は、新しいエントリが入力される前に除去されます。
 
 [source,java]
 ----
@@ -799,7 +851,9 @@
     }
 }
 ----
-8. `parseMessages()`を`javascript.js`に追加します。
+
+[start=8]
+. `parseMessages()`を`javascript.js`に追加します。
 
 [source,java]
 ----
@@ -853,14 +907,14 @@
 
 これで、アプリケーションの機能に必要なコードが完成しました。作業の結果を確認するため、今すぐアプリケーションを実行してみてください。
 
-1. プロジェクトを実行して、ブラウザでどのように表示されるかを確認します。「プロジェクトの実行」(image::images/run-project-btn.png[])ボタンをクリックします。`index.html`ファイルがブラウザに表示されます。
-image::images/no-css.png[title="スタイル・シートなしでの正常なデプロイメント"]
+1. プロジェクトを実行して、ブラウザでどのように表示されるかを確認します。「プロジェクトの実行」(image:images/run-project-btn.png[])ボタンをクリックします。`index.html`ファイルがブラウザに表示されます。
+image:images/no-css.png[title="スタイル・シートなしでの正常なデプロイメント"]
 
 アプリケーションにスタイル・シートを添付するには、CSS (Cascading Style Sheet)ファイルを作成し、プレゼンテーション・ページからそのファイルにリンクします。CSSファイルで作業する場合、IDEには、コード補完サポートや、スタイル・シート・ルールの作成に役立つ他のいくつかの機能が提供されています。これには次のものが含まれています。
 
 * *CSSスタイル・ビルダー: *選択したコントロールやウィジェットを使用してルールを作成できるように設計されたインタフェースです(「ウィンドウ」>「その他」>「CSSスタイル・ビルダー」)。
 * *CSSプレビュー:* ルール内にカーソルを置くと、そのルールの宣言ブロックに従ってサンプル・テキストがレンダリングされるプレビュー・ウィンドウです(「ウィンドウ」>「その他」>「CSSプレビュー」)。
-* *スタイル・ルール・エディタ: *クラス、ID、HTML要素に基づいてルールを作成し、ドキュメント階層における位置を設定できるダイアログです(CSSエディタのツールバーの左上側にある「ルールを作成」(image::images/style-rule-editor-btn.png[])ボタン)。
+* *スタイル・ルール・エディタ: *クラス、ID、HTML要素に基づいてルールを作成し、ドキュメント階層における位置を設定できるダイアログです(CSSエディタのツールバーの左上側にある「ルールを作成」(image:images/style-rule-editor-btn.png[])ボタン)。
 
 NetBeans 6.9は、「名前の変更のリファクタリング」機能と「使用状況を検索」機能をサポートしています。これは、CSSファイルのみでなく、CSSコードが埋め込まれているすべてのファイルでサポートされます(HTML、PHPなど)。CSSのクラス、ID、およびタイプ要素を、すべてのプロジェクト・ファイルでリファクタリングできます。このリファクタリングのサポートを利用するには、任意のCSS要素上で[Ctrl]-[R]を押し、表示されたダイアログで名前変更アクションを実行します。また、名前変更アクションを実行する前に、変更をプレビューすることもできます。「使用状況を検索」機能のサポートを利用するには、CSS要素を右クリックし、「使用状況を検索」を選択します。詳細は、link:http://wiki.netbeans.org/wiki/index.php?title=NewAndNoteworthy69m1&section=T-25#Web_Languages[+NewAndNoteworthy69m1+]を参照してください。
 
@@ -940,7 +994,9 @@
 
 CSSエディタ内を右クリックして「CSSの確認」を選択し、CSSコードの妥当性のチェックを実行します。エラーがあった場合は「出力」ウィンドウ(「ウィンドウ」>「出力」)に表示されます。
 
-5. エディタで`index.html`ページに切り替え([Ctrl]-[Tab]を押します)、`<head>`タグの間にスタイル・シートへの参照を追加します。
+
+[start=5]
+. エディタで`index.html`ページに切り替え([Ctrl]-[Tab]を押します)、`<head>`タグの間にスタイル・シートへの参照を追加します。
 
 [source,java]
 ----
@@ -948,7 +1004,9 @@
 <link rel="stylesheet" type="text/css" href="stylesheet.css">
 
 ----
-6. アプリケーションをもう一度実行します。インデックス・ページが、作成したスタイル・シートを使用してブラウザに表示されます。文字を入力するたびに非同期のリクエストがサーバーに送信され、`autocomplete.php`によって作成されたXMLデータが返されます。さらに文字を入力すると、新しい一致リストを反映して作曲家の名前の数が減ります。
+
+[start=6]
+. アプリケーションをもう一度実行します。インデックス・ページが、作成したスタイル・シートを使用してブラウザに表示されます。文字を入力するたびに非同期のリクエストがサーバーに送信され、`autocomplete.php`によって作成されたXMLデータが返されます。さらに文字を入力すると、新しい一致リストを反映して作曲家の名前の数が減ります。
 
 
 
diff --git a/netbeans.apache.org/src/content/kb/docs/php/ajax-quickstart_pt_BR.asciidoc b/netbeans.apache.org/src/content/kb/docs/php/ajax-quickstart_pt_BR.asciidoc
index 995e06e..2195e73 100644
--- a/netbeans.apache.org/src/content/kb/docs/php/ajax-quickstart_pt_BR.asciidoc
+++ b/netbeans.apache.org/src/content/kb/docs/php/ajax-quickstart_pt_BR.asciidoc
@@ -33,10 +33,6 @@
 
 Ajax significa Asynchronous JavaScript and XML. Na essência, o Ajax é uma forma eficiente de uma aplicação web tratar as interações do usuário com uma página web: uma forma que reduz a necessidade de fazer uma atualização da página ou uma recarga completa da página para cada interação do usuário. Isso permite um comportamento detalhado (semelhante ao de uma aplicação de área de trabalho ou aplicação web com base em plug-in) na utilização de um browser. As interações do Ajax são tratadas assincronamente em segundo plano. Enquanto isso acontece, um usuário pode continuar trabalhando com a página. As interações do Ajax são iniciadas pelo código JavaScript. Quando a interação do Ajax é concluída, o JavaScript atualiza o código-fonte HTML da página. As alterações são feitas imediatamente sem requerer uma atualização da página. As interações do Ajax podem ser utilizadas para fazer coisas como validar entradas do form (enquanto o usuário as está digitando) utilizando lógica do lado do servidor, recuperar dados detalhados do servidor, atualizar dinamicamente os dados em uma página e submeter forms parciais a partir da página.
 
-
-image::images/netbeans-stamp-80-74-73.png[title="O conteúdo desta página se aplica ao NetBeans IDE 7.2, 7.3, 7.4 e 8.0"]
-
-
 *Para concluir este tutorial, você precisa dos seguintes recursos e softwares.*
 
 |===
@@ -89,21 +85,34 @@
 
 1. Escolha Arquivo > Novo Projeto. Em Categorias, selecione *PHP*. Em Projetos, selecione *Aplicação PHP* e, em seguida, clique em *Próximo*.
 2. Na etapa 2: Nome e Localização, nomeie o projeto `MyAjaxApp`. O campo Pasta de Códigos-Fonte permite que você especifique o local do projeto no seu computador. Deixe as outras opções como default e clique em *Próximo*. 
-image::images/php-name-location.png[title="Assistente Novo Projeto PHP: painel Nome e Localização"]
-3. Na etapa 3: Configuração de Execução, especifique como você deseja implantar a aplicação. Se tiver definido o ambiente de desenvolvimento do PHP configurando um pacote *AMP, deverá selecionar *Local Web Site* na lista drop-down e especificar o URL do projeto, como ele aparecerá em um browser.
-4. Selecione a opção Copiar arquivos da Pasta de Códigos-Fonte para outra localização. Em seguida, no campo Copiar para Pasta, digite o caminho para o local de implantação no servidor. (No Apache, é o diretório `htdocs` default.) 
+
+image:images/php-name-location.png[title="Assistente Novo Projeto PHP: painel Nome e Localização"]
+
+
+[start=3]
+. Na etapa 3: Configuração de Execução, especifique como você deseja implantar a aplicação. Se tiver definido o ambiente de desenvolvimento do PHP configurando um pacote *AMP, deverá selecionar *Local Web Site* na lista drop-down e especificar o URL do projeto, como ele aparecerá em um browser.
+
+[start=4]
+. Selecione a opção Copiar arquivos da Pasta de Códigos-Fonte para outra localização. Em seguida, no campo Copiar para Pasta, digite o caminho para o local de implantação no servidor. (No Apache, é o diretório `htdocs` default.) 
+
 [.feature]
 --
 image::images/php-run-config.png[role="left", link="images/php-run-config.png"]
 --
-5. Clique em *Finalizar*. O IDE criará a pasta do projeto em seu sistema de arquivos e o projeto será aberto no IDE. 
+
+
+[start=5]
+. Clique em *Finalizar*. O IDE criará a pasta do projeto em seu sistema de arquivos e o projeto será aberto no IDE. 
 
 Você também pode utilizar o assistente Projeto para adicionar  suporte ao framework para o projeto (fornecido na Etapa 4 do assistente).
 
 Uma página de índice `index.php` default será gerada e aberta no editor do IDE. Além disso, seu projeto aparece na janela Projetos.
 
 image::images/php-proj-win.png[title="A janela Projetos exibe o projeto MyAjaxApp"]
-6. Antes de começar a codificar, tente rapidamente executar a aplicação para garantir que a configuração entre o IDE, seu servidor e o browser esteja configurada corretamente. 
+
+
+[start=6]
+. Antes de começar a codificar, tente rapidamente executar a aplicação para garantir que a configuração entre o IDE, seu servidor e o browser esteja configurada corretamente. 
 
 No editor do IDE, adicione uma instrução `echo` à página de índice:
 
@@ -116,9 +125,11 @@
 ?>
 
 ----
-7. Na janela Projetos, clique com o botão direito do mouse no nó do projeto e selecione Executar. O IDE abrirá o browser default e exibirá a mensagem Olá Mundo que você acabou de criar em `index.php`. 
 
-*Observação:* se tiver dificuldade em configurar o projeto ou estabelecer comunicação entre o IDE, o servidor e o browser, consulte link:project-setup.html[+Configurando um Projeto PHP+] para obter uma descrição mais aprofundada. A link:../../trails/php.html[+Trilha de Aprendizado do PHP+] pode oferecer mais informações sobre como configurar o ambiente.
+[start=7]
+. Na janela Projetos, clique com o botão direito do mouse no nó do projeto e selecione Executar. O IDE abrirá o browser default e exibirá a mensagem Olá Mundo que você acabou de criar em `index.php`. 
+
+NOTE:  se tiver dificuldade em configurar o projeto ou estabelecer comunicação entre o IDE, o servidor e o browser, consulte link:project-setup.html[+Configurando um Projeto PHP+] para obter uma descrição mais aprofundada. A link:../../trails/php.html[+Trilha de Aprendizado do PHP+] pode oferecer mais informações sobre como configurar o ambiente.
 
 
 [[html]]
@@ -139,7 +150,7 @@
 2. No assistente Arquivo HTML, nomeie o arquivo `index` e, em seguida, clique em *Finalizar*. O novo arquivo `index.html` será aberto no editor.
 3. Substitua o conteúdo existente para os arquivos como se segue.
 
-[source,xml]
+[source,html]
 ----
 
 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
@@ -156,7 +167,9 @@
 </html>
 
 ----
-4. Adicione algum texto explicativo para descrever a finalidade do campo de texto. Você pode copiar e colar no texto a seguir, no ponto logo abaixo das tags `<h1>`:
+
+[start=4]
+. Adicione algum texto explicativo para descrever a finalidade do campo de texto. Você pode copiar e colar no texto a seguir, no ponto logo abaixo das tags `<h1>`:
 
 [source,html]
 ----
@@ -169,16 +182,21 @@
     then click on one of the selections to see composer details.</p>
 
 ----
-5. Adicione um form HTML à página. Faça isso utilizando os elementos listados na Paleta do IDE. Se a Paleta não estiver aberta, selecione Janela > Paleta no menu principal. Em seguida, em Forms HTML, clique e arraste um elemento Form para a página, um ponto abaixo das tags `<p>` que você acabou de adicionar. A caixa de diálogo Inserir Form será aberta. Especifique o seguinte: 
+
+[start=5]
+. Adicione um form HTML à página. Faça isso utilizando os elementos listados na Paleta do IDE. Se a Paleta não estiver aberta, selecione Janela > Paleta no menu principal. Em seguida, em Forms HTML, clique e arraste um elemento Form para a página, um ponto abaixo das tags `<p>` que você acabou de adicionar. A caixa de diálogo Inserir Form será aberta. Especifique o seguinte: 
 
 * Ação: autocomplete.php
 * Método: GET
 * Nome: autofillform
+
 image::images/php-insert-form.png[title="Caixa de diálogo Inserir form"]
 
 Clique em OK. As tags HTML `<form>` serão inseridas na página que contém os atributos especificados. (GET é aplicado por default e, portanto, não é declarado explicitamente.)
 
-6. Adicione uma tabela HTML à página. Na categoria HTML na Paleta, clique em um elemento Tabela e arraste-o para um ponto entre as tags `<form>`. A caixa de diálogo Inserir Tabela será aberta. Especifique o seguinte: 
+
+[start=6]
+. Adicione uma tabela HTML à página. Na categoria HTML na Paleta, clique em um elemento Tabela e arraste-o para um ponto entre as tags `<form>`. A caixa de diálogo Inserir Tabela será aberta. Especifique o seguinte: 
 
 * Linhas: 2
 * Colunas: 2
@@ -186,10 +204,14 @@
 * Largura: 0
 * Espaçamento da Célula: 0
 * Preenchimento de Células: 5
-image::images/insert-table.png[title="Caixa de diálogo Inserir tabela"]
-7. Clique com o botão direito do mouse no Editor de Código-Fonte e selecione Formatar. Isso limpa o código. Seu form agora deve ser semelhante ao abaixo:
 
-[source,xml]
+image::images/insert-table.png[title="Caixa de diálogo Inserir tabela"]
+
+
+[start=7]
+. Clique com o botão direito do mouse no Editor de Código-Fonte e selecione Formatar. Isso limpa o código. Seu form agora deve ser semelhante ao abaixo:
+
+[source,html]
 ----
 
 <form name="autofillform" action="autocomplete.php">
@@ -214,16 +236,20 @@
 </form>
 
 ----
-8. Na primeira linha da tabela, digite o seguinte texto na primeira coluna (alterações em *negrito*):
 
-[source,xml]
+[start=8]
+. Na primeira linha da tabela, digite o seguinte texto na primeira coluna (alterações em *negrito*):
+
+[source,html]
 ----
 
 <td>*<strong>Composer Name:</strong>*</td>
 ----
-9. Na segunda coluna da primeira linha, em vez de arrastar um campo Entrada de Texto da Paleta, digite o código abaixo manualmente.
 
-[source,java]
+[start=9]
+. Na segunda coluna da primeira linha, em vez de arrastar um campo Entrada de Texto da Paleta, digite o código abaixo manualmente.
+
+[source,html]
 ----
 
 <input type="text"
@@ -233,14 +259,21 @@
 
 ----
 Enquanto digita, tente utilizar o suporte à funcionalidade autocompletar código incorporado do IDE. Por exemplo, digite `<i` e, em seguida, pressione Ctrl-Espaço. Uma lista de opções sugeridas será exibida abaixo do seu cursor e uma descrição do elemento selecionado aparecerá em uma caixa acima. De fato, você pode pressionar Ctrl-Espaço a qualquer momento em que estiver codificando no Editor de Código-Fonte para ter acesso às opções possíveis. Além disso, caso só haja uma opção possível, pressionar Ctrl-Espaço completará automaticamente o nome do elemento. 
-image::images/code-completion.png[title="Ctrl-Espaço aciona a função autocompletar código no Editor de Código-Fonte"] 
+image:images/code-completion.png[title="Ctrl-Espaço aciona a função autocompletar código no Editor de Código-Fonte"] 
 O atributo `onkeyup` que você digitou acima aponta para uma função JavaScript chamada `doCompletion()`. Essa função é chamada toda vez que uma tecla é pressionada no campo de texto do form, e mapeia para a chamada JavaScript representada no <<flow-diagram,fluxograma>> do Ajax acima.
-10. Antes de prosseguir para trabalhar no editor JavaScript, faça com que o novo arquivo `index.html` substitua o arquivo `index.php` como ponto de entrada da aplicação. 
 
-Para fazê-lo, clique com o botão direito do mouse no nó do projeto na janela Projetos e selecione Propriedades. Selecione a categoria *Configuração de Execução* e, em seguida, digite `index.html` no campo Arquivo de Índice. image::images/php-entry-point.png[title="Especificar o ponto de entrada da aplicação na janela Propriedades do Projeto"]
-11. Clique em OK para salvar as alterações e sair da janela Propriedades do Projeto.
-12. Execute o projeto para ver como ele é em um browser. Clique no botão Executar Projeto (image::images/run-project-btn.png[]). O arquivo `index.html` será exibido no browser default. 
-image::images/index-page.png[title="Executar projeto para exibir seu status atual no browser"]
+[start=10]
+. Antes de prosseguir para trabalhar no editor JavaScript, faça com que o novo arquivo `index.html` substitua o arquivo `index.php` como ponto de entrada da aplicação. 
+
+Para fazê-lo, clique com o botão direito do mouse no nó do projeto na janela Projetos e selecione Propriedades. Selecione a categoria *Configuração de Execução* e, em seguida, digite `index.html` no campo Arquivo de Índice. image:images/php-entry-point.png[title="Especificar o ponto de entrada da aplicação na janela Propriedades do Projeto"]
+
+[start=11]
+. Clique em OK para salvar as alterações e sair da janela Propriedades do Projeto.
+
+[start=12]
+. Execute o projeto para ver como ele é em um browser. Clique no botão Executar Projeto (image:images/run-project-btn.png[]). O arquivo `index.html` será exibido no browser default. 
+
+image:images/index-page.png[title="Executar projeto para exibir seu status atual no browser"]
 
 
 [[javascript]]
@@ -260,7 +293,7 @@
 2. Nomeie o arquivo como `javascript` e clique em Finalizar. O novo arquivo JavaScript aparecerá na janela Projetos e será aberto no editor.
 3. Digite o código abaixo em `javascript.js`.
 
-[source,java]
+[source,php]
 ----
 
 var req;
@@ -294,9 +327,11 @@
 
 O código acima executa um verificação simples de compatibilidade do browser para o Firefox 3 e para o Internet Explorer versões 6 e 7). Se desejar incorporar um código mais robusto para problemas de compatibilidade, considere usar este link:http://www.quirksmode.org/js/detect.html[+script de detecção de browser+] disponível em link:http://www.quirksmode.org[+http://www.quirksmode.org+].
 
-4. Volte para `index.html` e adicione uma referência ao arquivo JavaScript entre as tags `<head>`.
 
-[source,xml]
+[start=4]
+. Volte para `index.html` e adicione uma referência ao arquivo JavaScript entre as tags `<head>`.
+
+[source,html]
 ----
 
 <script type="text/javascript" src="javascript.js"></script>
@@ -305,9 +340,11 @@
 
 Você pode alternar rapidamente entre as páginas abertas no editor pressionando Ctrl-Tab.
 
-5. Insira uma chamada a `init()` na tag de abertura `<body>`.
 
-[source,java]
+[start=5]
+. Insira uma chamada a `init()` na tag de abertura `<body>`.
+
+[source,html]
 ----
 
 <body *onload="init()"*>
@@ -329,7 +366,7 @@
 
 * O URL `autocomplete.php` e o texto digitado no `campo de conclusão` pelo usuário:
 
-[source,java]
+[source,php]
 ----
 
 var url = "autocomplete.php?action=complete&amp;id=" + escape(completeField.value);
@@ -337,7 +374,7 @@
 * `GET`, significando que as interações HTTP usam o método `GET`, e
 * `true`, significando que a interação é assíncrona:
 
-[source,java]
+[source,php]
 ----
 
 req.open("GET", url, true);
@@ -346,7 +383,7 @@
 Se a interação for definida como assíncrona, uma função de chamada de retorno deve ser especificada. A função de chamada de retorno dessa interação é definida com a instrução:
 
 
-[source,java]
+[source,php]
 ----
 
 req.onreadystatechange = callback;
@@ -418,7 +455,9 @@
 
 }
 ----
-4. No editor, cole no código a seguir dentro da classe (alterações em *negrito*).
+
+[start=4]
+. No editor, cole no código a seguir dentro da classe (alterações em *negrito*).
 
 [source,php]
 ----
@@ -502,7 +541,7 @@
 Implemente a lógica para tratar o URL `autocomplete` que é recebido pela solicitação de entrada. Em vez de criar um novo arquivo PHP utilizando o assistente Arquivo como demonstrado na seção anterior, modifique o arquivo `index.php` existente para esse propósito.
 
 1. Na janela Projetos, clique no nó de arquivo `index.php`. O nome do arquivo se tornará editável, permitindo modificar o nome. 
-image::images/edit-file-name.png[title="Clique nos nós dos arquivos para editar os nomes"]
+image:images/edit-file-name.png[title="Clique nos nós dos arquivos para editar os nomes"]
 2. Nomeie o arquivo `autocomplete` e, em seguida, clique em Entrar. Clique duas vezes no novo arquivo `autocomplete.php` para que ele seja exibido no editor.
 3. Substitua o código existente do arquivo pelo script a seguir.
 
@@ -571,7 +610,7 @@
 ?>
 ----
 
-*Observação: * o arquivo composerView.php não é descrito neste tutorial. Você pode criar um arquivo para ver o resultado final da pesquisa. Uma amostra do arquivo é incluída na link:https://netbeans.org/projects/samples/downloads/download/Samples%252FPHP%252FMyAjaxApp.zip[+aplicação de amostra+].
+NOTE:  o arquivo composerView.php não é descrito neste tutorial. Você pode criar um arquivo para ver o resultado final da pesquisa. Uma amostra do arquivo é incluída na link:https://netbeans.org/projects/samples/downloads/download/Samples%252FPHP%252FMyAjaxApp.zip[+aplicação de amostra+].
 
 Como você pode ver, não há nada realmente novo que precise ser aprendido para escrever código no servidor para processamento em Ajax. O tipo de conteúdo da resposta precisa ser definido como `text/xml` para casos em que você deseje trocar documentos XML. Com o Ajax você também pode trocar texto simples ou até mesmo snippets de JavaScript, que podem ser avaliados ou executados pela função chamada de retorno no cliente. Observe também que alguns browsers podem armazenar no cache os resultados; portanto, talvez seja necessário definir o cabeçalho Cache-Control HTTP como `no-cache`.
 
@@ -662,7 +701,7 @@
 
 A função `parseMessages()` trata os dados XML de entrada. Fazendo isso, ela conta com várias funções auxiliares, como `appendComposer()`, `getElementY()` e `clearTable()`. Você também deve introduzir novos elementos na página de índice, como uma segunda tabela HTML que serve como a caixa autocompletar, e os IDs dos elementos, para que eles possam ser referenciados em `javascript.js`. Finalmente, crie novas variáveis que correspondam a IDs para os elementos em `index.php`, inicialize-as na função `init()` implementada anteriormente e adicione alguma funcionalidade que seja necessária sempre que `index.php` for carregado.
 
-*Observação: *As funções e elementos que você cria nas etapas seguintes funcionam de forma interdependente. Recomendamos que você percorra esta seção e, em seguida, examine o código quando tudo estiver no lugar.
+NOTE: As funções e elementos que você cria nas etapas seguintes funcionam de forma interdependente. Recomendamos que você percorra esta seção e, em seguida, examine o código quando tudo estiver no lugar.
 
 1. Abra `index.html` no editor e digite o código abaixo para a segunda linha da tabela HTML criada anteriormente.
 
@@ -676,7 +715,9 @@
 </tr>
 ----
 Essa nova linha, que pode ser identificada como "`auto-row`", funciona como um handler para o código JavaScript cujo objetivo é inserir uma nova tabela HTML que formará a caixa da funcionalidade autocompletar.
-2. Abra `javascript.js` no editor e as três variáveis a seguir na parte superior do arquivo.
+
+[start=2]
+. Abra `javascript.js` no editor e as três variáveis a seguir na parte superior do arquivo.
 
 [source,java]
 ----
@@ -685,7 +726,9 @@
 var completeTable;
 var autoRow;
 ----
-3. Adicione as seguintes linhas (em *negrito*) na função `init()`.
+
+[start=3]
+. Adicione as seguintes linhas (em *negrito*) na função `init()`.
 
 [source,java]
 ----
@@ -711,7 +754,9 @@
     <td/>
 </tr>
 ----
-4. Adicione `appendComposer()` a `javascript.js`.
+
+[start=4]
+. Adicione `appendComposer()` a `javascript.js`.
 
 [source,java]
 ----
@@ -744,7 +789,9 @@
 }
 ----
 Essa função cria uma nova linha da tabela, insere um link em um criador utilizando os dados passados para a função por meio de seus três parâmetros e insere a linha no elemento `complete-table` da página de índice.
-5. Adicione `clearTable()` a `javascript.js`.
+
+[start=5]
+. Adicione `clearTable()` a `javascript.js`.
 
 [source,java]
 ----
@@ -759,7 +806,9 @@
 }
 ----
 Essa função define a exibição do elemento `complete-table` como "none" (ou seja, o torna invisível) e remove quaisquer entradas de nome de criador existentes que tenham sido criadas.
-6. Adicione `getElementY()` a `javascript.js`.
+
+[start=6]
+. Adicione `getElementY()` a `javascript.js`.
 
 [source,java]
 ----
@@ -781,9 +830,11 @@
 ----
 Essa função é aplicada para localizar a posição vertical do elemento pai. Isso é necessário porque a posição real do elemento, quando ele é exibido, frequentemente depende do tipo e da versão do browser. Note que o elemento `complete-table`, quando é exibido contendo nomes de criador, é deslocado para o lado direito inferior da tabela em que ele está. O posicionamento correto da altura é determinado por `getElementY()`. 
 
-*Observação: *Consulte link:http://www.quirksmode.org/js/findpos.html[+esta explicação+] de `offset` em link:http://www.quirksmode.org/[+http://www.quirksmode.org/+].
+NOTE: Consulte link:http://www.quirksmode.org/js/findpos.html[+esta explicação+] de `offset` em link:http://www.quirksmode.org/[+http://www.quirksmode.org/+].
 
-7. Modifique a função `callback()` para que chame `clearTable()` cada vez que novos dados forem recebidos do servidor. Quaisquer entradas do criador que já existam na caixa autocompletar serão, portanto, removidas, antes que esta seja preenchida com novas entradas.
+
+[start=7]
+. Modifique a função `callback()` para que chame `clearTable()` cada vez que novos dados forem recebidos do servidor. Quaisquer entradas do criador que já existam na caixa autocompletar serão, portanto, removidas, antes que esta seja preenchida com novas entradas.
 
 [source,java]
 ----
@@ -799,7 +850,9 @@
     }
 }
 ----
-8. Adicione `parseMessages()` a `javascript.js`.
+
+[start=8]
+. Adicione `parseMessages()` a `javascript.js`.
 
 [source,java]
 ----
@@ -853,14 +906,14 @@
 
 Nesse estágio, você concluiu todo o código necessário para a funcionalidade da aplicação. Para ver os resultados dos seus esforços, tente executar a aplicação agora.
 
-1. Execute o projeto para ver como ele é em um browser. Clique no botão Executar Projeto (image::images/run-project-btn.png[]). O arquivo `index.html` será exibido no seu browser. 
-image::images/no-css.png[title="Implantação com sucesso sem folha de estilo"]
+1. Execute o projeto para ver como ele é em um browser. Clique no botão Executar Projeto (image:images/run-project-btn.png[]). O arquivo `index.html` será exibido no seu browser. 
+image:images/no-css.png[title="Implantação com sucesso sem folha de estilo"]
 
 Para anexar uma folha de estilo à sua aplicação, basta criar um arquivo CSS (Cascading Style Sheet) e vincule-o a partir das suas páginas de apresentação. Quando você trabalha em arquivos CSS, o IDE fornece o suporte à funcionalidade autocompletar código, assim como várias outras funcionalidades que podem ajudar na produção de regras de folha de estilo. Entre eles se incluem:
 
 * *Construtor de Estilo CSS:* uma interface criada para permitir que você crie regras utilizando uma seleção de controles e widgets. (Janela > Outro > Construtor de Estilo CSS)
 * *Visualização de CSS:* uma janela de visualização que, quando você coloca o cursor em uma regra, exibe o texto de amostra renderizado de acordo com o bloco de declaração dessa regra. (Janela > Outro > Visualização CSS)
-* *Editor de Regras de Estilo:* uma caixa de diálogo que permite que você crie regras com base em classes, IDs e elementos HTML e que defina sua posição na hierarquia do documento. (Botão Criar Regra ( image::images/style-rule-editor-btn.png[] ), localizado na região esquerda superior da barra de editores do CSS)
+* *Editor de Regras de Estilo:* uma caixa de diálogo que permite que você crie regras com base em classes, IDs e elementos HTML e que defina sua posição na hierarquia do documento. (Botão Criar Regra ( image:images/style-rule-editor-btn.png[] ), localizado na região esquerda superior da barra de editores do CSS)
 
 O NetBeans 6.9 fornece o suporte Encontrar Utilidades e Refatoração Renomear. Esse suporte está disponível não somente em arquivos css, mas em todos os arquivos contendo código CSS incorporados (exemplo, HTML, PHP). Classes CSS, ids e elementos de tipo podem ser refatorados em todos os arquivos do projeto. Para fazer uso desse suporte a refatoração, pressione Ctrl-R em um dado elemento CSS e utilize a caixa de diálogo fornecida para efetuar a ação de renomear. Você também pode visualizar alterações, antes de efetuar a ação de renomear. Para utilizar o suporte a Encontrar Utilidades, clique com o botão direito do mouse em um elemento CSS e selecione Encontrar Utilidades. Consulte link:http://wiki.netbeans.org/wiki/index.php?title=NewAndNoteworthy69m1&section=T-25#Web_Languages[+NewAndNoteworthy69m1+] para obter mais detalhes.
 
@@ -940,7 +993,9 @@
 
 Execute uma verificação da validade do seu código CSS, clicando com o botão direito do mouse no Editor CSS e selecionando Verificar CSS. Quaisquer erros encontrados são exibidos na janela de Saída (Janelas > Saída).
 
-5. Alterne para a página `index.html` no editor (pressione Ctrl-Tab) e adicione uma referência à folha de estilo entre as tags `<head>`.
+
+[start=5]
+. Alterne para a página `index.html` no editor (pressione Ctrl-Tab) e adicione uma referência à folha de estilo entre as tags `<head>`.
 
 [source,java]
 ----
@@ -948,7 +1003,9 @@
 <link rel="stylesheet" type="text/css" href="stylesheet.css">
 
 ----
-6. Execute a aplicação novamente. A página de índice é exibida no browser utilizando a folha de estilo recém-criada. Toda vez que você digita um caractere, uma solicitação assíncrona é enviada para o servidor e retornada com dados XML que foram preparados por `autocomplete.php`. Conforme você digita mais caracteres, o número de nomes de criador diminui para refletir a nova lista de correspondências.
+
+[start=6]
+. Execute a aplicação novamente. A página de índice é exibida no browser utilizando a folha de estilo recém-criada. Toda vez que você digita um caractere, uma solicitação assíncrona é enviada para o servidor e retornada com dados XML que foram preparados por `autocomplete.php`. Conforme você digita mais caracteres, o número de nomes de criador diminui para refletir a nova lista de correspondências.
 
 
 
diff --git a/netbeans.apache.org/src/content/kb/docs/php/ajax-quickstart_ru.asciidoc b/netbeans.apache.org/src/content/kb/docs/php/ajax-quickstart_ru.asciidoc
index 0c53d10..41bc13f 100644
--- a/netbeans.apache.org/src/content/kb/docs/php/ajax-quickstart_ru.asciidoc
+++ b/netbeans.apache.org/src/content/kb/docs/php/ajax-quickstart_ru.asciidoc
@@ -89,21 +89,30 @@
 
 1. Выберите команду "Файл" > "Новый проект". В области "Категории" выберите *PHP*. В области "Проекты" выберите *Приложение PHP* и нажмите кнопку *Далее*.
 2. На втором экране "Имя и местоположение" назовите проект `MyAjaxApp`. Поле "Папка источников" позволяет определять местоположение проекта в системе. *Для всех остальных параметров примите значения по умолчанию и нажмите кнопку "Далее".* 
+
 image::images/php-name-location.png[title="Мастер создания проектов PHP - панель 'Имя и местоположение'"]
-3. На третьем экране "Настройки выполнения" укажите способ развертывания приложения. Если среда разработки PHP формировалась путем настройки пакета *AMP, необходимо выбрать в раскрывающемся списке пункт *Локальный веб-сайт* и указать URL-адрес проекта, который должен использоваться в браузере.
-4. Выберите параметр "Скопировать файлы из папки источников в другое расположение". Затем в поле "Скопировать в папку" введите путь к местоположению для развертывания на сервере. На сервере Apache по умолчанию используется каталог `htdocs`. 
+
+[start=3]
+. На третьем экране "Настройки выполнения" укажите способ развертывания приложения. Если среда разработки PHP формировалась путем настройки пакета *AMP, необходимо выбрать в раскрывающемся списке пункт *Локальный веб-сайт* и указать URL-адрес проекта, который должен использоваться в браузере.
+
+[start=4]
+. Выберите параметр "Скопировать файлы из папки источников в другое расположение". Затем в поле "Скопировать в папку" введите путь к местоположению для развертывания на сервере. На сервере Apache по умолчанию используется каталог `htdocs`. 
 [.feature]
 --
 image::images/php-run-config.png[role="left", link="images/php-run-config.png"]
 --
-5. Нажмите кнопку *Готово*. Среда IDE создает папку проекта в файловой системе, после чего этот проект открывается в среде IDE. 
+
+[start=5]
+. Нажмите кнопку *Готово*. Среда IDE создает папку проекта в файловой системе, после чего этот проект открывается в среде IDE. 
 
 Также можно использовать мастер проектов для добавления  в проект платформенной поддержки (предоставляется в действии 4 мастера проектов)
 
 В редакторе среды IDE создается и открывается значение страницы `index.php` по умолчанию. Кроме того, проект появляется в окне "Проекты".
 
 image::images/php-proj-win.png[title="В окне 'Проекты' отображается проект MyAjaxApp"]
-6. Перед написанием программы попробуйте запустить приложение в целях проверки правильности настройки взаимосвязи между средой IDE, сервером и браузером. 
+
+[start=6]
+. Перед написанием программы попробуйте запустить приложение в целях проверки правильности настройки взаимосвязи между средой IDE, сервером и браузером. 
 
 В редакторе среды IDE добавьте оператор `echo` к начальной странице:
 
@@ -116,9 +125,11 @@
 ?>
 
 ----
-7. В окне "Проекты" щелкните правой кнопкой мыши узел проекта и выберите команду "Выполнить". В среде IDE открывается браузер по умолчанию, и на экране появляется сообщение "Hello World", только что созданное в `index.php`. 
 
-*Примечание.* При возникновении ошибок при настройке проекта или создании соединения между IDE, сервером и браузером более детальное описание см. в разделе link:project-setup.html[+Настройка проекта PHP+]. Дополнительные сведения относительно настройки среды содержатся в link:../../trails/php.html[+учебной карте PHP+].
+[start=7]
+. В окне "Проекты" щелкните правой кнопкой мыши узел проекта и выберите команду "Выполнить". В среде IDE открывается браузер по умолчанию, и на экране появляется сообщение "Hello World", только что созданное в `index.php`. 
+
+NOTE:  При возникновении ошибок при настройке проекта или создании соединения между IDE, сервером и браузером более детальное описание см. в разделе link:project-setup.html[+Настройка проекта PHP+]. Дополнительные сведения относительно настройки среды содержатся в link:../../trails/php.html[+учебной карте PHP+].
 
 
 [[html]]
@@ -139,7 +150,7 @@
 2. В мастере создания файла HTML введите имя файла `index`, затем нажмите кнопку *Готово*. В редакторе открывается созданный файл `index.html`.
 3. Замените содержимое файла на следующее:
 
-[source,xml]
+[source,html]
 ----
 
 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
@@ -156,7 +167,9 @@
 </html>
 
 ----
-4. Для описания назначения текстового поля следует добавить соответствующий пояснительный текст. Непосредственно под тегами `<h1>` можно скопировать и вставить следующий текст:
+
+[start=4]
+. Для описания назначения текстового поля следует добавить соответствующий пояснительный текст. Непосредственно под тегами `<h1>` можно скопировать и вставить следующий текст:
 
 [source,html]
 ----
@@ -169,16 +182,21 @@
     then click on one of the selections to see composer details.</p>
 
 ----
-5. Добавьте к странице форму HTML. Для этого можно использовать элементы, содержащиеся в палитре среды IDE. Если палитра не открыта, выберите в главном меню "Окно" > "Палитра". Затем перейдите к узлу "Формы HTML", выберите элемент "Форма" и перетащите его на страницу под только что добавленные теги `<p>`. Появится диалоговое окно "Вставить форму". Введите следующее: 
+
+[start=5]
+. Добавьте к странице форму HTML. Для этого можно использовать элементы, содержащиеся в палитре среды IDE. Если палитра не открыта, выберите в главном меню "Окно" > "Палитра". Затем перейдите к узлу "Формы HTML", выберите элемент "Форма" и перетащите его на страницу под только что добавленные теги `<p>`. Появится диалоговое окно "Вставить форму". Введите следующее: 
 
 * Action: response.jsp;
 * Method: GET;
 * Имя: autofillform
+
 image::images/php-insert-form.png[title="Диалоговое окно 'Вставить форму'"]
 
 Нажмите кнопку "ОК". Теги HTML `<form>` вставляются в страницу, содержащую указанные атрибуты. (Метод GET применяется по умолчанию, и, следовательно, не объявляется явно).
 
-6. Добавьте к странице таблицу HTML. В категории палитры "HTML" выберите элемент "Таблица" и перетащите его непосредственно под теги `<form>`. Откроется диалоговое окно "Вставить таблицу". Введите следующее: 
+
+[start=6]
+. Добавьте к странице таблицу HTML. В категории палитры "HTML" выберите элемент "Таблица" и перетащите его непосредственно под теги `<form>`. Откроется диалоговое окно "Вставить таблицу". Введите следующее: 
 
 * Рядов : 2
 * Столбцов : 2
@@ -186,10 +204,14 @@
 * Ширина: 0
 * Интервал между ячейками: 0
 * Заполнение ячеек: 5
-image::images/insert-table.png[title="Диалоговое окно 'Вставить таблицу'"]
-7. Щелкните правой кнопкой мыши редактор исходного кода и выберите команду "Форматировать". Последует выравнивание кода. Теперь форма должна выглядеть следующим образом:
 
-[source,xml]
+image::images/insert-table.png[title="Диалоговое окно 'Вставить таблицу'"]
+
+
+[start=7]
+. Щелкните правой кнопкой мыши редактор исходного кода и выберите команду "Форматировать". Последует выравнивание кода. Теперь форма должна выглядеть следующим образом:
+
+[source,html]
 ----
 
 <form name="autofillform" action="autocomplete.php">
@@ -214,16 +236,20 @@
 </form>
 
 ----
-8. В первый столбец первой строки таблицы введите следующий текст (изменения выделены *полужирным шрифтом*):
 
-[source,xml]
+[start=8]
+. В первый столбец первой строки таблицы введите следующий текст (изменения выделены *полужирным шрифтом*):
+
+[source,html]
 ----
 
 <td>*<strong>Composer Name:</strong>*</td>
 ----
-9. Во второй столбец первой строки вручную введите указанный ниже код (вместо перетаскивания поля "Ввод текста" из окна "Палитра").
 
-[source,java]
+[start=9]
+. Во второй столбец первой строки вручную введите указанный ниже код (вместо перетаскивания поля "Ввод текста" из окна "Палитра").
+
+[source,html]
 ----
 
 <input type="text"
@@ -233,13 +259,20 @@
 
 ----
 При вводе кода можно использовать встроенную в среду IDE функцию автозавершения кода. Например, введите `<i`, а затем нажмите CTRL+ПРОБЕЛ. Список предлагаемых вариантов выбора отображается под курсором, а в расположенном выше поле появляется описание выбранного элемента. Для получения возможных вариантов выбора при написании кода достаточно в любой момент нажать в редакторе исходного кода сочетание клавиш CTRL+ПРОБЕЛ. Кроме того, при наличии единственного возможного варианта выбора нажатие CTRL+ПРОБЕЛ приведет к автоматическому завершению кода с использованием элемента с этим именем. 
-image::images/code-completion.png[title="Нажатие Ctrl-Space инициирует автозавершение кода в редакторе исходного кода"] 
+image:images/code-completion.png[title="Нажатие Ctrl-Space инициирует автозавершение кода в редакторе исходного кода"] 
 Атрибут `onkeyup`, введенный выше, указывает на функцию JavaScript с именем `doCompletion()`. Эта функция вызывается при каждом нажатии клавиши в текстовом поле формы и соответствует вызову JavaScript на приведенной выше <<flow-diagram,блок-схеме>> Ajax.
-10. Перед переходом к работе с редактором JavaScript, замените файлом `index.html` файл `index.php` в качестве точки входа приложения. 
 
-Щелкните правой кнопкой мыши узел проекта в окне "Проекты" и выберите команду "Свойства". Выберите категорию *Конфигурация выполнения*, затем введите `index.html` в поле 'Файл индекса'. image::images/php-entry-point.png[title="Укажите точку входа приложения в окне 'Свойства проекта'"]
-11. Нажмите кнопку "ОК" для подтверждения изменений и закройте окно "Свойства проекта".
-12. Выполните проект и посмотрите, как он выглядит в браузере. Нажмите кнопку 'Запустить проект' ( image::images/run-project-btn.png[] ). Файл `index.html` открывается в браузере по умолчанию. 
+[start=10]
+. Перед переходом к работе с редактором JavaScript, замените файлом `index.html` файл `index.php` в качестве точки входа приложения. 
+
+Щелкните правой кнопкой мыши узел проекта в окне "Проекты" и выберите команду "Свойства". Выберите категорию *Конфигурация выполнения*, затем введите `index.html` в поле 'Файл индекса'. image:images/php-entry-point.png[title="Укажите точку входа приложения в окне 'Свойства проекта'"]
+
+[start=11]
+. Нажмите кнопку "ОК" для подтверждения изменений и закройте окно "Свойства проекта".
+
+[start=12]
+. Выполните проект и посмотрите, как он выглядит в браузере. Нажмите кнопку 'Запустить проект' ( image:images/run-project-btn.png[] ). Файл `index.html` открывается в браузере по умолчанию. 
+
 image::images/index-page.png[title="Выполните проект для просмотра его текущего состояния в браузере"]
 
 
@@ -260,7 +293,7 @@
 2. Назовите файл `javascript` и нажмите кнопку "Готово". Новый файл JavaScript появится в окне "Проекты" и может быть открыт в редакторе.
 3. Введите приведенный ниже код в файл `javascript.js`.
 
-[source,java]
+[source,php]
 ----
 
 var req;
@@ -294,9 +327,11 @@
 
 С помощью этого кода выполняется простая проверка совместимости веб-браузеров Firefox 3 и Internet Explorer версий 6 и 7). Если требуется добавить более надежный код, устраняющий ошибки совместимости, используйте link:http://www.quirksmode.org/js/detect.html[+сценарий для определения браузера+] с веб-сайта link:http://www.quirksmode.org[+http://www.quirksmode.org+].
 
-4. Вернитесь к `index.php` и добавьте справочную информацию в файл JavaScript между тегами `<head>`.
 
-[source,xml]
+[start=4]
+. Вернитесь к `index.php` и добавьте справочную информацию в файл JavaScript между тегами `<head>`.
+
+[source,html]
 ----
 
 <script type="text/javascript" src="javascript.js"></script>
@@ -305,9 +340,11 @@
 
 Для быстрого перехода между страницами, открытыми в редакторе, можно воспользоваться сочетанием клавиш CTRL+TAB.
 
-5. Вставьте вызов `init()` после открывающего тега `<body>`.
 
-[source,java]
+[start=5]
+. Вставьте вызов `init()` после открывающего тега `<body>`.
+
+[source,html]
 ----
 
 <body *onload="init()"*>
@@ -329,7 +366,7 @@
 
 * URL-адрес `autocomplete.php` и текст, введенный пользователем в поле `complete-field`:
 
-[source,java]
+[source,php]
 ----
 
 var url = "autocomplete.php?action=complete&amp;id=" + escape(completeField.value);
@@ -337,7 +374,7 @@
 * `GET` означает, что взаимодействия HTTP используют метод `GET`;
 * `true` означает, что взаимодействие является асинхронным:
 
-[source,java]
+[source,php]
 ----
 
 req.open("GET", url, true);
@@ -346,7 +383,7 @@
 Если взаимодействие определено как асинхронное, необходимо указать функцию обратного вызова. Функция обратного вызова для этого взаимодействия определяется при помощи следующего оператора:
 
 
-[source,java]
+[source,php]
 ----
 
 req.onreadystatechange = callback;
@@ -418,7 +455,9 @@
 
 }
 ----
-4. Вставьте в класс в редакторе следующий код (изменения выделены *полужирным шрифтом*).
+
+[start=4]
+. Вставьте в класс в редакторе следующий код (изменения выделены *полужирным шрифтом*).
 
 [source,php]
 ----
@@ -502,9 +541,15 @@
 Создайте сервлет для обработки URL-адреса `autocomplete`, получаемого при входящем запросе. Вместо создания нового файла PHP с помощью мастера создания файлов, как показано в прошлом разделе, измените для этой цели существующий файл `index.php`.
 
 1. В окне "Проекты" щелкните узел файла `index.php`. Появляется поле редактирования имени файла. 
+
 image::images/edit-file-name.png[title="Щелкните узлы файлов для редактирования имен"]
-2. Назовите файл `autocomplete` и нажмите ENTER. Дважды щелкните файл `autocomplete.php`, чтобы открыть его в редакторе.
-3. Замените код файла на следующий.
+
+
+[start=2]
+. Назовите файл `autocomplete` и нажмите ENTER. Дважды щелкните файл `autocomplete.php`, чтобы открыть его в редакторе.
+
+[start=3]
+. Замените код файла на следующий.
 
 [source,php]
 ----
@@ -571,7 +616,7 @@
 ?>
 ----
 
-*Примечание. * Файл composerView.php в данном учебном курсе не описывается. Этот файл можно создать для просмотра итоговых результатов поиска. Образец файла включен в link:https://netbeans.org/projects/samples/downloads/download/Samples%252FPHP%252FMyAjaxApp.zip[+образец приложения+].
+NOTE:  Файл composerView.php в данном учебном курсе не описывается. Этот файл можно создать для просмотра итоговых результатов поиска. Образец файла включен в link:https://netbeans.org/projects/samples/downloads/download/Samples%252FPHP%252FMyAjaxApp.zip[+образец приложения+].
 
 Итак, создание кода на стороне сервера для обработки с использованием Ajax не требует каких-либо новых знаний. Для случаев, когда требуется обмен документами XML, тип содержимого ответа должен иметь значение `text/xml`. Кроме того, Ajax позволяет осуществлять обмен простыми текстами или даже фрагментами JavaScript, которые могут анализироваться или выполняться с использованием функции обратного вызова на стороне клиента. Обратите внимание на то, что некоторые браузеры могут кэшировать результаты, следовательно, может потребоваться установка заголовка HTTP "Cache-Control" на `no-cache`.
 
@@ -662,7 +707,7 @@
 
 Функция `parseMessages()` позволяет выполнять обработку входящих данных XML. При этом, в указанной функции используются несколько вспомогательных функций, например `appendComposer()`, `getElementY()` и `clearTable()`. Кроме того, необходимо ввести новые элементы для страницы-указателя, например, вторую таблицу HTML, которая служит в качестве поля автозавершения, и идентификаторы для элементов, обеспечивающие возможность вызова в `javascript.js`. Наконец, следует создать новые переменные, соответствующие идентификаторам элементов в `index.php`, инициализировать их в предварительно реализованной функции `init()` и добавить определенные функциональные возможности, используемые при каждой загрузке `index.php`.
 
-*Примечание.* Функции и элементы, которые создаются в следующих действиях, являются взаимозависимыми. После выполнения рекомендаций, приведенных в этом разделе, необходимо выполнить тщательную проверку реализованного кода.
+NOTE:  Функции и элементы, которые создаются в следующих действиях, являются взаимозависимыми. После выполнения рекомендаций, приведенных в этом разделе, необходимо выполнить тщательную проверку реализованного кода.
 
 1. Откройте `index.php` в редакторе и введите указанный ниже код во вторую строку предварительно созданной таблицы HTML.
 
@@ -676,7 +721,9 @@
 </tr>
 ----
 Эта строка с идентификатором "`auto-row`" служит меткой для кода JavaScript, который вставляет новую таблицу HTML для формирования окна автозавершения.
-2. Откройте файл `javascript.js` в редакторе и добавьте к верхнему фрагменту файла следующие переменные.
+
+[start=2]
+. Откройте файл `javascript.js` в редакторе и добавьте к верхнему фрагменту файла следующие переменные.
 
 [source,java]
 ----
@@ -685,7 +732,9 @@
 var completeTable;
 var autoRow;
 ----
-3. Добавьте следующие строки (выделенные *полужирным шрифтом*) к функции `init()`.
+
+[start=3]
+. Добавьте следующие строки (выделенные *полужирным шрифтом*) к функции `init()`.
 
 [source,java]
 ----
@@ -711,7 +760,9 @@
     <td/>
 </tr>
 ----
-4. Добавьте `appendComposer()` в `javascript.js`.
+
+[start=4]
+. Добавьте `appendComposer()` в `javascript.js`.
 
 [source,java]
 ----
@@ -744,7 +795,9 @@
 }
 ----
 Эта функция позволяет создавать новую строку таблицы и вставлять в нее ссылку на композитора с использованием данных, передаваемых в функцию посредством соответствующих трех параметров, а затем вставлять эту строку в элемент `complete-table` страницы-указателя.
-5. Добавьте `clearTable()` в `javascript.js`.
+
+[start=5]
+. Добавьте `clearTable()` в `javascript.js`.
 
 [source,java]
 ----
@@ -759,7 +812,9 @@
 }
 ----
 Эта функция позволяет скрывать элемент `complete-table` (т.е. делать его невидимым), но не удаляет какие-либо существующие записи имен композиторов, созданные ранее.
-6. Добавьте `getElementY()` в `javascript.js`.
+
+[start=6]
+. Добавьте `getElementY()` в `javascript.js`.
 
 [source,java]
 ----
@@ -781,9 +836,11 @@
 ----
 Указанная функция применяется для определения вертикальной позиции исходного элемента. Это является необходимым, поскольку фактическое расположение элемента при его отображении часто зависит от типа и версии браузера. Следует отметить, что при отображении на экране элемент `complete-table`, содержащий имена композиторов, перемещается в нижнюю правую часть таблицы, в которой он расположен. Правильное расположение по высоте определяется `getElementY()`. 
 
-*Примечание.* См. link:http://www.quirksmode.org/js/findpos.html[+это описание+] `смещения` в link:http://www.quirksmode.org/[+http://www.quirksmode.org/+].
+NOTE:  См. link:http://www.quirksmode.org/js/findpos.html[+это описание+] `смещения` в link:http://www.quirksmode.org/[+http://www.quirksmode.org/+].
 
-7. Для вызова `clearTable()` при каждом получении данных с сервера можно соответствующим образом изменить функцию `callback()`. Поэтому любые скомбинированные записи, существующие в окне автозавершения, удаляются до того, как выполняется заполнение новыми записями.
+
+[start=7]
+. Для вызова `clearTable()` при каждом получении данных с сервера можно соответствующим образом изменить функцию `callback()`. Поэтому любые скомбинированные записи, существующие в окне автозавершения, удаляются до того, как выполняется заполнение новыми записями.
 
 [source,java]
 ----
@@ -799,7 +856,9 @@
     }
 }
 ----
-8. Добавьте `parseMessages()` в `javascript.js`.
+
+[start=8]
+. Добавьте `parseMessages()` в `javascript.js`.
 
 [source,java]
 ----
@@ -853,14 +912,14 @@
 
 На данном этапе создан весь код, необходимый для реализации функциональных возможностей приложения. Теперь для проверки результатов следует попытаться запустить приложение.
 
-1. Выполните проект и посмотрите, как он выглядит в браузере. Нажмите кнопку 'Запустить проект' ( image::images/run-project-btn.png[] ). В браузере отображается файл `index.html`. 
-image::images/no-css.png[title="Успешное развертывание без таблицы стилей"]
+1. Выполните проект и посмотрите, как он выглядит в браузере. Нажмите кнопку 'Запустить проект' ( image:images/run-project-btn.png[] ). В браузере отображается файл `index.html`. 
+image:images/no-css.png[title="Успешное развертывание без таблицы стилей"]
 
 Для присоединения к приложению таблицы стилей достаточно просто создать файл .css и ссылку на этот файл со страниц представления. При работе с файлами CSS среда IDE предоставляет поддержку автозавершения кода, а также некоторые другие возможности для упрощения процесса создания правил таблицы стилей. В частности, это следующие возможности:
 
 * *Конструктор стилей CSS:* интерфейс, разработанный для создания правил с использованием определенного набора элементов управления и оформления. ("Окно > Прочие> Конструктор стилей CSS")
 * *"Предварительный просмотр CSS": *окно предварительного просмотра, в котором при помещении курсора внутри правила отображается стандартный текст, соответствующий блоку объявления этого правила. ("Окно > Прочие> Предварительный просмотр CSS")
-* *Редактор правил стиля: *диалоговое окно, позволяющее создавать правила на основе классов, идентификаторов и элементов HTML и определять их положение в иерархии документа. Кнопка ('Создать правило' ( image::images/style-rule-editor-btn.png[] ), расположенная в верхнем левом углу панели инструментов редактора CSS)
+* *Редактор правил стиля: *диалоговое окно, позволяющее создавать правила на основе классов, идентификаторов и элементов HTML и определять их положение в иерархии документа. Кнопка ('Создать правило' ( image:images/style-rule-editor-btn.png[] ), расположенная в верхнем левом углу панели инструментов редактора CSS)
 
 В среде IDE NetBeans 6.9 предоставляется поддержка функций "Реорганизация в связи с переименованием" и "Поиск использований". Эта поддержка доступна не только в файлах CSS, но и во всех файлах, содержащих внедренный код CSS (например, HTML и PHP). Классы CSS, идентификаторы и элементы типов могут реорганизовываться во всех файлах проекта. Для использования поддержки реорганизации нажмите сочетание клавиш CTRL+R внутри элемента CSS и в появившемся диалоговом окне выполните переименование. Перед переименованием можно выполнить предпросмотр изменений. Для использования поддержки поиска использований, щелкните элемент CSS правой кнопкой мыши и выберите пункт "Поиск использований". Подробности приведены в link:http://wiki.netbeans.org/wiki/index.php?title=NewAndNoteworthy69m1&section=T-25#Web_Languages[+NewAndNoteworthy69m1+].
 
@@ -940,7 +999,9 @@
 
 Выполните проверку кода CSS, щелкнув редактор CSS правой кнопкой мыши и выбрав команду "Проверить CSS". В окне "Вывод" можно просмотреть все ошибки ("Окно" > "Вывод").
 
-5. Перейдите к странице `index.php` в редакторе и добавьте справочную информацию в таблицу стилей между тегами `<head>`.
+
+[start=5]
+. Перейдите к странице `index.php` в редакторе и добавьте справочную информацию в таблицу стилей между тегами `<head>`.
 
 [source,java]
 ----
@@ -948,7 +1009,9 @@
 <link rel="stylesheet" type="text/css" href="stylesheet.css">
 
 ----
-6. Выполните проект еще раз. В браузере отображается страница-указатель с созданной таблицей стилей. При каждом вводе символа на сервер передается асинхронный запрос, который возвращается с данными XML, подготовленными при помощи `AutoCompleteServlet`. При вводе последующих символов количество вариантов имен композиторов уменьшается, и на экране появляется новый список соответствий.
+
+[start=6]
+. Выполните проект еще раз. В браузере отображается страница-указатель с созданной таблицей стилей. При каждом вводе символа на сервер передается асинхронный запрос, который возвращается с данными XML, подготовленными при помощи `AutoCompleteServlet`. При вводе последующих символов количество вариантов имен композиторов уменьшается, и на экране появляется новый список соответствий.
 
 
 
diff --git a/netbeans.apache.org/src/content/kb/docs/php/ajax-quickstart_zh_CN.asciidoc b/netbeans.apache.org/src/content/kb/docs/php/ajax-quickstart_zh_CN.asciidoc
index b433237..91e14ba 100644
--- a/netbeans.apache.org/src/content/kb/docs/php/ajax-quickstart_zh_CN.asciidoc
+++ b/netbeans.apache.org/src/content/kb/docs/php/ajax-quickstart_zh_CN.asciidoc
@@ -51,11 +51,12 @@
 |link:http://httpd.apache.org/download.cgi[+Apache Web 服务器+] |2.2 
 |===
 
-*注:*
-
+[NOTE]
+====
 * PHP 开发环境通常使用 *AMP 包进行配置,具体取决于您的操作系统。该环境包括 PHP 引擎和 Apache Web 服务器。有关配置环境的说明,请参见 link:../../trails/php.html[+PHP 学习资源+]。
 * 本教程假设您已经具备它所使用的各种技术(即 HTML、CSS、JavaScript 和 PHP)的应用知识。它尝试以代码的形式提供功能的概述,但_不_解释每行代码的含义。
 * 如果需要将项目与工作解决方案进行比较,可以link:https://netbeans.org/projects/samples/downloads/download/Samples%252FPHP%252FMyAjaxApp.zip[+下载样例应用程序+]。使用 IDE 的新建项目向导(Ctrl-Shift-N 组合键;在 Mac 上为 ⌘-Shift-N 组合键),并选择 "PHP with Existing Sources"(基于现有源代码的 PHP 应用程序)项目类型。在该向导中,指向计算机上已下载的源文件。
+====
 
 
 
@@ -89,21 +90,34 @@
 
 1. 选择 "File"(文件)> "New Project"(新建项目)。在 "Categories"(类别)下,选择 *PHP*。在 "Projects"(项目)下,选择 *PHP Application*(PHP 应用程序),然后单击 *Next*(下一步)。
 2. 在“步骤 2:Name and Location(名称和位置)”中,将项目命名为 `MyAjaxApp`。使用 "Sources Folder"(源文件夹)字段可以在计算机上指定项目的位置。将其他选项保留为默认设置,然后单击 *Next*(下一步)。 
+
 image::images/php-name-location.png[title="新建 PHP 项目向导 - "Name and Location"(名称和位置)面板"]
-3. 在步骤 3 "Run Configuration"(运行配置)中,指定您要部署应用程序的方式。如果您已通过配置 *AMP 包设置了 PHP 开发环境,则应该从下拉列表中选择 *Local Web Site*(本地 Web 站点),并指定项目的 URL(将显示在浏览器中)。
-4. 选中 "Copy files from Sources Folder to another location"(将源文件夹中的文件复制到其他位置)选项。然后,在 "Copy to Folder "(复制到文件夹)字段中,键入到服务器上部署位置的路径。(在 Apache 上,部署位置是默认的 `htdocs` 目录。) 
+
+
+[start=3]
+. 在步骤 3 "Run Configuration"(运行配置)中,指定您要部署应用程序的方式。如果您已通过配置 *AMP 包设置了 PHP 开发环境,则应该从下拉列表中选择 *Local Web Site*(本地 Web 站点),并指定项目的 URL(将显示在浏览器中)。
+
+[start=4]
+. 选中 "Copy files from Sources Folder to another location"(将源文件夹中的文件复制到其他位置)选项。然后,在 "Copy to Folder "(复制到文件夹)字段中,键入到服务器上部署位置的路径。(在 Apache 上,部署位置是默认的 `htdocs` 目录。) 
+
 [.feature]
 --
 image::images/php-run-config.png[role="left", link="images/php-run-config.png"]
 --
-5. 单击 *Finish*(完成)。IDE 在您的文件系统中创建项目文件夹,项目在 IDE 中打开。 
+
+
+[start=5]
+. 单击 *Finish*(完成)。IDE 在您的文件系统中创建项目文件夹,项目在 IDE 中打开。 
 
 您也可以使用项目向导  将框架支持添加到项目中(可在向导的步骤 4 中执行该操作)。
 
 生成默认的 `index.php` 索引页并在 IDE 的编辑器中将其打开。您的项目还会显示在 "Projects"(项目)窗口中。
 
 image::images/php-proj-win.png[title=""Projects"(项目)窗口将显示 MyAjaxApp 项目"]
-6. 在开始编码前,请立即尝试运行该应用程序以确保正确设置了 IDE、您的服务器和浏览器之间的配置。
+
+
+[start=6]
+. 在开始编码前,请立即尝试运行该应用程序以确保正确设置了 IDE、您的服务器和浏览器之间的配置。
 
 在 IDE 的编辑器中,向索引页中添加一个 `echo` 语句:
 
@@ -116,9 +130,11 @@
 ?>
 
 ----
-7. 在 "Projects"(项目)窗口中,右键单击项目节点,然后选择 "Run"(运行)。IDE 会打开您的默认浏览器,并显示您刚在 `index.php` 中创建的 Hello World 消息。 
 
-*注:*如果您在设置项目或在 IDE、服务器和浏览器之间建立通信时遇到困难,请参见link:project-setup.html[+设置 PHP 项目+]以获取更详细的说明。link:../../trails/php.html[+PHP 学习资源+]可以提供有关配置环境的更多信息。
+[start=7]
+. 在 "Projects"(项目)窗口中,右键单击项目节点,然后选择 "Run"(运行)。IDE 会打开您的默认浏览器,并显示您刚在 `index.php` 中创建的 Hello World 消息。 
+
+NOTE: 如果您在设置项目或在 IDE、服务器和浏览器之间建立通信时遇到困难,请参见link:project-setup.html[+设置 PHP 项目+]以获取更详细的说明。link:../../trails/php.html[+PHP 学习资源+]可以提供有关配置环境的更多信息。
 
 
 [[html]]
@@ -156,7 +172,9 @@
 </html>
 
 ----
-4. 添加一些说明性文本以介绍文本字段的用途。您可以复制以下文本并将其粘贴在 `<h1>` 标记下方的某一位置:
+
+[start=4]
+. 添加一些说明性文本以介绍文本字段的用途。您可以复制以下文本并将其粘贴在 `<h1>` 标记下方的某一位置:
 
 [source,html]
 ----
@@ -169,16 +187,21 @@
     then click on one of the selections to see composer details.</p>
 
 ----
-5. 向该页面中添加一个 HTML 窗体。可以利用 IDE "Palette"(组件面板)中列出的元素执行此操作。如果组件面板没有打开,请从主菜单中选择 "Window"(窗口)> "Palette"(组件面板)。然后,在 "HTML Forms"(HTML 窗体)下,单击某个窗体元素,并将其拖至该页面中您刚添加的 `<p>` 标记下的某一位置。此时将打开 "Insert Form"(插入窗体)对话框。指定以下内容: 
+
+[start=5]
+. 向该页面中添加一个 HTML 窗体。可以利用 IDE "Palette"(组件面板)中列出的元素执行此操作。如果组件面板没有打开,请从主菜单中选择 "Window"(窗口)> "Palette"(组件面板)。然后,在 "HTML Forms"(HTML 窗体)下,单击某个窗体元素,并将其拖至该页面中您刚添加的 `<p>` 标记下的某一位置。此时将打开 "Insert Form"(插入窗体)对话框。指定以下内容: 
 
 * "Action"(操作):autocomplete.php
 * "Method"(方法):GET
 * "Name"(名称):autofillform
+
 image::images/php-insert-form.png[title=""Insert form"(插入窗体)对话框"]
 
 单击 "OK"(确定)。HTML `<form>` 标记已插入到包含您所指定的属性的页面中。(GET 在默认情况下应用,因此没有进行显式声明。)
 
-6. 向该页面添加一个 HTML 表格。在 "Palette"(组件面板)中的 "HTML" 类别下,单击某个表格元素,并将其拖至 `<form>` 标记之间的位置。"Insert Table"(插入表格)对话框即打开。指定以下内容: 
+
+[start=6]
+. 向该页面添加一个 HTML 表格。在 "Palette"(组件面板)中的 "HTML" 类别下,单击某个表格元素,并将其拖至 `<form>` 标记之间的位置。"Insert Table"(插入表格)对话框即打开。指定以下内容: 
 
 * "Rows"(行):2
 * "Columns"(列):2
@@ -186,8 +209,12 @@
 * "Width"(宽度):0
 * "Cell Spacing"(单元格间距):0
 * "Cell Padding"(单元格边距):5
+
 image::images/insert-table.png[title=""Insert table"(插入表格)对话框"]
-7. 在源代码编辑器中单击鼠标右键,然后选择 "Format"(格式化代码)。此操作将对代码进行整理。现在,您的窗体应该如下显示:
+
+
+[start=7]
+. 在源代码编辑器中单击鼠标右键,然后选择 "Format"(格式化代码)。此操作将对代码进行整理。现在,您的窗体应该如下显示:
 
 [source,xml]
 ----
@@ -214,14 +241,18 @@
 </form>
 
 ----
-8. 将以下文本键入到此表格第一行的第一列中(更改的内容以*粗体*显示):
+
+[start=8]
+. 将以下文本键入到此表格第一行的第一列中(更改的内容以*粗体*显示):
 
 [source,xml]
 ----
 
 <td>*<strong>Composer Name:</strong>*</td>
 ----
-9. 在第一行的第二列中,手动键入以下代码(而不从 "Palette"(组件面板)中拖动一个文本输入字段)。
+
+[start=9]
+. 在第一行的第二列中,手动键入以下代码(而不从 "Palette"(组件面板)中拖动一个文本输入字段)。
 
 [source,java]
 ----
@@ -233,13 +264,20 @@
 
 ----
 在键入时,请尝试使用 IDE 内置的代码完成支持。例如,键入 `<i`,然后按 Ctrl-空格组合键。建议的选项列表会显示在光标下方,并且选中元素的说明会显示在上方的框中。事实上,在源代码编辑器中编写代码时,可以随时按 Ctrl-空格键调出可能的选项。而且,如果只有一个可用的选项,按 Ctrl-空格键将自动完成元素名称。
-image::images/code-completion.png[title="在源代码编辑器中按 Ctrl-空格键可以触发代码完成"] 
+image:images/code-completion.png[title="在源代码编辑器中按 Ctrl-空格键可以触发代码完成"] 
 您在上文中键入的 `onkeyup` 属性指向名为 `doCompletion()` 的 JavaScript 函数。每次在窗体文本字段中按下一个键时,此函数都会被调用,并映射到以上 Ajax <<flow-diagram,流程图>>中所描述的 JavaScript 调用。
-10. 在转为使用 JavaScript 编辑器之前,请将应用程序的入口点由 `index.php` 文件替换为新的 `index.html` 文件。
 
-要执行此操作,请右键单击 "Projects"(项目)窗口中的项目节点,然后选择 "Properties"(属性)。选择 *Run Configuration*(运行配置)类别,然后在 "Index File"(索引文件)字段中输入 `index.html`。image::images/php-entry-point.png[title="在 "Project Properties"(项目属性)窗口中指定应用程序的入口点"]
-11. 单击 "OK"(确定)以保存更改,然后退出 "Project Properties"(项目属性)窗口。
-12. 运行该项目以查看其在浏览器中的外观。单击 "Run Project"(运行项目)(image::images/run-project-btn.png[]) 按钮。在默认浏览器中显示 `index.html` 文件。 
+[start=10]
+. 在转为使用 JavaScript 编辑器之前,请将应用程序的入口点由 `index.php` 文件替换为新的 `index.html` 文件。
+
+要执行此操作,请右键单击 "Projects"(项目)窗口中的项目节点,然后选择 "Properties"(属性)。选择 *Run Configuration*(运行配置)类别,然后在 "Index File"(索引文件)字段中输入 `index.html`。image:images/php-entry-point.png[title="在 "Project Properties"(项目属性)窗口中指定应用程序的入口点"]
+
+[start=11]
+. 单击 "OK"(确定)以保存更改,然后退出 "Project Properties"(项目属性)窗口。
+
+[start=12]
+. 运行该项目以查看其在浏览器中的外观。单击 "Run Project"(运行项目)(image:images/run-project-btn.png[]) 按钮。在默认浏览器中显示 `index.html` 文件。 
+
 image::images/index-page.png[title="运行项目以在浏览器中查看其当前状态"]
 
 
@@ -294,7 +332,9 @@
 
 以上代码将对 Firefox 3 以及 Internet Explorer 版本 6 和 7 执行简单的浏览器兼容性检查。如果希望包含更多强健的代码以处理兼容性问题,建议您使用 link:http://www.quirksmode.org[+http://www.quirksmode.org+] 中的link:http://www.quirksmode.org/js/detect.html[+浏览器检测脚本+]。
 
-4. 切换回 `index.html`,然后在 `<head>` 标记之间添加对 JavaScript 文件的引用。
+
+[start=4]
+. 切换回 `index.html`,然后在 `<head>` 标记之间添加对 JavaScript 文件的引用。
 
 [source,xml]
 ----
@@ -305,7 +345,9 @@
 
 您可以按 Ctrl-Tab 组合键在编辑器中打开的页面之间快速切换。
 
-5. 在开始标记 `<body>` 中,插入对 `init()` 的调用。
+
+[start=5]
+. 在开始标记 `<body>` 中,插入对 `init()` 的调用。
 
 [source,java]
 ----
@@ -418,7 +460,9 @@
 
 }
 ----
-4. 在编辑器中,将以下代码粘贴到该类(更改内容以*粗体*显示)。
+
+[start=4]
+. 在编辑器中,将以下代码粘贴到该类(更改内容以*粗体*显示)。
 
 [source,php]
 ----
@@ -502,9 +546,15 @@
 实现用于处理由传入请求接收的 `autocomplete` URL 的逻辑。为此,请修改现有的 `index.php` 文件,而不是使用上一部分所述的文件向导来创建新 PHP 文件。
 
 1. 在 "Projects"(项目)窗口中,单击 `index.php` 文件节点。文件名变为可编辑状态,以便您修改其名称。 
+
 image::images/edit-file-name.png[title="单击文件节点可编辑名称"]
-2. 将该文件命名为 `autocomplete`,然后单击 Enter 键。双击新的 `autocomplete.php` 文件,使其显示在编辑器中。
-3. 将该文件的现有代码替换为以下脚本。
+
+
+[start=2]
+. 将该文件命名为 `autocomplete`,然后单击 Enter 键。双击新的 `autocomplete.php` 文件,使其显示在编辑器中。
+
+[start=3]
+. 将该文件的现有代码替换为以下脚本。
 
 [source,php]
 ----
@@ -571,7 +621,7 @@
 ?>
 ----
 
-*注:*本教程中未描述文件 composerView.php。您可以创建这样的文件来查看搜索的最终结果。link:https://netbeans.org/projects/samples/downloads/download/Samples%252FPHP%252FMyAjaxApp.zip[+样例应用程序+]中包含了此文件的样例。
+NOTE: 本教程中未描述文件 composerView.php。您可以创建这样的文件来查看搜索的最终结果。link:https://netbeans.org/projects/samples/downloads/download/Samples%252FPHP%252FMyAjaxApp.zip[+样例应用程序+]中包含了此文件的样例。
 
 正如您看到的,编写用于进行 Ajax 处理的服务器端的代码时并没有什么真正的新内容要了解。如果希望交换 XML 文档,则需要将响应内容类型设置为 `text/xml`。通过 Ajax,您还可以交换纯文本,甚至可以交换可在客户端由回调函数计算或执行的 JavaScript 片段。还请注意,有些浏览器可能会缓存结果,因此可能需要将 Cache-Control HTTP 头信息设置为 `no-cache`。
 
@@ -662,7 +712,7 @@
 
 `parseMessages()` 函数用于处理传入的 XML 数据。为了实现此功能,它需要依靠若干附属的函数,如 `appendComposer()`、`getElementY()` 和 `clearTable()`。您还必须向此索引页引入新的元素(如用作自动完成框的另一个 HTML 表格),以及元素的 ID,以便它们可以在 `javascript.js` 中引用。最后,创建对应于 `index.php` 中元素 ID 的新变量,并且在之前实现的 `init()` 函数中对其进行初始化,然后添加每次加载 `index.php` 时所需要的一些功能。
 
-*注:*您在以下步骤中创建的函数和元素之间存在相互依赖关系。建议您完成此部分,然后在代码全部完成之后检查此代码。
+NOTE: 您在以下步骤中创建的函数和元素之间存在相互依赖关系。建议您完成此部分,然后在代码全部完成之后检查此代码。
 
 1. 在编辑器中打开 `index.html`,并在您之前创建的 HTML 表格的第二行键入以下代码。
 
@@ -676,7 +726,9 @@
 </tr>
 ----
 此新行(可以标识为 "`auto-row`")用作 JavaScript 代码的处理程序,以便插入一个新 HTML 表,该表将形成自动完成框。
-2. 在编辑器中打开 `javascript.js`,并在文件顶部添加以下三个变量。
+
+[start=2]
+. 在编辑器中打开 `javascript.js`,并在文件顶部添加以下三个变量。
 
 [source,java]
 ----
@@ -685,7 +737,9 @@
 var completeTable;
 var autoRow;
 ----
-3. 将以下行(以*粗体*显示)添加到 `init()` 函数中。
+
+[start=3]
+. 将以下行(以*粗体*显示)添加到 `init()` 函数中。
 
 [source,java]
 ----
@@ -711,7 +765,9 @@
     <td/>
 </tr>
 ----
-4. 将 `appendComposer()` 添加到 `javascript.js`。
+
+[start=4]
+. 将 `appendComposer()` 添加到 `javascript.js`。
 
 [source,java]
 ----
@@ -744,7 +800,9 @@
 }
 ----
 此函数创建了一个新的表行,并用其所含的三个参数传递的数据将指向作曲家的链接插入此表行中,然后将此行插入索引页的 `complete-table` 元素中。
-5. 将 `clearTable()` 添加到 `javascript.js`。
+
+[start=5]
+. 将 `clearTable()` 添加到 `javascript.js`。
 
 [source,java]
 ----
@@ -759,7 +817,9 @@
 }
 ----
 此函数用于将 `complete-table` 元素的显示方式设置为 "none"(无)(也就是使其不可见),并删除所有已创建的现有作曲家名字条目。
-6. 将 `getElementY()` 添加到 `javascript.js`。
+
+[start=6]
+. 将 `getElementY()` 添加到 `javascript.js`。
 
 [source,java]
 ----
@@ -781,9 +841,11 @@
 ----
 此函数用于查找父元素的垂直位置。这是必要的,因为此元素的实际位置(如果显示)通常根据浏览器的类型和版本而定。请注意,如果 `complete-table` 元素显示包含作曲家名字,则会移动到其所在表格中的右下角。正确的高度定位由 `getElementY()` 确定。 
 
-*注:*请在 link:http://www.quirksmode.org/[+http://www.quirksmode.org/+] 上查看 `offset` 的link:http://www.quirksmode.org/js/findpos.html[+说明+]。
+NOTE: 请在 link:http://www.quirksmode.org/[+http://www.quirksmode.org/+] 上查看 `offset` 的link:http://www.quirksmode.org/js/findpos.html[+说明+]。
 
-7. 修改 `callback()` 函数以便每次从服务器接收到新数据时都调用 `clearTable()`。因此,在用新条目填充自动完成框之前其中已存在的任何作曲家条目均会删除。
+
+[start=7]
+. 修改 `callback()` 函数以便每次从服务器接收到新数据时都调用 `clearTable()`。因此,在用新条目填充自动完成框之前其中已存在的任何作曲家条目均会删除。
 
 [source,java]
 ----
@@ -799,7 +861,9 @@
     }
 }
 ----
-8. 将 `parseMessages()` 添加到 `javascript.js`。
+
+[start=8]
+. 将 `parseMessages()` 添加到 `javascript.js`。
 
 [source,java]
 ----
@@ -853,14 +917,14 @@
 
 在此阶段,您已完成了实现此应用程序功能所需的所有代码。要查看您的努力成果,请立即尝试运行此应用程序。
 
-1. 运行该项目以查看其在浏览器中的外观。单击 "Run Project"(运行项目)(image::images/run-project-btn.png[]) 按钮。在浏览器中显示 `index.html` 文件。 
-image::images/no-css.png[title="不带样式表的成功部署"]
+1. 运行该项目以查看其在浏览器中的外观。单击 "Run Project"(运行项目)(image:images/run-project-btn.png[]) 按钮。在浏览器中显示 `index.html` 文件。 
+image:images/no-css.png[title="不带样式表的成功部署"]
 
 要在应用程序中附加一个样式表,只需创建 CSS(Cascading Style Sheet,级联样式表)文件,并从表示页面链接到此文件即可。当您使用 CSS 文件时,IDE 会为您提供代码完成支持,以及其他一些有助于生成样式表规则的功能。其中包括:
 
 * *CSS 样式构建器:*此界面旨在让您可以使用所选的控件和窗口部件创建规则。("Window"(窗口)> "Other"(其他)> "CSS Style Builder"(CSS 样式构建器))
 * *CSS 预览:*如果您将光标置于某个规则中,此预览窗口就会显示根据此规则的声明块所呈现的样例文本。("Window"(窗口)> "Other"(其他)> "CSS Preview"(CSS 预览))
-* *样式规则编辑器:*通过此对话框,您可以基于类、ID 和 HTML 元素创建规则,并在文档分层结构中设置其位置。(位于 CSS 编辑器工具栏左上角区域的 "Create Rule"(创建规则)(image::images/style-rule-editor-btn.png[]) 按钮)
+* *样式规则编辑器:*通过此对话框,您可以基于类、ID 和 HTML 元素创建规则,并在文档分层结构中设置其位置。(位于 CSS 编辑器工具栏左上角区域的 "Create Rule"(创建规则)(image:images/style-rule-editor-btn.png[]) 按钮)
 
 NetBeans 6.9 提供了“重命名重构”和“查找使用实例”支持。此支持不仅可用于 css 文件,而且也可用于包含嵌入 CSS 代码的所有文件(例如,HTML、PHP)。在所有项目文件中,均可重构 CSS 类、id 和类型元素。要使用此重构支持,请在给定 CSS 元素上按 Ctrl-R 组合键,然后使用提供的对话框执行重命名操作。在执行重命名操作之前,也可以预览更改。要使用“查找使用实例”支持,请右键单击 CSS 元素,然后选择 "Find Usages"(查找使用实例)。有关更多详细信息,请参见 link:http://wiki.netbeans.org/wiki/index.php?title=NewAndNoteworthy69m1&section=T-25#Web_Languages[+NewAndNoteworthy69m1+]。
 
@@ -940,7 +1004,9 @@
 
 对 CSS 代码的有效性执行检查,方法是右键单击 CSS 编辑器,然后选择 "Check CSS"(检查 CSS)。遇到的任何错误都会显示在 "Output"(输出)窗口中("Windows"(窗口)> "Output"(输出))。
 
-5. 切换到编辑器中的 `index.html` 页(按 Ctrl-Tab 组合键),然后在 `<head>` 标记之间添加对样式表的引用。
+
+[start=5]
+. 切换到编辑器中的 `index.html` 页(按 Ctrl-Tab 组合键),然后在 `<head>` 标记之间添加对样式表的引用。
 
 [source,java]
 ----
@@ -948,7 +1014,9 @@
 <link rel="stylesheet" type="text/css" href="stylesheet.css">
 
 ----
-6. 再次运行应用程序。将使用您刚创建的样式表在浏览器中显示索引页。每次您键入字符时,都会向服务器发送异步请求,并返回 `autocomplete.php` 准备好的 XML 数据。随着您输入的字符增多,为了反映匹配项的新列表,作曲家名字的数量会越来越少。
+
+[start=6]
+. 再次运行应用程序。将使用您刚创建的样式表在浏览器中显示索引页。每次您键入字符时,都会向服务器发送异步请求,并返回 `autocomplete.php` 准备好的 XML 数据。随着您输入的字符增多,为了反映匹配项的新列表,作曲家名字的数量会越来越少。
 
 
 
diff --git a/netbeans.apache.org/src/content/kb/docs/php/code-templates.asciidoc b/netbeans.apache.org/src/content/kb/docs/php/code-templates.asciidoc
index ff0d789..2416e30 100644
--- a/netbeans.apache.org/src/content/kb/docs/php/code-templates.asciidoc
+++ b/netbeans.apache.org/src/content/kb/docs/php/code-templates.asciidoc
@@ -69,12 +69,18 @@
 *Caution:* Spell the abbreviation correctly! Expansion does not work if you misspell the abbreviation.
 
 image::images/expanding-template-with-abb.png[]
-3. The placeholder class name ( ``*class_name*`` ) is selected automatically. You can move between placeholders by pressing Tab. You can immediately type the name you want for the class and this name overwrites the placeholder. Press Enter when you are done and the IDE selects the name of the first function, which in this case is the constructor.
 
-*Note: *Placeholder names are discussed in more detail in the <<placeholder,Placeholder name section>>.
+
+[start=3]
+. The placeholder class name ( ``*class_name*`` ) is selected automatically. You can move between placeholders by pressing Tab. You can immediately type the name you want for the class and this name overwrites the placeholder. Press Enter when you are done and the IDE selects the name of the first function, which in this case is the constructor.
+
+NOTE: Placeholder names are discussed in more detail in the <<placeholder,Placeholder name section>>.
 
 image::images/select-constructor-name.png[]
-4. Edit the function name or accept the default. Press Enter again, and the cursor moves to the inside of the function's body. In a real world scenario, you would now start coding the function and the rest of the class.
+
+
+[start=4]
+. Edit the function name or accept the default. Press Enter again, and the cursor moves to the inside of the function's body. In a real world scenario, you would now start coding the function and the rest of the class.
 
 The final position of the cursor is determined by the  ``${cursor}``  parameter. This parameter is described in the section <<reserved-name,Reserved names>>.
 
@@ -87,11 +93,21 @@
 1. In the PHP block of a PHP file, type  ``cla`` .
 2. Wait for the code completion dialog to open.
 3. Locate the new class template, which is listed with its abbreviation ( ``cls`` ). The PHPDoc frame shows the expanded template.
+
 image::images/insert-template-with-cc.png[]
-4. Select the new class template and press Enter. The IDE inserts it into your code.
-5. The placeholder class name ( ``*class_name*`` ) is selected automatically. You can move between placeholders by pressing Tab. You can immediately type the name you want for the class and this name overwrites the placeholder. Press Enter when you are done and the IDE selects the name of the first function, which in this case is the constructor.
+
+
+[start=4]
+. Select the new class template and press Enter. The IDE inserts it into your code.
+
+[start=5]
+. The placeholder class name ( ``*class_name*`` ) is selected automatically. You can move between placeholders by pressing Tab. You can immediately type the name you want for the class and this name overwrites the placeholder. Press Enter when you are done and the IDE selects the name of the first function, which in this case is the constructor.
+
 image::images/select-constructor-name.png[]
-6. Edit the function name or accept the default. Press Enter again, and the cursor moves to the inside of the function's body. In a real world scenario, you would now start coding the function and the rest of the class.
+
+
+[start=6]
+. Edit the function name or accept the default. Press Enter again, and the cursor moves to the inside of the function's body. In a real world scenario, you would now start coding the function and the rest of the class.
 
 == Surrounding code with a template
 
@@ -108,7 +124,7 @@
 
 In addition, you can <<create,create a new template>> that can surround code if the template includes the `allowSurround` <<complex,parameter hint>>. (Hat tip to the link:http://www.mybelovedphp.com/2012/05/14/tips-for-using-the-netbeans-editor-for-kohana-and-kostache-mustache-templates-using-surround-with/[+ My Beloved PHP blog+].)
 
-To surround code with a template, select the code and open the Surround with... dialog. To open the Surround with... dialog, either press Alt-Enter or click the Hint image::images/hint-icon.png[] icon.
+To surround code with a template, select the code and open the Surround with... dialog. To open the Surround with... dialog, either press Alt-Enter or click the Hint image:images/hint-icon.png[] icon.
 
 *To surround code with an if(true) template:*
 
@@ -117,26 +133,46 @@
 [source,php]
 ----
 
-<?php$a = false;$b = 10;?>
+<?php
+  $a = false;
+  $b = 10;?
+>
 ----
-2. Select the line  ``$b = 10;`` 
+
+[start=2]
+. Select the line  ``$b = 10;`` 
+
 image::images/selected-variable.png[]
-3. Click the Hint image::images/hint-icon.png[] icon or press Alt-Enter. The Surround with... dialog opens.
+
+
+[start=3]
+. Click the Hint image::images/hint-icon.png[] icon or press Alt-Enter. The Surround with... dialog opens.
+
 image::images/surround-hint.png[]
-4. Click `` Surround with if{*true*){...`` 
+
+
+[start=4]
+. Click `` Surround with if{*true*){...`` 
+
 image::images/surround-if-true.png[]
-5. The IDE surrounds the line  ``$b = 10;``  with an  ``if(*true*){... `` template.
+
+
+[start=5]
+. The IDE surrounds the line  ``$b = 10;``  with an  ``if(*true*){... `` template.
+
 image::images/inserted-if-true.png[]
 
 The IDE automatically inserts the nearest preceding suitable variable as the  ``if``  statement's condition. In this case, that variable is  ``$a`` , because  ``$a``  is a boolean and the  ``if(*true*){} `` statement takes a boolean variable as its condition. Furthermore, the condition is automatically selected for editing, in case the variable that the IDE inserts into the condition is not the correct variable. This means you can begin typing the correct variable immediately after the template is inserted. Code completion can help you select the correct variable in this case.
 
-*Note: *The  ``if(*true*){}``  template is described in detail in the section <<complex,Parameter defined by hints>>.
+NOTE: The  ``if(*true*){}``  template is described in detail in the section <<complex,Parameter defined by hints>>.
 
 image::images/change-condition.png[]
 
 Press Enter to exit the statement's condition. The cursor moves to the appropriate location, which in this case is the end of the line  ``$b = 10;`` . You can edit the condition and press Enter or accept the automatically inserted condition and press Enter. In either case the cursor exits the condition and moves to the appropriate location.
 
-image::images/cursor-after-not-editing.png[]image::images/cursor-after-editing.png[]
+image::images/cursor-after-not-editing.png[]
+
+image::images/cursor-after-editing.png[]
 
 The next section contains more details about editing the parameters in expanded templates.
 
@@ -147,15 +183,25 @@
 *To simultaneously edit multiple instances of a parameter:*
 
 1. In an empty PHP block, type  ``for``  and press Ctrl-Space to open code completion. Select the iteration template (abbreviation  ``iter`` ) and press Enter. A new iteration is inserted into your code.
+
 image::images/iter-cc.png[]
-2. The iteration has two variables as parameters,  ``$index``  and  ``$array`` .  ``$index``  is selected automatically for editing. (Pressing Tab moves between parameters.)
+
+
+[start=2]
+. The iteration has two variables as parameters,  ``$index``  and  ``$array`` .  ``$index``  is selected automatically for editing. (Pressing Tab moves between parameters.)
+
 image::images/iteration1.png[]
 
 Type  ``i`` . All three instances of  ``$index``  change to  ``$i`` .
 
 image::images/iteration2.png[]
-3. Press Enter or Tab. The parameter  ``$array``  is selected.
-4. Press Enter. The cursor enters the method body of the iteration.
+
+
+[start=3]
+. Press Enter or Tab. The parameter  ``$array``  is selected.
+
+[start=4]
+. Press Enter. The cursor enters the method body of the iteration.
 
 The variable name refactoring feature in NetBeans enables you to change all instances of a variable name by editing only one instance. You see here how this is helpful when applied to template parameters.
 
@@ -163,23 +209,37 @@
 
 *To associate a variable in a template with the correct method:*
 
-1. In an empty PHP block, type the follwing code:
+
+[start=1]
+. In an empty PHP block, type the follwing code:
 
 [source,php]
 ----
 
-<?php$arr = array(new ArrayIterator($array()), new ArrayObject($array()));?>
+<?php
+  $arr = array(new ArrayIterator($array()), new ArrayObject($array()));?>
 ----
-2. After the line declaring the  ``$arr``  array, type  ``fore``  and use code completion to insert the `` foreach``  template (abbreviation:  ``fore`` ).
+
+[start=2]
+. After the line declaring the  ``$arr``  array, type  ``fore``  and use code completion to insert the `` foreach``  template (abbreviation:  ``fore`` ).
+
 image::images/cc-foreach.png[]
-3. Place the cursor in the body of the  ``foreach``  function (you can press Enter twice to move the cursor there) and type  ``$value`` , or only type  ``$``  and select  ``$value``  from code completion.
+
+
+[start=3]
+. Place the cursor in the body of the  ``foreach``  function (you can press Enter twice to move the cursor there) and type  ``$value`` , or only type  ``$``  and select  ``$value``  from code completion.
 
 [source,php]
 ----
 
-<?php$arr = array(new ArrayIterator($array()), new ArrayObject($array()));foreach ($arr as $value) {$value}?>
+<?php
+    $arr = array(new ArrayIterator($array()), new ArrayObject($array()));
+    foreach ($arr as $value) {$value}?>
 ----
-4. After  ``$value`` , type  ``->`` . Code completion offers you the correct methods for the  ``$value``  variable, which is derived from the array  ``$arr`` .
+
+[start=4]
+. After  ``$value`` , type  ``->`` . Code completion offers you the correct methods for the  ``$value``  variable, which is derived from the array  ``$arr`` .
+
 image::images/value-method-cc.png[]
 
 == PHP Code Template Syntax
@@ -220,10 +280,11 @@
 For example, again consider the new class template  ``(cls)``  that this tutorial shows in the sections <<define,Defined PHP Templates>> and <<expand-with-abb,Expanding the code template by using the abbreviation + Tab>>. It contains two placeholder name parameters,  ``${ClassName}``  and  ``$__construct`` . In the function body, it has the parameters  ``${cursor}``  and  ``${selection}`` .
 
 
-[source,java]
+[source,php]
 ----
 
-class ${ClassName} {function ${__construct} {${selection}${cursor}}}
+class ${ClassName} {
+    function ${__construct} {${selection}${cursor}}}
 ----
 
 After the template expands, the placeholder  ``*class_name*``  is selected automatically (1). Press Enter, and the placeholder  ``*__construct*``  is selected automatically (2). There are no other values to edit. Press Enter again, and the cursor moves to the location indicated by  ``${cursor}``  in the template's text (3).
@@ -237,7 +298,7 @@
 Parameters can consist of an arbitrary, descriptive name in ALL-CAPS and one or more hints.
 
 
-[source,java]
+[source,php]
 ----
 
 ${PARAMETER_NAME hint1[=value] [hint2...hint n]}
@@ -247,7 +308,7 @@
 
 
 
-[source,java]
+[source,php]
 ----
 
 $$${CONLINK newVarName default="link"} = mysql_connect('localhost', 'mysql_user', 'mysql_password');  if (!$$${CONLINK}) {    die('Could not connect: ' . mysql_error());  }  echo 'Connected successfully';  mysql_close($$${CONLINK});  ${cursor}  
@@ -256,7 +317,7 @@
 Hints help the IDE to compute the value of the template parameter when the IDE expands the code template. For example, look at the  ``if(*true*)``  template, which is used in this tutorial in the section on <<surround-code,surrounding your code with a template>>. The expanded text of this template is
 
 
-[source,java]
+[source,php]
 ----
 
 if (${CONDITION variableFromPreviousAssignment instanceof="boolean" default="true"}) {${selection}${cursor}}
@@ -302,12 +363,20 @@
 *To create a code template:*
 
 1. Open Tools > Options (NetBeans > Preferences on Mac), select the Editor features, and select the Code Templates tab. 
-image::images/code-template-options.png[]
-2. Click New to open the New Code Template dialog box. Type in the abbreviation you want for the template and click OK. 
-image::images/new-abb.png[]
-3. A new row is added to the table of code templates. This row contains only the abbreviation you provided. The cursor is in the Expanded Text tab, where the IDE placed the cursor automatically. You can begin typing the template's code immediately.
 
-*Note: *To learn about the syntax of the code template's expanded text, see the section <<syntax,PHP Code Template Syntax.>>
+image::images/code-template-options.png[]
+
+
+[start=2]
+. Click New to open the New Code Template dialog box. Type in the abbreviation you want for the template and click OK. 
+
+image::images/new-abb.png[]
+
+
+[start=3]
+. A new row is added to the table of code templates. This row contains only the abbreviation you provided. The cursor is in the Expanded Text tab, where the IDE placed the cursor automatically. You can begin typing the template's code immediately.
+
+NOTE: To learn about the syntax of the code template's expanded text, see the section <<syntax,PHP Code Template Syntax.>>
 
 image::images/new-abb-text.png[]
 
@@ -347,7 +416,7 @@
 
 |Expanded text: |
 
-[source,java]
+[source,php]
 ----
 
 defined('_JEXEC')or die('Restricted access');${cursor}  
@@ -368,7 +437,7 @@
 
 |Expanded text: |
 
-[source,java]
+[source,php]
 ----
 
 $$${CONLINK newVarName default="link"} = mysql_connect('localhost', 'mysql_user', 'mysql_password');  if (!$$${CONLINK}) {    die('Could not connect: ' . mysql_error());  }  echo 'Connected successfully';  mysql_close($$${CONLINK});  ${cursor}  
@@ -390,7 +459,7 @@
 
 |Expanded text: |
 
-[source,java]
+[source,php]
 ----
 
 public function ${functionName}Action () {${selection}${cursor}  }  
@@ -412,11 +481,13 @@
 
 |Expanded text: |
 
-[source,java]
+[source,php]
 ----
 
 $$${ELEMENT newVarName default="element"} = new Zend_Form_Element_Submit('submit', array('label' => 'Send data to server'));  $$this->addElement($$${ELEMENT});  ${cursor}  
 ----
  
 |===
+
 image::images/uc-zelement.png[]
+
diff --git a/netbeans.apache.org/src/content/kb/docs/php/code-templates_ja.asciidoc b/netbeans.apache.org/src/content/kb/docs/php/code-templates_ja.asciidoc
index f708a0f..a5f5eeb 100644
--- a/netbeans.apache.org/src/content/kb/docs/php/code-templates_ja.asciidoc
+++ b/netbeans.apache.org/src/content/kb/docs/php/code-templates_ja.asciidoc
@@ -32,9 +32,6 @@
 コード・テンプレートは、NetBeans IDEによって提供される記述済のコード・スニペットです。コード補完を使用するか、またはテンプレートの省略名に続けて[Tab]キーを押すことによって、スニペットを自分のコードに貼り付けることができます。適切なPHPスニペットでコードを囲むこともできます。さらに、独自のコード・テンプレートも定義できます。このチュートリアルでは、コード・テンプレートの使用方法を解説し、独自のコード・スニペットを定義するために役立つケースを紹介します。
 
 
-image::images/netbeans-stamp-80-74-73.png[title="このページの内容は、NetBeans IDE 7.2、7.3、7.4および8.0に適用されます"]
-
-
 *このチュートリアルを完了するには、次のソフトウェアとリソースが必要です。*
 
 |===
@@ -56,7 +53,7 @@
 
 このイメージでは、新規クラス( ``cls`` )コード・テンプレートが選択され、「展開されるテキスト」タブにはテンプレートが展開されたときの内容が表示されています。次の項では、Tab機能を使用してコード内でこのテンプレートを展開します。
 
-*注意:* 新規クラス( ``cls`` )コード・テンプレートの構文については、<<syntax,PHPコード・テンプレートの構文>>の項で説明します。
+NOTE:  新規クラス( ``cls`` )コード・テンプレートの構文については、<<syntax,PHPコード・テンプレートの構文>>の項で説明します。
 
 
 == PHPコード・テンプレートの使用方法
@@ -85,15 +82,21 @@
 1. 空のPHPファイルを作成します。
 2. そのファイルのPHPブロックで、「 ``cls`` 」と入力して[Tab]を押します。 ``cls`` コード・テンプレートが展開されます。
 
-*注意:* 省略名のスペルを間違えないようにしてください。省略名のスペルが間違っていると展開は機能しません。
+NOTE:  省略名のスペルを間違えないようにしてください。省略名のスペルが間違っていると展開は機能しません。
 
 image::images/expanding-template-with-abb.png[]
-3. プレースホルダのクラス名( ``*class_name*`` )が自動的に選択されます。[Tab]を押して、プレースホルダ間を移動できます。クラスに付ける名前をここで入力でき、入力した名前によってプレースホルダが上書きされます。終了して[Enter]を押すと、最初の関数(この場合はコンストラクタ)の名前がIDEで選択されます。
 
-*注意:* プレースホルダ名については<<placeholder,プレースホルダ名>>の項で詳しく説明します。
+
+[start=3]
+. プレースホルダのクラス名( ``*class_name*`` )が自動的に選択されます。[Tab]を押して、プレースホルダ間を移動できます。クラスに付ける名前をここで入力でき、入力した名前によってプレースホルダが上書きされます。終了して[Enter]を押すと、最初の関数(この場合はコンストラクタ)の名前がIDEで選択されます。
+
+NOTE:  プレースホルダ名については<<placeholder,プレースホルダ名>>の項で詳しく説明します。
 
 image::images/select-constructor-name.png[]
-4. 関数名を編集するか、またはデフォルトの名前をそのまま使用します。もう一度[Enter]を押すと、カーソルが関数本体の内部に移動します。実際には、ここで関数およびクラスの残り部分のコーディングを開始します。
+
+
+[start=4]
+. 関数名を編集するか、またはデフォルトの名前をそのまま使用します。もう一度[Enter]を押すと、カーソルが関数本体の内部に移動します。実際には、ここで関数およびクラスの残り部分のコーディングを開始します。
 
 カーソルの最終位置は ``${cursor}`` パラメータによって決定されます。このパラメータについては<<reserved-name,予約名>>の項で説明します。
 
@@ -107,11 +110,21 @@
 1. PHPファイルのPHPブロックで、「 ``cla`` 」と入力します。
 2. コード補完ダイアログが表示されるまで待ちます。
 3. 省略名( ``cls`` )とともに一覧表示される新規クラス・テンプレートを探します。PHPDocフレームには展開されたテンプレートが表示されます。
+
 image::images/insert-template-with-cc.png[]
-4. 新規クラス・テンプレートを選択し、[Enter]キーを押します。IDEによって、コードに挿入されます。
-5. プレースホルダのクラス名( ``*class_name*`` )が自動的に選択されます。[Tab]を押して、プレースホルダ間を移動できます。クラスに付ける名前をここで入力でき、入力した名前によってプレースホルダが上書きされます。終了して[Enter]を押すと、最初の関数(この場合はコンストラクタ)の名前がIDEで選択されます。
+
+
+[start=4]
+. 新規クラス・テンプレートを選択し、[Enter]キーを押します。IDEによって、コードに挿入されます。
+
+[start=5]
+. プレースホルダのクラス名( ``*class_name*`` )が自動的に選択されます。[Tab]を押して、プレースホルダ間を移動できます。クラスに付ける名前をここで入力でき、入力した名前によってプレースホルダが上書きされます。終了して[Enter]を押すと、最初の関数(この場合はコンストラクタ)の名前がIDEで選択されます。
+
 image::images/select-constructor-name.png[]
-6. 関数名を編集するか、またはデフォルトの名前をそのまま使用します。もう一度[Enter]を押すと、カーソルが関数本体の内部に移動します。実際には、ここで関数およびクラスの残り部分のコーディングを開始します。
+
+
+[start=6]
+. 関数名を編集するか、またはデフォルトの名前をそのまま使用します。もう一度[Enter]を押すと、カーソルが関数本体の内部に移動します。実際には、ここで関数およびクラスの残り部分のコーディングを開始します。
 
 
 === テンプレートでコードを囲む
@@ -129,7 +142,7 @@
 
 また、テンプレートに`allowSurround`<<complex,パラメータ・ヒント>>が含まれている場合にコードを囲む<<create,新しいテンプレートを作成>>できます。(link:http://www.mybelovedphp.com/2012/05/14/tips-for-using-the-netbeans-editor-for-kohana-and-kostache-mustache-templates-using-surround-with/[+My Beloved PHPブログ+]に感謝します。)
 
-テンプレートでコードを囲むには、コードを選択して「囲む」ダイアログを開きます。「囲む」ダイアログを開くには、[Alt]-[Enter]を押すか、またはヒントimage::images/hint-icon.png[]・アイコンをクリックします。
+テンプレートでコードを囲むには、コードを選択して「囲む」ダイアログを開きます。「囲む」ダイアログを開くには、[Alt]-[Enter]を押すか、またはヒント image:images/hint-icon.png[]・アイコンをクリックします。
 
 *if(true)テンプレートでコードを囲む*
 
@@ -140,24 +153,41 @@
 
 <?php$a = false;$b = 10;?>
 ----
-2. 「 ``$b = 10;`` 」行を選択します。
+
+[start=2]
+. 「 ``$b = 10;`` 」行を選択します。
+
 image::images/selected-variable.png[]
-3. ヒントimage::images/hint-icon.png[]・アイコンをクリックするか、[Alt]-[Enter]を押します。「囲む」ダイアログが開きます。
+
+
+[start=3]
+. ヒントimage::images/hint-icon.png[]・アイコンをクリックするか、[Alt]-[Enter]を押します。「囲む」ダイアログが開きます。
+
 image::images/surround-hint.png[]
-4. 「 ``Surround with if{*true*){...`` 」をクリックします。
+
+
+[start=4]
+. 「 ``Surround with if{*true*){...`` 」をクリックします。
+
 image::images/surround-if-true.png[]
-5. IDEで、「 ``$b=10;`` 」行が「 ``if(*true*){...`` 」テンプレートで囲まれます。
+
+
+[start=5]
+. IDEで、「 ``$b=10;`` 」行が「 ``if(*true*){...`` 」テンプレートで囲まれます。
+
 image::images/inserted-if-true.png[]
 
 IDEでは自動的に、出現済で最も近い位置にある適切な変数が ``if`` 文の条件として挿入されます。 ``$a`` はブール型であり、 ``if(*true*){}`` 文はその条件としてブール型の変数を取るため、この場合の該当する変数は ``$a`` です。また、IDEで条件に挿入された変数が正しい変数でない場合、その条件が自動的に編集のために選択されます。つまり、テンプレートが挿入された後、すぐに正しい変数の入力を開始できます。この場合、コード補完が正しい変数の選択に役立つことがあります。
 
-*注意:*  ``if(*true*){}`` テンプレートについては、<<complex,ヒントによって定義されるパラメータ>>の項で詳しく説明します。
+NOTE:   ``if(*true*){}`` テンプレートについては、<<complex,ヒントによって定義されるパラメータ>>の項で詳しく説明します。
 
 image::images/change-condition.png[]
 
 [Enter]を押して文の条件を終了します。カーソルが適切な位置(この場合は「 ``$b=10;`` 」行の末尾)に移動します。条件を編集して[Enter]を押すか、または自動挿入された条件を受け入れて[Enter]を押すことができます。どちらの場合でも、カーソルは条件から適切な位置に移動します。
 
-image::images/cursor-after-not-editing.png[]image::images/cursor-after-editing.png[]
+image::images/cursor-after-not-editing.png[]
+
+image::images/cursor-after-editing.png[]
 
 次の項では、展開されたテンプレート内のパラメータの編集について詳しく説明します。
 
@@ -169,15 +199,25 @@
 *パラメータの複数のインスタンスを同時に編集する*
 
 1. 空のPHPブロックで「 ``for`` 」と入力し、[Ctrl]-[Space]を押してコード補完を開きます。繰返し処理テンプレート(省略名 ``iter`` )を選択して[Enter]を押します。新しい繰返し処理がコードに挿入されます。
+
 image::images/iter-cc.png[]
-2. 繰返し処理には、パラメータとして ``$index`` および ``$array`` の2つの変数があります。 ``$index`` が編集のために自動的に選択されます。([Tab]を押すと、パラメータ間を移動します。)
+
+
+[start=2]
+. 繰返し処理には、パラメータとして ``$index`` および ``$array`` の2つの変数があります。 ``$index`` が編集のために自動的に選択されます。([Tab]を押すと、パラメータ間を移動します。)
+
 image::images/iteration1.png[]
 
 「 ``i`` 」と入力します。 ``$index`` の3つのインスタンスがすべて ``$i`` に変更されます。
 
 image::images/iteration2.png[]
-3. [Enter]または[Tab]を押します。パラメータ ``$array`` が選択されます。
-4. [Enter]を押します。カーソルが繰返し処理のメソッド本体に移動します。
+
+
+[start=3]
+. [Enter]または[Tab]を押します。パラメータ ``$array`` が選択されます。
+
+[start=4]
+. [Enter]を押します。カーソルが繰返し処理のメソッド本体に移動します。
 
 NetBeansの変数名リファクタリング機能では、変数の1つのインスタンスを編集することにより、その変数のすべてのインスタンスを変更できます。これがテンプレートのパラメータに適用されると役に立つことがわかります。
 
@@ -192,16 +232,25 @@
 
 <?php$arr = array(new ArrayIterator($array()), new ArrayObject($array()));?>
 ----
-2.  ``$arr`` 配列を宣言する行の後に「 ``fore`` 」と入力し、コード補完を使用して ``foreach`` テンプレート(省略名 ``fore`` )を挿入します。
+
+[start=2]
+.  ``$arr`` 配列を宣言する行の後に「 ``fore`` 」と入力し、コード補完を使用して ``foreach`` テンプレート(省略名 ``fore`` )を挿入します。
+
 image::images/cc-foreach.png[]
-3. ([Enter]を2回押すか、またはカーソルを移動して) ``foreach`` 関数の本体にカーソルを置き、「 ``$value`` 」と入力するか、または「 ``$`` 」とのみ入力してコード補完から「 ``$value`` 」を選択します。
+
+
+[start=3]
+. ([Enter]を2回押すか、またはカーソルを移動して) ``foreach`` 関数の本体にカーソルを置き、「 ``$value`` 」と入力するか、または「 ``$`` 」とのみ入力してコード補完から「 ``$value`` 」を選択します。
 
 [source,php]
 ----
 
 <?php$arr = array(new ArrayIterator($array()), new ArrayObject($array()));foreach ($arr as $value) {$value}?>
 ----
-4. 「 ``$value`` 」に続けて「 ``->`` 」と入力します。コード補完により、配列 ``$arr`` から派生した ``$value`` 変数に対する適切なメソッドが提示されます。
+
+[start=4]
+. 「 ``$value`` 」に続けて「 ``->`` 」と入力します。コード補完により、配列 ``$arr`` から派生した ``$value`` 変数に対する適切なメソッドが提示されます。
+
 image::images/value-method-cc.png[]
 
 
@@ -220,7 +269,7 @@
 
 後続の各項では、コード・テンプレート・パラメータの各形式について説明します。
 
-*注意:*  ``$$${VARIABLE...}``  PHPコード・テンプレートの構文が、 ``$$${...}`` のように3つのドル記号に中括弧が続く形式になっている場合があります。この場合、コード・テンプレートには変数とその名前が含まれています。ここで示す構文では、エスケープされたドル記号(二重のドル記号 ``$$`` として記述される)に、変数名に対応するパラメータ ``${VARIABLE...}`` を続いています。たとえば、コード・テンプレート「 ``catch${Exception}$$${exc}`` 」は「[examplecode]# ``catch Exception$exc`` #」に展開されます。
+NOTE:   ``$$${VARIABLE...}``  PHPコード・テンプレートの構文が、 ``$$${...}`` のように3つのドル記号に中括弧が続く形式になっている場合があります。この場合、コード・テンプレートには変数とその名前が含まれています。ここで示す構文では、エスケープされたドル記号(二重のドル記号 ``$$`` として記述される)に、変数名に対応するパラメータ ``${VARIABLE...}`` を続いています。たとえば、コード・テンプレート「 ``catch${Exception}$$${exc}`` 」は「[examplecode]# ``catch Exception$exc`` #」に展開されます。
 
 
 === プレースホルダ名
@@ -244,7 +293,7 @@
 たとえば、このチュートリアルの<<define,定義済PHPテンプレート>>および<<expand-with-abb,省略名と[Tab]を使用したコード・テンプレートの展開>>の各項で示した新規クラス・テンプレート( ``cls`` )について再度考えてみます。 ``${ClassName}`` および ``$__construct`` という2つのプレースホルダ名パラメータが含まれています。関数本体には、 ``${cursor}`` および ``${selection}`` というパラメータが含まれています。
 
 
-[source,java]
+[source,php]
 ----
 
 class ${ClassName} {function ${__construct} {${selection}${cursor}}}
@@ -261,7 +310,7 @@
 パラメータは、すべて大文字の任意の記述名と1つ以上のヒントで構成できます。
 
 
-[source,java]
+[source,php]
 ----
 
 ${PARAMETER_NAME hint1[=value] [hint2...hint n]}
@@ -271,7 +320,7 @@
 
 
 
-[source,java]
+[source,php]
 ----
 
 $$${CONLINK newVarName default="link"} = mysql_connect('localhost', 'mysql_user', 'mysql_password');  if (!$$${CONLINK}) {    die('Could not connect: ' . mysql_error());  }  echo 'Connected successfully';  mysql_close($$${CONLINK});  ${cursor}  
@@ -280,7 +329,7 @@
 ヒントは、IDEでコード・テンプレートが展開されるときにテンプレート・パラメータの値を計算するために参照されます。たとえば、このチュートリアルの<<surround-code,テンプレートでコードを囲む>>の項で使用される ``if(*true*)`` テンプレートを見てみます。このテンプレートの展開されたテキストは次のとおりです。
 
 
-[source,java]
+[source,php]
 ----
 
 if (${CONDITION variableFromPreviousAssignment instanceof="boolean" default="true"}) {${selection}${cursor}}
@@ -326,12 +375,20 @@
 *コード・テンプレートを作成する*
 
 1. 「ツール」>「オプション」(Macでは「NetBeans」>「プリファレンス」)を開き、「エディタ」機能を選択し、「コード・テンプレート」タブを選択します。
-image::images/code-template-options.png[]
-2. 「新規」をクリックして、「新規コード・テンプレート」ダイアログ・ボックスを開きます。テンプレートの省略名を入力して「OK」をクリックします。
-image::images/new-abb.png[]
-3. コード・テンプレートの表に新しい行が追加されます。この行の内容は、指定した省略名のみです。IDEで「展開されるテキスト」タブにカーソルが自動的に移動します。テンプレートのコードの入力をすぐに開始できます。
 
-*注意:* コード・テンプレートの展開されるテキストの構文については、<<syntax,PHPコード・テンプレートの構文>>の項を参照してください。
+image::images/code-template-options.png[]
+
+
+[start=2]
+. 「新規」をクリックして、「新規コード・テンプレート」ダイアログ・ボックスを開きます。テンプレートの省略名を入力して「OK」をクリックします。
+
+image::images/new-abb.png[]
+
+
+[start=3]
+. コード・テンプレートの表に新しい行が追加されます。この行の内容は、指定した省略名のみです。IDEで「展開されるテキスト」タブにカーソルが自動的に移動します。テンプレートのコードの入力をすぐに開始できます。
+
+NOTE:  コード・テンプレートの展開されるテキストの構文については、<<syntax,PHPコード・テンプレートの構文>>の項を参照してください。
 
 image::images/new-abb-text.png[]
 
@@ -373,7 +430,7 @@
 
 |展開されるテキスト: |
 
-[source,java]
+[source,php]
 ----
 
 defined('_JEXEC')or die('Restricted access');${cursor}  
@@ -395,7 +452,7 @@
 
 |展開されるテキスト: |
 
-[source,java]
+[source,php]
 ----
 
 $$${CONLINK newVarName default="link"} = mysql_connect('localhost', 'mysql_user', 'mysql_password');  if (!$$${CONLINK}) {    die('Could not connect: ' . mysql_error());  }  echo 'Connected successfully';  mysql_close($$${CONLINK});  ${cursor}  
@@ -417,7 +474,7 @@
 
 |展開されるテキスト: |
 
-[source,java]
+[source,php]
 ----
 
 public function ${functionName}Action () {${selection}${cursor}  }  
@@ -439,13 +496,14 @@
 
 |展開されるテキスト: |
 
-[source,java]
+[source,php]
 ----
 
 $$${ELEMENT newVarName default="element"} = new Zend_Form_Element_Submit('submit', array('label' => 'Send data to server'));  $$this->addElement($$${ELEMENT});  ${cursor}  
 ----
  
 |===
+
 image::images/uc-zelement.png[]
 
  
diff --git a/netbeans.apache.org/src/content/kb/docs/php/code-templates_pt_BR.asciidoc b/netbeans.apache.org/src/content/kb/docs/php/code-templates_pt_BR.asciidoc
index 51eb806..2b0be56 100644
--- a/netbeans.apache.org/src/content/kb/docs/php/code-templates_pt_BR.asciidoc
+++ b/netbeans.apache.org/src/content/kb/docs/php/code-templates_pt_BR.asciidoc
@@ -32,9 +32,6 @@
 Os modelos de código são snippets pré-escritos de código fornecidos pelo NetBeans IDE. Você pode colar um snippet no código utilizando a funcionalidade autocompletar código ou a abreviação do modelo seguida da tecla Tab. Você também pode incluir o código entre snippets apropriados de PHP. Finalmente, você pode definir seus próprios modelos de código. Este tutorial mostra como utilizar os modelos de código e sugere casos úteis para definição de seus próprios modelos de código.
 
 
-image::images/netbeans-stamp-80-74-73.png[title="O conteúdo desta página se aplica ao NetBeans IDE 7.2, 7.3, 7.4 e 8.0"]
-
-
 *Para concluir este tutorial, você precisa dos seguintes recursos e softwares.*
 
 |===
@@ -56,7 +53,7 @@
 
 Nesta imagem, o novo modelo de código classe ( ``cls)``  está selecionado e na guia Texto Expandido você vê como fica o modelo quando está expandido. Na próxima seção, você usa a função Tab para expandir este modelo no código.
 
-*Observação:* a sintaxe do novo modelo de código classe ( ``cls`` ) é explorada na seção <<syntax,Sintaxe do Modelo de Código PHP>>.
+NOTE:  a sintaxe do novo modelo de código classe ( ``cls`` ) é explorada na seção <<syntax,Sintaxe do Modelo de Código PHP>>.
 
 
 == Usando Modelos de Código PHP
@@ -88,12 +85,18 @@
 *Advertência:* digite corretamente a abreviação! A expansão não funcionará, caso a abreviação esteja mal escrita.
 
 image::images/expanding-template-with-abb.png[]
-3. O nome de classe do placeholder ( ``*class_name*`` ) é selecionado automaticamente. Você pode mover-se entre os placeholders pressionando Tab. Você pode digitar imediatamente o nome desejado para a classe e este nome substitui o placeholder. Pressione Enter quando tiver terminado e o IDE selecionará o nome da primeira função, que neste caso é o construtor.
 
-*Observação: *os nomes do placeholder são abordados com mais detalhes na <<placeholder,seção Nome do Placeholder>>.
+
+[start=3]
+. O nome de classe do placeholder ( ``*class_name*`` ) é selecionado automaticamente. Você pode mover-se entre os placeholders pressionando Tab. Você pode digitar imediatamente o nome desejado para a classe e este nome substitui o placeholder. Pressione Enter quando tiver terminado e o IDE selecionará o nome da primeira função, que neste caso é o construtor.
+
+NOTE: os nomes do placeholder são abordados com mais detalhes na <<placeholder,seção Nome do Placeholder>>.
 
 image::images/select-constructor-name.png[]
-4. Edite o nome da função ou aceite o default. Pressione Enter novamente e o cursor irá para dentro do corpo da função. Em uma situação real, você poderia agora começar a codificar a função e o resto da classe.
+
+
+[start=4]
+. Edite o nome da função ou aceite o default. Pressione Enter novamente e o cursor irá para dentro do corpo da função. Em uma situação real, você poderia agora começar a codificar a função e o resto da classe.
 
 A posição final do cursor é determinada pelo parâmetro  ``${cursor}`` . Este parâmetro será descrito na seção <<reserved-name,Nomes Reservados>>.
 
@@ -107,11 +110,21 @@
 1. Digite  ``cla``  no bloco PHP de um arquivo PHP.
 2. Espere que a caixa de diálogo da função autocompletar código seja aberta.
 3. Localize o novo modelo de classe, que está listado com a abreviação ( ``cls`` ). O quadro do PHPDoc mostra o modelo expandido.
+
 image::images/insert-template-with-cc.png[]
-4. Selecione o novo modelo de classe e pressione Enter. O IDE o insere no código.
-5. O nome de classe do placeholder ( ``*class_name*`` ) é selecionado automaticamente. Você pode mover-se entre os placeholders pressionando Tab. Você pode digitar imediatamente o nome desejado para a classe e este nome substitui o placeholder. Pressione Enter quando tiver terminado e o IDE selecionará o nome da primeira função, que neste caso é o construtor.
+
+
+[start=4]
+. Selecione o novo modelo de classe e pressione Enter. O IDE o insere no código.
+
+[start=5]
+. O nome de classe do placeholder ( ``*class_name*`` ) é selecionado automaticamente. Você pode mover-se entre os placeholders pressionando Tab. Você pode digitar imediatamente o nome desejado para a classe e este nome substitui o placeholder. Pressione Enter quando tiver terminado e o IDE selecionará o nome da primeira função, que neste caso é o construtor.
+
 image::images/select-constructor-name.png[]
-6. Edite o nome da função ou aceite o default. Pressione Enter novamente e o cursor irá para dentro do corpo da função. Em uma situação real, você poderia agora começar a codificar a função e o resto da classe.
+
+
+[start=6]
+. Edite o nome da função ou aceite o default. Pressione Enter novamente e o cursor irá para dentro do corpo da função. Em uma situação real, você poderia agora começar a codificar a função e o resto da classe.
 
 
 === Incluindo o código em um modelo
@@ -129,7 +142,7 @@
 
 Além disso, você pode <<create,criar um novo modelo>> que pode circundar o código, se o modelo incluir `allowSurround` <<complex,parameter hint>>. (Dica para o link:http://www.mybelovedphp.com/2012/05/14/tips-for-using-the-netbeans-editor-for-kohana-and-kostache-mustache-templates-using-surround-with/[+ Blog My Beloved PHP+].)
 
-Para circundar o código com um modelo, selecione o código e abra a caixa de diálogo Circundar com... Para abrir a caixa de diálogo Circundar com..., pressione Alt-Enter ou clique no ícone Dica image::images/hint-icon.png[].
+Para circundar o código com um modelo, selecione o código e abra a caixa de diálogo Circundar com... Para abrir a caixa de diálogo Circundar com..., pressione Alt-Enter ou clique no ícone Dica image:images/hint-icon.png[].
 
 *Para circundar o código em um modelo if(true):*
 
@@ -140,24 +153,41 @@
 
 <?php$a = false;$b = 10;?>
 ----
-2. Selecione a linha  ``$b = 10;`` 
+
+[start=2]
+. Selecione a linha  ``$b = 10;`` 
+
 image::images/selected-variable.png[]
-3. Clique no ícone Dica image::images/hint-icon.png[] ou pressione Alt-Enter. A caixa de diálogo Circundar com... será aberta.
+
+
+[start=3]
+. Clique no ícone Dica image::images/hint-icon.png[] ou pressione Alt-Enter. A caixa de diálogo Circundar com... será aberta.
+
 image::images/surround-hint.png[]
-4. Clique em  ``Circundar com if{*true*){...`` 
+
+
+[start=4]
+. Clique em  ``Circundar com if{*true*){...`` 
+
 image::images/surround-if-true.png[]
-5. O IDE circunda a linha  ``$b = 10;``  com um modelo  ``if(*true*){...`` .
+
+
+[start=5]
+. O IDE circunda a linha  ``$b = 10;``  com um modelo  ``if(*true*){...`` .
+
 image::images/inserted-if-true.png[]
 
 O IDE insere automaticamente a variável apropriada precedente mais próxima como a condição da instrução  ``if`` . Neste caso, essa variável é  ``$a`` , porque  ``$a``  é um booliana e a instrução  ``if(*true*){}`` toma uma variável booliana como sua condição. Além disso, a condição é selecionada automaticamente para edição caso a variável que o IDE insira na condição não seja a variável correta. Isso significa que você pode começar a digitar a variável correta imediatamente depois que o modelo tiver sido inserido. A funcionalidade autocompletar código pode ajudar você a selecionar a variável correta neste caso.
 
-*Observação: *o modelo  ``if(*true*){}``  é descrito com detalhes na seção <<complex,Parâmetro definido por dicas>>.
+NOTE: o modelo  ``if(*true*){}``  é descrito com detalhes na seção <<complex,Parâmetro definido por dicas>>.
 
 image::images/change-condition.png[]
 
 Pressione Enter para sair da condição de instrução. O cursor se desloca para o local apropriado, que neste caso é o fim da linha  ``$b = 10;`` . Você pode editar a condição e pressionar Enter ou aceitar a condição inserida automaticamente e pressionar Enter. Em qualquer um dos casos, o cursor sai da condição e se desloca para o local apropriado.
 
-image::images/cursor-after-not-editing.png[]image::images/cursor-after-editing.png[]
+image::images/cursor-after-not-editing.png[]
+
+image::images/cursor-after-editing.png[]
 
 A próxima seção contém mais detalhes sobre a edição de parâmetros nos modelos expandidos.
 
@@ -169,15 +199,25 @@
 *Para editar simultaneamente várias instâncias de um parâmetro:*
 
 1. Em um bloco PHP vazio, digite  ``for``  e pressione Ctrl-Espaço para abrir a funcionalidade autocompletar código. Selecione o modelo de iteração (abreviação  ``iter`` ) e pressione Enter. Uma nova iteração será inserida no seu código.
+
 image::images/iter-cc.png[]
-2. A iteração tem duas variáveis como parâmetros,  ``$index``  e  ``$array`` .  ``$index``  é selecionada automaticamente para edição. (Pressionando Tab elas são movidas entre os parâmetros.)
+
+
+[start=2]
+. A iteração tem duas variáveis como parâmetros,  ``$index``  e  ``$array`` .  ``$index``  é selecionada automaticamente para edição. (Pressionando Tab elas são movidas entre os parâmetros.)
+
 image::images/iteration1.png[]
 
 Digite  ``i`` . Todas as três instâncias de  ``$index``  mudam para  ``$i`` .
 
 image::images/iteration2.png[]
-3. Pressione Enter ou Tab. O parâmetro  ``$array``  é selecionado.
-4. Pressione Enter. O cursor insere o corpo do método da iteração.
+
+
+[start=3]
+. Pressione Enter ou Tab. O parâmetro  ``$array``  é selecionado.
+
+[start=4]
+. Pressione Enter. O cursor insere o corpo do método da iteração.
 
 A funcionalidade de refatoração do nome da variável no NetBeans permite alterar todas as instâncias de nome da variável editando somente uma instância. Aqui você pode ver como essa funcionalidade é útil quando aplicada nos parâmetros do modelo.
 
@@ -192,16 +232,25 @@
 
 <?php$arr = array(new ArrayIterator($array()), new ArrayObject($array()));?>
 ----
-2. Depois da linha que declara o array  ``$arr`` , digite  ``fore``  e use a funcionalidade de autocompletar código para inserir o modelo  ``foreach``  (abreviação:  ``fore`` ).
+
+[start=2]
+. Depois da linha que declara o array  ``$arr`` , digite  ``fore``  e use a funcionalidade de autocompletar código para inserir o modelo  ``foreach``  (abreviação:  ``fore`` ).
+
 image::images/cc-foreach.png[]
-3. Coloque o cursor no corpo da função  ``foreach``  (você pode pressionar Enter duas vezes para tirar o cursor de lá) e digite  ``$value`` , ou digite somente  ``$``  e selecione  ``$value``  na funcionalidade autocompletar código.
+
+
+[start=3]
+. Coloque o cursor no corpo da função  ``foreach``  (você pode pressionar Enter duas vezes para tirar o cursor de lá) e digite  ``$value`` , ou digite somente  ``$``  e selecione  ``$value``  na funcionalidade autocompletar código.
 
 [source,php]
 ----
 
 <?php$arr = array(new ArrayIterator($array()), new ArrayObject($array()));foreach ($arr as $value) {$value}?>
 ----
-4. Depois de  ``$value`` , digite  ``->`` . A funcionalidade autocompletar código oferece os métodos corretos para a variável  ``$value`` , que se deriva do array  ``$arr`` .
+
+[start=4]
+. Depois de  ``$value`` , digite  ``->`` . A funcionalidade autocompletar código oferece os métodos corretos para a variável  ``$value`` , que se deriva do array  ``$arr`` .
+
 image::images/value-method-cc.png[]
 
 
@@ -220,7 +269,7 @@
 
 As seções a seguir abordam cada uma das formas de um parâmetro de modelo de código.
 
-*Observação:*  ``$$${VARIABLE...} `` às vezes, é exibido um modelo de código PHP no qual a sintaxe parece ser três cifrões seguidos das chaves  ``$$${...}`` . Neste caso, o modelo de código inclui uma variável e seu nome. A sintaxe aqui é um cifrão com escape, escrito como dois cifrões  ``$$`` , seguido de um parâmetro do nome da variável,  ``${VARIABLE...}`` . Por exemplo, o modelo de código  ``catch ${Exception} $$${exc}``  é expandido como [examplecode]# ``catch Exception $exc`` #.
+NOTE:   ``$$${VARIABLE...} `` às vezes, é exibido um modelo de código PHP no qual a sintaxe parece ser três cifrões seguidos das chaves  ``$$${...}`` . Neste caso, o modelo de código inclui uma variável e seu nome. A sintaxe aqui é um cifrão com escape, escrito como dois cifrões  ``$$`` , seguido de um parâmetro do nome da variável,  ``${VARIABLE...}`` . Por exemplo, o modelo de código  ``catch ${Exception} $$${exc}``  é expandido como [examplecode]# ``catch Exception $exc`` #.
 
 
 === Nome do placeholder
@@ -244,7 +293,7 @@
 Por exemplo, novamente examine o novo modelo de classe  ``(cls)``  que este tutorial mostra nas seções <<define,Modelos de PHP Definidos >> e <<expand-with-abb,Expandindo o modelo de código usando abreviação + Tab>>. Ele contém dois parâmetros de nome do placeholder  ``${ClassName}``  e  ``$__construct`` . No corpo da função, há os parâmetros  ``${cursor}``  e  ``${selection}`` .
 
 
-[source,java]
+[source,php]
 ----
 
 class ${ClassName} {function ${__construct} {${selection}${cursor}}}
@@ -261,7 +310,7 @@
 Os parâmetros podem ter um nome arbitrário e descritivo em MAIÚSCULAS e uma ou mais dicas.
 
 
-[source,java]
+[source,php]
 ----
 
 ${PARAMETER_NAME hint1[=value] [hint2...hint n]}
@@ -271,7 +320,7 @@
 
 
 
-[source,java]
+[source,php]
 ----
 
 $$${CONLINK newVarName default="link"} = mysql_connect('localhost', 'mysql_user', 'mysql_password');  if (!$$${CONLINK}) {    die('Could not connect: ' . mysql_error());  }  echo 'Connected successfully';  mysql_close($$${CONLINK});  ${cursor}  
@@ -280,7 +329,7 @@
 As dicas ajudam o IDE a calcular o valor do parâmetro do modelo quando o IDE expande o modelo de código. Veja, por exemplo, o modelo  ``if(*true*)`` , utilizado neste tutorial na seção <<surround-code,circundando o código com um modelo>>. O texto expandido deste modelo é
 
 
-[source,java]
+[source,php]
 ----
 
 if (${CONDITION variableFromPreviousAssignment instanceof="boolean" default="true"}) {${selection}${cursor}}
@@ -326,12 +375,20 @@
 *Para criar um modelo de código:*
 
 1. Abra Ferramentas > Opções (NetBeans > Preferências no Mac), selecione as funcionalidades do Editor e selecione a guia Modelos de Código. 
-image::images/code-template-options.png[]
-2. Clique em Novo para abrir a caixa de diálogo Novo Modelo de Código. Digite a abreviação que deseja para o modelo e clique em OK. 
-image::images/new-abb.png[]
-3. É adicionada uma nova linha à tabela de modelos de código. Esta linha contém somente a abreviação fornecida. O cursor está na guia Texto Expandido, onde o IDE colocou o cursor automaticamente. Você pode começar a digitar imediatamente o código do modelo.
 
-*Observação: *para saber mais sobre a sintaxe do texto expandido do modelo de código, consulte a seção <<syntax,Sintaxe do Modelo de Código PHP.>>
+image::images/code-template-options.png[]
+
+
+[start=2]
+. Clique em Novo para abrir a caixa de diálogo Novo Modelo de Código. Digite a abreviação que deseja para o modelo e clique em OK. 
+
+image::images/new-abb.png[]
+
+
+[start=3]
+. É adicionada uma nova linha à tabela de modelos de código. Esta linha contém somente a abreviação fornecida. O cursor está na guia Texto Expandido, onde o IDE colocou o cursor automaticamente. Você pode começar a digitar imediatamente o código do modelo.
+
+NOTE: para saber mais sobre a sintaxe do texto expandido do modelo de código, consulte a seção <<syntax,Sintaxe do Modelo de Código PHP.>>
 
 image::images/new-abb-text.png[]
 
@@ -373,7 +430,7 @@
 
 |Texto expandido: |
 
-[source,java]
+[source,php]
 ----
 
 defined('_JEXEC')or die('Restricted access');${cursor}  
@@ -395,7 +452,7 @@
 
 |Texto expandido: |
 
-[source,java]
+[source,php]
 ----
 
 $$${CONLINK newVarName default="link"} = mysql_connect('localhost', 'mysql_user', 'mysql_password');  if (!$$${CONLINK}) {    die('Could not connect: ' . mysql_error());  }  echo 'Connected successfully';  mysql_close($$${CONLINK});  ${cursor}  
@@ -417,7 +474,7 @@
 
 |Texto expandido: |
 
-[source,java]
+[source,php]
 ----
 
 public function ${functionName}Action () {${selection}${cursor}  }  
@@ -439,7 +496,7 @@
 
 |Texto expandido: |
 
-[source,java]
+[source,php]
 ----
 
 $$${ELEMENT newVarName default="element"} = new Zend_Form_Element_Submit('submit', array('label' => 'Send data to server'));  $$this->addElement($$${ELEMENT});  ${cursor}  
diff --git a/netbeans.apache.org/src/content/kb/docs/php/code-templates_ru.asciidoc b/netbeans.apache.org/src/content/kb/docs/php/code-templates_ru.asciidoc
index 4967b28..994a9d4 100644
--- a/netbeans.apache.org/src/content/kb/docs/php/code-templates_ru.asciidoc
+++ b/netbeans.apache.org/src/content/kb/docs/php/code-templates_ru.asciidoc
@@ -56,7 +56,7 @@
 
 В примере на рисунке выбран шаблон кода нового класса ( ``cls)`` , а на вкладке "Расширенный текст" отображается развернутый шаблон. В следующем разделе описывается использование клавиши TAB для развертывания шаблона в коде.
 
-*Примечание.* Синтаксис нового шаблона кода класса ( ``cls`` ) описывается в разделе <<syntax,Синтаксис шаблона кода PHP>>.
+NOTE:  Синтаксис нового шаблона кода класса ( ``cls`` ) описывается в разделе <<syntax,Синтаксис шаблона кода PHP>>.
 
 
 == Использование шаблонов кода PHP
@@ -88,12 +88,18 @@
 *Внимание!* Аббревиатуру необходимо ввести корректно! В случае ошибок при вводе шаблон не будет развернут.
 
 image::images/expanding-template-with-abb.png[]
-3. Имя класса метки-заполнителя ( ``*class_name*`` ) выбирается автоматически. Для перехода от одного заполнителя к другому можно использовать клавишу Tab. Можно сразу указать требуемое имя класса, которое будет перезаписано для метки-заполнителя. После завершения ввода нажмите ENTER. В среде IDE будет выбрано имя первой функции, которой в данном варианте является конструктор.
 
-*Примечание: * Имена заменителей описываются более детально в разделе <<placeholder,Раздел имен заменителей>>.
+
+[start=3]
+. Имя класса метки-заполнителя ( ``*class_name*`` ) выбирается автоматически. Для перехода от одного заполнителя к другому можно использовать клавишу Tab. Можно сразу указать требуемое имя класса, которое будет перезаписано для метки-заполнителя. После завершения ввода нажмите ENTER. В среде IDE будет выбрано имя первой функции, которой в данном варианте является конструктор.
+
+NOTE:  Имена заменителей описываются более детально в разделе <<placeholder,Раздел имен заменителей>>.
 
 image::images/select-constructor-name.png[]
-4. Отредактируйте имя функции или примите значение по умолчанию. Затем снова нажмите ENTER. Курсор переместится в тело функции. В реальном сценарии после этого начинается кодирование функции и остального класса.
+
+
+[start=4]
+. Отредактируйте имя функции или примите значение по умолчанию. Затем снова нажмите ENTER. Курсор переместится в тело функции. В реальном сценарии после этого начинается кодирование функции и остального класса.
 
 Итоговое положение курсора определяется параметром  ``${cursor}`` . Этот параметр описывается в разделе <<reserved-name,Зарезервированные имена>>.
 
@@ -107,11 +113,21 @@
 1. Введите в блоке PHP файла PHP значение  ``cla`` .
 2. Дождитесь открытия диалогового окна дополнения кода.
 3. Выполните поиск шаблона нового класса, рядом с которым указана аббревиатура ( ``cls`` ). Развернутый шаблон отображается в рамке PHPDoc.
+
 image::images/insert-template-with-cc.png[]
-4. Выберите шаблон нового класса и нажмите Enter. В среде IDE выполняется его вставка в код.
-5. Имя класса метки-заполнителя ( ``*class_name*`` ) выбирается автоматически. Для перехода от одного заполнителя к другому можно использовать клавишу Tab. Можно сразу указать требуемое имя класса, которое будет перезаписано для метки-заполнителя. После завершения ввода нажмите ENTER. В среде IDE будет выбрано имя первой функции, которой в данном варианте является конструктор.
+
+
+[start=4]
+. Выберите шаблон нового класса и нажмите Enter. В среде IDE выполняется его вставка в код.
+
+[start=5]
+. Имя класса метки-заполнителя ( ``*class_name*`` ) выбирается автоматически. Для перехода от одного заполнителя к другому можно использовать клавишу Tab. Можно сразу указать требуемое имя класса, которое будет перезаписано для метки-заполнителя. После завершения ввода нажмите ENTER. В среде IDE будет выбрано имя первой функции, которой в данном варианте является конструктор.
+
 image::images/select-constructor-name.png[]
-6. Отредактируйте имя функции или примите значение по умолчанию. Затем снова нажмите ENTER. Курсор переместится в тело функции. В реальном сценарии после этого начинается кодирование функции и остального класса.
+
+
+[start=6]
+. Отредактируйте имя функции или примите значение по умолчанию. Затем снова нажмите ENTER. Курсор переместится в тело функции. В реальном сценарии после этого начинается кодирование функции и остального класса.
 
 
 === Добавление шаблона вокруг кода
@@ -129,7 +145,7 @@
 
 Кроме того, можно <<create,создать новый шаблон>>, который будет окружать код, если шаблон включает в себя <<complex,подсказку параметра>> `allowSurround`. (Выражаем благодарность за предоставленную информацию авторам блога link:http://www.mybelovedphp.com/2012/05/14/tips-for-using-the-netbeans-editor-for-kohana-and-kostache-mustache-templates-using-surround-with/[+ My Beloved PHP+].)
 
-Чтобы добавить шаблон вокруг кода, выберите код и откройте диалоговое окно "Окружение...". Чтобы открыть диалоговое окно 'Окружить...', нажмите Alt-Enter или щелкните значок 'Подсказка' image::images/hint-icon.png[].
+Чтобы добавить шаблон вокруг кода, выберите код и откройте диалоговое окно "Окружение...". Чтобы открыть диалоговое окно 'Окружить...', нажмите Alt-Enter или щелкните значок 'Подсказка' image:images/hint-icon.png[].
 
 *Для добавления шаблона if(true) вокруг кода выполните следующее:*
 
@@ -140,24 +156,41 @@
 
 <?php$a = false;$b = 10;?>
 ----
-2. Выберите строку  ``$b = 10;`` 
+
+[start=2]
+. Выберите строку  ``$b = 10;`` 
+
 image::images/selected-variable.png[]
-3. Нажмите на значок 'Подсказка' image::images/hint-icon.png[] или нажмите Alt-Enter. Откроется диалоговое окно "Окружение...".
+
+
+[start=3]
+. Нажмите на значок 'Подсказка' image::images/hint-icon.png[] или нажмите Alt-Enter. Откроется диалоговое окно "Окружение...".
+
 image::images/surround-hint.png[]
-4. Щелкните `` Surround with if{*true*){...`` 
+
+
+[start=4]
+. Щелкните `` Surround with if{*true*){...`` 
+
 image::images/surround-if-true.png[]
-5. В среде IDE строка  ``$b = 10;``  будет окружена шаблоном  ``if(*true*){... `` .
+
+
+[start=5]
+. В среде IDE строка  ``$b = 10;``  будет окружена шаблоном  ``if(*true*){... `` .
+
 image::images/inserted-if-true.png[]
 
 В среде IDE в качестве условия оператора  ``if``  автоматически вставляется ближайшая предшествующая допустимая переменная. В данном варианте используется переменная  ``$a`` , поскольку  ``$a``  является логическим значением, а условие оператора  ``if(*true*){} `` подразумевает логическую переменную. Более того, если переменная, вставленная в среде IDE в условие, неправильна, это условие автоматически выделяется для редактирования. Это означает, что ввод корректной переменной можно начать сразу после вставки шаблона. В этом случае выбрать переменную можно с помощью дополнения кода.
 
-*Примечание *. Шаблон  ``if(*true*){}``  описывается подробно в разделе <<complex,Параметр, определяемый подсказками>>.
+NOTE: . Шаблон  ``if(*true*){}``  описывается подробно в разделе <<complex,Параметр, определяемый подсказками>>.
 
 image::images/change-condition.png[]
 
 Для выхода из условия оператора нажмите ENTER. Курсор переместится в соответствующее местоположение, в данном случае — в конец строки  ``$b = 10;`` . Пользователь может отредактировать условие и нажать ENTER или принять автоматически подставляемое условие, после чего нажать ENTER. В любом случае курсор будет перемещен из условия в соответствующее местоположение.
 
-image::images/cursor-after-not-editing.png[]image::images/cursor-after-editing.png[]
+image::images/cursor-after-not-editing.png[]
+
+image::images/cursor-after-editing.png[]
 
 В следующем разделе редактирование параметров в развернутых шаблонах описано более подробно.
 
@@ -169,15 +202,25 @@
 *Одновременное редактирование нескольких экземпляров параметра:*
 
 1. В пустом блоке PHP введите  ``for``  и нажмите сочетание клавиш CTRL+ПРОБЕЛ для открытия дополнения кода. Выберите шаблон итерации (аббревиатура  ``iter`` ) и нажмите Enter. В код будет вставлена новая итерация.
+
 image::images/iter-cc.png[]
-2. В итерации в качестве параметров используются две переменных:  ``$index``  и  ``$array`` . Переменная  ``$index``  выбирается для редактирования автоматически. (Для перемещения между параметрами используйте клавишу Tab.)
+
+
+[start=2]
+. В итерации в качестве параметров используются две переменных:  ``$index``  и  ``$array`` . Переменная  ``$index``  выбирается для редактирования автоматически. (Для перемещения между параметрами используйте клавишу Tab.)
+
 image::images/iteration1.png[]
 
 Введите  ``i`` . Все три экземпляра параметра  ``$index``  изменятся на  ``$i`` .
 
 image::images/iteration2.png[]
-3. Нажмите Enter или Tab. Будет выбран параметр  ``$array`` .
-4. Нажмите ENTER. Курсор переместится в тело метода итерации.
+
+
+[start=3]
+. Нажмите Enter или Tab. Будет выбран параметр  ``$array`` .
+
+[start=4]
+. Нажмите ENTER. Курсор переместится в тело метода итерации.
 
 Функция реорганизации имен переменных в NetBeans позволяет изменить все экземпляры имени переменной путем редактирования только одного экземпляра. В данном разделе рассматривается ее использование для параметров шаблона.
 
@@ -192,16 +235,25 @@
 
 <?php$arr = array(new ArrayIterator($array()), new ArrayObject($array()));?>
 ----
-2. После строки с объявлением массива  ``$arr``  введите  ``fore``  и с помощью дополнения кода вставьте шаблон  `` foreach``  (аббревиатура:  ``fore`` ).
+
+[start=2]
+. После строки с объявлением массива  ``$arr``  введите  ``fore``  и с помощью дополнения кода вставьте шаблон  `` foreach``  (аббревиатура:  ``fore`` ).
+
 image::images/cc-foreach.png[]
-3. Поместите курсор в тело функции  ``foreach``  (для перемещения курсора можно дважды нажать ENTER) и введите значение  ``$value``  или введите только  ``$``  и выберите  ``$value``  из дополнения кода.
+
+
+[start=3]
+. Поместите курсор в тело функции  ``foreach``  (для перемещения курсора можно дважды нажать ENTER) и введите значение  ``$value``  или введите только  ``$``  и выберите  ``$value``  из дополнения кода.
 
 [source,php]
 ----
 
 <?php$arr = array(new ArrayIterator($array()), new ArrayObject($array()));foreach ($arr as $value) {$value}?>
 ----
-4. После  ``$value``  введите  ``->`` . Дополнение кода обеспечивает корректные методы для переменной  ``$value`` , значение которой можно получить из массива  ``$arr`` .
+
+[start=4]
+. После  ``$value``  введите  ``->`` . Дополнение кода обеспечивает корректные методы для переменной  ``$value`` , значение которой можно получить из массива  ``$arr`` .
+
 image::images/value-method-cc.png[]
 
 
@@ -220,7 +272,7 @@
 
 В следующих разделах рассматриваются все формы параметров шаблона кода.
 
-*Примечание.*  ``$$${VARIABLE...} `` Иногда отображается шаблон кода PHP во фрагментах, где синтаксис состоит из трех знаков доллара, после которых стоят фигурные скобки  ``$$${...}`` . В этом случае шаблон кода содержит переменную и ее имя. Здесь знак доллара пропущен, и в синтаксисе присутствует двойной знак доллара  ``$$`` , за которым следует параметр имени переменной  ``${VARIABLE...}`` . Например, шаблон кода  ``catch ${Exception} $$${exc}``  расширяется как [examplecode]# ``catch Exception $exc`` #.
+NOTE:   ``$$${VARIABLE...} `` Иногда отображается шаблон кода PHP во фрагментах, где синтаксис состоит из трех знаков доллара, после которых стоят фигурные скобки  ``$$${...}`` . В этом случае шаблон кода содержит переменную и ее имя. Здесь знак доллара пропущен, и в синтаксисе присутствует двойной знак доллара  ``$$`` , за которым следует параметр имени переменной  ``${VARIABLE...}`` . Например, шаблон кода  ``catch ${Exception} $$${exc}``  расширяется как [examplecode]# ``catch Exception $exc`` #.
 
 
 === Имя метки-заполнителя
@@ -244,7 +296,7 @@
 Например, обратитесь еще раз к шаблону нового класса  ``(cls)`` , который рассматривается в разделах <<define,Заданные шаблоны кода PHP>> и <<expand-with-abb,Расширение шаблона кода путем использования аббревиатуры с нажатием клавиши Tab>> данного учебного курса. Он содержит два параметра-заполнителя имени,  ``${ClassName}``  и  ``$__construct`` . В теле функции содержатся параметры  ``${cursor}``  и  ``${selection}`` .
 
 
-[source,java]
+[source,php]
 ----
 
 class ${ClassName} {function ${__construct} {${selection}${cursor}}}
@@ -261,7 +313,7 @@
 Параметр может содержать произвольное описательное имя В ВЕРХНЕМ РЕГИСТРЕ и одну или несколько подсказок.
 
 
-[source,java]
+[source,php]
 ----
 
 ${PARAMETER_NAME hint1[=value] [hint2...hint n]}
@@ -271,7 +323,7 @@
 
 
 
-[source,java]
+[source,php]
 ----
 
 $$${CONLINK newVarName default="link"} = mysql_connect('localhost', 'mysql_user', 'mysql_password');  if (!$$${CONLINK}) {    die('Could not connect: ' . mysql_error());  }  echo 'Connected successfully';  mysql_close($$${CONLINK});  ${cursor}  
@@ -280,7 +332,7 @@
 Подсказки в среде IDE используются для расчета значения параметра шаблона при развертывании шаблона кода. Рассмотрим шаблон  ``if(*true*)`` , описанный в данном учебном курсе в разделе, посвященном <<surround-code,добавлению шаблона вокруг кода>>. В этом шаблоне развернутый текст выглядит следующим образом:
 
 
-[source,java]
+[source,php]
 ----
 
 if (${CONDITION variableFromPreviousAssignment instanceof="boolean" default="true"}) {${selection}${cursor}}
@@ -326,12 +378,20 @@
 *Для создания шаблона кода выполните следующее:*
 
 1. Выберите команды "Средства" > "Параметры" ("NetBeans > Параметры" в системе Mac), перейдите к функциям редактора и откройте вкладку "Шаблоны кода". 
-image::images/code-template-options.png[]
-2. Нажмите 'Создать'. В результате откроется диалоговое окно 'Создание шаблона кода'. Введите аббревиатуру для шаблона и нажмите кнопку "ОК". 
-image::images/new-abb.png[]
-3. В таблицу шаблонов кода будет добавлена новая строка. Она содержит только введенную аббревиатуру. Курсор будет автоматически расположен на вкладке "Расширенный текст". Код шаблона можно ввести прямо на этой вкладке.
 
-*Примечание. *Описание синтаксиса расширенного текста шаблона кода см. в разделе <<syntax,Синтаксис шаблона кода PHP.>>
+image::images/code-template-options.png[]
+
+
+[start=2]
+. Нажмите 'Создать'. В результате откроется диалоговое окно 'Создание шаблона кода'. Введите аббревиатуру для шаблона и нажмите кнопку "ОК". 
+
+image::images/new-abb.png[]
+
+
+[start=3]
+. В таблицу шаблонов кода будет добавлена новая строка. Она содержит только введенную аббревиатуру. Курсор будет автоматически расположен на вкладке "Расширенный текст". Код шаблона можно ввести прямо на этой вкладке.
+
+NOTE: Описание синтаксиса расширенного текста шаблона кода см. в разделе <<syntax,Синтаксис шаблона кода PHP.>>
 
 image::images/new-abb-text.png[]
 
@@ -373,7 +433,7 @@
 
 |Развернутый текст: |
 
-[source,java]
+[source,php]
 ----
 
 defined('_JEXEC')or die('Restricted access');${cursor}  
@@ -395,7 +455,7 @@
 
 |Развернутый текст: |
 
-[source,java]
+[source,php]
 ----
 
 $$${CONLINK newVarName default="link"} = mysql_connect('localhost', 'mysql_user', 'mysql_password');  if (!$$${CONLINK}) {    die('Could not connect: ' . mysql_error());  }  echo 'Connected successfully';  mysql_close($$${CONLINK});  ${cursor}  
@@ -417,7 +477,7 @@
 
 |Развернутый текст: |
 
-[source,java]
+[source,php]
 ----
 
 public function ${functionName}Action () {${selection}${cursor}  }  
@@ -439,13 +499,14 @@
 
 |Развернутый текст: |
 
-[source,java]
+[source,php]
 ----
 
 $$${ELEMENT newVarName default="element"} = new Zend_Form_Element_Submit('submit', array('label' => 'Send data to server'));  $$this->addElement($$${ELEMENT});  ${cursor}  
 ----
  
 |===
+
 image::images/uc-zelement.png[]
 
  
diff --git a/netbeans.apache.org/src/content/kb/docs/php/code-templates_zh_CN.asciidoc b/netbeans.apache.org/src/content/kb/docs/php/code-templates_zh_CN.asciidoc
index a8959f8..4a25ac8 100644
--- a/netbeans.apache.org/src/content/kb/docs/php/code-templates_zh_CN.asciidoc
+++ b/netbeans.apache.org/src/content/kb/docs/php/code-templates_zh_CN.asciidoc
@@ -32,9 +32,6 @@
 代码模板是 NetBeans IDE 提供的预先编写的代码片段。可以使用代码完成或使用模板缩写并按 Tab 键,将代码片段粘贴到您的代码中。也可以将您的代码包含在相应的 PHP 代码片段中。最后,您可以定义自己的代码模板。本教程介绍了如何使用代码模板,并建议了定义您自己的代码模板的用例。
 
 
-image::images/netbeans-stamp-80-74-73.png[title="此页上的内容适用于 NetBeans IDE 7.2、7.3、7.4 和 8.0"]
-
-
 *要学完本教程,您需要具备以下软件和资源。*
 
 |===
@@ -56,7 +53,7 @@
 
 在该图中,选择了新类 ( ``cls)``  代码模板,您可以在 "Expanded Text"(展开的文本)标签中看到该模板展开后的内容。在下一节中,将使用 Tab 功能在代码中展开该模板。
 
-*注:*<<syntax,PHP 代码模板语法>>部分讲述了新类 ( ``cls`` ) 代码模板的语法。
+NOTE: <<syntax,PHP 代码模板语法>>部分讲述了新类 ( ``cls`` ) 代码模板的语法。
 
 
 == 使用 PHP 代码模板
@@ -85,15 +82,21 @@
 1. 创建一个空 PHP 文件。
 2. 在该文件的 PHP 块中,键入  ``cls`` ,然后按 Tab 键。将展开  ``cls``  代码模板。
 
-*注:*应正确拼写缩写!如果拼错缩写,将无法展开缩写。
+NOTE: 应正确拼写缩写!如果拼错缩写,将无法展开缩写。
 
 image::images/expanding-template-with-abb.png[]
-3. 将自动选择占位符类名 ( ``*class_name*`` )。按 Tab 键可在占位符之间移动。您可以立即键入所需的类名,该名称将覆盖占位符。在完成后,按 Enter 键,IDE 将选择第一个函数的名称,此处为构造函数。
 
-*注:*<<placeholder,占位符名称>>部分详细讲述了占位符名称。
+
+[start=3]
+. 将自动选择占位符类名 ( ``*class_name*`` )。按 Tab 键可在占位符之间移动。您可以立即键入所需的类名,该名称将覆盖占位符。在完成后,按 Enter 键,IDE 将选择第一个函数的名称,此处为构造函数。
+
+NOTE: <<placeholder,占位符名称>>部分详细讲述了占位符名称。
 
 image::images/select-constructor-name.png[]
-4. 编辑函数名称或接受默认值。再次按 Enter 键,光标将移到函数主体内部。在实际情况下,您现在将开始对函数和类的其余部分进行编码。
+
+
+[start=4]
+. 编辑函数名称或接受默认值。再次按 Enter 键,光标将移到函数主体内部。在实际情况下,您现在将开始对函数和类的其余部分进行编码。
 
 最终的光标位置是由  ``${cursor}``  参数决定的。<<reserved-name,保留的名称>>部分中介绍了该参数。
 
@@ -107,11 +110,21 @@
 1. 在 PHP 文件的 PHP 块中,键入  ``cla`` 。
 2. 等待 "code completion"(代码完成)对话框打开。
 3. 找到新类模板,将列出该模板的缩写 ( ``cls`` )。PHPDoc 框架显示了展开的模板。
+
 image::images/insert-template-with-cc.png[]
-4. 选择新的类模板并按 Enter 键。IDE 将在代码中插入该模板。
-5. 将自动选择占位符类名 ( ``*class_name*`` )。按 Tab 键可在占位符之间移动。您可以立即键入所需的类名,该名称将覆盖占位符。在完成后,按 Enter 键,IDE 将选择第一个函数的名称,此处为构造函数。
+
+
+[start=4]
+. 选择新的类模板并按 Enter 键。IDE 将在代码中插入该模板。
+
+[start=5]
+. 将自动选择占位符类名 ( ``*class_name*`` )。按 Tab 键可在占位符之间移动。您可以立即键入所需的类名,该名称将覆盖占位符。在完成后,按 Enter 键,IDE 将选择第一个函数的名称,此处为构造函数。
+
 image::images/select-constructor-name.png[]
-6. 编辑函数名称或接受默认值。再次按 Enter 键,光标将移到函数主体内部。在实际情况下,您现在将开始对函数和类的其余部分进行编码。
+
+
+[start=6]
+. 编辑函数名称或接受默认值。再次按 Enter 键,光标将移到函数主体内部。在实际情况下,您现在将开始对函数和类的其余部分进行编码。
 
 
 === 将代码包含在模板中
@@ -129,7 +142,7 @@
 
 此外,您也可以<<create,创建新模板>>,如果该模板包括 `allowSurround` <<complex,参数提示>>,则可以包含代码。(感谢link:http://www.mybelovedphp.com/2012/05/14/tips-for-using-the-netbeans-editor-for-kohana-and-kostache-mustache-templates-using-surround-with/[+“我喜爱的 PHP”博客+]。)
 
-要将代码包含在模板中,请选择代码,然后打开 "Surround with..."(包含方式...)对话框。要打开 "Surround with..."(包含方式...)对话框,请按 Alt-Enter 组合键或者单击 "Hint"(提示)image::images/hint-icon.png[] 图标。
+要将代码包含在模板中,请选择代码,然后打开 "Surround with..."(包含方式...)对话框。要打开 "Surround with..."(包含方式...)对话框,请按 Alt-Enter 组合键或者单击 "Hint"(提示)image:images/hint-icon.png[] 图标。
 
 *将代码包含在 if(true) 模板中:*
 
@@ -140,24 +153,41 @@
 
 <?php$a = false;$b = 10;?>
 ----
-2. 选择行  ``$b = 10;`` 
+
+[start=2]
+. 选择行  ``$b = 10;`` 
+
 image::images/selected-variable.png[]
-3. 单击 "Hint"(提示)image::images/hint-icon.png[] 图标或按 Alt-Enter 组合键。此时将打开 "Surround with..."(包含方式...)对话框。
+
+
+[start=3]
+. 单击 "Hint"(提示)image::images/hint-icon.png[] 图标或按 Alt-Enter 组合键。此时将打开 "Surround with..."(包含方式...)对话框。
+
 image::images/surround-hint.png[]
-4. 单击  ``Surround with if{*true*){...`` (包含在 if{true){... 中)
+
+
+[start=4]
+. 单击  ``Surround with if{*true*){...`` (包含在 if{true){... 中)
+
 image::images/surround-if-true.png[]
-5. IDE 将  ``$b = 10;``  行包含在  ``if(*true*){...``  模板中。
+
+
+[start=5]
+. IDE 将  ``$b = 10;``  行包含在  ``if(*true*){...``  模板中。
+
 image::images/inserted-if-true.png[]
 
 IDE 自动插入前面最近的适合变量作为  ``if``  语句的条件。此处,该变量是  ``$a`` ,这是因为  ``$a``  是布尔型变量,并且  ``if(*true*){}``  语句将布尔型变量作为其条件。再者,如果 IDE 插入到条件中的变量不是正确的变量,则会自动选择该条件以进行编辑。这意味着,您可以在插入模板后立即开始键入正确的变量。在这种情况下,代码完成可以帮助您选择正确的变量。
 
-*注:*<<complex,提示定义的参数>>部分详细介绍了  ``if(*true*){}``  模板。
+NOTE: <<complex,提示定义的参数>>部分详细介绍了  ``if(*true*){}``  模板。
 
 image::images/change-condition.png[]
 
 按 Enter 键以退出语句的条件。光标将移到相应的位置,此处为  ``$b = 10;``  行的末尾。您可以编辑条件并按 Enter 键,或者接受自动插入的条件并按 Enter 键。对于这两种情况,光标将退出条件并移到相应的位置。
 
-image::images/cursor-after-not-editing.png[]image::images/cursor-after-editing.png[]
+image::images/cursor-after-not-editing.png[]
+
+image::images/cursor-after-editing.png[]
 
 下一节包含在展开的模板中编辑参数的详细信息。
 
@@ -169,15 +199,25 @@
 *同时编辑参数的多个实例:*
 
 1. 在一个空 PHP 块中,键入  ``for`` ,然后按 Ctrl-空格键以打开代码完成。选择迭代模板(缩写为  ``iter`` ),然后按 Enter 键。将在代码中插入一个新迭代。
+
 image::images/iter-cc.png[]
-2. 迭代将以下两个变量作为参数: ``$index``  和  ``$array`` 。将自动选择  ``$index``  以进行编辑。(按 Tab 键可在参数之间移动。)
+
+
+[start=2]
+. 迭代将以下两个变量作为参数: ``$index``  和  ``$array`` 。将自动选择  ``$index``  以进行编辑。(按 Tab 键可在参数之间移动。)
+
 image::images/iteration1.png[]
 
 键入  ``i`` 。 ``$index``  的所有三个实例将变为  ``$i`` 。
 
 image::images/iteration2.png[]
-3. 按 Enter 或 Tab 键。将选择  ``$array``  参数。
-4. 按 Enter 键。光标将进入迭代的方法主体。
+
+
+[start=3]
+. 按 Enter 或 Tab 键。将选择  ``$array``  参数。
+
+[start=4]
+. 按 Enter 键。光标将进入迭代的方法主体。
 
 通过使用 NetBeans 中的变量名称重构功能,您只需编辑变量名称的一个实例即可更改它的所有实例。由此看出,在应用于模板参数时,该功能是多么有用!
 
@@ -192,16 +232,25 @@
 
 <?php$arr = array(new ArrayIterator($array()), new ArrayObject($array()));?>
 ----
-2. 在声明  ``$arr``  数组的行后面,键入  ``fore`` ,然后使用代码完成插入  ``foreach``  模板(缩写为  ``fore`` )。
+
+[start=2]
+. 在声明  ``$arr``  数组的行后面,键入  ``fore`` ,然后使用代码完成插入  ``foreach``  模板(缩写为  ``fore`` )。
+
 image::images/cc-foreach.png[]
-3. 将光标放在  ``foreach``  函数主体中(可以按两次 Enter 键以将光标移到此处)并键入  ``$value`` ,或者仅键入  ``$``  并从代码完成中选择  ``$value`` 。
+
+
+[start=3]
+. 将光标放在  ``foreach``  函数主体中(可以按两次 Enter 键以将光标移到此处)并键入  ``$value`` ,或者仅键入  ``$``  并从代码完成中选择  ``$value`` 。
 
 [source,php]
 ----
 
 <?php$arr = array(new ArrayIterator($array()), new ArrayObject($array()));foreach ($arr as $value) {$value}?>
 ----
-4. 在  ``$value``  后面,键入  ``->`` 。代码完成为您提供了  ``$value``  变量的正确方法,该变量是从  ``$arr``  数组派生的。
+
+[start=4]
+. 在  ``$value``  后面,键入  ``->`` 。代码完成为您提供了  ``$value``  变量的正确方法,该变量是从  ``$arr``  数组派生的。
+
 image::images/value-method-cc.png[]
 
 
@@ -220,7 +269,7 @@
 
 以下几节讲述了每种形式的代码模板参数。
 
-*注:* ``$$${VARIABLE...} `` 有时,您会在 PHP 代码模板中看到语法似乎为三个美元符号,后跟花括号  ``$$${...}`` 。在这种情况下,代码模板包含变量及其名称。此处的语法是转义的美元符号,记为两个美元符号  ``$$`` ,后跟变量名称参数  ``${VARIABLE...}`` 。例如, ``catch ${Exception} $$${exc}``  代码模板展开为 [examplecode]# ``catch Exception $exc`` #。
+NOTE:  ``$$${VARIABLE...} `` 有时,您会在 PHP 代码模板中看到语法似乎为三个美元符号,后跟花括号  ``$$${...}`` 。在这种情况下,代码模板包含变量及其名称。此处的语法是转义的美元符号,记为两个美元符号  ``$$`` ,后跟变量名称参数  ``${VARIABLE...}`` 。例如, ``catch ${Exception} $$${exc}``  代码模板展开为 [examplecode]# ``catch Exception $exc`` #。
 
 
 === 占位符名称
@@ -244,7 +293,7 @@
 例如,请再次考虑本教程的<<define,定义的 PHP 模板>>和<<expand-with-abb,使用缩写 + Tab 键展开代码模板>>部分中介绍的新类模板  ``(cls)`` 。它包含  ``${ClassName}``  和  ``$__construct``  这两个占位符名称参数。在函数体中,它具有参数  ``${cursor}``  和  ``${selection}`` 。
 
 
-[source,java]
+[source,php]
 ----
 
 class ${ClassName} {function ${__construct} {${selection}${cursor}}}
@@ -261,7 +310,7 @@
 参数可以包含一个全部大写的任意描述性名称以及一个或多个提示。
 
 
-[source,java]
+[source,php]
 ----
 
 ${PARAMETER_NAME hint1[=value] [hint2...hint n]}
@@ -271,7 +320,7 @@
 
 
 
-[source,java]
+[source,php]
 ----
 
 $$${CONLINK newVarName default="link"} = mysql_connect('localhost', 'mysql_user', 'mysql_password');  if (!$$${CONLINK}) {    die('Could not connect: ' . mysql_error());  }  echo 'Connected successfully';  mysql_close($$${CONLINK});  ${cursor}  
@@ -280,7 +329,7 @@
 在 IDE 展代码模板时,提示可帮助 IDE 计算模板参数的值。例如,请查看  ``if(*true*)``  模板,本教程的<<surround-code,将代码包含在模板中>>部分中使用了该模板。该模板的展开文本是
 
 
-[source,java]
+[source,php]
 ----
 
 if (${CONDITION variableFromPreviousAssignment instanceof="boolean" default="true"}) {${selection}${cursor}}
@@ -326,12 +375,20 @@
 *创建代码模板:*
 
 1. 打开 "Tools"(工具)> "Options"(选项)(在 Mac 上为 "NetBeans" > "Preferences"(首选项)),选择 "Editor"(编辑器)功能,然后选择 "Code Templates"(代码模板)标签。 
-image::images/code-template-options.png[]
-2. 单击 "New"(新建)以打开 "New Code Template"(新建代码模板)对话框。键入所需的模板缩写,然后单击 "OK"(确定)。 
-image::images/new-abb.png[]
-3. 将在代码模板表中添加一个新行。该行仅包含您提供的缩写。光标位于 "Expanded Text"(展开的文本)标签中,IDE 自动将光标放在该位置。您可以立即开始键入模板的代码。
 
-*注:*要了解代码模板的展开文本的语法,请参见 <<syntax,PHP 代码模板语法>>部分。
+image::images/code-template-options.png[]
+
+
+[start=2]
+. 单击 "New"(新建)以打开 "New Code Template"(新建代码模板)对话框。键入所需的模板缩写,然后单击 "OK"(确定)。 
+
+image::images/new-abb.png[]
+
+
+[start=3]
+. 将在代码模板表中添加一个新行。该行仅包含您提供的缩写。光标位于 "Expanded Text"(展开的文本)标签中,IDE 自动将光标放在该位置。您可以立即开始键入模板的代码。
+
+NOTE: 要了解代码模板的展开文本的语法,请参见 <<syntax,PHP 代码模板语法>>部分。
 
 image::images/new-abb-text.png[]
 
@@ -373,7 +430,7 @@
 
 |展开的文本: |
 
-[source,java]
+[source,php]
 ----
 
 defined('_JEXEC')or die('Restricted access');${cursor}  
@@ -395,7 +452,7 @@
 
 |展开的文本: |
 
-[source,java]
+[source,php]
 ----
 
 $$${CONLINK newVarName default="link"} = mysql_connect('localhost', 'mysql_user', 'mysql_password');  if (!$$${CONLINK}) {    die('Could not connect: ' . mysql_error());  }  echo 'Connected successfully';  mysql_close($$${CONLINK});  ${cursor}  
@@ -417,7 +474,7 @@
 
 |展开的文本: |
 
-[source,java]
+[source,php]
 ----
 
 public function ${functionName}Action () {${selection}${cursor}  }  
@@ -439,13 +496,14 @@
 
 |展开的文本: |
 
-[source,java]
+[source,php]
 ----
 
 $$${ELEMENT newVarName default="element"} = new Zend_Form_Element_Submit('submit', array('label' => 'Send data to server'));  $$this->addElement($$${ELEMENT});  ${cursor}  
 ----
  
 |===
+
 image::images/uc-zelement.png[]
 
  
diff --git a/netbeans.apache.org/src/content/kb/docs/php/configure-php-environment-mac-os.asciidoc b/netbeans.apache.org/src/content/kb/docs/php/configure-php-environment-mac-os.asciidoc
index ca5145b..a29c773 100644
--- a/netbeans.apache.org/src/content/kb/docs/php/configure-php-environment-mac-os.asciidoc
+++ b/netbeans.apache.org/src/content/kb/docs/php/configure-php-environment-mac-os.asciidoc
@@ -52,15 +52,15 @@
 image::images/mamp-install.png[title="MAMP installer panel showing MAMP and MAMP-Pro options"]
 
 [start=3]
-3. Navigate to `/Applications/MAMP` and double-click `MAMP.app`. The MAMP Control Panel opens. 
+. Navigate to `/Applications/MAMP` and double-click `MAMP.app`. The MAMP Control Panel opens. 
 
 You can also install the MAMP Control dashboard widget as described in `MAMP/README.rtf`, which enables you to start and stop servers. 
 
 image::images/mamp-control-panel.png[]
 
 [start=4]
-4. Click Preferences to open the Preferences panel, then select the Ports tab.
-5. Click Set to Default Apache and MySQL ports. Apache port is reset to 80 and MySQL to 3306. 
+. Click Preferences to open the Preferences panel, then select the Ports tab.
+. Click Set to Default Apache and MySQL ports. Apache port is reset to 80 and MySQL to 3306. 
 
 image::images/mamp-control-panel-preferences-ports.png[title="MAMP control panel with Ports tab, after ports have been changed to default values"]
 
@@ -81,7 +81,7 @@
 image::images/mysql-basic-properties.png[title="MySQL Basic Properties dialog containing MAMP's default connectivity settings"]
 
 [start=3]
-3. Select the Admin Properties tab to display settings that enable you to start and stop the database server from the IDE. MAMP maintains shell scripts in its `bin` folder. You can find scripts for starting and stopping servers there. For the path to the Admin tool, you have a choice; you can link to `MAMP.app` so that you can use the IDE to open MAMP's control panel. To do so, enter `/Applications/MAMP/MAMP.app`. However, an alternative option would be to use the link:http://dev.mysql.com/downloads/workbench/[+MySQL Workbench+], which provides an intuitive GUI interface for performing administrative operations (i.e., configuring and monitoring the MySQL server, managing users and connections, performing backups, etc.). To use MySQL Workbench, first download and install it, then enter the following settings into the dialog: 
+. Select the Admin Properties tab to display settings that enable you to start and stop the database server from the IDE. MAMP maintains shell scripts in its `bin` folder. You can find scripts for starting and stopping servers there. For the path to the Admin tool, you have a choice; you can link to `MAMP.app` so that you can use the IDE to open MAMP's control panel. To do so, enter `/Applications/MAMP/MAMP.app`. However, an alternative option would be to use the link:http://dev.mysql.com/downloads/workbench/[+MySQL Workbench+], which provides an intuitive GUI interface for performing administrative operations (i.e., configuring and monitoring the MySQL server, managing users and connections, performing backups, etc.). To use MySQL Workbench, first download and install it, then enter the following settings into the dialog: 
 
 * *Path/URL to admin tool: *`/Applications/MySQL Tools/MySQLWorkbench.app` _(default installation for MySQL Workbench)_
 * *Path to start command: *`/Applications/MAMP/bin/startMysql.sh`
@@ -90,12 +90,12 @@
 image::images/mysql-admin-props.png[title="MySQL Admin Properties dialog containing sample administration settings"]
 
 [start=4]
-4. If you choose to use the MySQL Workbench as your MySQL admin tool, you need to specify the socket for the connection to MAMP's database. Start MySQL Workbench and from the main page, click New Server Instance in the Server Administration column.
+. If you choose to use the MySQL Workbench as your MySQL admin tool, you need to specify the socket for the connection to MAMP's database. Start MySQL Workbench and from the main page, click New Server Instance in the Server Administration column.
 
 image::images/mysql-workbench-home.png[]
 
 [start=5]
-5. The Create New Server Instance Profile dialog opens. Select the Local Socket/Pipe connection method and add the path to the socket file in the Parameters tab. The default location of the socket is: `/Applications/MAMP/tmp/mysql/mysql.sock`. 
+. The Create New Server Instance Profile dialog opens. Select the Local Socket/Pipe connection method and add the path to the socket file in the Parameters tab. The default location of the socket is: `/Applications/MAMP/tmp/mysql/mysql.sock`. 
 
 image::images/socket-path.png[]
 
@@ -123,7 +123,7 @@
 1. Open the `php.ini` file in an editor. This file is located in: `/Applications/MAMP/conf/php5/php.ini`.
 2. Locate the  ``[Zend]``  section and comment out every line.
 
-[source,bash]
+[source,ini]
 ----
 
 ;[Zend]
@@ -135,9 +135,9 @@
 ----
 
 [start=3]
-3. Locate the  ``[xdebug]``  section and activate Xdebug (replace `xxxxxxxx` with the actual number). Add this section to the end of  ``php.ini``  if it is not there.
+. Locate the  ``[xdebug]``  section and activate Xdebug (replace `xxxxxxxx` with the actual number). Add this section to the end of  ``php.ini``  if it is not there.
 
-[source,bash]
+[source,ini]
 ----
 
 [xdebug]
@@ -156,18 +156,19 @@
 For an explanation of these properties, see Related Settings in the link:http://www.Xdebug.org/docs/remote[+Xdebug Remote Debugging+] documentation.
 
 [start=4]
-4. Note that the remote port specified for Xdebug in the previous step is: 9000. This is the default debugger port used in NetBeans. To verify this, choose NetBeans > Preferences from the main menu, then select PHP in the Options window. 
+. Note that the remote port specified for Xdebug in the previous step is: 9000. This is the default debugger port used in NetBeans. To verify this, choose NetBeans > Preferences from the main menu, then select PHP in the Options window. 
 
  image::images/php-options68.png[title="The debugging port can be set in the PHP Options window"] 
 
 If needed, you can change the debugger port here.
 
 [start=5]
-5. Open the MAMP control panel and select the PHP tab. Deselect Zend Optimizer. 
+. Open the MAMP control panel and select the PHP tab. Deselect Zend Optimizer. 
 
 image::images/mamp-control-panel-preferences-php.png[title="MAMP Control Panel with PHP tab, after Zend Optimizer has been unselected"]
 
-6. Start (or restart) the MAMP Apache server.
+[start=6]
+. Start (or restart) the MAMP Apache server.
 
 == Debugging PHP Projects
 
diff --git a/netbeans.apache.org/src/content/kb/docs/php/configure-php-environment-mac-os_ja.asciidoc b/netbeans.apache.org/src/content/kb/docs/php/configure-php-environment-mac-os_ja.asciidoc
index 1822211..786fdf3 100644
--- a/netbeans.apache.org/src/content/kb/docs/php/configure-php-environment-mac-os_ja.asciidoc
+++ b/netbeans.apache.org/src/content/kb/docs/php/configure-php-environment-mac-os_ja.asciidoc
@@ -33,10 +33,6 @@
 
 link:http://www.Xdebug.org/[+Xdebug+]はPHPの拡張機能で、PHPスクリプトをデバッグするための有用な情報を提供します。NetBeansデバッガはXdebug拡張上で機能し、開発環境に効率的なデバッグ・ツールを提供します。
 
-
-image::images/netbeans-stamp-80-74-73.png[title="このページの内容は、NetBeans IDE 7.2、7.3、7.4および8.0に適用されます"]
-
-
 *このチュートリアルを完了するには、次のソフトウェアとリソースが必要です。*
 
 |===
@@ -51,20 +47,31 @@
 |link:http://www.Xdebug.org/download.php[+Xdebug+](オプション) |2.x 
 |===
 
-*注意: *MAMPパッケージにはApache Webサーバー、PHPエンジン、MySQLデータベースが含まれます。Mac OS X 10.5以降には、PHPサポート付きのMySQLデータベースとApacheサーバーが含まれます。IDEで組込みデータベースおよびサーバーを構成することは可能ですが、MAMPのオールインワン・バンドルで簡便かつ容易に構成可能なソリューションが提供されます。
+NOTE: MAMPパッケージにはApache Webサーバー、PHPエンジン、MySQLデータベースが含まれます。Mac OS X 10.5以降には、PHPサポート付きのMySQLデータベースとApacheサーバーが含まれます。IDEで組込みデータベースおよびサーバーを構成することは可能ですが、MAMPのオールインワン・バンドルで簡便かつ容易に構成可能なソリューションが提供されます。
 
 
 == MAMPのインストールと構成
 
 1. link:http://www.mamp.info/en/download.html[+MAMP+]の最新バージョンをダウンロードします。
 2. ダウンロードしたファイルを解凍し、`.dmg`ファイルを実行します。インストーラが表示されたら、MAMPを`/Applications`フォルダにドラッグします。
+
 image::images/mamp-install.png[title="MAMPおよびMAMP-Proオプションを示すMAMPインストーラ・パネル"]
-3. `/Applications/MAMP`に移動して`MAMP.app`をダブルクリックします。MAMPコントロール・パネルが開きます。
+
+
+[start=3]
+. `/Applications/MAMP`に移動して`MAMP.app`をダブルクリックします。MAMPコントロール・パネルが開きます。
 
 `MAMP/README.rtf`に説明されているとおりにMAMPコントロール・ダッシュボード・ウィジェットをインストールし、サーバーを起動および停止することもできます。 
+
 image::images/mamp-control-panel.png[]
-4. 「プリファレンス」をクリックして「プリファレンス」パネルを開き、「ポート」タブを選択します。
-5. 「デフォルトのApacheおよびMySQLポートに設定」をクリックします。Apacheポートは80に、MySQLは3306にリセットされます。
+
+
+[start=4]
+. 「プリファレンス」をクリックして「プリファレンス」パネルを開き、「ポート」タブを選択します。
+
+[start=5]
+. 「デフォルトのApacheおよびMySQLポートに設定」をクリックします。Apacheポートは80に、MySQLは3306にリセットされます。
+
 image::images/mamp-control-panel-preferences-ports.png[title="ポートをデフォルト値に変更した後のMAMPコントロール・パネルと「ポート」タブ"]
 
 
@@ -81,16 +88,29 @@
 * *サーバー・ポート番号: *`3306`
 * *管理ユーザー名: *`root`
 * *管理パスワード: *`root`
+
 image::images/mysql-basic-properties.png[title="MAMPのデフォルト接続設定を含むMySQL基本プロパティ・ダイアログ"]
-3. 「管理プロパティ」タブを選択して、IDEからデータベース・サーバーを起動および停止するための設定を表示します。MAMPでは、`bin`フォルダにシェル・スクリプトが保持されます。ここで、サーバーを起動および停止するためのスクリプトを見つけることができます。管理ツールのパスに`MAMP.app`へのリンクを設定し、IDEを使用してMAMPのコントロール・パネルを開くことができます。これを行うには、`/Applications/MAMP/MAMP.app`を入力します。かわりに、管理操作(MySQLサーバーの構成およびモニタリング、ユーザーおよび接続の管理、バックアップの実行など)を実行するための直感的なGUIインタフェースが備えられたlink:http://dev.mysql.com/downloads/workbench/[+MySQL Workbench+]を使用することもできます。 MySQL Workbenchを使用するには、まずダウンロードおよびインストールし、次の設定をダイアログに入力します。
+
+
+[start=3]
+. 「管理プロパティ」タブを選択して、IDEからデータベース・サーバーを起動および停止するための設定を表示します。MAMPでは、`bin`フォルダにシェル・スクリプトが保持されます。ここで、サーバーを起動および停止するためのスクリプトを見つけることができます。管理ツールのパスに`MAMP.app`へのリンクを設定し、IDEを使用してMAMPのコントロール・パネルを開くことができます。これを行うには、`/Applications/MAMP/MAMP.app`を入力します。かわりに、管理操作(MySQLサーバーの構成およびモニタリング、ユーザーおよび接続の管理、バックアップの実行など)を実行するための直感的なGUIインタフェースが備えられたlink:http://dev.mysql.com/downloads/workbench/[+MySQL Workbench+]を使用することもできます。 MySQL Workbenchを使用するには、まずダウンロードおよびインストールし、次の設定をダイアログに入力します。
 
 * *管理ツールのパス/URL: *`/Applications/MySQL Tools/MySQLWorkbench.app` _(MySQL Workbenchのデフォルト・インストール)_
 * *startコマンドのパス: *`/Applications/MAMP/bin/startMysql.sh`
 * *stopコマンドのパス: *`/Applications/MAMP/bin/stopMysql.sh`
+
 image::images/mysql-admin-props.png[title="サンプルの管理設定を含むMySQL管理プロパティ・ダイアログ"]
-4. MySQL WorkbenchをMySQL管理ツールとして使用する場合は、MAMPのデータベースへの接続用のソケットを指定する必要があります。MySQL Workbenchを起動し、メイン・ページでサーバー管理列の新規サーバー・インスタンスをクリックします。
+
+
+[start=4]
+. MySQL WorkbenchをMySQL管理ツールとして使用する場合は、MAMPのデータベースへの接続用のソケットを指定する必要があります。MySQL Workbenchを起動し、メイン・ページでサーバー管理列の新規サーバー・インスタンスをクリックします。
+
 image::images/mysql-workbench-home.png[]
-5. 「新規サーバー・インスタンス・プロファイルの作成」ダイアログが開きます。ローカル・ソケット/パイプ接続方法を選択し、ソケット・ファイルのパスを「パラメータ」タブに追加します。ソケットのデフォルトの場所は`/Applications/MAMP/tmp/mysql/mysql.sock`です。
+
+
+[start=5]
+. 「新規サーバー・インスタンス・プロファイルの作成」ダイアログが開きます。ローカル・ソケット/パイプ接続方法を選択し、ソケット・ファイルのパスを「パラメータ」タブに追加します。ソケットのデフォルトの場所は`/Applications/MAMP/tmp/mysql/mysql.sock`です。
+
 image::images/socket-path.png[]
 
 
@@ -99,7 +119,7 @@
 
 MAMPのリソースを使用してIDEでPHPプロジェクトを作成する場合、IDEでソースをApacheの`htdocs`フォルダにコピーするよう指定する必要があります。このようにして、変更後にファイルを保存する際に、ソースが自動的にデプロイ後バージョンで更新されます。
 
-たとえば、新しいPHPプロジェクトの作成時に、新規プロジェクト・ウィザードを使用します(IDEのツールバーで「新規プロジェクト」アイコンをクリック(image::images/new-project-icon.png[]))。ウィザードの3番目の手順「実行構成」で、「ファイルをソース・フォルダから別の場所にコピー」オプションを選択し、`htdocs`フォルダのパスを入力します。
+たとえば、新しいPHPプロジェクトの作成時に、新規プロジェクト・ウィザードを使用します(IDEのツールバーで「新規プロジェクト」アイコンをクリック(image:images/new-project-icon.png[]))。ウィザードの3番目の手順「実行構成」で、「ファイルをソース・フォルダから別の場所にコピー」オプションを選択し、`htdocs`フォルダのパスを入力します。
 
 [.feature]
 --
@@ -118,9 +138,11 @@
 1. エディタで`php.ini`ファイルを開きます。このファイルは次の場所にあります。
 
 `/Applications/MAMP/conf/php5/php.ini`
-2.  ``[Zend]`` セクションを見つけて、各行をコメントにします。
 
-[source,java]
+[start=2]
+.  ``[Zend]`` セクションを見つけて、各行をコメントにします。
+
+[source,ini]
 ----
 
 ;[Zend]
@@ -130,9 +152,11 @@
  
 ;zend_extension=/Applications/MAMP/bin/php5/zend/lib/ZendExtensionManager.so
 ----
-3.  ``[xdebug]`` セクションを見つけて、Xdebugをアクティブ化します(`xxxxxxxx`を実際の数値に置き換えます)。このセクションが ``php.ini`` の末尾にない場合は追加します。
 
-[source,java]
+[start=3]
+.  ``[xdebug]`` セクションを見つけて、Xdebugをアクティブ化します(`xxxxxxxx`を実際の数値に置き換えます)。このセクションが ``php.ini`` の末尾にない場合は追加します。
+
+[source,ini]
 ----
 
 [xdebug]
@@ -148,17 +172,27 @@
 zend_extension="/Applications/MAMP/bin/php5/lib/php/extensions/no-debug-non-zts-xxxxxxxx/xdebug.so"
 ----
 これらのプロパティの説明については、link:http://www.Xdebug.org/docs/remote[+Xdebugリモート・デバッグ+]・ドキュメントの関連する設定を参照してください。
-4. 前の手順でXdebugに指定されたリモート・ポートは9000です。これは、NetBeansで使用されるデフォルトのデバッガ・ポートです。これを確認するには、メイン・メニューから「NetBeans」>「プリファレンス」を選択し、「オプション」ウィンドウで「PHP」を選択します。
- image::images/php-options68.png[title="デバッガ・ポートは、「PHPオプション」ウィンドウで設定できます。"] 
+
+[start=4]
+. 前の手順でXdebugに指定されたリモート・ポートは9000です。これは、NetBeansで使用されるデフォルトのデバッガ・ポートです。これを確認するには、メイン・メニューから「NetBeans」>「プリファレンス」を選択し、「オプション」ウィンドウで「PHP」を選択します。
+
+image::images/php-options68.png[title="デバッガ・ポートは、「PHPオプション」ウィンドウで設定できます。"] 
+
 必要に応じて、ここでデバッガ・ポートを変更できます。
-5. MAMPコントロール・パネルを開き、「PHP」タブを選択します。Zendオプティマイザを選択解除します。
+
+[start=5]
+. MAMPコントロール・パネルを開き、「PHP」タブを選択します。Zendオプティマイザを選択解除します。
+
 image::images/mamp-control-panel-preferences-php.png[title="Zendオプティマイザを選択解除した後のMAMPコントロール・パネルと「PHP」タブ"]
-6. MAMP Apacheサーバーを起動(または再起動)します。
+
+
+[start=6]
+. MAMP Apacheサーバーを起動(または再起動)します。
 
 
 == PHPプロジェクトのデバッグ
 
-IDEでPHPプロジェクトをデバッグするには、「プロジェクト」ウィンドウでプロジェクトを右クリックして「デバッグ」を選択します。プロジェクトが「プロジェクト」ウィンドウで強調表示されている場合は、メイン・ツールバーで「プロジェクトのデバッグ」アイコン(image::images/debug-icon.png[])をクリックできます。
+IDEでPHPプロジェクトをデバッグするには、「プロジェクト」ウィンドウでプロジェクトを右クリックして「デバッグ」を選択します。プロジェクトが「プロジェクト」ウィンドウで強調表示されている場合は、メイン・ツールバーで「プロジェクトのデバッグ」アイコン(image:images/debug-icon.png[])をクリックできます。
 
 <<phpOptions,「PHPオプション」ウィンドウ>>でこのオプションを有効にすることで、コードの最初の行でデバッガを一時停止するよう設定できます。
 
diff --git a/netbeans.apache.org/src/content/kb/docs/php/configure-php-environment-mac-os_pt_BR.asciidoc b/netbeans.apache.org/src/content/kb/docs/php/configure-php-environment-mac-os_pt_BR.asciidoc
index fa3767a..f12b5a8 100644
--- a/netbeans.apache.org/src/content/kb/docs/php/configure-php-environment-mac-os_pt_BR.asciidoc
+++ b/netbeans.apache.org/src/content/kb/docs/php/configure-php-environment-mac-os_pt_BR.asciidoc
@@ -34,9 +34,6 @@
 link:http://www.Xdebug.org/[+Xdebug+] é uma extensão para PHP que ajuda a fornecer informações valiosas para depuração de scripts PHP. O depurador do NetBeans funciona sobre a extensão Xdebug, fornecendo uma ferramenta de depuração eficiente no ambiente de desenvolvimento.
 
 
-image::images/netbeans-stamp-80-74-73.png[title="O conteúdo desta página se aplica ao NetBeans IDE 7.2, 7.3, 7.4 e 8.0"]
-
-
 *Para concluir este tutorial, você precisa dos seguintes recursos e softwares.*
 
 |===
@@ -51,20 +48,31 @@
 |link:http://www.Xdebug.org/download.php[+Xdebug+] (opcional) |2.x 
 |===
 
-*Observação: *o pacote MAMP inclui o servidor web Apache, o mecanismo PHP e o banco de dados MySQL. O Mac OS X 10.5 e mais recente incluem o banco de dados MySQL e o servidor Apache com suporte PHP. Embora certamente seja possível configurar o banco de dados e o servidor incorporado com o IDE, o pacote tudo em um do MAMP oferece uma solução prática e facilmente configurável.
+NOTE: o pacote MAMP inclui o servidor web Apache, o mecanismo PHP e o banco de dados MySQL. O Mac OS X 10.5 e mais recente incluem o banco de dados MySQL e o servidor Apache com suporte PHP. Embora certamente seja possível configurar o banco de dados e o servidor incorporado com o IDE, o pacote tudo em um do MAMP oferece uma solução prática e facilmente configurável.
 
 
 == Instalando e Configurando o MAMP
 
 1. Faça o download da versão mais recente do link:http://www.mamp.info/en/download.html[+MAMP+].
 2. Extraia o arquivo de download e execute o arquivo `.dmg`. Quando o instalador for exibido, arraste o MAMP para a pasta `/Applications`. 
+
 image::images/mamp-install.png[title="Painel do instalador do MAMP mostrando as opções MAMP e MAMP-Pro"]
-3. Navegue até `/Applications/MAMP` e clique duas vezes em `MAMP.app`. É aberto o Painel de Controle do MAMP. 
+
+
+[start=3]
+. Navegue até `/Applications/MAMP` e clique duas vezes em `MAMP.app`. É aberto o Painel de Controle do MAMP. 
 
 Você também pode instalar o widget do painel de controle do MAMP conforme descrito em `MAMP/README.rtf`, que permite iniciar e interromper servidores. 
+
 image::images/mamp-control-panel.png[]
-4. Clique em Preferências para abrir o painel Preferências; em seguida, selecione a guia Portas.
-5. Clique em Definir como Padrão as portas do Apache e MySQL. A porta do Apache é redefinida como 80 e a do MySQL como 3306. 
+
+
+[start=4]
+. Clique em Preferências para abrir o painel Preferências; em seguida, selecione a guia Portas.
+
+[start=5]
+. Clique em Definir como Padrão as portas do Apache e MySQL. A porta do Apache é redefinida como 80 e a do MySQL como 3306. 
+
 image::images/mamp-control-panel-preferences-ports.png[title="Painel de controle do MAMP com a guia Portas, depois que as portas foram alteradas para os valores padrão"]
 
 
@@ -81,16 +89,29 @@
 * *Número da Porta do Servidor: *`3306`
 * *Nome do Usuário Administrador: *`root`
 * *Senha de Administrador: *`root`
+
 image::images/mysql-basic-properties.png[title="Caixa de diálogo Propriedades Básicas do MySQL contendo as definições de conectividade padrão do MAMP"]
-3. Selecione a guia Propriedades de Admin para exibir as definições que permitem a você iniciar e interromper o servidor de banco de dados no IDE. O MAMP mantém os scripts de shell na pasta `bin`. Nessa pasta, você encontra os scripts para iniciar e interromper os servidores. Para o caminho até a ferramenta Admin, você tem uma opção: pode estabelecer um link com `MAMP.app` de modo que possa usar o IDE para abrir o painel de controle do MAMP. Para isso, digite `/Applications/MAMP/MAMP.app`. Entretanto, uma opção alternativa seria usar o link:http://dev.mysql.com/downloads/workbench/[+MySQL Workbench+], que oferece uma interface GUI intuitiva para a execução de operações administrativas (isto é, configurar e monitorar o servidor MySQL, gerenciar usuários e conexões, fazer backups etc.). Para usar o MySQL Workbench, faça primeiramente o download e instale-o; em seguida, especifique as seguintes definições na caixa de diálogo: 
+
+
+[start=3]
+. Selecione a guia Propriedades de Admin para exibir as definições que permitem a você iniciar e interromper o servidor de banco de dados no IDE. O MAMP mantém os scripts de shell na pasta `bin`. Nessa pasta, você encontra os scripts para iniciar e interromper os servidores. Para o caminho até a ferramenta Admin, você tem uma opção: pode estabelecer um link com `MAMP.app` de modo que possa usar o IDE para abrir o painel de controle do MAMP. Para isso, digite `/Applications/MAMP/MAMP.app`. Entretanto, uma opção alternativa seria usar o link:http://dev.mysql.com/downloads/workbench/[+MySQL Workbench+], que oferece uma interface GUI intuitiva para a execução de operações administrativas (isto é, configurar e monitorar o servidor MySQL, gerenciar usuários e conexões, fazer backups etc.). Para usar o MySQL Workbench, faça primeiramente o download e instale-o; em seguida, especifique as seguintes definições na caixa de diálogo: 
 
 * *Caminho/URL para a ferramenta admin: *`/Applications/MySQL Tools/MySQLWorkbench.app` _(instalação padrão do MySQL Workbench)_
 * *Caminho para o comando de início: *`/Applications/MAMP/bin/startMysql.sh`
 * *Caminho para o comando de interrupção: *`/Applications/MAMP/bin/stopMysql.sh`
+
 image::images/mysql-admin-props.png[title="Caixa de diálogo Propriedades de Admin do MySQL contendo definições de administração de amostra"]
-4. Se você optar por usar o MySQL Workbench como sua ferramenta admin do MySQL, especifique o soquete para conexão com o banco de dados do MAMP. Inicie o MySQL Workbench e, na página principal, clique em Nova Instância do Servidor, na coluna Administração do Servidor.
+
+
+[start=4]
+. Se você optar por usar o MySQL Workbench como sua ferramenta admin do MySQL, especifique o soquete para conexão com o banco de dados do MAMP. Inicie o MySQL Workbench e, na página principal, clique em Nova Instância do Servidor, na coluna Administração do Servidor.
+
 image::images/mysql-workbench-home.png[]
-5. A caixa de diálogo Criar Perfil da Nova Instância do Servidor é aberta. Selecione o método de conexão Soquete/Pipe Local e adicione o caminho para o arquivo do soquete na guia Parâmetros. O local padrão do soquete é: `/Applications/MAMP/tmp/mysql/mysql.sock`. 
+
+
+[start=5]
+. A caixa de diálogo Criar Perfil da Nova Instância do Servidor é aberta. Selecione o método de conexão Soquete/Pipe Local e adicione o caminho para o arquivo do soquete na guia Parâmetros. O local padrão do soquete é: `/Applications/MAMP/tmp/mysql/mysql.sock`. 
+
 image::images/socket-path.png[]
 
 
@@ -99,7 +120,7 @@
 
 Quando você criar um projeto PHP no IDE usando recursos do MAMP, especifique para que o IDE copie os códigos-fonte na pasta `htdocs` do Apache. Dessa forma, depois de salvar seus arquivos após fazer alterações, os códigos-fonte sejam atualizados automaticamente na versão implantada.
 
-Por exemplo, ao criar um novo projeto PHP, use o Assistente de Novo Projeto (clique no ícone Novo Projeto, na barra de ferramentas do IDE ( image::images/new-project-icon.png[] ). Na terceira etapa do assistente, Executar Configuração, selecione a opção Copiar arquivos da Pasta de Códigos-fonte para outro local, e digite o caminho para a pasta `htdocs`.
+Por exemplo, ao criar um novo projeto PHP, use o Assistente de Novo Projeto (clique no ícone Novo Projeto, na barra de ferramentas do IDE ( image:images/new-project-icon.png[] ). Na terceira etapa do assistente, Executar Configuração, selecione a opção Copiar arquivos da Pasta de Códigos-fonte para outro local, e digite o caminho para a pasta `htdocs`.
 
 [.feature]
 --
@@ -118,9 +139,11 @@
 1. Abra o arquivo `php.ini` em um editor de texto. Esse arquivo se encontra em 
 
 `/Applications/MAMP/conf/php5/php.ini`.
-2. Localize a seção  ``[Zend]``  e transforme cada linha em comentário.
 
-[source,java]
+[start=2]
+. Localize a seção  ``[Zend]``  e transforme cada linha em comentário.
+
+[source,ini]
 ----
 
 ;[Zend]
@@ -130,9 +153,11 @@
  
 ;zend_extension=/Applications/MAMP/bin/php5/zend/lib/ZendExtensionManager.so
 ----
-3. Localize a seção  ``[xdebug]``  e ative o Xdebug (substitua `xxxxxxxx` pelo número real). Adicione essa seção ao final de  ``php.ini``  se não estiver lá.
 
-[source,java]
+[start=3]
+. Localize a seção  ``[xdebug]``  e ative o Xdebug (substitua `xxxxxxxx` pelo número real). Adicione essa seção ao final de  ``php.ini``  se não estiver lá.
+
+[source,ini]
 ----
 
 [xdebug]
@@ -148,17 +173,27 @@
 zend_extension="/Applications/MAMP/bin/php5/lib/php/extensions/no-debug-non-zts-xxxxxxxx/xdebug.so"
 ----
 Para obter uma explicação dessas propriedades, consulte Related Settings na documentação link:http://www.Xdebug.org/docs/remote[+Xdebug Remote Debugging+].
-4. Observe que a porta remota especificada para o Xdebug na etapa anterior é 9000. Essa é a porta do depurador padrão usada no NetBeans. Para confirmar, escolha NetBeans > Preferências no menu principal e selecione PHP na janela Opções. 
- image::images/php-options68.png[title="A porta de depuração pode ser definida na janela Opções PHP"] 
+
+[start=4]
+. Observe que a porta remota especificada para o Xdebug na etapa anterior é 9000. Essa é a porta do depurador padrão usada no NetBeans. Para confirmar, escolha NetBeans > Preferências no menu principal e selecione PHP na janela Opções. 
+
+image::images/php-options68.png[title="A porta de depuração pode ser definida na janela Opções PHP"] 
+
 Se for necessário, você poderá alterar a porta do depurador aqui.
-5. Abra o painel de controle do MAMP e selecione a guia PHP. Desmarque Zend Optimizer. 
+
+[start=5]
+. Abra o painel de controle do MAMP e selecione a guia PHP. Desmarque Zend Optimizer. 
+
 image::images/mamp-control-panel-preferences-php.png[title="Painel de Controle do MAMP com a guia PHP, depois que o Zend Optimizer foi desmarcado"]
-6. Inicie (ou reinicie) o servidor Apache do MAMP.
+
+
+[start=6]
+. Inicie (ou reinicie) o servidor Apache do MAMP.
 
 
 == Depurando Projetos PHP
 
-Para depurar um projeto PHP no IDE, clique com o botão direito do mouse no projeto, na janela Projetos, e escolha Depurar. Como alternativa, se o projeto estiver destacado na janela Projetos, você poderá clicar no ícone Depurar Projeto ( image::images/debug-icon.png[] ) na barra de ferramentas principal.
+Para depurar um projeto PHP no IDE, clique com o botão direito do mouse no projeto, na janela Projetos, e escolha Depurar. Como alternativa, se o projeto estiver destacado na janela Projetos, você poderá clicar no ícone Depurar Projeto ( image:images/debug-icon.png[] ) na barra de ferramentas principal.
 
 Você pode definir o depurador para ser suspenso na primeira linha de código, ativando essa opção na <<phpOptions,janela Opções PHP>>.
 
diff --git a/netbeans.apache.org/src/content/kb/docs/php/configure-php-environment-mac-os_ru.asciidoc b/netbeans.apache.org/src/content/kb/docs/php/configure-php-environment-mac-os_ru.asciidoc
index 364aad2..b4dfd80 100644
--- a/netbeans.apache.org/src/content/kb/docs/php/configure-php-environment-mac-os_ru.asciidoc
+++ b/netbeans.apache.org/src/content/kb/docs/php/configure-php-environment-mac-os_ru.asciidoc
@@ -33,10 +33,6 @@
 
 link:http://www.Xdebug.org/[+Xdebug+] - расширение для PHP, используемое для предоставления ценной информации для отладки сценариев PHP. Отладчик NetBeans работает поверх расширения Xdebug, что обеспечивает эффективный механизм отладки для среды разработки.
 
-
-image::images/netbeans-stamp-80-74-73.png[title="Содержимое этой страницы применимо к IDE NetBeans 7.2, 7.3, 7.4 и 8.0"]
-
-
 *Для работы с этим учебным курсом требуются программное обеспечение и ресурсы, перечисленные ниже.*
 
 |===
@@ -51,20 +47,31 @@
 |link:http://www.Xdebug.org/download.php[+Xdebug+] (не обязательно) |2.x 
 |===
 
-*Примечание. *В пакет MAMP входят веб-сервер Apache, модуль PHP и база данных MySQL. Mac OS X 10.5 и более поздние версии включают в себя базу данных MySQL и сервера Apache с поддержкой PHP. Разумеется, встроенную базу данных и сервер можно настроить и в IDE, но универсальный пакет MAMP представляет собой более удобное и простое решение.
+NOTE: В пакет MAMP входят веб-сервер Apache, модуль PHP и база данных MySQL. Mac OS X 10.5 и более поздние версии включают в себя базу данных MySQL и сервера Apache с поддержкой PHP. Разумеется, встроенную базу данных и сервер можно настроить и в IDE, но универсальный пакет MAMP представляет собой более удобное и простое решение.
 
 
 == Установка и настройка MAMP
 
 1. Загрузите последнюю версию link:http://www.mamp.info/en/download.html[+MAMP+].
 2. Распакуйте загруженный архив и запустите файл `.dmg`. Когда отобразится экран установщика, переместите MAMP в папку `/Applications`. 
+
 image::images/mamp-install.png[title="На экране установщика MAMP отображаются компоненты MAMP и MAMP-Pro"]
-3. Перейдите в папку `/Applications/MAMP` и дважды щелкните файл `MAMP.app`. Открывается панель управления MAMP. 
+
+
+[start=3]
+. Перейдите в папку `/Applications/MAMP` и дважды щелкните файл `MAMP.app`. Открывается панель управления MAMP. 
 
 Также можно установить виджет панели управления MAMP, следуя инструкциям в файле `MAMP/README.rtf`. С помощью этого виджета можно будет запускать и останавливать серверы. 
+
 image::images/mamp-control-panel.png[]
-4. Нажмите "Предпочтения". На открывшейся панели "Предпочтения" перейдите на вкладку "Порты".
-5. Выберите параметр "Значения умолчанию" для портов Apache и MySQL. Для порта Apache устанавливается значение 80, а для порта MySQL - 3306. 
+
+
+[start=4]
+. Нажмите "Предпочтения". На открывшейся панели "Предпочтения" перейдите на вкладку "Порты".
+
+[start=5]
+. Выберите параметр "Значения умолчанию" для портов Apache и MySQL. Для порта Apache устанавливается значение 80, а для порта MySQL - 3306. 
+
 image::images/mamp-control-panel-preferences-ports.png[title="Панель управления MAMP со вкладкой "Порты", на которой установлены значения портов по умолчанию"]
 
 
@@ -81,16 +88,29 @@
 * *Номер порта сервера: *`3306`
 * *Имя администратора: *`root`
 * *Пароль администратора: *`root`
+
 image::images/mysql-basic-properties.png[title="В диалоговом окне "Основные свойства MySQL" можно настроить параметры подключений MAMP, используемые по умолчанию"]
-3. Перейдите на вкладку "Администрирование", где можно настроить параметры запуска и останова сервера баз данных в IDE. Сценарии оболочки MAMP хранятся в папке `bin`. Здесь находятся сценарии для запуска и останова серверов. Вы можете выбрать путь к средствам администрирования и связать IDE с файлом `MAMP.app`, чтобы в дальнейшем запускать панель управления MAMP из IDE. Для этого введите путь `/Applications/MAMP/MAMP.app`. В качестве альтернативы можно использовать инструмент link:http://dev.mysql.com/downloads/workbench/[+MySQL Workbench+], предоставляющий интуитивный графический интерфейс для выполнения административных задач, таких как настройка и мониторинг сервера MySQL, управление пользователями и подключениями, создание резервных копий и т. д. Чтобы использовать инструмент MySQL Workbench, необходимо сначала загрузить и установить его, а затем ввести в диалоговом окне следующие параметры: 
+
+
+[start=3]
+. Перейдите на вкладку "Администрирование", где можно настроить параметры запуска и останова сервера баз данных в IDE. Сценарии оболочки MAMP хранятся в папке `bin`. Здесь находятся сценарии для запуска и останова серверов. Вы можете выбрать путь к средствам администрирования и связать IDE с файлом `MAMP.app`, чтобы в дальнейшем запускать панель управления MAMP из IDE. Для этого введите путь `/Applications/MAMP/MAMP.app`. В качестве альтернативы можно использовать инструмент link:http://dev.mysql.com/downloads/workbench/[+MySQL Workbench+], предоставляющий интуитивный графический интерфейс для выполнения административных задач, таких как настройка и мониторинг сервера MySQL, управление пользователями и подключениями, создание резервных копий и т. д. Чтобы использовать инструмент MySQL Workbench, необходимо сначала загрузить и установить его, а затем ввести в диалоговом окне следующие параметры: 
 
 * *Путь/URL средства администрирования: *`/Applications/MySQL Tools/MySQLWorkbench.app` _(папка установки MySQL Workbench по умолчанию)_
 * *Путь для команды запуска: *`/Applications/MAMP/bin/startMysql.sh`
 * *Путь для команды останова: *`/Applications/MAMP/bin/stopMysql.sh`
+
 image::images/mysql-admin-props.png[title="В диалоговом окне "Администрирование MySQL" можно настроить примерные параметры администрирования"]
-4. Если в качестве инструмента администрирования сервера MySQL планируется использовать MySQL Workbench, необходимо указать сокет для подключения к базе данных MAMP. Запустите MySQL Workbench. В разделе "Администрирование сервера" на главной странице выберите "Новый экземпляр сервера".
+
+
+[start=4]
+. Если в качестве инструмента администрирования сервера MySQL планируется использовать MySQL Workbench, необходимо указать сокет для подключения к базе данных MAMP. Запустите MySQL Workbench. В разделе "Администрирование сервера" на главной странице выберите "Новый экземпляр сервера".
+
 image::images/mysql-workbench-home.png[]
-5. Отображается диалоговое окно "Создать профиль нового экземпляра сервера". Выберите метод подключения "Локальный сокет/канал" и укажите путь к файлу сокета на вкладке "Параметры". По умолчанию сокет находится в папке `/Applications/MAMP/tmp/mysql/mysql.sock`. 
+
+
+[start=5]
+. Отображается диалоговое окно "Создать профиль нового экземпляра сервера". Выберите метод подключения "Локальный сокет/канал" и укажите путь к файлу сокета на вкладке "Параметры". По умолчанию сокет находится в папке `/Applications/MAMP/tmp/mysql/mysql.sock`. 
+
 image::images/socket-path.png[]
 
 
@@ -99,7 +119,7 @@
 
 Для создания проектов PHP в IDE с использованием ресурсов MAMP необходимо настроить IDE таким образом, чтобы она копировала ваши ресурсы в папку Apache `htdocs`. В этом случае при сохранении изменений в файлах будет автоматически обновляться исходный код развернутой версии.
 
-Например, можно создать новый проект PHP с помощью мастера новых проектов (нажмите значок "Создать проект" на панели инструментов IDE ( image::images/new-project-icon.png[] ). На третьем экране мастера "Конфигурация запуска" выберите параметр "Копировать файлы из исходной папки в другое расположение" и укажите путь к папке `htdocs`.
+Например, можно создать новый проект PHP с помощью мастера новых проектов (нажмите значок "Создать проект" на панели инструментов IDE ( image:images/new-project-icon.png[] ). На третьем экране мастера "Конфигурация запуска" выберите параметр "Копировать файлы из исходной папки в другое расположение" и укажите путь к папке `htdocs`.
 
 [.feature]
 --
@@ -118,9 +138,11 @@
 1. Откройте файл `php.ini` в редакторе. Этот файл находится в папке 
 
 `/Applications/MAMP/conf/php5/php.ini`.
-2. Найдите раздел  ``[Zend]``  и закомментируйте в нем все строки.
 
-[source,java]
+[start=2]
+. Найдите раздел  ``[Zend]``  и закомментируйте в нем все строки.
+
+[source,ini]
 ----
 
 ;[Zend]
@@ -130,9 +152,11 @@
  
 ;zend_extension=/Applications/MAMP/bin/php5/zend/lib/ZendExtensionManager.so
 ----
-3. Найдите раздел  ``[xdebug]``  и активируйте Xdebug (замените `xxxxxxxx` фактическим номером). Добавьте в конец файла  ``php.ini``  следующий раздел (если он отсутствует).
 
-[source,java]
+[start=3]
+. Найдите раздел  ``[xdebug]``  и активируйте Xdebug (замените `xxxxxxxx` фактическим номером). Добавьте в конец файла  ``php.ini``  следующий раздел (если он отсутствует).
+
+[source,ini]
 ----
 
 [xdebug]
@@ -148,17 +172,27 @@
 zend_extension="/Applications/MAMP/bin/php5/lib/php/extensions/no-debug-non-zts-xxxxxxxx/xdebug.so"
 ----
 Пояснения см. в разделе "Связанные настройки" документа link:http://www.Xdebug.org/docs/remote[+Удаленная отладка Xdebug+].
-4. Обратите внимание, что на предыдущем этапе был указан удаленный порт Xdebug 9000. Этот порт отладчика используется в NetBeans по умолчанию. Чтобы проверить номер порта, выберите "NetBeans > Предпочтения" в главном меню, затем выберите PHP в окне "Параметры". 
- image::images/php-options68.png[title="Порт отладки можно указать в окне "Параметры PHP""] 
+
+[start=4]
+. Обратите внимание, что на предыдущем этапе был указан удаленный порт Xdebug 9000. Этот порт отладчика используется в NetBeans по умолчанию. Чтобы проверить номер порта, выберите "NetBeans > Предпочтения" в главном меню, затем выберите PHP в окне "Параметры". 
+
+image::images/php-options68.png[title="Порт отладки можно указать в окне "Параметры PHP""] 
+
 При необходимости здесь можно изменить порт отладчика.
-5. Откройте панель управления MAMP и перейдите на вкладку "PHP". Снимите флажок для параметра Zend Optimizer. 
+
+[start=5]
+. Откройте панель управления MAMP и перейдите на вкладку "PHP". Снимите флажок для параметра Zend Optimizer. 
+
 image::images/mamp-control-panel-preferences-php.png[title="Панель управления MAMP со вкладкой "Порты", на которой установлены значения портов по умолчанию"]
-6. Запустите (или перезапустите) сервер Apache MAMP.
+
+
+[start=6]
+. Запустите (или перезапустите) сервер Apache MAMP.
 
 
 == Отладка проектов PHP
 
-Чтобы выполнить отладку проекта PHP в IDE, щелкните проект правой кнопкой мыши в окне "Проекты" и выберите "Отладка". Также, если проект выбран в окне "Проекты", можно нажать значок "Отладка проекта" ( image::images/debug-icon.png[] ) на основной панели инструментов.
+Чтобы выполнить отладку проекта PHP в IDE, щелкните проект правой кнопкой мыши в окне "Проекты" и выберите "Отладка". Также, если проект выбран в окне "Проекты", можно нажать значок "Отладка проекта" ( image:images/debug-icon.png[] ) на основной панели инструментов.
 
 Если требуется временно приостановить отладчик на первой строке кода, включите соответствующий параметр в окне <<phpOptions,Параметры PHP>>.
 
diff --git a/netbeans.apache.org/src/content/kb/docs/php/configure-php-environment-mac-os_zh_CN.asciidoc b/netbeans.apache.org/src/content/kb/docs/php/configure-php-environment-mac-os_zh_CN.asciidoc
index c9fc05e..c72b38e 100644
--- a/netbeans.apache.org/src/content/kb/docs/php/configure-php-environment-mac-os_zh_CN.asciidoc
+++ b/netbeans.apache.org/src/content/kb/docs/php/configure-php-environment-mac-os_zh_CN.asciidoc
@@ -51,20 +51,31 @@
 |link:http://www.Xdebug.org/download.php[+Xdebug+](可选) |2.x 
 |===
 
-*注:*MAMP 包中包含 Apache Web 服务器、PHP 引擎和 MySQL 数据库。Mac OS X 10.5 及更高版本包含支持 PHP 的 MySQL 数据库和 Apache 服务器。尽管确定可以使用 IDE 配置内置的数据库和服务器,但是 MAMP 的集功能于一身的包提供了一种简便轻松的可配置解决方案。
+NOTE: MAMP 包中包含 Apache Web 服务器、PHP 引擎和 MySQL 数据库。Mac OS X 10.5 及更高版本包含支持 PHP 的 MySQL 数据库和 Apache 服务器。尽管确定可以使用 IDE 配置内置的数据库和服务器,但是 MAMP 的集功能于一身的包提供了一种简便轻松的可配置解决方案。
 
 
 == 安装和配置 MAMP
 
 1. 下载最新版本的 link:http://www.mamp.info/en/download.html[+MAMP+]。
 2. 提取下载的文件并运行 `.dmg` 文件。当安装程序显示时,将 MAMP 拖到 `/Applications` 文件夹中。
+
 image::images/mamp-install.png[title="显示 MAMP 和 MAMP-Pro 选项的 MAMP 安装程序面板"]
-3. 导航到 `/Applications/MAMP` 并双击 `MAMP.app`。此时将打开 MAMP 控制面板。
+
+
+[start=3]
+. 导航到 `/Applications/MAMP` 并双击 `MAMP.app`。此时将打开 MAMP 控制面板。
 
 您还可以按照 `MAMP/README.rtf` 中所述安装 MAMP 控制板窗口部件,这使您能够启动和停止服务器。
+
 image::images/mamp-control-panel.png[]
-4. 单击 "Preferences"(首选项)打开 "Preferences"(首选项)面板,然后选择 "Ports"(端口)标签。
-5. 单击 "Set to Default Apache and MySQL ports"(设置为默认的 Apache 和 MySQL 端口)。Apache 端口将重置为 80,MySQL 端口将重置为 3306。
+
+
+[start=4]
+. 单击 "Preferences"(首选项)打开 "Preferences"(首选项)面板,然后选择 "Ports"(端口)标签。
+
+[start=5]
+. 单击 "Set to Default Apache and MySQL ports"(设置为默认的 Apache 和 MySQL 端口)。Apache 端口将重置为 80,MySQL 端口将重置为 3306。
+
 image::images/mamp-control-panel-preferences-ports.png[title="在端口已更改为默认值之后带有 &quot;Ports&quot;(端口)标签的 MAMP 控制面板"]
 
 
@@ -81,16 +92,29 @@
 * *Server Port Number(服务器端口号):*`3306`
 * *Administrator User Name(管理员用户名):*`root`
 * *Administrator Password(管理员口令):*`root`
+
 image::images/mysql-basic-properties.png[title="包含 MAMP 默认连接设置的 &quot;MySQL Basic Properties&quot;(MySQL 基本属性)对话框"]
-3. 选择 "Admin Properties"(管理属性)标签以显示可用于从 IDE 中启动和停止数据库服务器的设置。MAMP 在 `bin` 文件夹中维护 Shell 脚本。可以在此文件夹中查找用于启动和停止服务器的脚本。您可以选择管理工具的路径;可以链接到 `MAMP.app`,这样您就可以使用 IDE 打开 MAMP 的控制面板。为此,请输入 `/Applications/MAMP/MAMP.app`。但是,替代选项将使用 link:http://dev.mysql.com/downloads/workbench/[+MySQL Workbench+],它提供用于执行管理操作(即,配置和监视 MySQL 服务器,管理用户和连接,执行备份等)的直观 GUI 界面。要使用 MySQL Workbench,请先下载并安装它,然后在对话框中输入以下设置:
+
+
+[start=3]
+. 选择 "Admin Properties"(管理属性)标签以显示可用于从 IDE 中启动和停止数据库服务器的设置。MAMP 在 `bin` 文件夹中维护 Shell 脚本。可以在此文件夹中查找用于启动和停止服务器的脚本。您可以选择管理工具的路径;可以链接到 `MAMP.app`,这样您就可以使用 IDE 打开 MAMP 的控制面板。为此,请输入 `/Applications/MAMP/MAMP.app`。但是,替代选项将使用 link:http://dev.mysql.com/downloads/workbench/[+MySQL Workbench+],它提供用于执行管理操作(即,配置和监视 MySQL 服务器,管理用户和连接,执行备份等)的直观 GUI 界面。要使用 MySQL Workbench,请先下载并安装它,然后在对话框中输入以下设置:
 
 * *管理工具的路径/URL:*`/Applications/MySQL Tools/MySQLWorkbench.app` _(MySQL Workbench 的默认安装)_
 * *启动命令的路径:*`/Applications/MAMP/bin/startMysql.sh`
 * *停止命令的路径:*`/Applications/MAMP/bin/stopMysql.sh`
+
 image::images/mysql-admin-props.png[title="包含样例管理设置的 &quot;MySQL Admin Properties&quot;(MySQL 管理属性)对话框"]
-4. 如果选择使用 MySQL Workbench 作为 MySQL 管理工具,则需要指定用于 MAMP 数据库连接的套接字。启动 MySQL Workbench,然后从主页中,单击 "Server Administration"(服务器管理)列中的 "New Server Instance"(新建服务器实例)。
+
+
+[start=4]
+. 如果选择使用 MySQL Workbench 作为 MySQL 管理工具,则需要指定用于 MAMP 数据库连接的套接字。启动 MySQL Workbench,然后从主页中,单击 "Server Administration"(服务器管理)列中的 "New Server Instance"(新建服务器实例)。
+
 image::images/mysql-workbench-home.png[]
-5. 此时将打开 "Create New Server Instance Profile"(新建服务器实例配置文件)对话框。选择 "Local Socket/Pipe"(本地套接字/管道)连接方法,并在 "Parameters"(参数)标签中添加套接字文件的路径。套接字的默认位置为:`/Applications/MAMP/tmp/mysql/mysql.sock`。
+
+
+[start=5]
+. 此时将打开 "Create New Server Instance Profile"(新建服务器实例配置文件)对话框。选择 "Local Socket/Pipe"(本地套接字/管道)连接方法,并在 "Parameters"(参数)标签中添加套接字文件的路径。套接字的默认位置为:`/Applications/MAMP/tmp/mysql/mysql.sock`。
+
 image::images/socket-path.png[]
 
 
@@ -99,7 +123,7 @@
 
 在 IDE 中使用 MAMP 资源创建 PHP 项目时,应指定 IDE 将源复制到 Apache 的 `htdocs` 文件夹中。这样,当您在进行更改之后保存文件时,会自动在已部署版本中更新源。
 
-例如,创建新的 PHP 项目时,使用新建项目向导(在 IDE 的工具栏中单击 "New Project"(新建项目)图标)(image::images/new-project-icon.png[])。在此向导的第三步 "Run Configuration"(运行配置)中,选择 "Copy files from Sources Folder to anotherlocation"(将源文件夹中的文件复制到其他位置)选项,并键入 `htdocs` 文件夹的路径。
+例如,创建新的 PHP 项目时,使用新建项目向导(在 IDE 的工具栏中单击 "New Project"(新建项目)图标)(image:images/new-project-icon.png[])。在此向导的第三步 "Run Configuration"(运行配置)中,选择 "Copy files from Sources Folder to anotherlocation"(将源文件夹中的文件复制到其他位置)选项,并键入 `htdocs` 文件夹的路径。
 
 [.feature]
 --
@@ -118,9 +142,11 @@
 1. 在编辑器中打开 `php.ini` 文件。此文件位于:
 
 `/Applications/MAMP/conf/php5/php.ini`。
-2. 找到  ``[Zend]``  部分并注释掉每一行。
 
-[source,java]
+[start=2]
+. 找到  ``[Zend]``  部分并注释掉每一行。
+
+[source,ini]
 ----
 
 ;[Zend]
@@ -130,9 +156,11 @@
  
 ;zend_extension=/Applications/MAMP/bin/php5/zend/lib/ZendExtensionManager.so
 ----
-3. 找到  ``[xdebug]``  部分并激活 Xdebug(将 `xxxxxxxx` 替换为实际数字)。将此部分添加到  ``php.ini``  结尾(如果不存在)。
 
-[source,java]
+[start=3]
+. 找到  ``[xdebug]``  部分并激活 Xdebug(将 `xxxxxxxx` 替换为实际数字)。将此部分添加到  ``php.ini``  结尾(如果不存在)。
+
+[source,ini]
 ----
 
 [xdebug]
@@ -148,17 +176,27 @@
 zend_extension="/Applications/MAMP/bin/php5/lib/php/extensions/no-debug-non-zts-xxxxxxxx/xdebug.so"
 ----
 有关这些属性的说明,请参见 link:http://www.Xdebug.org/docs/remote[+Xdebug 远程调试+]文档中的“相关设置”。
-4. 请注意,在上一步中为 Xdebug 指定的远程端口为:9000。这是在 NetBeans 中使用的默认调试器端口。要对此进行验证,请从主菜单中选择 "NetBeans" > "Preferences"(首选项),然后在 "Options"(选项)窗口中选择 "PHP"。
- image::images/php-options68.png[title="可以在 &quot;PHP Options&quot;(PHP 选项)窗口中设置调试端口"] 
+
+[start=4]
+. 请注意,在上一步中为 Xdebug 指定的远程端口为:9000。这是在 NetBeans 中使用的默认调试器端口。要对此进行验证,请从主菜单中选择 "NetBeans" > "Preferences"(首选项),然后在 "Options"(选项)窗口中选择 "PHP"。
+
+image::images/php-options68.png[title="可以在 &quot;PHP Options&quot;(PHP 选项)窗口中设置调试端口"] 
+
 如果需要,您可以在此处更改调试器端口。
-5. 打开 MAMP 控制面板并选择 "PHP" 标签。取消选择 "Zend Optimizer"(Zend 优化器)。
+
+[start=5]
+. 打开 MAMP 控制面板并选择 "PHP" 标签。取消选择 "Zend Optimizer"(Zend 优化器)。
+
 image::images/mamp-control-panel-preferences-php.png[title="取消选择 &quot;Zend Optimizer&quot;(Zend 优化器)之后带有 &quot;PHP&quot; 标签的 MAMP 控制面板"]
-6. 启动(或重新启动)MAMP Apache 服务器。
+
+
+[start=6]
+. 启动(或重新启动)MAMP Apache 服务器。
 
 
 == 调试 PHP 项目
 
-要在 IDE 中调试 PHP 项目,请在 "Projects"(项目)窗口中右键单击该项目并选择 "Debug"(调试)。或者,如果在 "Projects"(项目)窗口中突出显示了该项目,可以单击主工具栏中的 "Debug Project"(调试项目)图标 (image::images/debug-icon.png[])。
+要在 IDE 中调试 PHP 项目,请在 "Projects"(项目)窗口中右键单击该项目并选择 "Debug"(调试)。或者,如果在 "Projects"(项目)窗口中突出显示了该项目,可以单击主工具栏中的 "Debug Project"(调试项目)图标 (image:images/debug-icon.png[])。
 
 通过在 <<phpOptions,"PHP Options"(PHP 选项)窗口>>中启用此选项,可以将调试器设置为在第一行代码处挂起。
 
diff --git a/netbeans.apache.org/src/content/kb/docs/php/configure-php-environment-ubuntu.asciidoc b/netbeans.apache.org/src/content/kb/docs/php/configure-php-environment-ubuntu.asciidoc
index dc893f2..6dbf48f 100644
--- a/netbeans.apache.org/src/content/kb/docs/php/configure-php-environment-ubuntu.asciidoc
+++ b/netbeans.apache.org/src/content/kb/docs/php/configure-php-environment-ubuntu.asciidoc
@@ -153,7 +153,7 @@
 ----
 
 [start=3]
-3. Run the  ``gedit``  application and edit the new configuration file ( ``mysite`` ) in it:
+. Run the  ``gedit``  application and edit the new configuration file ( ``mysite`` ) in it:
 
 [source,bash]
 ----
@@ -163,7 +163,7 @@
 If asked, enter the password that you specified for the root user during the installation of your operating system.
 
 [start=4]
-4. Change the Document Root to point to the new location:
+. Change the Document Root to point to the new location:
 
 [source,bash]
 ----
@@ -172,7 +172,7 @@
 ----
 
 [start=5]
-5. Change the Directory directive, replace
+. Change the Directory directive, replace
 
 [source,ini]
 ----
@@ -190,7 +190,7 @@
 image::images/ubuntu-change-directory-root.png[]
 
 [start=6]
-6. Save the file  ``mysite`` 
+. Save the file  ``mysite`` 
 
 ==== Activating the New Virtual Host
 
@@ -203,7 +203,7 @@
 ----
 
 [start=2]
-2. Restart the Apache HTTP server:
+. Restart the Apache HTTP server:
 
 [source,bash]
 ----
@@ -225,7 +225,7 @@
 The MySQL command prompt appears.
 
 [start=2]
-2. At the command prompt enter the following command and press Enter:
+. At the command prompt enter the following command and press Enter:
 
 [source,sql]
 ----
@@ -261,15 +261,15 @@
 For each item, from the context menu choose Mark for installation.
 
 [start=4]
-4. The Mark additional required changes dialog box opens with a list of dependent packages that should be also installed to enable the work of the software. Click Mark.
-5. The system returns to the Synaptic Package Manager panel where the selected packages are marked for installation.
-6. Choose Apply on the toolbar. The Apply the following changes summary panel opens with a list of packages selected for installation. Click Apply.
-7. When the download and installation are completed successfully, the Changes applied panel opens. Click Close.
+. The Mark additional required changes dialog box opens with a list of dependent packages that should be also installed to enable the work of the software. Click Mark.
+. The system returns to the Synaptic Package Manager panel where the selected packages are marked for installation.
+. Choose Apply on the toolbar. The Apply the following changes summary panel opens with a list of packages selected for installation. Click Apply.
+. When the download and installation are completed successfully, the Changes applied panel opens. Click Close.
 
 NOTE: You can also install the modules by running the following command in the Terminal window:  ``aptitude install php5-dev php-pear`` 
 
 [start=8]
-8. You can now download and install XDebug. Enter the following command in the Terminal window:
+. You can now download and install XDebug. Enter the following command in the Terminal window:
 
 [source,bash]
 ----
@@ -291,8 +291,8 @@
 If asked, enter the password specified for the root user during the installation of your operating system.
 
 [start=2]
-2. Open the file  ``/etc/php5/apache2/php.ini``  .
-3. Add the following lines to the file:
+. Open the file  ``/etc/php5/apache2/php.ini``  .
+. Add the following lines to the file:
 
 [source,ini]
 ----
diff --git a/netbeans.apache.org/src/content/kb/docs/php/configure-php-environment-ubuntu_ja.asciidoc b/netbeans.apache.org/src/content/kb/docs/php/configure-php-environment-ubuntu_ja.asciidoc
index 3085ff2..bff090c 100644
--- a/netbeans.apache.org/src/content/kb/docs/php/configure-php-environment-ubuntu_ja.asciidoc
+++ b/netbeans.apache.org/src/content/kb/docs/php/configure-php-environment-ubuntu_ja.asciidoc
@@ -32,9 +32,6 @@
 このチュートリアルでは、Ubuntuオペレーティング・システム(7.10以降)でPHP開発環境を構成する方法を示します。これには、PHPエンジン、MySQLデータベース、Apache Webサーバー、およびXDebugデバッガのインストールと構成が含まれます。
 
 
-image::images/netbeans-stamp-80-74-73.png[title="このページの内容は、NetBeans IDE 7.2、7.3、7.4および8.0に適用されます"]
-
-
 *このチュートリアルに従うには、次のソフトウェアとリソースが必要です。*
 
 |===
@@ -74,7 +71,7 @@
 Ubuntuには、PHP環境に必要なパッケージがすべて含まれるLinux AMP (LAMP)パッケージがあります。ターミナル・ウィンドウのコマンド・プロンプトで次のコマンドを実行することで、ソフトウェアをインストールできます。
 
 
-[source,java]
+[source,bash]
 ----
 
 sudo tasksel install lamp-server
@@ -104,6 +101,7 @@
 PHP Web Stackを設定した後に、正しくインストールされていること、およびApacheサーバーでPHPエンジンが認識されていることを確認します。
 
 ApacheとPHPがインストールされ、実行されていることを確認するには、NetBeans IDEを開き、link:./project-setup.html[+PHPプロジェクトを作成+]します。 ``index.php`` ファイルに、PHPメソッド ``phpinfo()`` を入力します。ファイルを実行します。標準のPHP情報ページが表示されます。
+
 image::images/ubuntu-phpinfo.png[]
 
 
@@ -115,7 +113,7 @@
 * *ブラウザ・ウィンドウに ``~USER/PROJECT/index.php`` が見つからないというエラーが表示される。*URLから文字列 ``~USER`` を除去します。たとえば、URLが ``~ubuntu/test1/index.php`` のときにこのエラーが表示される場合は、URLを ``test1/index.php`` に変更します。PHPプロジェクトのURLは、NetBeans IDEでプロジェクトを作成するときに、またはプロジェクト・ノードを右クリックして「プロパティ」>「実行構成」を選択することで設定できます。
 * *PHPエンジンが認識されていないかのように、ブラウザのポップアップが表示され、ファイルを開くように求められる。* ``php5-common`` パッケージに問題があります。 ``php5`` と ``phpmyadmin`` に置き換えます。 ``php5-common`` を置き換えるには、次の2つのコマンドを実行します。
 
-[source,java]
+[source,bash]
 ----
 
 apt-get --purge remove php5-commonapt-get install php5 phpmyadmin
@@ -127,7 +125,7 @@
 ドキュメント・ルートは、Apache HTTPサーバーがブラウザで表示するファイルを取得するディレクトリです。ドキュメント・ルートは、仮想ホストを定義するファイルで指定されます。デフォルトの仮想ホストの構成ファイルは次のとおりです。
 
 
-[source,java]
+[source,bash]
 ----
 
 /etc/apache2/sites-available/default
@@ -136,7 +134,7 @@
 ドキュメント・ルートは次のとおりです。
 
 
-[source,java]
+[source,bash]
 ----
 
 /var/www/
@@ -161,56 +159,68 @@
 1. ターミナルを起動するには、「アプリケーション」>「アクセサリ」>「ターミナル」を選択します。ターミナル・ウィンドウが開きます。
 2. デフォルトの仮想ホストの構成ファイルを新しいファイル( ``mysite`` )にコピーするには、コマンド・プロンプトで次のコマンドを入力します。
 
-[source,java]
+[source,bash]
 ----
 
 sudo cp /etc/apache2/sites-available/default /etc/apache2/sites-available/mysite
 ----
-3.  ``gedit`` アプリケーションを実行し、そこで新しい構成ファイル( ``mysite`` )を編集します。
 
-[source,java]
+[start=3]
+.  ``gedit`` アプリケーションを実行し、そこで新しい構成ファイル( ``mysite`` )を編集します。
+
+[source,bash]
 ----
 
 gksudo gedit /etc/apache2/sites-available/mysite 
 ----
 要求された場合は、オペレーティング・システムのインストール時にルート・ユーザー用に指定したパスワードを入力します。
-4. ドキュメント・ルートを変更し、新しい場所を指定します。
 
-[source,java]
+[start=4]
+. ドキュメント・ルートを変更し、新しい場所を指定します。
+
+[source,bash]
 ----
 
 /home/<user>/public_html/
 ----
-5. Directoryディレクティブを変更します。
 
-[source,java]
+[start=5]
+. Directoryディレクティブを変更します。
+
+[source,bash]
 ----
 
 <Directory /var/www/>
 ----
 次と置き換えます。
 
-[source,java]
+[source,bash]
 ----
 
 <Directory /home/user/public_html/>
 ----
+
 image::images/ubuntu-change-directory-root.png[]
-6. ファイル ``mysite`` を保存します。
+
+
+[start=6]
+. ファイル ``mysite`` を保存します。
 
 
 === 新規仮想ホストのアクティブ化
 
 1. デフォルトのホストを非アクティブ化し、新しいホストをアクティブ化するには、<<launchTerminal,ターミナルを起動>>し、ターミナル・ウィンドウで次の2つのユーティリティを実行します。
 
-[source,java]
+[source,bash]
 ----
 
 sudo a2dissite default &amp;&amp; sudo a2ensite mysite
 ----
-2. Apache HTTPサーバーを再起動します。
 
-[source,java]
+[start=2]
+. Apache HTTPサーバーを再起動します。
+
+[source,bash]
 ----
 
 sudo /etc/init.d/apache2 reload
@@ -221,24 +231,28 @@
 
 MySQLデータベース・サーバーのインストール時に、ルート・ユーザーが作成されます。インストール中に、ルート・ユーザーのパスワードを設定するダイアログが開きます。このダイアログが開かなかったか、このダイアログでパスワードを設定しなかった場合は、MySQLのルート・ユーザーのパスワードを今すぐ作成する必要があります。他のMySQLサーバー・ユーザーを作成するには、パスワードが必要になります。
 
-1. MySQLサーバーに接続するには、<<launchTerminal,ターミナルを起動>>し、ターミナル・ウィンドウで次のコマンドを入力します。
 
-[source,java]
+[start=1]
+. MySQLサーバーに接続するには、<<launchTerminal,ターミナルを起動>>し、ターミナル・ウィンドウで次のコマンドを入力します。
+
+[source,bash]
 ----
 
 mysql -u root -p
 ----
 MySQLコマンド・プロンプトが表示されます。
-2. コマンド・プロンプトで次のコマンドを入力し、[Enter]を押します。
 
-[source,java]
+[start=2]
+. コマンド・プロンプトで次のコマンドを入力し、[Enter]を押します。
+
+[source,sql]
 ----
 
 SET PASSWORD FOR 'root'@'localhost' = PASSWORD('<yourpassword>');
 ----
 コマンドが正常に実行されると、次のメッセージが表示されます。
 
-[source,java]
+[source,bash]
 ----
 
 Query OK, 0 rows affected (0.00 sec)
@@ -266,16 +280,26 @@
 * php5-dev
 * php-pear
 各項目で、コンテキスト・メニューからインストールの「マーク」を選択します。
-4. 依存パッケージの一覧が表示された「依存により要求された変更を追加しますか?」ダイアログ・ボックスが開きます(依存パッケージも、ソフトウェアの機能を有効にするためにインストールされます)。「マーク」をクリックします。
-5. システムが「Synapticパッケージ・マネージャ」パネルに戻ると、選択したパッケージにインストールのマークが付いています。
-6. ツールバーで「適用」を選択します。インストール対象として選択したパッケージの一覧が表示された「次の変更を適用のサマリー」パネルが開きます。「適用」をクリックします。
-7. ダウンロードとインストールが正常に完了したら、「変更を適用」パネルが開きます。「閉じる」をクリックします。
 
-*注意:* ターミナル・ウィンドウで次のコマンドを実行することで、モジュールをインストールすることもできます。 ``aptitude install php5-dev php-pear`` 
+[start=4]
+. 依存パッケージの一覧が表示された「依存により要求された変更を追加しますか?」ダイアログ・ボックスが開きます(依存パッケージも、ソフトウェアの機能を有効にするためにインストールされます)。「マーク」をクリックします。
 
-8. これでXDebugをダウンロードし、インストールできます。ターミナル・ウィンドウに次のコマンドを入力します。
+[start=5]
+. システムが「Synapticパッケージ・マネージャ」パネルに戻ると、選択したパッケージにインストールのマークが付いています。
 
-[source,java]
+[start=6]
+. ツールバーで「適用」を選択します。インストール対象として選択したパッケージの一覧が表示された「次の変更を適用のサマリー」パネルが開きます。「適用」をクリックします。
+
+[start=7]
+. ダウンロードとインストールが正常に完了したら、「変更を適用」パネルが開きます。「閉じる」をクリックします。
+
+NOTE:  ターミナル・ウィンドウで次のコマンドを実行することで、モジュールをインストールすることもできます。 ``aptitude install php5-dev php-pear`` 
+
+
+[start=8]
+. これでXDebugをダウンロードし、インストールできます。ターミナル・ウィンドウに次のコマンドを入力します。
+
+[source,bash]
 ----
 
 sudo pecl install xdebug
@@ -288,16 +312,20 @@
 
 1.  ``gedit`` テキスト・プロセッサを起動するには、<<launchTerminal,ターミナル>>を起動し、コマンド・プロンプトで次のコマンドを入力します。
 
-[source,java]
+[source,bash]
 ----
 
 gksudo gedit
 ----
 要求された場合は、オペレーティング・システムのインストール時にルート・ユーザー用に指定したパスワードを入力します。
-2. ファイル ``/etc/php5/apache2/php.ini`` を開きます。
-3. ファイルに次の行を追加します。
 
-[source,java]
+[start=2]
+. ファイル ``/etc/php5/apache2/php.ini`` を開きます。
+
+[start=3]
+. ファイルに次の行を追加します。
+
+[source,ini]
 ----
 
 zend_extension=/usr/lib/php5/<DATE+lfs>/xdebug.so
diff --git a/netbeans.apache.org/src/content/kb/docs/php/configure-php-environment-ubuntu_pt_BR.asciidoc b/netbeans.apache.org/src/content/kb/docs/php/configure-php-environment-ubuntu_pt_BR.asciidoc
index d774e00..4c16bea 100644
--- a/netbeans.apache.org/src/content/kb/docs/php/configure-php-environment-ubuntu_pt_BR.asciidoc
+++ b/netbeans.apache.org/src/content/kb/docs/php/configure-php-environment-ubuntu_pt_BR.asciidoc
@@ -32,9 +32,6 @@
 Este tutorial mostra como configurar o ambiente de desenvolvimento do PHP no sistema operacional Ubuntu (7.10 ou superior) Isso envolve a instalação e configuração do mecanismo PHP, um banco de dados MySQL, um servidor web Apache e o depurador XDebug.
 
 
-image::images/netbeans-stamp-80-74-73.png[title="O conteúdo desta página se aplica ao NetBeans IDE 7.2, 7.3, 7.4 e 8.0"]
-
-
 *Para seguir este tutorial, são necessários os recursos e o software a seguir.*
 
 |===
@@ -74,7 +71,7 @@
 O Ubuntu oferece um pacote Linux AMP (LAMP) que contém todos os pacotes necessários para o ambiente PHP. Você pode instalar o software executando o seguinte comando no prompt de comando na janela Terminal:
 
 
-[source,java]
+[source,bash]
 ----
 
 sudo tasksel install lamp-server
@@ -104,6 +101,7 @@
 Após configurar sua pilha web de PHP, verifique se ela está instalada corretamente e se o servidor Apache reconhece o mecanismo PHP.
 
 Para verificar se Apache e PHP estão instalados e em execução, abra o NetBeans IDE e link:./project-setup.html[+crie um projeto PHP+]. No arquivo  ``index.php`` , insira o método PHP  ``phpinfo()`` . Execute o arquivo. A página de informações do PHP padrão deverá ser exibida. 
+
 image::images/ubuntu-phpinfo.png[]
 
 
@@ -115,7 +113,7 @@
 * *A janela do browser exibe a mensagem Erro Não Encontrado para  ``~USER/PROJECT/index.php`` *. Remova a string  ``~USER``  do URL. Por exemplo, se este erro for exibido para o URL  ``~ubuntu/test1/index.php`` , altere o URL para  ``test1/index.php`` . Observe que você pode definir o URL de um projeto PHP no NetBeans IDE ao criar o projeto ou clicando com botão direito do mouse no nó do projeto e indo a Propriedades > Executar Configuração.
 * *O browser mostra um pop-up pedindo para abrir o arquivo, como se o mecanismo PHP não tivesse sido reconhecido.* Há um problema com o pacote  ``php5-common`` . Substitua-o por  ``php5``  e  ``phpmyadmin`` . Para substituir o  ``php5-common`` , execute os dois comandos a seguir:
 
-[source,java]
+[source,bash]
 ----
 
 apt-get --purge remove php5-commonapt-get install php5 phpmyadmin
@@ -127,7 +125,7 @@
 A raiz do documento é o diretório onde o servidor HTTP Apache coloca os arquivos para exibição no browser. A Raiz do Documento é especificada no arquivo que define seu host virtual. O arquivo de configuração de host virtual default é
 
 
-[source,java]
+[source,bash]
 ----
 
 /etc/apache2/sites-available/default
@@ -136,7 +134,7 @@
 com a raiz do documento
 
 
-[source,java]
+[source,bash]
 ----
 
 /var/www/
@@ -162,57 +160,69 @@
 acionar o Terminal, selecione Aplicações > Acessórios > Terminal. A janela Terminal será aberta.
 2. Para copiar o arquivo de configuração do host virtual default para um novo arquivo ( ``mysite`` ), digite o seguinte comando no prompt de comando:
 
-[source,java]
+[source,bash]
 ----
 
 sudo cp /etc/apache2/sites-available/default /etc/apache2/sites-available/mysite
 ----
-3. Execute a aplicação  ``
+
+[start=3]
+. Execute a aplicação  ``
 gedit``  e edite o novo arquivo de configuração ( ``mysite`` ) nela:
 
-[source,java]
+[source,bash]
 ----
 
 gksudo gedit /etc/apache2/sites-available/mysite 
 ----
 Se solicitado, digite a senha especificada para o usuário raiz durante a instalação do sistema operacional.
-4. Altere a Raiz do Documento para apontar para o novo local:
 
-[source,java]
+[start=4]
+. Altere a Raiz do Documento para apontar para o novo local:
+
+[source,bash]
 ----
 
 /home/<user>/public_html/
 ----
-5. Alterar a diretiva Directory, substituir
 
-[source,java]
+[start=5]
+. Alterar a diretiva Directory, substituir
+
+[source,bash]
 ----
 
 <Directory /var/www/>
 ----
 por
 
-[source,java]
+[source,bash]
 ----
 
 <Directory /home/user/public_html/>
 ----
+
 image::images/ubuntu-change-directory-root.png[]
-6. Salvar o arquivo  ``mysite`` 
+
+
+[start=6]
+. Salvar o arquivo  ``mysite`` 
 
 
 === Ativando o Novo Host Virtual
 
 1. Para desativar o host default e ativar o novo host, <<launchTerminal,acione o Terminal>> e execute os dois utilitários a seguir na janela Terminal:
 
-[source,java]
+[source,bash]
 ----
 
 sudo a2dissite default &amp;&amp; sudo a2ensite mysite
 ----
-2. Reinicie o servidor HTTP Apache:
 
-[source,java]
+[start=2]
+. Reinicie o servidor HTTP Apache:
+
+[source,bash]
 ----
 
 sudo /etc/init.d/apache2 reload
@@ -223,24 +233,28 @@
 
 Durante a instalação do servidor de banco de dados MySQL, um usuário raiz é criado. Durante a instalação, é exibida uma caixa de diálogo na qual você define a senha de usuário raiz. Se essa caixa de diálogo não tiver aberto ou se você não tiver definido uma senha nessa caixa de diálogo, terá que criar uma senha de usuário raiz MySQL agora. Você precisará da senha para criar outros usuários do servidor MySQL.
 
-1. Para se conectar ao servidor MySQL,<<launchTerminal, acione o Terminal>> e na janela Terminal, insira o seguinte comando:
 
-[source,java]
+[start=1]
+. Para se conectar ao servidor MySQL,<<launchTerminal, acione o Terminal>> e na janela Terminal, insira o seguinte comando:
+
+[source,bash]
 ----
 
 mysql -u root -p
 ----
 O prompt de comando do MySQL será exibido.
-2. No prompt de comando, digite o seguinte comando e pressione Enter:
 
-[source,java]
+[start=2]
+. No prompt de comando, digite o seguinte comando e pressione Enter:
+
+[source,sql]
 ----
 
 SET PASSWORD FOR 'root'@'localhost' = PASSWORD('<yourpassword>');
 ----
 Se o comando for executado com sucesso, a seguinte mensagem será exibida:
 
-[source,java]
+[source,bash]
 ----
 
 Query OK, 0 rows affected (0.00 sec)
@@ -268,16 +282,26 @@
 * php5-dev
 * php-pear
 Para cada item, no menu de contexto, selecione Marcar para instalação.
-4. A caixa de diálogo Marcar alterações adicionais necessárias será aberta com uma lista dos pacotes dependentes que também devem ser instalados para permitir o trabalho do software. Clique em Marcar.
-5. O sistema retornará para o painel Gerenciador do Pacote Synaptic onde os pacotes selecionados estão marcados para instalação.
-6. Selecione Aplicar na barra de ferramentas. O painel de resumo Aplicar as seguintes alterações será aberto com uma lista dos pacotes selecionados para instalação. Clique em Aplicar.
-7. Quando o download e a instalação forem concluídos com êxito, o painel Alterações aplicadas será aberto. Clique em Fechar.
 
-*Observação:* você também pode instalar os módulos executando o seguinte comando na janela Terminal:  ``aptitude install php5-dev php-pear`` 
+[start=4]
+. A caixa de diálogo Marcar alterações adicionais necessárias será aberta com uma lista dos pacotes dependentes que também devem ser instalados para permitir o trabalho do software. Clique em Marcar.
 
-8. Agora você pode fazer o download e instalar o XDebug. Digite o seguinte comando na janela Terminal:
+[start=5]
+. O sistema retornará para o painel Gerenciador do Pacote Synaptic onde os pacotes selecionados estão marcados para instalação.
 
-[source,java]
+[start=6]
+. Selecione Aplicar na barra de ferramentas. O painel de resumo Aplicar as seguintes alterações será aberto com uma lista dos pacotes selecionados para instalação. Clique em Aplicar.
+
+[start=7]
+. Quando o download e a instalação forem concluídos com êxito, o painel Alterações aplicadas será aberto. Clique em Fechar.
+
+NOTE:  você também pode instalar os módulos executando o seguinte comando na janela Terminal:  ``aptitude install php5-dev php-pear`` 
+
+
+[start=8]
+. Agora você pode fazer o download e instalar o XDebug. Digite o seguinte comando na janela Terminal:
+
+[source,bash]
 ----
 
 sudo pecl install xdebug
@@ -290,16 +314,20 @@
 
 1. Para iniciar o processador de texto  ``gedit`` , acione o <<launchTerminal,Terminal>> e digite o seguinte comando no prompt de comando:
 
-[source,java]
+[source,bash]
 ----
 
 gksudo gedit
 ----
 Se solicitado, informe a senha especificada para o usuário raiz durante a instalação do sistema operacional.
-2. Abra o arquivo  ``/etc/php5/apache2/php.ini``  .
-3. Adicione as linhas a seguir ao arquivo:
 
-[source,java]
+[start=2]
+. Abra o arquivo  ``/etc/php5/apache2/php.ini``  .
+
+[start=3]
+. Adicione as linhas a seguir ao arquivo:
+
+[source,ini]
 ----
 
 zend_extension=/usr/lib/php5/<DATE+lfs>/xdebug.so
diff --git a/netbeans.apache.org/src/content/kb/docs/php/configure-php-environment-ubuntu_ru.asciidoc b/netbeans.apache.org/src/content/kb/docs/php/configure-php-environment-ubuntu_ru.asciidoc
index 3260467..502fd03 100644
--- a/netbeans.apache.org/src/content/kb/docs/php/configure-php-environment-ubuntu_ru.asciidoc
+++ b/netbeans.apache.org/src/content/kb/docs/php/configure-php-environment-ubuntu_ru.asciidoc
@@ -32,9 +32,6 @@
 В данном учебном курсе рассматривается процедура настройки среды разработки PHP в операционной системе Ubuntu (версия 7.10 и более поздние). Эта процедура предполагает установку и настройку механизма PHP, базы данных MySQL, веб-сервера Apache и отладчика XDebug.
 
 
-image::images/netbeans-stamp-80-74-73.png[title="Содержимое этой страницы применимо к IDE NetBeans 7.2, 7.3, 7.4 и 8.0"]
-
-
 *Для работы с этим учебным курсом требуется следующее программное обеспечение и ресурсы.*
 
 |===
@@ -74,7 +71,7 @@
 Ubuntu предоставляет пакет Linux AMP (LAMP), который содержит все необходимые пакеты для среды PHP. Для установки программного обеспечения можно выполнить следующую команду в командной строке в окне терминала:
 
 
-[source,java]
+[source,bash]
 ----
 
 sudo tasksel install lamp-server
@@ -104,6 +101,7 @@
 После настройки пакета PHP Web Stack убедитесь в том, что он установлен правильно, а сервер Apache распознает механизм PHP.
 
 Чтобы убедиться, что Apache и PHP установлены и запущены, откройте IDE NetBeans и link:./project-setup.html[+создайте проект PHP+]. В файле  ``index.php``  введите метод PHP  ``phpinfo()`` . Запустите файл. При этом должна отобразиться стандартная информационная страница PHP. 
+
 image::images/ubuntu-phpinfo.png[]
 
 
@@ -115,7 +113,7 @@
 * *В окне браузера отображается ошибка "Not Found" для  ``~USER/PROJECT/index.php`` *. Удалите строку  ``~USER``  из URL-адреса. Например, если эта ошибка происходит для URL-адреса  ``~ubuntu/test1/index.php`` , измените его на  ``test1/index.php`` . Обратите внимание, что можно настроить адрес URL для проекта PHP в IDE NetBeans либо при создании проекта или путем щелчка правой кнопки мыши узла проекта и перехода в 'Свойства' > 'Запустить конфигурацию'.
 * *В браузере отображается всплывающее окно с запросом на открытие файла, как если бы механизм PHP не распознавался.* Пакет  ``php5-common``  содержит ошибку. Замените его пакетами  ``php5``  и  ``phpmyadmin`` . Для замены пакета  ``php5-common``  необходимо выполнить следующие две команды:
 
-[source,java]
+[source,bash]
 ----
 
 apt-get --purge remove php5-commonapt-get install php5 phpmyadmin
@@ -127,7 +125,7 @@
 Корневой узел документов представляет собой папку, из которой сервер HTTP Apache извлекает файлы для отображения в браузере. Корневой узел документов указан в файле, определяющем виртуальный узел. Файл настройки, определяющий виртуальный узел по умолчанию:
 
 
-[source,java]
+[source,bash]
 ----
 
 /etc/apache2/sites-available/default
@@ -136,7 +134,7 @@
 с корневым узлом документов
 
 
-[source,java]
+[source,bash]
 ----
 
 /var/www/
@@ -162,57 +160,69 @@
 запуска терминала выберите "Applications>Accessories>Terminal". Откроется окно терминала.
 2. Для копирования файла настройки из виртуального узла по умолчанию в новый файл ( ``mysite`` ) введите в командной строке следующую команду:
 
-[source,java]
+[source,bash]
 ----
 
 sudo cp /etc/apache2/sites-available/default /etc/apache2/sites-available/mysite
 ----
-3. Запустите приложение  ``
+
+[start=3]
+. Запустите приложение  ``
 gedit``  и отредактируйте в нем новый файл настройки ( ``mysite`` ):
 
-[source,java]
+[source,bash]
 ----
 
 gksudo gedit /etc/apache2/sites-available/mysite 
 ----
 При появлении запроса введите пароль, определенный для пользователя root во время установки операционной системы.
-4. Измените корневой узел документов, указав в нем новое местоположение:
 
-[source,java]
+[start=4]
+. Измените корневой узел документов, указав в нем новое местоположение:
+
+[source,bash]
 ----
 
 /home/<user>/public_html/
 ----
-5. Измените директиву Directory путем замены
 
-[source,java]
+[start=5]
+. Измените директиву Directory путем замены
+
+[source,bash]
 ----
 
 <Directory /var/www/>
 ----
 на
 
-[source,java]
+[source,bash]
 ----
 
 <Directory /home/user/public_html/>
 ----
+
 image::images/ubuntu-change-directory-root.png[]
-6. Сохраните файл  ``mysite`` 
+
+
+[start=6]
+. Сохраните файл  ``mysite`` 
 
 
 === Активация нового виртуального узла
 
 1. Для отключения виртуального узла по умолчанию и включения нового узла <<launchTerminal,запустите терминал>> и выполните следующие служебные программы в окне терминала:
 
-[source,java]
+[source,bash]
 ----
 
 sudo a2dissite default &amp;&amp; sudo a2ensite mysite
 ----
-2. Перезапустите сервер HTTP Apache:
 
-[source,java]
+[start=2]
+. Перезапустите сервер HTTP Apache:
+
+[source,bash]
 ----
 
 sudo /etc/init.d/apache2 reload
@@ -223,24 +233,28 @@
 
 Во время установки сервера базы данных MySQL создается учетная запись пользователя root (администратора). В ходе установки открывается диалоговое окно, в котором требуется указать пароль пользователя root (администратора). Если это диалоговое окно не открылось или если в нем не был задан пароль, необходимо создать пароль пользователя root (администратора) MySQL сейчас. Этот пароль требуется для создания других пользователей сервера MySQL.
 
-1. Для подключения к серверу MySQL<<launchTerminal, запустите терминал>> и в окне терминала введите следующую команду:
 
-[source,java]
+[start=1]
+. Для подключения к серверу MySQL<<launchTerminal, запустите терминал>> и в окне терминала введите следующую команду:
+
+[source,bash]
 ----
 
 mysql -u root -p
 ----
 Появится командная строка MySQL.
-2. В этой командной строке введите следующую команду и нажмите ENTER:
 
-[source,java]
+[start=2]
+. В этой командной строке введите следующую команду и нажмите ENTER:
+
+[source,sql]
 ----
 
 SET PASSWORD FOR 'root'@'localhost' = PASSWORD('<yourpassword>');
 ----
 В случае успешного выполнения команды появляется следующее сообщение:
 
-[source,java]
+[source,bash]
 ----
 
 Query OK, 0 rows affected (0.00 sec)
@@ -268,16 +282,26 @@
 * php5-dev
 * php-pear
 В контекстном меню для каждого элемента выберите "Mark for installation".
-4. Появится диалоговое окно "Mark additional required changes", содержащее список зависимых пакетов, установка которых также является необходимой для функционирования программного обеспечения. Нажмите кнопку "Mark".
-5. Происходит автоматический возврат к экрану "Synaptic Package Manager", на котором представлены выбранные пакеты, отмеченные для установки.
-6. На панели инструментов выберите "Apply". Появится экран "Apply the following changes summary" со списком пакетов, выбранных для установки. Нажмите кнопку "Apply".
-7. После успешного завершения загрузки и установки появляется экран "Changes applied". Выберите "Close" (Закрыть).
 
-*Примечание.* Модули также можно установить путем запуска следующей команды в окне 'Терминал':  ``aptitude install php5-dev php-pear`` 
+[start=4]
+. Появится диалоговое окно "Mark additional required changes", содержащее список зависимых пакетов, установка которых также является необходимой для функционирования программного обеспечения. Нажмите кнопку "Mark".
 
-8. После этого можно загрузить и установить отладчик XDebug. Введите следующую команду в окне "Terminal":
+[start=5]
+. Происходит автоматический возврат к экрану "Synaptic Package Manager", на котором представлены выбранные пакеты, отмеченные для установки.
 
-[source,java]
+[start=6]
+. На панели инструментов выберите "Apply". Появится экран "Apply the following changes summary" со списком пакетов, выбранных для установки. Нажмите кнопку "Apply".
+
+[start=7]
+. После успешного завершения загрузки и установки появляется экран "Changes applied". Выберите "Close" (Закрыть).
+
+NOTE:  Модули также можно установить путем запуска следующей команды в окне 'Терминал':  ``aptitude install php5-dev php-pear`` 
+
+
+[start=8]
+. После этого можно загрузить и установить отладчик XDebug. Введите следующую команду в окне "Terminal":
+
+[source,bash]
 ----
 
 sudo pecl install xdebug
@@ -290,16 +314,20 @@
 
 1. Для запуска текстового процессора  ``gedit``  запустите <<launchTerminal,терминал>> и в командной строке введите следующую команду:
 
-[source,java]
+[source,bash]
 ----
 
 gksudo gedit
 ----
 При появлении запроса введите пароль, определенный для пользователя root во время установки операционной системы.
-2. Откройте файл  ``/etc/php5/apache2/php.ini`` .
-3. Добавьте в файл следующие строки:
 
-[source,java]
+[start=2]
+. Откройте файл  ``/etc/php5/apache2/php.ini`` .
+
+[start=3]
+. Добавьте в файл следующие строки:
+
+[source,ini]
 ----
 
 zend_extension=/usr/lib/php5/<DATE+lfs>/xdebug.so
diff --git a/netbeans.apache.org/src/content/kb/docs/php/configure-php-environment-ubuntu_zh_CN.asciidoc b/netbeans.apache.org/src/content/kb/docs/php/configure-php-environment-ubuntu_zh_CN.asciidoc
index 6f475d0..2bdc022 100644
--- a/netbeans.apache.org/src/content/kb/docs/php/configure-php-environment-ubuntu_zh_CN.asciidoc
+++ b/netbeans.apache.org/src/content/kb/docs/php/configure-php-environment-ubuntu_zh_CN.asciidoc
@@ -32,9 +32,6 @@
 本教程将介绍如何在 Ubuntu 操作系统(7.10 及更高版本)中配置 PHP 开发环境。其中包括安装和配置 PHP 引擎、MySQL 数据库、Apache Web 服务器和 XDebug 调试器。
 
 
-image::images/netbeans-stamp-80-74-73.png[title="此页上的内容适用于 NetBeans IDE 7.2、7.3、7.4 和 8.0"]
-
-
 *要学习本教程,您需要具备以下软件和资源。*
 
 |===
@@ -74,7 +71,7 @@
 Ubuntu 提供了一个 Linux AMP (LAMP) 包,其中包含 PHP 环境所需的全部软件包。可通过在“终端”窗口的命令提示符下执行以下命令安装此软件:
 
 
-[source,java]
+[source,bash]
 ----
 
 sudo tasksel install lamp-server
@@ -104,6 +101,7 @@
 在设置 PHP Web 堆栈之后,应检查其安装是否正确,以及 Apache 服务器是否可以识别 PHP 引擎。
 
 要检查 Apache 和 PHP 是否已安装并正在运行,请打开 NetBeans IDE 并link:./project-setup.html[+创建 PHP 项目+]。在  ``index.php``  文件中,输入 PHP 方法  ``phpinfo()`` 。运行该文件。此时应显示标准 PHP 信息页。 
+
 image::images/ubuntu-phpinfo.png[]
 
 
@@ -115,7 +113,7 @@
 * *浏览器窗口显示无法找到  ``~USER/PROJECT/index.php``  错误*。从 URL 中删除  ``~USER``  字符串。例如,如果 URL  ``~ubuntu/test1/index.php``  出现此错误,请将该 URL 更改为  ``test1/index.php`` 。请注意,您既可以在 NetBeans IDE 中创建 PHP 项目时为该项目设置 URL,也可以通过右键单击该项目节点,然后转至“属性”>“运行配置”进行设置。
 * *浏览器显示一个弹出式窗口,要求您打开文件,就像 PHP 引擎无法识别一样。* ``php5-common``  软件包出现问题。请用  ``php5``  和  ``phpmyadmin``  替换此软件包。要替换  ``php5-common`` ,请运行下面的两个命令:
 
-[source,java]
+[source,bash]
 ----
 
 apt-get --purge remove php5-commonapt-get install php5 phpmyadmin
@@ -127,7 +125,7 @@
 文档根目录是 Apache HTTP 服务器存放用于在浏览器中显示的文件的目录。文档根目录是在定义虚拟主机的文件中指定的。默认虚拟主机配置文件为
 
 
-[source,java]
+[source,bash]
 ----
 
 /etc/apache2/sites-available/default
@@ -136,7 +134,7 @@
 其中指定的文档根目录为
 
 
-[source,java]
+[source,bash]
 ----
 
 /var/www/
@@ -162,57 +160,69 @@
 启动终端,请选择“应用程序”>“附件”>“终端”。此时将打开“终端”窗口。
 2. 要将默认虚拟主机的配置文件复制到新文件 ( ``mysite`` ),请在命令提示符下键入以下命令:
 
-[source,java]
+[source,bash]
 ----
 
 sudo cp /etc/apache2/sites-available/default /etc/apache2/sites-available/mysite
 ----
-3. 运行  ``
+
+[start=3]
+. 运行  ``
 gedit``  应用程序并在其中编辑新配置文件 ( ``mysite`` ):
 
-[source,java]
+[source,bash]
 ----
 
 gksudo gedit /etc/apache2/sites-available/mysite 
 ----
 如果系统询问,请输入操作系统安装过程中为超级用户指定的口令。
-4. 更改文档根目录以指向新位置:
 
-[source,java]
+[start=4]
+. 更改文档根目录以指向新位置:
+
+[source,bash]
 ----
 
 /home/<user>/public_html/
 ----
-5. 更改目录指令,将
 
-[source,java]
+[start=5]
+. 更改目录指令,将
+
+[source,bash]
 ----
 
 <Directory /var/www/>
 ----
 替换为
 
-[source,java]
+[source,bash]
 ----
 
 <Directory /home/user/public_html/>
 ----
+
 image::images/ubuntu-change-directory-root.png[]
-6. 保存文件  ``mysite`` 
+
+
+[start=6]
+. 保存文件  ``mysite`` 
 
 
 === 激活新虚拟主机
 
 1. 要取消激活默认主机并激活新主机,<<launchTerminal,请启动终端>>并在“终端”窗口运行以下两个实用程序:
 
-[source,java]
+[source,bash]
 ----
 
 sudo a2dissite default &amp;&amp; sudo a2ensite mysite
 ----
-2. 重新启动 Apache HTTP 服务器:
 
-[source,java]
+[start=2]
+. 重新启动 Apache HTTP 服务器:
+
+[source,bash]
 ----
 
 sudo /etc/init.d/apache2 reload
@@ -225,22 +235,23 @@
 
 1. 要连接到 MySQL 服务器,<<launchTerminal,请启动终端>>,然后在“终端”窗口中输入以下命令:
 
-[source,java]
+[source,bash]
 ----
 
 mysql -u root -p
 ----
 此时将显示 MySQL 命令提示符。
-2. 在命令提示符下输入以下命令并按 Enter 键:
 
-[source,java]
+[start=2]
+. 在命令提示符下输入以下命令并按 Enter 键:
+
+[source,sql]
 ----
-
 SET PASSWORD FOR 'root'@'localhost' = PASSWORD('<yourpassword>');
 ----
 如果命令执行成功,则会显示以下消息:
 
-[source,java]
+[source,bash]
 ----
 
 Query OK, 0 rows affected (0.00 sec)
@@ -268,16 +279,26 @@
 * php5-dev
 * php-pear
 对于每一项,从上下文菜单中选择“Mark for installation”。
-4. 打开“Mark additional required changes”对话框打开,其中具有相关包的列表,这些包也应该进行安装,以使软件能够正常工作。单击“Mark”。
-5. 系统将返回到“Synaptic Package Manager”面板,其中所选的软件包已标记为要安装。
-6. 选择工具栏上的“Apply”。此时将打开“Apply the following changes”概要面板,其中具有选择安装的包列表。单击“Apply”。
-7. 成功完成下载和安装之后,“Changes applied”面板将会打开。单击 "Close"(关闭)。
 
-*注:*您也可以通过在“终端”窗口中运行以下命令来安装这些模块: ``aptitude install php5-dev php-pear`` 
+[start=4]
+. 打开“Mark additional required changes”对话框打开,其中具有相关包的列表,这些包也应该进行安装,以使软件能够正常工作。单击“Mark”。
 
-8. 现在,您可以下载并安装 XDebug。在“终端”窗口中输入以下命令:
+[start=5]
+. 系统将返回到“Synaptic Package Manager”面板,其中所选的软件包已标记为要安装。
 
-[source,java]
+[start=6]
+. 选择工具栏上的“Apply”。此时将打开“Apply the following changes”概要面板,其中具有选择安装的包列表。单击“Apply”。
+
+[start=7]
+. 成功完成下载和安装之后,“Changes applied”面板将会打开。单击 "Close"(关闭)。
+
+NOTE: 您也可以通过在“终端”窗口中运行以下命令来安装这些模块: ``aptitude install php5-dev php-pear`` 
+
+
+[start=8]
+. 现在,您可以下载并安装 XDebug。在“终端”窗口中输入以下命令:
+
+[source,bash]
 ----
 
 sudo pecl install xdebug
@@ -290,16 +311,20 @@
 
 1. 要启动  ``gedit``  文本处理器,请先启动<<launchTerminal,终端>>,然后在命令提示符下键入以下命令:
 
-[source,java]
+[source,bash]
 ----
 
 gksudo gedit
 ----
 如果系统询问,请输入操作系统安装过程中为超级用户指定的口令。
-2. 打开文件  ``/etc/php5/apache2/php.ini`` 。
-3. 将以下行添加到此文件中:
 
-[source,java]
+[start=2]
+. 打开文件  ``/etc/php5/apache2/php.ini`` 。
+
+[start=3]
+. 将以下行添加到此文件中:
+
+[source,bash]
 ----
 
 zend_extension=/usr/lib/php5/<DATE+lfs>/xdebug.so
diff --git a/netbeans.apache.org/src/content/kb/docs/php/configure-php-environment-windows.asciidoc b/netbeans.apache.org/src/content/kb/docs/php/configure-php-environment-windows.asciidoc
index 3fe3ff7..7baa9d2 100644
--- a/netbeans.apache.org/src/content/kb/docs/php/configure-php-environment-windows.asciidoc
+++ b/netbeans.apache.org/src/content/kb/docs/php/configure-php-environment-windows.asciidoc
@@ -88,9 +88,9 @@
 On Microsoft Vista, the User Access Control feature blocks the PHP installer from updating the Apache httpd configuration. Disable UAC while you are installing XAMPP. See link:http://support.microsoft.com/kb/922708[+Microsoft support+] for more information.
 
 [start=3]
-3. You are given the option to install the Apache server and the MySQL database server as services. If you install the Apache Server and MySQL as services, you will not have to start them manually through the XAMP Control Panel. Note that you have the option to install or uninstall these services in the <<xamppConstolPanel,XAMPP Control Panel>>.
-4. If you are using the self-extracting archive, after the archive is extracted, run the file  ``setup-xampp.bat``  to configure the components of the package. (The XAMPP installer runs this file automatically.)
-5. After configuration, open the XAMP Control Panel. (You can open it manually by running the file  ``XAMPP_HOME/xampp-control.exe``  or from the Xampp Control Panel icon that is automatically placed on your desktop.) When you open the XAMPP Control Panel, note that the modules that are installed as services are already running.
+. You are given the option to install the Apache server and the MySQL database server as services. If you install the Apache Server and MySQL as services, you will not have to start them manually through the XAMP Control Panel. Note that you have the option to install or uninstall these services in the <<xamppConstolPanel,XAMPP Control Panel>>.
+. If you are using the self-extracting archive, after the archive is extracted, run the file  ``setup-xampp.bat``  to configure the components of the package. (The XAMPP installer runs this file automatically.)
+. After configuration, open the XAMP Control Panel. (You can open it manually by running the file  ``XAMPP_HOME/xampp-control.exe``  or from the Xampp Control Panel icon that is automatically placed on your desktop.) When you open the XAMPP Control Panel, note that the modules that are installed as services are already running.
 
 WARNING: On Windows Vista sometimes  ``xampp-control.exe``  will not run. You can run  ``xampp-start.exe``  instead.
 
@@ -99,7 +99,7 @@
 image::images/xampp-control-panel.png[]
 
 [start=6]
-6. The Svc checkboxes indicate that a module is installed as a Windows service and will start automatically on system startup. You can install or uninstall Windows services by selecting or unselecting the Svc checkbox. Uninstalling a Windows service does not uninstall the module, but it does require you to start the module manually. The XAMPP control panel includes buttons for stopping and starting modules and opening their administration consoles.
+. The Svc checkboxes indicate that a module is installed as a Windows service and will start automatically on system startup. You can install or uninstall Windows services by selecting or unselecting the Svc checkbox. Uninstalling a Windows service does not uninstall the module, but it does require you to start the module manually. The XAMPP control panel includes buttons for stopping and starting modules and opening their administration consoles.
 
 ==== Checking XAMPP Installation
 
@@ -107,7 +107,8 @@
 
 image::images/xampp-welcome-page.png[]
 
-2. To ensure that the Apache and MySQL servers have been installed as system services, restart your operating system, run the browser, and enter the  ``http://localhost``  URL again. The XAMPP welcome page opens. Note that the XAMPP welcome page includes a menu in the left margin through which you can check the status of XAMPP components and run  ``phpinfo()`` , among other useful features.  ``phpinfo()``  returns a screen with configuration information about your XAMPP components. 
+[start=2]
+. To ensure that the Apache and MySQL servers have been installed as system services, restart your operating system, run the browser, and enter the  ``http://localhost``  URL again. The XAMPP welcome page opens. Note that the XAMPP welcome page includes a menu in the left margin through which you can check the status of XAMPP components and run  ``phpinfo()`` , among other useful features.  ``phpinfo()``  returns a screen with configuration information about your XAMPP components. 
 
 image::images/xampp-phpinfo.png[]
 
@@ -139,7 +140,7 @@
 ----
 
 [start=4]
-4. To attach
+. To attach
  XDebug to the PHP engine, uncomment the following lines in the  ``php.ini``  files (directly beneath the [Zend] section, add them if not there). Some additional notes have been added.
 
 [source,ini]
@@ -156,8 +157,8 @@
 NOTE: Make sure the paths you specify match the location of the corresponding files as determined during your installation.
 
 [start=5]
-5. Save  ``php.ini`` .
-6. Run the <<xamppConstolPanel,XAMPP Control Panel Application>> and restart the Apache server.
+. Save  ``php.ini`` .
+. Run the <<xamppConstolPanel,XAMPP Control Panel Application>> and restart the Apache server.
 See link:http://wiki.netbeans.org/HowToConfigureXDebug[+our wiki+] and the link:http://www.xdebug.org/docs/install[+XDebug documentation+] for more information on how to configure XDebug.
 
 [[xdebug-xampp-172]]
@@ -186,8 +187,8 @@
 On Microsoft Vista, do not install the Apache Server to the default location, which is in Program Files. All files in Program Files are write-protected.
 
 [start=3]
-3. When the installation is completed, restart the Apache server.
-4. To check that the installation is successful, run the browser and enter the following URL:
+. When the installation is completed, restart the Apache server.
+. To check that the installation is successful, run the browser and enter the following URL:
 
 [source,ini]
 ----
@@ -218,11 +219,11 @@
 NOTE: If there is no installer available for the version of PHP you want to install, you have to install it manually from the .zip file. See link:http://php.net/manual/en/install.windows.manual.php[+Manual Instruction Steps+] in the php.net documentation.
 
 [start=2]
-2. When the download is complete, run the  ``.msi``  installation file. The installation wizard starts.
-3. On the Apache Configuration Directory panel, specify the directory where the  ``httpd.conf``  file is located, the default setting is  ``C:\Program Files\Apache Software Foundation\Apache<version>\conf\`` . The PHP processing will be enabled automatically.
-4. If you want to use the MySQL database server, choose the Complete installation option or select the MySQL and MySQLi items in the Extensions list.
-5. After the installation is completed, restart the Apache server.
-6. To check that the PHP engine has been installed successfully and PHP processing has been enabled in the Apache configuration:
+. When the download is complete, run the  ``.msi``  installation file. The installation wizard starts.
+. On the Apache Configuration Directory panel, specify the directory where the  ``httpd.conf``  file is located, the default setting is  ``C:\Program Files\Apache Software Foundation\Apache<version>\conf\`` . The PHP processing will be enabled automatically.
+. If you want to use the MySQL database server, choose the Complete installation option or select the MySQL and MySQLi items in the Extensions list.
+. After the installation is completed, restart the Apache server.
+. To check that the PHP engine has been installed successfully and PHP processing has been enabled in the Apache configuration:
 * Open Notepad or another text editor. Create a file and type the following text:
 
 [source,php]
@@ -252,8 +253,8 @@
   LoadModule php5_module "c:/php/sapi/php5apache2_2.dll"
 ----
 [start=3]
-3. If the lines are missing, add them, save  ``httpd.conf`` , and restart Apache.
-4. Refresh the http://localhost:<port>/test.php page.
+. If the lines are missing, add them, save  ``httpd.conf`` , and restart Apache.
+. Refresh the http://localhost:<port>/test.php page.
 
 ==== MySQL Database Server
 
@@ -315,7 +316,7 @@
 NOTE: Make sure the paths you specify match the names and locations of the corresponding files as determined during your installation.
 
 [start=3]
-3. To be sure that previously installed PHP engine supports using the MySQL database server:
+. To be sure that previously installed PHP engine supports using the MySQL database server:
 
 1. Click Start > Control Panel.
 2. On the Control Panel, choose Add or Remove Programs.
diff --git a/netbeans.apache.org/src/content/kb/docs/php/configure-php-environment-windows_ja.asciidoc b/netbeans.apache.org/src/content/kb/docs/php/configure-php-environment-windows_ja.asciidoc
index 2a5f1a6..9da1a3c 100644
--- a/netbeans.apache.org/src/content/kb/docs/php/configure-php-environment-windows_ja.asciidoc
+++ b/netbeans.apache.org/src/content/kb/docs/php/configure-php-environment-windows_ja.asciidoc
@@ -32,9 +32,6 @@
 このチュートリアルでは、Windowsオペレーティング・システムでPHP開発環境を構成する2つの方法を示します。1つ目の最も便利な方法は、AMP (*A*pache、*M*ySQL、*P*HP)パッケージをインストールして構成することです。このチュートリアルでは、XAMPPパッケージをインストールする方法を示します。2つ目の方法は、各コンポーネントを個別にインストールして構成することです。
 
 
-image::images/netbeans-stamp-80-74-73.png[title="このページの内容は、NetBeans IDE 7.2、7.3、7.4および8.0に適用されます"]
-
-
 *このチュートリアルに従うには、次のソフトウェアとリソースが必要です。*
 
 |===
@@ -67,7 +64,7 @@
 * PHPエンジン。サポートされているバージョンは、PHP5です。link:http://www.php.net/downloads.php[+ここ+]からダウンロードできます。
 * PHPデバッガ。PHP向けのNetBeans IDEではlink:http://www.xdebug.org[+XDebug+]を使用できますが、デバッガの使用はオプションです。PHP5と互換性があるため、推奨バージョンはXDebug 2.0以降です。
 * データベース・サーバー。様々なデータベース・サーバーを使用できますが、最もポピュラなサーバーはMySQLサーバーです。link:http://dev.mysql.com/downloads/mysql/5.1.html[+ここ+]からダウンロードできます。
-*注意:* 製品の推奨バージョンはMySQL Server 5.0です。提供されているドキュメントでは、このバージョンでの操作を説明します。
+NOTE:  製品の推奨バージョンはMySQL Server 5.0です。提供されているドキュメントでは、このバージョンでの操作を説明します。
 
 インストールした後、すべてのソフトウェア・コンポーネントが互いに適切に機能する環境を設定する必要があります。
 
@@ -85,30 +82,44 @@
 
 *警告:* XAMPP 1.7.0は使用しないでください。このバージョンは、XDebugに重大な問題があります。それらの問題が修正されているバージョン1.7.1以降を使用してください。
 
-*注意: *XAMPP 1.7.2以降では、XAMPPにはPHP 5.2.xではなくPHP 5.3が付属しています。PHP向けのNetBeans IDEバージョン6.7.xは、PHP 5.3の新機能をサポートしていません。PHP向けのNetBeans IDE 6.8は、現在、PHP 5.3を完全にサポートする開発ビルドとして使用できます。また、PHP 5.2.xとPHP 5.3では、XDebugのインストールも異なります。
+NOTE: XAMPP 1.7.2以降では、XAMPPにはPHP 5.2.xではなくPHP 5.3が付属しています。PHP向けのNetBeans IDEバージョン6.7.xは、PHP 5.3の新機能をサポートしていません。PHP向けのNetBeans IDE 6.8は、現在、PHP 5.3を完全にサポートする開発ビルドとして使用できます。また、PHP 5.2.xとPHP 5.3では、XDebugのインストールも異なります。
 
 1. link:http://www.apachefriends.org/en/xampp-windows.html[+XAMPP+]インストーラ・パッケージをダウンロードします。(XAMPP LiteにはXDebugは含まれません。)
 2. ダウンロードが完了したら、 ``.exe`` ファイルを実行します。
 
 Microsoft Vistaの場合、ユーザー・アクセス制御機能により、PHPインストーラはApache httpdの構成を更新できません。XAMPPをインストールしている間は、UACを無効にします。詳細は、link:http://support.microsoft.com/kb/922708[+Microsoftのサポート+]を参照してください。
 
-3. ApacheサーバーとMySQLデータベース・サーバーをサービスとしてインストールするオプションがあります。ApacheサーバーとMySQLをサービスとしてインストールすると、これらをXAMPPコントロール・パネルから手動で起動する必要がありません。サービスは、<<xamppConstolPanel,XAMPPコントロール・パネル>>でインストールまたはアンインストールできます。
-4. 自己抽出型アーカイブを使用する場合は、アーカイブの抽出後に ``setup-xampp.bat`` ファイルを実行して、パッケージのコンポーネントを構成します。(XAMPPのインストーラではこのファイルが自動的に実行されます。)
-5. 構成が完了したら、XAMPPコントロール・パネルを開きます。(これを開くには、 ``XAMPP_HOME/xampp-control.exe`` ファイルを手動で実行するか、デスクトップに自動的に配置されるXAMPPコントロール・パネルのアイコンを使用します。)XAMPPコントロール・パネルを開くとき、サービスとしてインストールされたモジュールはすでに実行されています。
+
+[start=3.]
+. ApacheサーバーとMySQLデータベース・サーバーをサービスとしてインストールするオプションがあります。ApacheサーバーとMySQLをサービスとしてインストールすると、これらをXAMPPコントロール・パネルから手動で起動する必要がありません。サービスは、<<xamppConstolPanel,XAMPPコントロール・パネル>>でインストールまたはアンインストールできます。
+
+[start=4.]
+. 自己抽出型アーカイブを使用する場合は、アーカイブの抽出後に ``setup-xampp.bat`` ファイルを実行して、パッケージのコンポーネントを構成します。(XAMPPのインストーラではこのファイルが自動的に実行されます。)
+
+[start=5.]
+. 構成が完了したら、XAMPPコントロール・パネルを開きます。(これを開くには、 ``XAMPP_HOME/xampp-control.exe`` ファイルを手動で実行するか、デスクトップに自動的に配置されるXAMPPコントロール・パネルのアイコンを使用します。)XAMPPコントロール・パネルを開くとき、サービスとしてインストールされたモジュールはすでに実行されています。
 
 *警告:* Windows Vistaでは、 ``xampp-control.exe`` が実行されない場合があります。かわりに ``xampp-start.exe`` を実行できます。
 
 *警告: *MySQLの「管理ツール」ボタンによって実行される ``winmysqladmin.exeファイル`` は動作しません。複数のエラー・メッセージがカスケード表示され、これらのメッセージを停止するには、 ``winmysqladmin`` プロセスを手動で終了します。 ``winmysqladmin.exe`` はコマンド行からも実行できません。link:http://bugs.xampp.org/view.php?id=71[+http://bugs.xampp.org/view.php?id=71+]を参照してください。
 
 image::images/xampp-control-panel.png[]
-6. 「サービス」チェックボックスは、モジュールがWindowsのサービスとしてインストールされ、システムの起動時に自動的に起動することを示します。「サービス」チェックボックスを選択または選択解除することで、Windowsのサービスをインストールまたはアンインストールできます。Windowsのサービスをアンインストールしても、モジュールはアンインストールされませんが、モジュールを手動で起動する必要があります。XAMPPコントロール・パネルには、モジュールを停止または起動したり、その管理コンソールを開くためのボタンがあります。
+
+
+[start=6.]
+. 「サービス」チェックボックスは、モジュールがWindowsのサービスとしてインストールされ、システムの起動時に自動的に起動することを示します。「サービス」チェックボックスを選択または選択解除することで、Windowsのサービスをインストールまたはアンインストールできます。Windowsのサービスをアンインストールしても、モジュールはアンインストールされませんが、モジュールを手動で起動する必要があります。XAMPPコントロール・パネルには、モジュールを停止または起動したり、その管理コンソールを開くためのボタンがあります。
 
 
 === XAMPPのインストールの確認
 
 1. ブラウザを起動し、URLに ``http://localhost`` と入力します。XAMPPの開始ページが開きます。
+
 image::images/xampp-welcome-page.png[]
-2. ApacheおよびMySQLサーバーがシステム・サービスとしてインストールされていることを確認するには、オペレーティング・システムを再起動してブラウザを起動し、もう一度URLに ``http://localhost`` と入力します。XAMPPの開始ページが開きます。XAMPPの開始ページの左マージンにはメニューが表示されており、これらのメニューを使用して様々な便利機能の中から、XAMPPコンポーネントのステータスを確認したり、 ``phpinfo()`` を実行したりできます。 ``phpinfo()`` は、XAMPPコンポーネントの構成情報が表示された画面を返します。
+
+
+[start=2.]
+. ApacheおよびMySQLサーバーがシステム・サービスとしてインストールされていることを確認するには、オペレーティング・システムを再起動してブラウザを起動し、もう一度URLに ``http://localhost`` と入力します。XAMPPの開始ページが開きます。XAMPPの開始ページの左マージンにはメニューが表示されており、これらのメニューを使用して様々な便利機能の中から、XAMPPコンポーネントのステータスを確認したり、 ``phpinfo()`` を実行したりできます。 ``phpinfo()`` は、XAMPPコンポーネントの構成情報が表示された画面を返します。
+
 image::images/xampp-phpinfo.png[]
 
 
@@ -128,7 +139,7 @@
 2. XAMPPのアクティブな ``php.ini`` ファイルを検索して開きます。このファイルはデフォルトで ``XAMPP_HOME/apache/bin`` ディレクトリにあります。アクティブな ``php.ini`` ファイルを確認するには、 ``phpinfo()`` を実行し、「Loaded Configuration File」を検索します。
 3. ZendオプティマイザはXDebugをブロックするため、Zendオプティマイザを無効にする必要があります。アクティブな ``php.ini`` ファイル内で次の行を検索し、削除するか、またはコメントとしてマークします(安全のためには、Zendに関連するすべてのプロパティを検索してコメントアウトします)。
 
-[source,java]
+[source,ini]
 ----
 
 [Zend]
@@ -139,9 +150,11 @@
 ;zend_optimizer.license_path =
 
 ----
-4. XDebugをPHPエンジンにアタッチするには、 ``php.ini`` ファイルで次の行のコメントを解除します(これらの行は[Zend]セクションのすぐ下にあり、ない場合は追加します)。追加のコメントがいくつか追加されています。
 
-[source,java]
+[start=4.]
+. XDebugをPHPエンジンにアタッチするには、 ``php.ini`` ファイルで次の行のコメントを解除します(これらの行は[Zend]セクションのすぐ下にあり、ない場合は追加します)。追加のコメントがいくつか追加されています。
+
+[source,ini]
 ----
 
 [XDebug]; Only Zend OR (!) XDebug
@@ -152,10 +165,14 @@
 
  ``xdebug.remote_enable`` プロパティは1に設定し、trueやその他の値には設定しないでください。
 
-*注意:* 指定するパスは、インストール時に定義した対応するファイルの場所と一致していることを確認してください。
+NOTE:  指定するパスは、インストール時に定義した対応するファイルの場所と一致していることを確認してください。
 
-5.  ``php.ini`` を保存します。
-6. <<xamppConstolPanel,XAMPPコントロール・パネル・アプリケーション>>を実行し、Apacheサーバーを再起動します。
+
+[start=5.]
+.  ``php.ini`` を保存します。
+
+[start=6.]
+. <<xamppConstolPanel,XAMPPコントロール・パネル・アプリケーション>>を実行し、Apacheサーバーを再起動します。
 XDebugの構成方法の詳細は、link:http://wiki.netbeans.org/HowToConfigureXDebug[+Wiki+]およびlink:http://www.xdebug.org/docs/install[+XDebugのドキュメント+]を参照してください。
 
 
@@ -186,15 +203,20 @@
 
 Microsoft Vistaでは、Apacheサーバーをデフォルトの場所である「Program Files」にインストールしないでください。「Program Files」内のファイルはすべて書込み保護されます。
 
-3. インストールが完了したら、Apacheサーバーを再起動します。
-4. インストールが正常に終了したことを確認するには、ブラウザを起動し、次のURLを入力します。
 
-[source,java]
+[start=3.]
+. インストールが完了したら、Apacheサーバーを再起動します。
+
+[start=4.]
+. インストールが正常に終了したことを確認するには、ブラウザを起動し、次のURLを入力します。
+
+[source,ini]
 ----
 
   http://localhost/
 ----
 Apacheの開始のテスト・ページが開きます。
+
 image::images/install-apache-it-works-port80.png[]
 
 
@@ -218,11 +240,21 @@
 
 *重要: *インストールするPHPバージョンのインストーラがない場合は、.zipファイルから手動でインストールする必要があります。php.netドキュメントのlink:http://php.net/manual/en/install.windows.manual.php[+手動による手順+]を参照してください。
 
-2. ダウンロードが完了したら、 ``.msi`` インストール・ファイルを実行します。インストール・ウィザードが起動します。
-3. 「Apache Configuration Directory」パネルで、 ``httpd.conf`` があるディレクトリを指定します(デフォルトの設定は、 ``C:\Program Files\Apache Software Foundation\Apache<version>\conf\`` です)。PHP処理が自動的に有効になります。
-4. MySQLデータベース・サーバーを使用する場合は、「Complete」インストール・オプションを選択するか、「Extensions」リストでMySQLとMySQLiの項目を選択します。
-5. インストールが完了した後、Apacheサーバーを再起動します。
-6. PHPエンジンが正常にインストールされていること、およびApache構成でPHP処理が有効になっていることを確認するには:
+
+[start=2.]
+. ダウンロードが完了したら、 ``.msi`` インストール・ファイルを実行します。インストール・ウィザードが起動します。
+
+[start=3.]
+. 「Apache Configuration Directory」パネルで、 ``httpd.conf`` があるディレクトリを指定します(デフォルトの設定は、 ``C:\Program Files\Apache Software Foundation\Apache<version>\conf\`` です)。PHP処理が自動的に有効になります。
+
+[start=4.]
+. MySQLデータベース・サーバーを使用する場合は、「Complete」インストール・オプションを選択するか、「Extensions」リストでMySQLとMySQLiの項目を選択します。
+
+[start=5.]
+. インストールが完了した後、Apacheサーバーを再起動します。
+
+[start=6.]
+. PHPエンジンが正常にインストールされていること、およびApache構成でPHP処理が有効になっていることを確認するには:
 * メモ帳または他のテキスト・エディタを開きます。ファイルを作成し、次のテキストを入力します。
 
 [source,php]
@@ -234,6 +266,7 @@
 ----
 * htdocsフォルダにファイルを`test.php`として保存します。デフォルト・パスは、 ``C:\Program Files\Apache Software Foundation\Apache<version>\htdocs\test.php`` です。
 * ブラウザを起動し、URLに ``http://localhost:<port>/test.php`` と入力します。次のページが開きます。
+
 image::images/install-php-test.png[]
 
 
@@ -244,14 +277,18 @@
 1. Apacheサーバーを再起動します。
 2. Apacheサーバーの構成ファイルのhttpd.confに次の行が含まれていることを確認します。
 
-[source,java]
+[source,ini]
 ----
 
   AddType Application/x-httpd-php .php 
   LoadModule php5_module "c:/php/sapi/php5apache2_2.dll"
 ----
-3. 行が見つからない場合は行を追加し、 ``httpd.conf`` を保存してApacheを再起動します。
-4. http://localhost:<port>/test.phpのページをリフレッシュします。
+
+[start=3.]
+. 行が見つからない場合は行を追加し、 ``httpd.conf`` を保存してApacheを再起動します。
+
+[start=4.]
+. http://localhost:<port>/test.phpのページをリフレッシュします。
 
 
 === MySQLデータベース・サーバー
@@ -267,13 +304,17 @@
 
 === 環境の設定
 
-1. デフォルトの設定に従ってインストールを実行した場合、PHP処理は自動的に有効になります。
-2. XDebugをPHPエンジンにアタッチするには、 ``php.ini`` ファイルを検索して次の行を追加します。
+
+[start=1.]
+. デフォルトの設定に従ってインストールを実行した場合、PHP処理は自動的に有効になります。
+
+[start=2.]
+. XDebugをPHPエンジンにアタッチするには、 ``php.ini`` ファイルを検索して次の行を追加します。
 
 *スレッド・セーフ*なPHP 5.2エンジンの場合:
 
 
-[source,java]
+[source,ini]
 ----
 
 zend_extension_ts="<path to the php folder>/php_xdebug-<version-number>.dll"
@@ -283,7 +324,7 @@
 *スレッド・セーフでない* PHP 5.2エンジンの場合:
 
 
-[source,java]
+[source,ini]
 ----
 
 zend_extension_nts="<path to the php folder>/php_xdebug-<version-number>.dll"
@@ -293,7 +334,7 @@
 *任意の*PHP 5.3エンジンの場合:
 
 
-[source,java]
+[source,ini]
 ----
 
 zend_extension="<path to the php folder>/php_xdebug-<version-number>.dll"
@@ -303,7 +344,7 @@
 ユーザーによっては、次の行を追加する必要がある場合と、そうでない場合があります。
 
 
-[source,java]
+[source,ini]
 ----
 
 xdebug.remote_host=127.0.0.1xdebug.remote_port=9000
@@ -312,9 +353,12 @@
 
 XDebugの構成方法の詳細は、link:http://www.xdebug.org/docs/install[+ここ+]をクリックしてください。
 
-*注意:* 指定するパスは、インストール時に定義した対応するファイルの名前および場所と一致していることを確認してください。
+NOTE:  指定するパスは、インストール時に定義した対応するファイルの名前および場所と一致していることを確認してください。
 
-3. 前にインストールしたPHPエンジンがMySQLデータベース・サーバーの使用をサポートしていることを確認するには:
+
+[start=3.]
+. 前にインストールしたPHPエンジンがMySQLデータベース・サーバーの使用をサポートしていることを確認するには:
+
 1. 「スタート」>「コントロール パネル」をクリックします。
 2. 「コントロール パネル」で「プログラムの追加と削除」を選択します。
 3. 「プログラムの追加と削除」パネルで、PHP <バージョン番号>領域を選択し、「変更」をクリックします。PHPセットアップ・ウィザードが起動します。「次」をクリックします。
diff --git a/netbeans.apache.org/src/content/kb/docs/php/configure-php-environment-windows_pt_BR.asciidoc b/netbeans.apache.org/src/content/kb/docs/php/configure-php-environment-windows_pt_BR.asciidoc
index 992ae2a..8a7cdbb 100644
--- a/netbeans.apache.org/src/content/kb/docs/php/configure-php-environment-windows_pt_BR.asciidoc
+++ b/netbeans.apache.org/src/content/kb/docs/php/configure-php-environment-windows_pt_BR.asciidoc
@@ -32,9 +32,6 @@
 Este tutorial mostra duas formas de configurar o ambiente de desenvolvimento de PHP no sistema operacional Windows. A primeira e mais conveniente é instalar e configurar um pacote AMP (*A*pache, *M*ySQL, *P*HP). Este tutorial mostra como instalar o pacote XAMPP. A segunda maneira, é instalar e configurar cada componente separadamente.
 
 
-image::images/netbeans-stamp-80-74-73.png[title="O conteúdo desta página se aplica ao NetBeans IDE 7.2, 7.3, 7.4 e 8.0"]
-
-
 *Para seguir este tutorial, são necessários os recursos e o software a seguir.*
 
 |===
@@ -67,7 +64,7 @@
 * O mecanismo PHP. A versão com suporte é o PHP5. Os downloads estão disponíveis link:http://www.php.net/downloads.php[+aqui+].
 * O depurador do PHP. O NetBeans IDE para PHP permite que você utilize o link:http://www.xdebug.org[+XDebug+], mas a utilização de um depurador é opcional. A versão recomendada é XDebug 2.0 ou superior, pois é compatível com PHP5.
 * Um servidor de banco de dados. Você pode utilizar vários servidores de bancos de dados, embora um dos mais populares seja o MySQL. Os downloads estão disponíveis link:http://dev.mysql.com/downloads/mysql/5.1.html[+aqui+]. 
-*Observação:* a versão recomendada do produto é MySQL Server 5.0. Os documentos fornecidos descrevem o trabalho com essa versão.
+NOTE:  a versão recomendada do produto é MySQL Server 5.0. Os documentos fornecidos descrevem o trabalho com essa versão.
 
 Depois da instalação, você precisa configurar o ambiente de forma que todos os componentes de software funcionem bem juntos.
 
@@ -85,30 +82,44 @@
 
 *Advertência:* NÃO use XAMPP 1.7.0. Há problemas significativos com o XDebug nessa versão. Use a versão 1.7.1 ou superior, em que esses problemas foram corrigidos.
 
-*Observação: *a partir do XAMPP 1.7.2, o XAMPP vem com PHP 5.3, não PHP 5.2.x. O NetBeans IDE para PHP, versão 6.7.x, não oferece suporte às novas funções do PHP 5.3. O NetBeans IDE para PHP 6.8, atualmente disponível como construtor de desenvolvimento, oferece suporte total ao PHP 5.3. Observe também que a instalação do Xdebug difere entre o PHP 5.2.x e o PHP 5.3.
+NOTE: a partir do XAMPP 1.7.2, o XAMPP vem com PHP 5.3, não PHP 5.2.x. O NetBeans IDE para PHP, versão 6.7.x, não oferece suporte às novas funções do PHP 5.3. O NetBeans IDE para PHP 6.8, atualmente disponível como construtor de desenvolvimento, oferece suporte total ao PHP 5.3. Observe também que a instalação do Xdebug difere entre o PHP 5.2.x e o PHP 5.3.
 
 1. faça download do pacote de instalação do link:http://www.apachefriends.org/en/xampp-windows.html[+XAMPP+]. (O XAMPP Lite não inclui o XDebug.)
 2. Quando o download tiver sido concluído, execute o arquivo  `` .exe `` .
 
 No Microsoft Vista, a funcionalidade Controle de Acesso do Usuário impede que o instalador do PHP atualize a configuração do httpd Apache. Desative o UAC ao instalar o XAMPP. Consulte o link:http://support.microsoft.com/kb/922708[+Suporte da Microsoft+] para obter mais informações.
 
-3. Você tem a opção de instalar o servidor Apache e o servidor de banco de dados MySQL como serviços. Se instalar o Servidor Apache e o MySQL como serviços, não terá que iniciá-los manualmente pelo Painel de Controle do XAMPP. Observe que você tem a opção de instalar ou desinstalar esses serviços no <<xamppConstolPanel,Painel de Controle do XAMPP>>.
-4. Se estiver utilizando o arquivo compactado autoextraível, depois de ele ter sido extraído, execute o arquivo  ``setup-xampp.bat``  para configurar os componentes do pacote. (O instalador do XAMPP executa automaticamente o arquivo).
-5. Após configurar, abra o Painel de Controle do XAMPP. (Você pode abri-lo manualmente executando o arquivo  ``XAMPP_HOME/xampp-control.exe``  ou a partir do ícone Painel de Controle do Xampp, que é automaticamente colocado em sua área de trabalho.) Ao abrir o Painel de Controle do XAMPP, observe que os módulos instalados como serviços já estão em execução.
+
+[start=3.]
+. Você tem a opção de instalar o servidor Apache e o servidor de banco de dados MySQL como serviços. Se instalar o Servidor Apache e o MySQL como serviços, não terá que iniciá-los manualmente pelo Painel de Controle do XAMPP. Observe que você tem a opção de instalar ou desinstalar esses serviços no <<xamppConstolPanel,Painel de Controle do XAMPP>>.
+
+[start=4.]
+. Se estiver utilizando o arquivo compactado autoextraível, depois de ele ter sido extraído, execute o arquivo  ``setup-xampp.bat``  para configurar os componentes do pacote. (O instalador do XAMPP executa automaticamente o arquivo).
+
+[start=5.]
+. Após configurar, abra o Painel de Controle do XAMPP. (Você pode abri-lo manualmente executando o arquivo  ``XAMPP_HOME/xampp-control.exe``  ou a partir do ícone Painel de Controle do Xampp, que é automaticamente colocado em sua área de trabalho.) Ao abrir o Painel de Controle do XAMPP, observe que os módulos instalados como serviços já estão em execução.
 
 *Advertência: *algumas vezes, no Windows Vista, o  ``xampp-control.exe``  não será executado. No lugar dele, você pode executar o  ``xampp-start.exe`` .
 
 *Advertência: *o  ``arquivo winmysqladmin.exe`` , que é iniciado pelo botão Admin para o MySQL, não funciona. Aparece uma sequência de mensagens de erro, que pode ser parada somente de forma manual, pelo encerramento do processo  ``winmysqladmin`` . Você também não pode acionar o  ``winmysqladmin.exe``  a partir da linha de comandos. Consulte link:http://bugs.xampp.org/view.php?id=71[+http://bugs.xampp.org/view.php?id=71+].
 
 image::images/xampp-control-panel.png[]
-6. As caixas de seleção Svc indicam que um módulo está instalado como um serviço do Windows e será automaticamente iniciado na inicialização do sistema. Você pode instalar ou desinstalar os serviços do Windows marcando ou desmarcando a caixa de seleção Svc. A desinstalação de um serviço do Windows não desinstala o módulo, mas requer a inicialização manual do módulo. O painel de controle do XAMPP inclui botões para parar e iniciar módulos e para abrir seus consoles de administração.
+
+
+[start=6.]
+. As caixas de seleção Svc indicam que um módulo está instalado como um serviço do Windows e será automaticamente iniciado na inicialização do sistema. Você pode instalar ou desinstalar os serviços do Windows marcando ou desmarcando a caixa de seleção Svc. A desinstalação de um serviço do Windows não desinstala o módulo, mas requer a inicialização manual do módulo. O painel de controle do XAMPP inclui botões para parar e iniciar módulos e para abrir seus consoles de administração.
 
 
 === Verificando a Instalação do XAMPP
 
 1. Execute o browser e digite o seguinte URL:  ``http://localhost`` . A página de boas-vindas do XAMPP será aberta:
+
 image::images/xampp-welcome-page.png[]
-2. Para garantir que os servidores Apache e MySQL tenham sido instalados como serviços do sistema, reinicie o sistema operacional, execute o browser e digite o URL  ``http://localhost``  novamente. A página de boas-vindas do XAMPP será aberta. Observe se a página de boas-vindas do XAMPP inclui um menu na margem esquerda, por meio do qual você pode verificar o status dos componentes do XAMPP e executar o  ``phpinfo()`` , entre outras funcionalidades úteis. O  ``phpinfo()``  retornará uma tela com informações de configuração sobre os componentes do XAMPP. 
+
+
+[start=2.]
+. Para garantir que os servidores Apache e MySQL tenham sido instalados como serviços do sistema, reinicie o sistema operacional, execute o browser e digite o URL  ``http://localhost``  novamente. A página de boas-vindas do XAMPP será aberta. Observe se a página de boas-vindas do XAMPP inclui um menu na margem esquerda, por meio do qual você pode verificar o status dos componentes do XAMPP e executar o  ``phpinfo()`` , entre outras funcionalidades úteis. O  ``phpinfo()``  retornará uma tela com informações de configuração sobre os componentes do XAMPP. 
+
 image::images/xampp-phpinfo.png[]
 
 
@@ -128,7 +139,7 @@
 2. Localize e abra o arquivo  ``php.ini``  ativo para seu XAMPP. Ele está localizado por default no diretório `` XAMPP_HOME/apache/bin`` . Confirme qual arquivo  ``php.ini``  está ativo executando  ``phpinfo()``  e procurando o Arquivo de Configuração Carregado.
 3. Como o otimizador Zend bloqueia o XDebug, é necessário desativar o otimizador Zend. No arquivo  ``php.ini `` ativo, localize as linhas a seguir e as delete ou as marque como comentários (Para estar seguro, procure e comente todas as propriedades relacionadas ao Zend):
 
-[source,java]
+[source,ini]
 ----
 
 [Zend]
@@ -139,10 +150,12 @@
 ;zend_optimizer.license_path =
 
 ----
-4. Para anexar
+
+[start=4.]
+. Para anexar
  XDebug ao mecanismo PHP, remova o comentário das linhas a seguir nos arquivos  ``php.ini``  (diretamente abaixo da seção [Zend], adicione-os caso não estejam presentes). Algumas notas adicionais foram acrescentadas.
 
-[source,java]
+[source,ini]
 ----
 
 [XDebug]; Only Zend OR (!) XDebug
@@ -153,10 +166,14 @@
 
 Defina a propriedade  ``xdebug.remote_enable``  como 1, não "true" ou qualquer outro valor.
 
-*Observação:* certifique-se de que os caminhos especificados coincidam com o local dos arquivos correspondentes, conforme determinado durante a instalação.
+NOTE:  certifique-se de que os caminhos especificados coincidam com o local dos arquivos correspondentes, conforme determinado durante a instalação.
 
-5. Salve o  ``php.ini`` .
-6. Execute a <<xamppConstolPanel,Aplicação Painel de Controle do XAMPP>> e reinicie o servidor Apache.
+
+[start=5.]
+. Salve o  ``php.ini`` .
+
+[start=6.]
+. Execute a <<xamppConstolPanel,Aplicação Painel de Controle do XAMPP>> e reinicie o servidor Apache.
 Consulte link:http://wiki.netbeans.org/HowToConfigureXDebug[+nosso wiki+] e a link:http://www.xdebug.org/docs/install[+documentação do XDebug+] para obter mais informações sobre como configurar o XDebug.
 
 
@@ -187,15 +204,20 @@
 
 No Microsoft Vista, não instale o Servidor Apache na localização default, que é Arquivos de Programas. Todos os arquivos em Arquivos de Programas estão protegidos contra gravação.
 
-3. Quando a instalação tiver sido concluída, reinicie o servidor Apache.
-4. Para verificar se a instalação foi bem-sucedida, execute o browser e insira o seguinte URL:
 
-[source,java]
+[start=3.]
+. Quando a instalação tiver sido concluída, reinicie o servidor Apache.
+
+[start=4.]
+. Para verificar se a instalação foi bem-sucedida, execute o browser e insira o seguinte URL:
+
+[source,ini]
 ----
 
   http://localhost/
 ----
 A página de teste de boas-vindas do Apache será aberta: 
+
 image::images/install-apache-it-works-port80.png[]
 
 
@@ -215,15 +237,27 @@
 
 === Mecanismo PHP
 
-1. Faça download do link:http://windows.php.net/download/[+instalador binário do Windows+] para a versão PHP5 de sua escolha.
+
+[start=1.]
+. Faça download do link:http://windows.php.net/download/[+instalador binário do Windows+] para a versão PHP5 de sua escolha.
 
 *Importante: *se não houver um instalador disponível na versão do PHP que você deseja instalar, instale-o manualmente pelo arquivo .zip. Consulte link:http://php.net/manual/en/install.windows.manual.php[+Etapas de Instrução Manual+] na documentação do php.net.
 
-2. Quando o download estiver concluído, execute o arquivo de instalação  ``.msi`` . O assistente de instalação é iniciado.
-3. No painel Diretório de Configuração do Apache, especifique o diretório onde o arquivo  ``httpd.conf``  está localizado, a definição default é  ``C:\Arquivos de Programas\Apache Software Foundation\Apache<versão>\conf\`` . O processamento do PHP será ativado automaticamente.
-4. Se você desejar utilizar o servidor de banco de dados MySQL, escolha a opção de instalação Completa ou selecione os itens MySQL e MySQLi na lista Extensões.
-5. Depois que a instalação tiver sido concluída, reinicie o servidor Apache.
-6. Para verificar se o mecanismo PHP foi instalado com êxito e o processamento do PHP foi ativado na configuração do Apache:
+
+[start=2.]
+. Quando o download estiver concluído, execute o arquivo de instalação  ``.msi`` . O assistente de instalação é iniciado.
+
+[start=3.]
+. No painel Diretório de Configuração do Apache, especifique o diretório onde o arquivo  ``httpd.conf``  está localizado, a definição default é  ``C:\Arquivos de Programas\Apache Software Foundation\Apache<versão>\conf\`` . O processamento do PHP será ativado automaticamente.
+
+[start=4.]
+. Se você desejar utilizar o servidor de banco de dados MySQL, escolha a opção de instalação Completa ou selecione os itens MySQL e MySQLi na lista Extensões.
+
+[start=5.]
+. Depois que a instalação tiver sido concluída, reinicie o servidor Apache.
+
+[start=6.]
+. Para verificar se o mecanismo PHP foi instalado com êxito e o processamento do PHP foi ativado na configuração do Apache:
 * Abra o Bloco de Notas ou outro editor de texto. Crie um arquivo e digite o texto a seguir:
 
 [source,php]
@@ -235,6 +269,7 @@
 ----
 * Salve o arquivo na pasta htdocs como `test.php`. O caminho padrão é  ``C:\Program Files\Apache Software Foundation\Apache<version>\htdocs\test.php`` 
 * Execute o browser e digite o seguinte URL:  ``http://localhost:<porta>/test.php`` . A página a seguir será aberta:
+
 image::images/install-php-test.png[]
 
 
@@ -245,14 +280,18 @@
 1. Reinicie o servidor Apache.
 2. Verifique se o arquivo de configuração do servidor Apache httpd.conf contém as seguintes linhas:
 
-[source,java]
+[source,ini]
 ----
 
   AddType Application/x-httpd-php .php 
   LoadModule php5_module "c:/php/sapi/php5apache2_2.dll"
 ----
-3. Se as linhas estiverem ausentes, adicione-as, salve o  ``httpd.conf``  e reinicie o Apache.
-4. Atualize a página http://localhost:<port>/test.php.
+
+[start=3.]
+. Se as linhas estiverem ausentes, adicione-as, salve o  ``httpd.conf``  e reinicie o Apache.
+
+[start=4.]
+. Atualize a página http://localhost:<port>/test.php.
 
 
 === Servidor de Banco de Dados MySQL
@@ -275,7 +314,7 @@
 Para um mecanismo PHP 5.2 *seguro para thread*:
 
 
-[source,java]
+[source,ini]
 ----
 
 zend_extension_ts="<path to the php folder>/php_xdebug-<version-number>.dll"
@@ -285,7 +324,7 @@
 Para um mecanismo PHP 5.2 *não seguro para thread*:
 
 
-[source,java]
+[source,ini]
 ----
 
 zend_extension_nts="<path to the php folder>/php_xdebug-<version-number>.dll"
@@ -295,7 +334,7 @@
 Para *qualquer* mecanismo PHP 5.3:
 
 
-[source,java]
+[source,ini]
 ----
 
 zend_extension="<path to the php folder>/php_xdebug-<version-number>.dll"
@@ -305,7 +344,7 @@
 Alguns usuários observam também que podem precisar incluir as seguintes linhas, embora outros usuários não precisem:
 
 
-[source,java]
+[source,ini]
 ----
 
 xdebug.remote_host=127.0.0.1xdebug.remote_port=9000
@@ -314,9 +353,12 @@
 
 Clique link:http://www.xdebug.org/docs/install[+aqui+] para obter mais informações sobre como configurar o XDebug.
 
-*Observação:* certifique-se de que os caminhos especificados coincidam com os nomes e os locais dos arquivos correspondentes, conforme determinado durante a instalação.
+NOTE:  certifique-se de que os caminhos especificados coincidam com os nomes e os locais dos arquivos correspondentes, conforme determinado durante a instalação.
 
-3. Para ter certeza de que o mecanismo PHP instalado anteriormente suporte a utilização do servidor de banco de dados MySQL:
+
+[start=3.]
+. Para ter certeza de que o mecanismo PHP instalado anteriormente suporte a utilização do servidor de banco de dados MySQL:
+
 1. Clique em Iniciar > Painel de Controle.
 2. No Painel de Controle, selecione Adicionar ou Remover Programas.
 3. No painel Adicionar ou Remover Programas, selecione a área PHP <número de versão> área e clique em Alterar. O Assistente Configuração do PHP será Iniciado. Clique em Próximo.
diff --git a/netbeans.apache.org/src/content/kb/docs/php/configure-php-environment-windows_ru.asciidoc b/netbeans.apache.org/src/content/kb/docs/php/configure-php-environment-windows_ru.asciidoc
index 8bd04c1..4269702 100644
--- a/netbeans.apache.org/src/content/kb/docs/php/configure-php-environment-windows_ru.asciidoc
+++ b/netbeans.apache.org/src/content/kb/docs/php/configure-php-environment-windows_ru.asciidoc
@@ -32,9 +32,6 @@
 В данном учебном курсе рассматриваются два способа настройки среды разработки PHP в операционной системе Windows. Первый и наиболее удобный способ состоит в установке и настройке пакета AMP (*A*pache, *М*ySQL, *P*HP). В данном учебном курсе приводится процедура установки пакета XAMPP. Второй способ состоит в установке и настройке каждого компонента по отдельности.
 
 
-image::images/netbeans-stamp-80-74-73.png[title="Содержимое этой страницы применимо к IDE NetBeans 7.2, 7.3, 7.4 и 8.0"]
-
-
 *Для работы с этим учебным курсом требуется следующее программное обеспечение и ресурсы.*
 
 |===
@@ -67,7 +64,7 @@
 * Механизм PHP. Поддерживается версия PHP5. Загрузку можно осуществить link:http://www.php.net/downloads.php[+отсюда+].
 * Отладчик PHP. IDE NetBeans для PHP позволяет использовать link:http://www.xdebug.org[+XDebug+], но использование отладчика не является обзательным. Из соображений совместимости с PHP5 рекомендуется использовать версию XDebug 2.0 или выше.
 * Сервер базы данных. Существует возможность использования различных серверов базы данных, однако самым популярным из них является сервер MySQL. Загрузку можно осуществить link:http://dev.mysql.com/downloads/mysql/5.1.html[+отсюда+]. 
-*Примечание.* Рекомендуемая версия продукта: MySQL Server 5.0. В предоставленных документах описывается работа с этой версией.
+NOTE:  Рекомендуемая версия продукта: MySQL Server 5.0. В предоставленных документах описывается работа с этой версией.
 
 По завершении установки необходимо выполнить настройку среды в целях обеспечения правильной совместной работы всех программных компонентов.
 
@@ -85,30 +82,44 @@
 
 *Предупреждение!* НЕ используйте XAMPP 1.7.0. В этой версии имеются значительные проблемы с XDebug. Используйте версию 1.7.1 или выше, где эти неполадки устранены.
 
-*Примечание: * Начиная с XAMPP 1.7.2, XAMPP поставляется с PHP 5.3а не с PHP 5.2.x. IDE NetBeans для PHP версии 6.7.x не поддерживает новые функции PHP 5.3. IDE NetBeans для PHP 6.8, которая в настоящее время доступна как сборка разработки, полностью поддерживает PHP 5.3. Также обратите внимание, что установка Xdebug различается для PHP 5.2.x и PHP 5.3.
+NOTE:  Начиная с XAMPP 1.7.2, XAMPP поставляется с PHP 5.3а не с PHP 5.2.x. IDE NetBeans для PHP версии 6.7.x не поддерживает новые функции PHP 5.3. IDE NetBeans для PHP 6.8, которая в настоящее время доступна как сборка разработки, полностью поддерживает PHP 5.3. Также обратите внимание, что установка Xdebug различается для PHP 5.2.x и PHP 5.3.
 
 1. Загрузите пакет программы установки link:http://www.apachefriends.org/en/xampp-windows.html[+XAMPP +]. В состав XAMPP Lite не входит XDebug.
 2. По завершении загрузки запустите файл  ``EXE`` .
 
 В Microsoft Vista функция контроля учетных записей пользователей (UAC) блокирует обновление установщиком PHP настройки службы httpd Apache. На время установки XAMPP следует отключить UAC. Для получения дополнительных сведений обратитесь к разделу link:http://support.microsoft.com/kb/922708[+Поддержка Майкрософт+].
 
-3. Можно установить сервер Apache и сервер базы данных MySQL как веб-службы. Если Apache Server и MySQL установлены как службы, то нет необходимости запускать их вручную с помощью "XAMP Control Panel". Следует учитывать, что установить и удалить эти службы можно с помощью <<xamppConstolPanel,панели управления XAMPP>>.
-4. При использовании самораспаковывающегося архива после его распаковки запустите файл  ``setup-xampp.bat``  для настройки компонентов пакета. Программа установки XAMPP запускает этот файл автоматически.
-5. После настройки откройте панель управления XAMP. Эту панель можно открыть посредством запуска файла  ``XAMPP_HOME/xampp-control.exe``  или с помощью значка панель управления XAMPP, автоматически размещаемого на рабочем столе. При открытии панели управления XAMPP следует учитывать, что модули, установленные как службы, уже выполняются.
+
+[start=3]
+. Можно установить сервер Apache и сервер базы данных MySQL как веб-службы. Если Apache Server и MySQL установлены как службы, то нет необходимости запускать их вручную с помощью "XAMP Control Panel". Следует учитывать, что установить и удалить эти службы можно с помощью <<xamppConstolPanel,панели управления XAMPP>>.
+
+[start=4]
+. При использовании самораспаковывающегося архива после его распаковки запустите файл  ``setup-xampp.bat``  для настройки компонентов пакета. Программа установки XAMPP запускает этот файл автоматически.
+
+[start=5]
+. После настройки откройте панель управления XAMP. Эту панель можно открыть посредством запуска файла  ``XAMPP_HOME/xampp-control.exe``  или с помощью значка панель управления XAMPP, автоматически размещаемого на рабочем столе. При открытии панели управления XAMPP следует учитывать, что модули, установленные как службы, уже выполняются.
 
 *Предупреждение. *Иногда в Windows Vista не удается запустить файл  ``xampp-control.exe`` . В этом случае можно запустить  ``xampp-start.exe`` .
 
 *Предупреждение. *Файл  ``winmysqladmin.exe`` , запускаемый кнопкой "Admin" для MySQL, не функционирует. Отображается последовательность сообщений об ошибках, которая может быть остановлена только путем завершения процесса  ``winmysqladmin``  вручную. Файл  ``winmysqladmin.exe``  также невозможно запустить из командной строки. Обратитесь к странице link:http://bugs.xampp.org/view.php?id=71[+http://bugs.xampp.org/view.php?id=71+].
 
 image::images/xampp-control-panel.png[]
-6. Флажки "Svc" указывают на то, что модуль устанавливается как служба Windows и автоматически выполняется при запуске системы. Службы Windows устанавливаются и удаляются при установке и снятии флажка "Svc". При удалении службы Windows сам модуль не удаляется, однако необходимо запускать его вручную. Панель управления XAMPP включает в себя кнопки запуска и остановки модулей, а также открытия их консолей администратора.
+
+
+[start=6]
+. Флажки "Svc" указывают на то, что модуль устанавливается как служба Windows и автоматически выполняется при запуске системы. Службы Windows устанавливаются и удаляются при установке и снятии флажка "Svc". При удалении службы Windows сам модуль не удаляется, однако необходимо запускать его вручную. Панель управления XAMPP включает в себя кнопки запуска и остановки модулей, а также открытия их консолей администратора.
 
 
 === Проверка установки XAMPP
 
 1. Запустите браузер и введите следующий URL-адрес:  ``http://localhost`` . Откроется страница приветствия XAMPP:
+
 image::images/xampp-welcome-page.png[]
-2. В целях обеспечения установки серверов Apache и MySQL в качестве служб системы перезапустите операционную систему, запустите браузер и повторно введите URL-адрес  ``http://localhost`` . Откроется страница приветствия XAMPP. Обратите внимание на то, что в левом поле страницы приветствия XAMPP имеется меню, посредством которого можно проверить состояние компонентов XAMPP, запустить  ``phpinfo()`` , а также воспользоваться другими важными функциями. При выполнении  ``phpinfo()``  возвращается экран с информацией о настройке компонентов XAMPP. 
+
+
+[start=2]
+. В целях обеспечения установки серверов Apache и MySQL в качестве служб системы перезапустите операционную систему, запустите браузер и повторно введите URL-адрес  ``http://localhost`` . Откроется страница приветствия XAMPP. Обратите внимание на то, что в левом поле страницы приветствия XAMPP имеется меню, посредством которого можно проверить состояние компонентов XAMPP, запустить  ``phpinfo()`` , а также воспользоваться другими важными функциями. При выполнении  ``phpinfo()``  возвращается экран с информацией о настройке компонентов XAMPP. 
+
 image::images/xampp-phpinfo.png[]
 
 
@@ -128,7 +139,7 @@
 2. Найдите и откройте активный файл  ``php.ini``  для XAMPP. По умолчанию он находится в каталоге  `` XAMPP_HOME/apache/bin`` . Подтвердите, какой файл  ``php.ini``  является активным, с помощью  ``phpinfo()``  и поиска загруженного файла конфигурации.
 3. Поскольку оптимизатор Zend блокирует XDebug, оптимизатор требуется отключить. В активном файле  ``php.ini ``  найдите следующие строки и удалите или отметьте их как комментарии (для надежности выполните поиск и закомментируйте все свойства, связанные с Zend):
 
-[source,java]
+[source,ini]
 ----
 
 [Zend]
@@ -139,10 +150,12 @@
 ;zend_optimizer.license_path =
 
 ----
-4. Для присоединения
+
+[start=4]
+. Для присоединения
  XDebug к механизму PHP раскомментируйте следующие строки в файлах  ``php.ini``  (добавьте эти строки непосредственно в разделе [Zend]), если они отсутствуют. Добавлены дополнительные примечания.
 
-[source,java]
+[source,ini]
 ----
 
 [XDebug]; Only Zend OR (!) XDebug
@@ -153,10 +166,14 @@
 
 Установите свойство  ``xdebug.remote_enable``  в значение 1, а не в значение "true" или другое значение.
 
-*Примечание.* Убедитесь в том, что указанные пути соответствуют расположению соответствующих файлов, как это определено при установке.
+NOTE:  Убедитесь в том, что указанные пути соответствуют расположению соответствующих файлов, как это определено при установке.
 
-5. Сохраните файл  ``php.ini`` .
-6. Запустите <<xamppConstolPanel,панель управления XAMPP>> и перезапустите сервер Apache.
+
+[start=5]
+. Сохраните файл  ``php.ini`` .
+
+[start=6]
+. Запустите <<xamppConstolPanel,панель управления XAMPP>> и перезапустите сервер Apache.
 Дополнительные сведения о настройке XDebug приведены на link:http://wiki.netbeans.org/HowToConfigureXDebug[+вики-странице+] и в link:http://www.xdebug.org/docs/install[+документации по XDebug+].
 
 
@@ -182,20 +199,29 @@
 
 === Сервер HTTP Apache
 
-1. Загрузите link:http://httpd.apache.org/download.cgi[+сервер HTTP Apache2+].
-2. Запустите установочный файл  ``.msi`` . Запускается мастер установки. Следуйте указаниям.
+
+[start=1]
+. Загрузите link:http://httpd.apache.org/download.cgi[+сервер HTTP Apache2+].
+
+[start=2]
+. Запустите установочный файл  ``.msi`` . Запускается мастер установки. Следуйте указаниям.
 
 В Microsoft Vista не следует устанавливать Apache Server в местоположение по умолчанию, находящееся в папке "Program Files". Все файлы в папке "Program Files" защищены от записи.
 
-3. По завершении установки перезапустите сервер Apache.
-4. Для проверки успешности установки запустите браузер и введите следующий URL-адрес:
 
-[source,java]
+[start=3]
+. По завершении установки перезапустите сервер Apache.
+
+[start=4]
+. Для проверки успешности установки запустите браузер и введите следующий URL-адрес:
+
+[source,ini]
 ----
 
   http://localhost/
 ----
 Откроется страница приветствия Apache: 
+
 image::images/install-apache-it-works-port80.png[]
 
 
@@ -219,11 +245,21 @@
 
 *Важно.*Если установщик для нужной версии PHP отсутствует, установите ее вручную из файла .zip. См. раздел link:http://php.net/manual/en/install.windows.manual.php[+Этапы ручной установки+] в документации php.net.
 
-2. По завершении загрузки запустите установочный файл  ``.msi`` . Запускается мастер установки.
-3. На экране "Каталог конфигурации Apache" укажите каталог, в котором расположен файл  ``httpd.conf``  (по умолчанию используется каталог  ``C:\Program Files\Apache Software Foundation\Apache<version>\conf\`` ). Обработка кода PHP включается автоматически.
-4. При необходимости использования сервера базы данных MySQL выберите вариант "Полная установка" или выберите элементы MySQL и MySQLi в списке "Расширения".
-5. После завершения установки перезапустите сервер Apache.
-6. Для проверки успешности установки механизма PHP и включения обработки кода PHP в настройке Apache выполните следующие действия:
+
+[start=2]
+. По завершении загрузки запустите установочный файл  ``.msi`` . Запускается мастер установки.
+
+[start=3]
+. На экране "Каталог конфигурации Apache" укажите каталог, в котором расположен файл  ``httpd.conf``  (по умолчанию используется каталог  ``C:\Program Files\Apache Software Foundation\Apache<version>\conf\`` ). Обработка кода PHP включается автоматически.
+
+[start=4]
+. При необходимости использования сервера базы данных MySQL выберите вариант "Полная установка" или выберите элементы MySQL и MySQLi в списке "Расширения".
+
+[start=5]
+. После завершения установки перезапустите сервер Apache.
+
+[start=6]
+. Для проверки успешности установки механизма PHP и включения обработки кода PHP в настройке Apache выполните следующие действия:
 * Откройте блокнот или любой другой текстовый редактор. Создайте файл и введите следующий текст:
 
 [source,php]
@@ -235,6 +271,7 @@
 ----
 * Сохраните файл в папке htdocs с именем `test.php`. По умолчанию путь к файлу имеет вид  ``C:\Program Files\Apache Software Foundation\Apache<version>\htdocs\test.php`` 
 * Запустите браузер и введите следующий URL-адрес:  ``http://localhost:<port>/test.php`` . Откроется следующая страница:
+
 image::images/install-php-test.png[]
 
 
@@ -245,14 +282,18 @@
 1. Перезапустите сервер Apache.
 2. Убедитесь, что файл настройки сервера Apache httpd.conf содержит следующие строки:
 
-[source,java]
+[source,ini]
 ----
 
   AddType Application/x-httpd-php .php 
   LoadModule php5_module "c:/php/sapi/php5apache2_2.dll"
 ----
-3. Если эти строки отсутствуют, добавьте их, сохраните  ``httpd.conf``  и перезапустите сервер Apache.
-4. Обновите страницу http://localhost:<port>/test.php.
+
+[start=3]
+. Если эти строки отсутствуют, добавьте их, сохраните  ``httpd.conf``  и перезапустите сервер Apache.
+
+[start=4]
+. Обновите страницу http://localhost:<port>/test.php.
 
 
 === Сервер базы данных MySQL
@@ -275,7 +316,7 @@
 Для механизма PHP 5.2 *с ориентацией на многопотоковое исполнение*:
 
 
-[source,java]
+[source,ini]
 ----
 
 zend_extension_ts="<path to the php folder>/php_xdebug-<version-number>.dll"
@@ -285,7 +326,7 @@
 Для механизма PHP 5.2 *без ориентации на многопотоковое исполнение*:
 
 
-[source,java]
+[source,ini]
 ----
 
 zend_extension_nts="<path to the php folder>/php_xdebug-<version-number>.dll"
@@ -295,7 +336,7 @@
 Для *любого* механизма PHP 5.3:
 
 
-[source,java]
+[source,ini]
 ----
 
 zend_extension="<path to the php folder>/php_xdebug-<version-number>.dll"
@@ -305,7 +346,7 @@
 Некоторые пользователи считают, что необходимо включить в код следующие строки, однако другие пользователи пропускают их:
 
 
-[source,java]
+[source,ini]
 ----
 
 xdebug.remote_host=127.0.0.1xdebug.remote_port=9000
@@ -314,9 +355,12 @@
 
 Дополнительные сведения о настройке отладчика XDebug приведена link:http://www.xdebug.org/docs/install[+здесь+].
 
-*Примечание.* Убедитесь в том, что указанные пути соответствуют именам и расположению соответствующих файлов, как это определено при установке.
+NOTE:  Убедитесь в том, что указанные пути соответствуют именам и расположению соответствующих файлов, как это определено при установке.
 
-3. Для проверки того, что предварительно установленный механизм PHP поддерживает использование сервера базы данных MySQL выполните следующие действия:
+
+[start=3]
+. Для проверки того, что предварительно установленный механизм PHP поддерживает использование сервера базы данных MySQL выполните следующие действия:
+
 1. Выберите команду "Пуск" > "Панель управления".
 2. На экране "Панель управления" выберите параметр "Добавление или удаление программ".
 3. На экране "Добавление или удаление программ" перейдите к области "PHP <номер_версии>" и нажмите кнопку "Изменить". Последует запуск мастера настройки PHP. Нажмите кнопку "Далее".
diff --git a/netbeans.apache.org/src/content/kb/docs/php/configure-php-environment-windows_zh_CN.asciidoc b/netbeans.apache.org/src/content/kb/docs/php/configure-php-environment-windows_zh_CN.asciidoc
index 017c997..85839cd 100644
--- a/netbeans.apache.org/src/content/kb/docs/php/configure-php-environment-windows_zh_CN.asciidoc
+++ b/netbeans.apache.org/src/content/kb/docs/php/configure-php-environment-windows_zh_CN.asciidoc
@@ -32,9 +32,6 @@
 本教程介绍了在 Windows 操作系统上配置 PHP 开发环境的两种方法。第一种方法是安装和配置 AMP (*A*pache、*M*ySQL、*P*HP) 包,这种方法最为简便。本教程介绍了如何安装 XAMPP 包。第二种方法是单独安装和配置每个组件。
 
 
-image::images/netbeans-stamp-80-74-73.png[title="此页上的内容适用于 NetBeans IDE 7.2、7.3、7.4 和 8.0"]
-
-
 *要学习本教程,您需要具备以下软件和资源。*
 
 |===
@@ -67,7 +64,7 @@
 * PHP 引擎。支持的版本是 PHP5。可以从link:http://www.php.net/downloads.php[+此处+]进行下载。
 * PHP 调试器。用于 PHP 的 NetBeans IDE 使您能够使用 link:http://www.xdebug.org[+XDebug+],但使用调试器是可选的。推荐版本为 XDebug 2.0 或更高版本,因为它与 PHP5 兼容。
 * 数据库服务器。您可以使用多种数据库服务器,而最受欢迎的一种是 MySQL 服务器。可以从link:http://dev.mysql.com/downloads/mysql/5.1.html[+此处+]进行下载。
-*注:*该产品的推荐版本为 MySQL Server 5.0。提供的文档描述如何使用此版本。
+NOTE: 该产品的推荐版本为 MySQL Server 5.0。提供的文档描述如何使用此版本。
 
 安装之后,需要设置环境,使所有软件组件可以彼此之间正常配合工作。
 
@@ -85,30 +82,44 @@
 
 *警告:*不要使用 XAMPP 1.7.0。此版本中的 XDebug 出现重大问题。可以使用版本 1.7.1 或更高版本,其中已修复这些问题。
 
-*注:*从 XAMPP 1.7.2 开始,XAMPP 附带提供 PHP 5.3 而不是 PHP 5.2.x。适用于 PHP 的 NetBeans IDE 版本 6.7.x 不支持新的 PHP 5.3 功能。适用于 PHP 6.8 的 NetBeans IDE 目前提供开发版本,完全支持 PHP 5.3。另请注意,PHP 5.2.x 和 PHP 5.3 之间的 Xdebug 安装不同。
+NOTE: 从 XAMPP 1.7.2 开始,XAMPP 附带提供 PHP 5.3 而不是 PHP 5.2.x。适用于 PHP 的 NetBeans IDE 版本 6.7.x 不支持新的 PHP 5.3 功能。适用于 PHP 6.8 的 NetBeans IDE 目前提供开发版本,完全支持 PHP 5.3。另请注意,PHP 5.2.x 和 PHP 5.3 之间的 Xdebug 安装不同。
 
 1. 下载 link:http://www.apachefriends.org/en/xampp-windows.html[+XAMPP+] 安装包。(XAMPP Lite 不包括 XDebug。)
 2. 下载完成后,运行  ``.exe``  文件。
 
 在 Microsoft Vista 上,“用户访问控制”功能会阻止 PHP 安装程序更新 Apache httpd 配置。在安装 XAMPP 时请禁用 UAC。有关详细信息,请参见 link:http://support.microsoft.com/kb/922708[+Microsoft 支持+]。
 
-3. 您可以选择作为服务安装 Apache 服务器和 MySQL 数据库服务器。如果将 Apache 服务器和 MySQL 作为服务进行安装,则您将不必通过 XAMPP 控制面板来手动启动它们。请注意,您可以在 <<xamppConstolPanel,XAMPP 控制面板>>中选择安装或卸载这些服务。
-4. 如果您使用的是自解压档案文件,请在解压缩该档案文件之后,运行  ``setup-xampp.bat``  文件以配置该包的组件。(XAMPP 安装程序会自动运行此文件。)
-5. 配置之后,打开 XAMPP 控制面板。(您可以通过运行  ``XAMPP_HOME/xampp-control.exe``  文件或通过自动置于桌面上的 XAMPP 控制面板图标手动打开该控制面板。)在打开 XAMPP 控制面板时,请注意作为服务安装的模块是否已在运行。
+
+[start=3]
+. 您可以选择作为服务安装 Apache 服务器和 MySQL 数据库服务器。如果将 Apache 服务器和 MySQL 作为服务进行安装,则您将不必通过 XAMPP 控制面板来手动启动它们。请注意,您可以在 <<xamppConstolPanel,XAMPP 控制面板>>中选择安装或卸载这些服务。
+
+[start=4]
+. 如果您使用的是自解压档案文件,请在解压缩该档案文件之后,运行  ``setup-xampp.bat``  文件以配置该包的组件。(XAMPP 安装程序会自动运行此文件。)
+
+[start=5]
+. 配置之后,打开 XAMPP 控制面板。(您可以通过运行  ``XAMPP_HOME/xampp-control.exe``  文件或通过自动置于桌面上的 XAMPP 控制面板图标手动打开该控制面板。)在打开 XAMPP 控制面板时,请注意作为服务安装的模块是否已在运行。
 
 *警告:*在 Windows Vista 上,有时  ``xampp-control.exe``  不会运行。这时您可以运行  ``xampp-start.exe`` 。
 
 *警告:*如果通过 MySQL 的“管理”按钮启动  ``winmysqladmin.exe``  文件,则该文件将无法正常运行。出现层叠错误消息时,只能通过手动终止  ``winmysqladmin``  进程来阻止这些消息。您也无法从命令行启动  ``winmysqladmin.exe`` 。请参见 link:http://bugs.xampp.org/view.php?id=71[+http://bugs.xampp.org/view.php?id=71+]。
 
 image::images/xampp-control-panel.png[]
-6. "Svc" 复选框指示模块是作为 Windows 服务安装的,并且将在系统启动时自动启动。您可以通过选中或取消选中 "Svc" 复选框来安装或卸载 Windows 服务。卸载 Windows 服务不会卸载模块,但之后您需要手动启动该模块。XAMPP 控制面板包括用于停止和启动模块以及打开这些模块的管理控制台的按钮。
+
+
+[start=6]
+. "Svc" 复选框指示模块是作为 Windows 服务安装的,并且将在系统启动时自动启动。您可以通过选中或取消选中 "Svc" 复选框来安装或卸载 Windows 服务。卸载 Windows 服务不会卸载模块,但之后您需要手动启动该模块。XAMPP 控制面板包括用于停止和启动模块以及打开这些模块的管理控制台的按钮。
 
 
 === 检查 XAMPP 安装
 
 1. 运行浏览器,然后输入以下 URL: ``http://localhost`` 。XAMPP 欢迎页面打开:
+
 image::images/xampp-welcome-page.png[]
-2. 要确保 Apache 和 MySQL 服务器已作为系统服务安装,请重新启动您的操作系统,再运行浏览器,然后再次输入  ``http://localhost``  URL。XAMPP 欢迎页面打开。请注意,XAMPP 欢迎页面在左旁注中包含一个菜单,您可以通过此菜单检查 XAMPP 组件的状态,运行  ``phpinfo()`` ,以及实现其他有用的功能。 ``phpinfo()``  会返回一个屏幕,其中显示关于 XAMPP 组件的配置信息。 
+
+
+[start=2]
+. 要确保 Apache 和 MySQL 服务器已作为系统服务安装,请重新启动您的操作系统,再运行浏览器,然后再次输入  ``http://localhost``  URL。XAMPP 欢迎页面打开。请注意,XAMPP 欢迎页面在左旁注中包含一个菜单,您可以通过此菜单检查 XAMPP 组件的状态,运行  ``phpinfo()`` ,以及实现其他有用的功能。 ``phpinfo()``  会返回一个屏幕,其中显示关于 XAMPP 组件的配置信息。 
+
 image::images/xampp-phpinfo.png[]
 
 
@@ -128,7 +139,7 @@
 2. 找到 XAMPP 的活动  ``php.ini``  文件并将其打开。默认情况下,此文件位于  ``XAMPP_HOME/apache/bin``  目录中。通过运行  ``phpinfo()``  并搜索 "Loaded Configuration File" 来确认活动的  ``php.ini``  文件。
 3. 由于 Zend 优化器会阻止 XDebug,因此您需要禁用 Zend 优化器。在活动的  ``php.ini``  文件中找到以下行,然后将其删除或标记为注释(为了安全起见,请搜索与 Zend 相关的所有属性并将其注释掉):
 
-[source,java]
+[source,ini]
 ----
 
 [Zend]
@@ -139,10 +150,12 @@
 ;zend_optimizer.license_path =
 
 ----
-4. 要将
+
+[start=4]
+. 要将
  XDebug 附加到 PHP 引擎,请在  ``php.ini``  文件中取消对以下行(恰好位于 [Zend] 部分下面;如果没有,请添加它们)的注释。已另外添加一些注释。
 
-[source,java]
+[source,ini]
 ----
 
 [XDebug]; Only Zend OR (!) XDebug
@@ -153,10 +166,14 @@
 
 将  ``xdebug.remote_enable``  属性设置为 1,而不是 "true" 或任何其他值。
 
-*注:*请确保您指定的路径与安装过程中所确定的相应文件的位置匹配。
+NOTE: 请确保您指定的路径与安装过程中所确定的相应文件的位置匹配。
 
-5. 保存  ``php.ini`` 。
-6. 运行 <<xamppConstolPanel,XAMPP Control Panel Application(XAMPP 控制面板应用程序)>>并重新启动 Apache 服务器。
+
+[start=5]
+. 保存  ``php.ini`` 。
+
+[start=6]
+. 运行 <<xamppConstolPanel,XAMPP Control Panel Application(XAMPP 控制面板应用程序)>>并重新启动 Apache 服务器。
 有关如何配置 XDebug 的详细信息,请参见link:http://wiki.netbeans.org/HowToConfigureXDebug[+我们的 wiki+] 和 link:http://www.xdebug.org/docs/install[+XDebug 文档+]。
 
 
@@ -187,15 +204,20 @@
 
 在 Microsoft Vista 上,不要将 Apache 服务器安装到 Program Files 中的默认位置。Program Files 中的所有文件均具有写保护。
 
-3. 安装完成后,重新启动 Apache 服务器。
-4. 要检查安装是否成功,请运行浏览器,然后输入以下 URL:
 
-[source,java]
+[start=3]
+. 安装完成后,重新启动 Apache 服务器。
+
+[start=4]
+. 要检查安装是否成功,请运行浏览器,然后输入以下 URL:
+
+[source,ini]
 ----
 
   http://localhost/
 ----
 Apache 欢迎测试页面打开: 
+
 image::images/install-apache-it-works-port80.png[]
 
 
@@ -219,11 +241,21 @@
 
 *重要信息:*如果没有安装程序适用于您要安装的 PHP 版本,则必须手动从 .zip 文件中安装它。请参见 php.net 文档中的link:http://php.net/manual/en/install.windows.manual.php[+手动指令步骤+]。
 
-2. 下载完成后,运行  ``.msi``  安装文件。此时将启动安装向导。
-3. 在“Apache 配置目录”面板上,指定  ``httpd.conf``  文件所在的目录,默认设置是  ``C:\Program Files\Apache Software Foundation\Apache<version>\conf\`` 。PHP 处理将自动启用。
-4. 如果您要使用 MySQL 数据库服务器,请选择“完全”安装选项,或在“扩展”列表中选择 "MySQL" 和 "MySQLi" 项。
-5. 安装完成后,请重新启动 Apache 服务器。
-6. 要检查 PHP 引擎是否已成功安装,以及是否在 Apache 配置中启用了 PHP 处理,请执行以下操作:
+
+[start=2]
+. 下载完成后,运行  ``.msi``  安装文件。此时将启动安装向导。
+
+[start=3]
+. 在“Apache 配置目录”面板上,指定  ``httpd.conf``  文件所在的目录,默认设置是  ``C:\Program Files\Apache Software Foundation\Apache<version>\conf\`` 。PHP 处理将自动启用。
+
+[start=4]
+. 如果您要使用 MySQL 数据库服务器,请选择“完全”安装选项,或在“扩展”列表中选择 "MySQL" 和 "MySQLi" 项。
+
+[start=5]
+. 安装完成后,请重新启动 Apache 服务器。
+
+[start=6]
+. 要检查 PHP 引擎是否已成功安装,以及是否在 Apache 配置中启用了 PHP 处理,请执行以下操作:
 * 打开记事本或其他文本编辑器。创建一个文件并键入以下文本:
 
 [source,php]
@@ -235,6 +267,7 @@
 ----
 * 在 htdocs 文件夹中将此文件另存为 `test.php`。默认路径为  ``C:\Program Files\Apache Software Foundation\Apache<version>\htdocs\test.php`` 
 * 运行浏览器,然后输入以下 URL: ``http://localhost:<port>/test.php`` 。以下页面打开:
+
 image::images/install-php-test.png[]
 
 
@@ -245,14 +278,18 @@
 1. 重新启动 Apache 服务器。
 2. 检查 Apache 服务器配置文件 httpd.conf 是否包含以下几行:
 
-[source,java]
+[source,ini]
 ----
 
   AddType Application/x-httpd-php .php 
   LoadModule php5_module "c:/php/sapi/php5apache2_2.dll"
 ----
-3. 如果缺少以上几行,请添加它们,并保存  ``httpd.conf`` ,然后重新启动 Apache。
-4. 刷新 http://localhost:<port>/test.php 页面。
+
+[start=3]
+. 如果缺少以上几行,请添加它们,并保存  ``httpd.conf`` ,然后重新启动 Apache。
+
+[start=4]
+. 刷新 http://localhost:<port>/test.php 页面。
 
 
 === MySQL 数据库服务器
@@ -268,14 +305,18 @@
 
 === 设置环境
 
-1. 如果按照默认设置安装,则系统会自动启用 PHP 处理。
-2. 要将
+
+[start=1]
+. 如果按照默认设置安装,则系统会自动启用 PHP 处理。
+
+[start=2]
+. 要将
  XDebug 附加到 PHP 引擎,请找到  ``php.ini``  文件,并在其中添加以下几行:
 
 适用于*线程安全*的 PHP 5.2 引擎:
 
 
-[source,java]
+[source,ini]
 ----
 
 zend_extension_ts="<path to the php folder>/php_xdebug-<version-number>.dll"
@@ -285,7 +326,7 @@
 适用于*非线程安全*的 PHP 5.2 引擎:
 
 
-[source,java]
+[source,ini]
 ----
 
 zend_extension_nts="<path to the php folder>/php_xdebug-<version-number>.dll"
@@ -295,7 +336,7 @@
 适用于*任何* PHP 5.3 引擎:
 
 
-[source,java]
+[source,ini]
 ----
 
 zend_extension="<path to the php folder>/php_xdebug-<version-number>.dll"
@@ -305,7 +346,7 @@
 一些用户还发现需要包括以下行(但有些用户不需要):
 
 
-[source,java]
+[source,ini]
 ----
 
 xdebug.remote_host=127.0.0.1xdebug.remote_port=9000
@@ -314,9 +355,12 @@
 
 有关如何配置 XDebug 的详细信息,请单击link:http://www.xdebug.org/docs/install[+此处+]。
 
-*注:*请确保您指定的路径与安装过程中所确定的相应文件的名称和位置匹配。
+NOTE: 请确保您指定的路径与安装过程中所确定的相应文件的名称和位置匹配。
 
-3. 要确保先前安装的 PHP 引擎支持使用 MySQL 数据库服务器,请执行以下操作:
+
+[start=3]
+. 要确保先前安装的 PHP 引擎支持使用 MySQL 数据库服务器,请执行以下操作:
+
 1. 单击“开始”>“控制面板”。
 2. 在控制面板上,选择“添加或删除程序”。
 3. 在“添加或删除程序”面板上,选择“PHP <版本号>”区域并单击“更改”。此时将启动 PHP 设置向导。单击 "Next"(下一步)。
diff --git a/netbeans.apache.org/src/content/kb/docs/php/debugging.asciidoc b/netbeans.apache.org/src/content/kb/docs/php/debugging.asciidoc
index a1e36ab..d2e6ea0 100644
--- a/netbeans.apache.org/src/content/kb/docs/php/debugging.asciidoc
+++ b/netbeans.apache.org/src/content/kb/docs/php/debugging.asciidoc
@@ -105,19 +105,19 @@
 The toolbar provides you with the following actions:
 
 |===
-|*Finish Session* ( image::images/finish-session-button.png[] ) |Finish debugging session 
+|*Finish Session* ( image:images/finish-session-button.png[] ) |Finish debugging session 
 
-|*Pause* ( image::images/pause-button.png[] ) |Suspend debugging session 
+|*Pause* ( image:images/pause-button.png[] ) |Suspend debugging session 
 
-|*Resume* ( image::images/resume-button.png[] ) |Resume debugging session 
+|*Resume* ( image:images/resume-button.png[] ) |Resume debugging session 
 
-|*Step Over* ( image::images/step-over-button.png[] ) |Step over an execution statement 
+|*Step Over* ( image:images/step-over-button.png[] ) |Step over an execution statement 
 
-|*Step Into* ( image::images/step-into-button.png[] ) |Step into a function call 
+|*Step Into* ( image:images/step-into-button.png[] ) |Step into a function call 
 
-|*Step Out* ( image::images/step-out-button.png[] ) |Step out of the current function call 
+|*Step Out* ( image:images/step-out-button.png[] ) |Step out of the current function call 
 
-|*Run to Cursor* ( image::images/run-to-cursor-button.png[] ) |Run execution to the position of the cursor 
+|*Run to Cursor* ( image:images/run-to-cursor-button.png[] ) |Run execution to the position of the cursor 
 |===
 
  
@@ -133,9 +133,9 @@
 
 image::images/set-breakpoint.png[title="Breakpoints can be set in the editor"]
 
-You can remove the breakpoint by clicking on the breakpoint badge ( image::images/breakpoint-badge.png[] ).
+You can remove the breakpoint by clicking on the breakpoint badge ( image:images/breakpoint-badge.png[] ).
 
-It is also possible to temporarily disable breakpoints. To do so, right-click on a breakpoint badge and unselect Breakpoint > ✔Enabled. This toggles the breakpoint into a disabled state, resulting in a grey badge ( image::images/disabled-breakpoint-badge.png[] ) displaying in the left margin.
+It is also possible to temporarily disable breakpoints. To do so, right-click on a breakpoint badge and unselect Breakpoint > ✔Enabled. This toggles the breakpoint into a disabled state, resulting in a grey badge ( image:images/disabled-breakpoint-badge.png[] ) displaying in the left margin.
 
 If the debugger encounters a breakpoint upon executing, it stops on the breakpoint, enabling you to examine variables in the debugging windows, and step through any code following the breakpoint.
 
@@ -176,7 +176,7 @@
 
 image::images/sessions-win2.png[]
 
-The current session (i.e., the session that you can control using the debugger toolbar) is indicated by the more prominent icon ( image::images/current-session-icon.png[] ). To switch sessions, you can double-click on the session you want to make current, or right-click a non-current session and choose Make Current.
+The current session (i.e., the session that you can control using the debugger toolbar) is indicated by the more prominent icon ( image:images/current-session-icon.png[] ). To switch sessions, you can double-click on the session you want to make current, or right-click a non-current session and choose Make Current.
 
 *Note: *It is not recommended to switch sessions if the session you are currently working in is suspended.
 
@@ -238,11 +238,20 @@
 1. Start the ide and open the file that contains the source code that you want to debug.
 2. Set a breakpoint at each line where you want the debugger to pause. To set a breakpoint, place the cursor at the beginning of a line and press Ctrl-F8/⌘-F8 or choose Debug > Toggle Line Breakpoint.
 3. In the Projects window, navigate to the current project node, click the right mouse button, and choose Debug from the popup menu. The IDE opens the Debugger windows and runs the project in the debugger until the breakpoint is reached. 
-NOTE: If the current project is set as Main, you can choose Debug  > Debug Main Project, or press Ctrl-F5, or click image::images/debug-main-project-button.png[].
-4. Switch to the Local Variables window. The window shows all the variables that have been initialized within the current function, their types, and values.
-5. To view the value of a variable outside the function, bring the cursor on an occurrence of the variable. The tooltip shows the variable value.
-6. To execute the program line by line including the lines within all the called functions, press F7 or choose Debug > Step Into and watch the changes to the variables' values in the Local Variables window.
-7. To check the logic of the program by watching the changes of expressions, define a new watch:
+NOTE: If the current project is set as Main, you can choose Debug  > Debug Main Project, or press Ctrl-F5, or click image:images/debug-main-project-button.png[].
+
+[start=4]
+. Switch to the Local Variables window. The window shows all the variables that have been initialized within the current function, their types, and values.
+
+[start=5]
+. To view the value of a variable outside the function, bring the cursor on an occurrence of the variable. The tooltip shows the variable value.
+
+[start=6]
+. To execute the program line by line including the lines within all the called functions, press F7 or choose Debug > Step Into and watch the changes to the variables' values in the Local Variables window.
+
+[start=7]
+. To check the logic of the program by watching the changes of expressions, define a new watch:
+
 1. To open the Watches window, choose Window > Debugging > Watches or press Ctrl-Shift-2. The Watches window opens.
 2. Anywhere inside the Watches window, click the right mouse button and choose New Watch from the popup menu. The New Watch window opens.
 3. Enter the watch expression and click OK.
@@ -251,12 +260,24 @@
 
 *Important:* You must enable watches in the <<options,Debugging tab of PHP Options>> in order to set watches.
 
-8. To cancel the line by line execution of the code within a function and spring to the next line after the function call, press Ctrl-F7/⌘-F7 or choose Debug > Step Out.
-9. To skip the line by line execution of the code in a function, get the value returned by the function, and spring to the next line after the function call, press F8 or choose Debug > Step Over.
-10. To pause the debugging session, choose Debug > Pause.
-11. To continue the debugging session, choose Debug > Continue or press image::images/continue-debugging-session.png[].
-12. To cancel the debugging session, press image::images/stop-debugging-session.png[].
-13. 
+
+[start=8]
+. To cancel the line by line execution of the code within a function and spring to the next line after the function call, press Ctrl-F7/⌘-F7 or choose Debug > Step Out.
+
+[start=9]
+. To skip the line by line execution of the code in a function, get the value returned by the function, and spring to the next line after the function call, press F8 or choose Debug > Step Over.
+
+[start=10]
+. To pause the debugging session, choose Debug > Pause.
+
+[start=11]
+. To continue the debugging session, choose Debug > Continue or press image:images/continue-debugging-session.png[].
+
+[start=12]
+. To cancel the debugging session, press image:images/stop-debugging-session.png[].
+
+[start=13]
+. 
 When the program reaches the end, the debugger windows close.
 
 
@@ -269,46 +290,121 @@
 * Sources location - the default  ``htdocs``  folder location
 * Run configuration - Local Web Site
 Find more details about setting up a PHP project in the document link:project-setup.html[+Setting Up a PHP Project+].
-2. To enable the use of hotkeys during the session, position the cursor on the project node and choose Set as Main Project from the popup menu.
-3. In the  ``index.php``  file, enter the following code:
+
+[start=2]
+. To enable the use of hotkeys during the session, position the cursor on the project node and choose Set as Main Project from the popup menu.
+
+[start=3]
+. In the  ``index.php``  file, enter the following code:
 
 [source,php]
 ----
+  <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+    <head>
+        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+        <title>NetBeans PHP debugging sample</title>
+    </head>
+<body>
+<?php
+    $m=5;
+    $n=10;
+    $sum_of_factorials = calculate_sum_of_factorials ($m, $n);
+    echo "The sum of factorials of the entered integers is " . $sum_of_factorials;
+    function calculate_sum_of_factorials ($argument1, $argument2) {
+        $factorial1 = calculate_factorial ($argument1);
+        $factorial2 = calculate_factorial ($argument2);
+        $result = calculate_sum ($factorial1, $factorial2);
+        return $result;
+    }
+    function calculate_factorial ($argument) {
+        $factorial_result = 1;
+        for ($i=1; $i<=$argument; $i++) {
+            $factorial_result = $factorial_result*$i;
+        }
+        return $factorial_result;
+    }
+    function calculate_sum ($argument1, $argument2) {
+        return $argument1 + $argument2;
+    }	
+?>
+</body>
+</html>
 
-  <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>NetBeans PHP debugging sample</title></head><body><?php$m=5;$n=10;$sum_of_factorials = calculate_sum_of_factorials ($m, $n);echo "The sum of factorials of the entered integers is " . $sum_of_factorials;function calculate_sum_of_factorials ($argument1, $argument2) {$factorial1 = calculate_factorial ($argument1);$factorial2 = calculate_factorial ($argument2);$result = calculate_sum ($factorial1, $factorial2);return $result;}function calculate_factorial ($argument) {$factorial_result = 1;for ($i=1; $i<=$argument; $i++) {$factorial_result = $factorial_result*$i;}return $factorial_result;}function calculate_sum ($argument1, $argument2) {return $argument1 + $argument2;}	?></body></html>
 ----
 The code contains three functions:
 * The  ``calculate_factorial ()``  function
 * The  ``calcualte_sum ()``  function
 * The  ``calculate_sum_of_factorials ()``  function that calls the  ``calculate_factorial``  function twice, then calls the  ``calcualte_sum ()``  function once, and returns the calculated sum of factorials.
-4. Set a breakpoint (Ctrl-F8/⌘-F8) at the beginning of the PHP block:
+
+[start=4]
+. Set a breakpoint (Ctrl-F8/⌘-F8) at the beginning of the PHP block:
 
 [source,php]
 ----
 
 <?php
 ----
-5. To start debugging, click image::images/debug-main-project-button.png[]. The debugger stops at the breakpoint.
-6. Press F7 three times. The debugger stops at the line where the function  ``calculate_sum_of_factorials ()``  is called. The Local Variables window shows the variables  ``$m``  and  ``$n``  with their values:
+
+[start=5]
+. To start debugging, click image:images/debug-main-project-button.png[]. The debugger stops at the breakpoint.
+
+[start=6]
+. Press F7 three times. The debugger stops at the line where the function  ``calculate_sum_of_factorials ()``  is called. The Local Variables window shows the variables  ``$m``  and  ``$n``  with their values:
+
 image::images/degugger-stopped-at-function-call.png[]
-7. To step into the function  ``calculate_sum_of_factorials()`` , press F7. The debugger starts to execute the code within the function  ``calculate_sum_of_factorials ()``  and stops at the call of the function  ``calculate_factorial()`` . 
+
+
+[start=7]
+. To step into the function  ``calculate_sum_of_factorials()`` , press F7. The debugger starts to execute the code within the function  ``calculate_sum_of_factorials ()``  and stops at the call of the function  ``calculate_factorial()`` . 
+
 image::images/call-of-embedded-function.png[] 
+
 The Local Variables window now shows the local variables  ``$argument1``  and  ``$argument2``  that are declared within the function  ``calculate_sum_of_factorials ()`` . 
+
 image::images/variables-inside-function-call-another-function.png[]
-8. Press F7. The debugger starts to execute the code with the function  ``calculate_factorial()`` . The Call Stack window shows the stack of calls to the functions in the reverse order with the last called function at the top of the list: 
+
+
+[start=8]
+. Press F7. The debugger starts to execute the code with the function  ``calculate_factorial()`` . The Call Stack window shows the stack of calls to the functions in the reverse order with the last called function at the top of the list: 
+
 image::images/call-stack.png[]
-9. Press F7 to step into the loop. View the values of the variables in the Variables window. 
+
+
+[start=9]
+. Press F7 to step into the loop. View the values of the variables in the Variables window. 
+
 image::images/local-variables-inside-loop.png[]
-10. When you make sure that the code works correctly, press Ctrl-F7/⌘-F7 to cancel the function execution. The program returns to the line next after the call of the function  ``calculate_factorial()`` . 
+
+
+[start=10]
+. When you make sure that the code works correctly, press Ctrl-F7/⌘-F7 to cancel the function execution. The program returns to the line next after the call of the function  ``calculate_factorial()`` . 
 NOTE: Alternatively, you can press F7 until the program completes execution of the function  ``calculate_factorial()`` . You will also return to the line next after its call. 
+
 image::images/call-of-embedded-function-second-time.png[]
-11. Because you have just checked the function  ``calculate_factorial()``  and know that it works correctly, you can skip its execution ("step over"). To step over, press F8. The program stops at the call of the function  ``calculate_sum()`` . 
+
+
+[start=11]
+. Because you have just checked the function  ``calculate_factorial()``  and know that it works correctly, you can skip its execution ("step over"). To step over, press F8. The program stops at the call of the function  ``calculate_sum()`` . 
+
 image::images/cal-of-embedded-function-calculate-sum.png[]
-12. To step into the function  ``calculate_sum()`` , press F7.
-13. To step over, press F8. In either case the debugger stops at the last line in the function  ``calculate_sum_of_factorials()`` .
+
+
+[start=12]
+. To step into the function  ``calculate_sum()`` , press F7.
+
+[start=13]
+. To step over, press F8. In either case the debugger stops at the last line in the function  ``calculate_sum_of_factorials()`` .
+
 image::images/return-result.png[]
-14. Press F7. The debugger moves to the line with the  ``echo``  statement.
-15. Press F7 till the debugger exits the program. The browser window opens and shows the result of program execution:
+
+
+[start=14]
+. Press F7. The debugger moves to the line with the  ``echo``  statement.
+
+[start=15]
+. Press F7 till the debugger exits the program. The browser window opens and shows the result of program execution:
+
 image::images/program-output.png[]
 
 
@@ -320,30 +416,37 @@
 
 1. Update the code as follows (replace a plus with a minus):
 
-[source,java]
+[source,php]
 ----
-
 function calculate_sum ($argument1, $argument2) {return $argument1 - argument2;}
 ----
 Suppose that this resulted from misspelling but actually you need to calculate sum.
-2. Choose Debug > New Watch or press Ctrl/⌘-shift-F7. The New Watch window opens.
-3. Enter the following expression and click OK.
 
-[source,java]
+[start=2]
+. Choose Debug > New Watch or press Ctrl/⌘-shift-F7. The New Watch window opens.
+
+[start=3]
+. Enter the following expression and click OK.
+
+[source,php]
 ----
 
 $factorial1+$factorial2
 ----
 The new expression appears in the Watches window.
-4. Run the debugging session. When the debugger stops at the line
 
-[source,java]
+[start=4]
+. Run the debugging session. When the debugger stops at the line
+
+[source,php]
 ----
 
 return $result;
 ----
 compare the value of the expression in the Watches window and the value of $result in the Local Variables window. They should be the same but they differ. 
+
 image::images/watches.png[]
+
 This example is very simple and is supposed to give some general notion of using watches.
 
 
@@ -353,32 +456,51 @@
 
 1. Add the following HTML code above the <?php ?> block:
 
-[source,xml]
+[source,html]
 ----
-
- <form action="index.php" method="POST">Enter the first integer, please:<input type="text" name="first_integer"/><br/>Enter the second integer, please:<input type="text" name="second_integer"/><br/><input type="submit" name="enter" value="Enter"/></form>
+ <form action="index.php" method="POST">
+    Enter the first integer, please:<input type="text" name="first_integer"/>
+    <br/>
+    Enter the second integer, please:<input type="text" name="second_integer"/>
+    <br/>
+    <input type="submit" name="enter" value="Enter"/>
+ </form>
 ----
 
 Find more information about link:wish-list-lesson2.html#htmlForm[+HTML input forms+].
 
-2. Replace the following lines at the top of the <?php ?> block:
 
-[source,java]
+[start=2]
+. Replace the following lines at the top of the <?php ?> block:
+
+[source,php]
 ----
-
-$m=5;$n=10;$sum_of_factorials = calculate_sum_of_factorials ($m, $n);echo "The sum of factorials of the entered integers is " . $sum_of_factorials;
+$m=5;
+$n=10;
+$sum_of_factorials = calculate_sum_of_factorials ($m, $n);
+echo "The sum of factorials of the entered integers is " . $sum_of_factorials;
 ----
 with the following code:
 
-[source,java]
+[source,php]
+----
+if (array_key_exists ("first_integer", $_POST) &amp;&amp; array_key_exists ("second_integer", $_POST)) {
+    $result = calculate_sum_of_factorials ($_POST["first_integer"], $_POST["second_integer"]);
+    echo "Sum of factorials is " . $result;
+}
 ----
 
-if (array_key_exists ("first_integer", $_POST) &amp;&amp; array_key_exists ("second_integer", $_POST)) {$result = calculate_sum_of_factorials ($_POST["first_integer"], $_POST["second_integer"]);echo "Sum of factorials is " . $result;}
-----
-3. Set a breakpoint at the beginning of the <?php ?> block and start the <<debuggingSession,debugging session>>.
-4. Press F7. The debugger steps into the program. The browser window opens but the input form is not displayed. This is correct behavior of the debugger because it has to pass through the entire source code of a web page before the page can be displayed. Practically, this means that the debugger passes through the code twice. First time the debugger processes the code to display the HTML input form. The second time the debugger executes PHP code step by step.
-5. Press F7 till the debugger reaches the end of the program and the input form opens.
-6. Fill in the form and click Enter. The debugging session continues as described in section <<sampleDebuggingSession,Sample Debugging Session>>.
+[start=3]
+. Set a breakpoint at the beginning of the <?php ?> block and start the <<debuggingSession,debugging session>>.
+
+[start=4]
+. Press F7. The debugger steps into the program. The browser window opens but the input form is not displayed. This is correct behavior of the debugger because it has to pass through the entire source code of a web page before the page can be displayed. Practically, this means that the debugger passes through the code twice. First time the debugger processes the code to display the HTML input form. The second time the debugger executes PHP code step by step.
+
+[start=5]
+. Press F7 till the debugger reaches the end of the program and the input form opens.
+
+[start=6]
+. Fill in the form and click Enter. The debugging session continues as described in section <<sampleDebuggingSession,Sample Debugging Session>>.
 
 
 == [[ Path Mapping, Debugger Proxy, and Starting a Debug Session on a Custom URL]] 
@@ -395,7 +517,9 @@
 
 * Ask Every Time, which has the IDE prompt you for the URL when you start a debugging session.
 * Do Not Open Web Browser, which requires you to open the browser and enter the URL manually (you need the GET/POST XDEBUG_SESSION_START variable).
-6. If you are using a proxy server for debugging, enter the server's host name and port in the Debugger Proxy section.
+
+[start=6]
+. If you are using a proxy server for debugging, enter the server's host name and port in the Debugger Proxy section.
 
 For more information, please see the link:http://blogs.oracle.com/netbeansphp/entry/path_mapping_in_php_debugger[+Path Mapping in PHP Debugger+] post in the Net Beans for PHP blog.
 
diff --git a/netbeans.apache.org/src/content/kb/docs/php/debugging_ja.asciidoc b/netbeans.apache.org/src/content/kb/docs/php/debugging_ja.asciidoc
index 32ade9c..5bd0250 100644
--- a/netbeans.apache.org/src/content/kb/docs/php/debugging_ja.asciidoc
+++ b/netbeans.apache.org/src/content/kb/docs/php/debugging_ja.asciidoc
@@ -29,10 +29,6 @@
 :description: NetBeans IDEでのPHPソース・コードのデバッグ - Apache NetBeans
 :keywords: Apache NetBeans, Tutorials, NetBeans IDEでのPHPソース・コードのデバッグ
 
-
-image::images/netbeans-stamp-80-74-73.png[title="このページの内容は、NetBeans IDE 7.2、7.3、7.4および8.0に適用されます"]
-
-
 *このチュートリアルに従うには、次のソフトウェアとリソースが必要です。*
 
 |===
@@ -72,7 +68,7 @@
 
 NetBeans IDEの「オプション」には、PHPをデバッグするための特定のデフォルト設定を変更するタブが含まれています。これらのオプションを開くには、「ツール」>「オプション」(Macの場合は「NetBeans」>「プリファレンス」)に移動し、「PHP」オプションを選択して、「デバッグ」タブを選択します。
 
-*注意: *「デバッグ」タブはNetBeans IDEバージョン7.1で導入されました。以前のバージョンのNetBeansでは、デバッグ・オプションは「一般」-「PHP」タブにあります。バージョン7.1のすべてのオプションが以前のバージョンで使用できるわけではありません。
+NOTE: 「デバッグ」タブはNetBeans IDEバージョン7.1で導入されました。以前のバージョンのNetBeansでは、デバッグ・オプションは「一般」-「PHP」タブにあります。バージョン7.1のすべてのオプションが以前のバージョンで使用できるわけではありません。
 
 image::images/php-debugging-options.png[]
 
@@ -87,7 +83,7 @@
 * *リクエストされたURLを表示。*デバッグ中に新しい「出力」ウィンドウを開きます。この「出力」ウィンドウは「PHPでリクエストされたURL」という名前で、現在処理されているURLを示します。URLはクリック可能です。「出力」ウィンドウのURLをクリックすると、URLがブラウザ・ウィンドウで開きます。
 * *PHPデバッガ・コンソール。*デバッグされたスクリプトの出力を表示する新しい「出力」ウィンドウを開きます。
 
-*注意:*  ``php.ini`` ファイルで ``output_buffering=Off`` と設定してください。そうしないと、「出力」ウィンドウにスクリプト出力が表示される際に遅延が生じます。
+NOTE:   ``php.ini`` ファイルで ``output_buffering=Off`` と設定してください。そうしないと、「出力」ウィンドウにスクリプト出力が表示される際に遅延が生じます。
 
 このチュートリアルでは、ウォッチをオプションで有効にする場合を除いて、これらの設定を変更する必要はありません。
 
@@ -111,19 +107,19 @@
 ツールバーでは次のアクションを実行できます。
 
 |===
-|*セッションの終了*(image::images/finish-session-button.png[]) |デバッグ・セッションを終了 
+|*セッションの終了*(image:images/finish-session-button.png[]) |デバッグ・セッションを終了 
 
-|*一時休止*(image::images/pause-button.png[]) |デバッグ・セッションを一時停止 
+|*一時休止*(image:images/pause-button.png[]) |デバッグ・セッションを一時停止 
 
-|*再開*(image::images/resume-button.png[]) |デバッグ・セッションを再開 
+|*再開*(image:images/resume-button.png[]) |デバッグ・セッションを再開 
 
-|*ステップ・オーバー*(image::images/step-over-button.png[]) |実行文をステップ・オーバー 
+|*ステップ・オーバー*(image:images/step-over-button.png[]) |実行文をステップ・オーバー 
 
-|*ステップ・イン*(image::images/step-into-button.png[]) |関数コールにステップ・イン 
+|*ステップ・イン*(image:images/step-into-button.png[]) |関数コールにステップ・イン 
 
-|*ステップ・アウト*(image::images/step-out-button.png[]) |現在の関数コールからステップ・アウト 
+|*ステップ・アウト*(image:images/step-out-button.png[]) |現在の関数コールからステップ・アウト 
 
-|*カーソルまで実行*(image::images/run-to-cursor-button.png[]) |カーソル位置まで実行 
+|*カーソルまで実行*(image:images/run-to-cursor-button.png[]) |カーソル位置まで実行 
 |===
 
  
@@ -139,9 +135,9 @@
 
 image::images/set-breakpoint.png[title="エディタ内でのブレークポイントの設定"]
 
-ブレークポイントを除去するには、ブレークポイント・バッジ(image::images/breakpoint-badge.png[])をクリックします。
+ブレークポイントを除去するには、ブレークポイント・バッジ(image:images/breakpoint-badge.png[])をクリックします。
 
-ブレークポイントは一時的に無効にすることもできます。これを行うには、ブレークポイント・バッジを右クリックし、「ブレークポイント」>「✓有効」を選択解除します。これにより、ブレークポイントが無効な状態に切り替わり、左マージンにグレーのバッジ(image::images/disabled-breakpoint-badge.png[])が表示されます。
+ブレークポイントは一時的に無効にすることもできます。これを行うには、ブレークポイント・バッジを右クリックし、「ブレークポイント」>「✓有効」を選択解除します。これにより、ブレークポイントが無効な状態に切り替わり、左マージンにグレーのバッジ(image:images/disabled-breakpoint-badge.png[])が表示されます。
 
 デバッグの実行中にブレークポイントに到達すると、デバッガはそのブレークポイントで停止するので、デバッグ・ウィンドウで変数を確認し、ブレークポイントに続くコードをステップ実行できます。
 
@@ -182,9 +178,9 @@
 
 image::images/sessions-win2.png[]
 
-現在のセッション、つまりデバッガ・ツールバーを使用して制御できるセッションは、他のアイコンよりも目立つアイコン(image::images/current-session-icon.png[])で示されます。複数のセッションを切り替えるには、現在のセッションにするセッションをダブルクリックするか、現在でないセッションを右クリックして「現在に設定」を選択します。
+現在のセッション、つまりデバッガ・ツールバーを使用して制御できるセッションは、他のアイコンよりも目立つアイコン(image:images/current-session-icon.png[])で示されます。複数のセッションを切り替えるには、現在のセッションにするセッションをダブルクリックするか、現在でないセッションを右クリックして「現在に設定」を選択します。
 
-*注意: *現在作業中のセッションが一時停止されている場合、セッションを切り替えることはお薦めできません。
+NOTE: 現在作業中のセッションが一時停止されている場合、セッションを切り替えることはお薦めできません。
 
 また、右クリックして表示されるポップアップ・ウィンドウを使用して、セッションを終了したり(右クリックして「終了」を選択)、現在のスレッドのデバッグとセッション内のすべてのスレッドのデバッグを切り替えたり(右クリックして「スコープ」>「すべてのスレッドをデバッグ」または「現在のスレッドをデバッグ」を選択)できます。
 
@@ -244,25 +240,45 @@
 1. IDEを起動し、デバッグするソース・コードが含まれるファイルを開きます。
 2. デバッガを一時休止する必要がある各行にブレークポイントを設定します。ブレークポイントを設定するには、行の先頭にカーソルを置き、[Ctrl]-[F8]/[⌘]-[F8]を押すか、または「デバッグ」>「行ブレークポイントを切替え」を選択します。
 3. 「プロジェクト」ウィンドウで現在のプロジェクト・ノードに移動し、マウスの右ボタンをクリックして、ポップアップ・メニューから「デバッグ」を選択します。IDEでデバッガ・ウィンドウが開き、ブレークポイントに達するまで、デバッガでプロジェクトが実行されます。
-*注意:* 現在のプロジェクトがメインに設定されている場合は、「デバッグ」>「メイン・プロジェクトをデバッグ」を選択するか、[Ctrl]-[F5]を押すか、またはimage::images/debug-main-project-button.png[]をクリックできます。
-4. 「ローカル変数」ウィンドウに切り替えます。このウィンドウには、現在の関数内で初期化されたすべての変数、その型、および値が表示されます。
-5. 関数外の変数の値を表示するには、その変数の出現箇所にカーソルを置きます。ツールチップに変数の値が表示されます。
-6. コールしているすべての関数内の行を含めてプログラムを1行ずつ実行するには、[F7]を押すか、「デバッグ」>「ステップ・イン」を選択して、「ローカル変数」ウィンドウで変数の値の変化をウォッチします。
-7. 式の変化をウォッチしてプログラムのロジックを確認するには、次の手順で新しいウォッチを定義します。
-1. 「ウォッチ」ウィンドウを開くには、「ウィンドウ」>「デバッグ」>「ウォッチ」を選択するか、または[Ctrl]-[Shift]-[2]を押します。「ウォッチ」ウィンドウが開きます。
-2. 「ウォッチ」ウィンドウ内の任意の場所でマウスの右ボタンをクリックし、ポップアップ・メニューから「新規ウォッチ」を選択します。「新規ウォッチ」ウィンドウが開きます。
-3. ウォッチ式を入力し、「OK」をクリックします。
+NOTE:  現在のプロジェクトがメインに設定されている場合は、「デバッグ」>「メイン・プロジェクトをデバッグ」を選択するか、[Ctrl]-[F5]を押すか、またはimage:images/debug-main-project-button.png[]をクリックできます。
+
+[start=4]
+. 「ローカル変数」ウィンドウに切り替えます。このウィンドウには、現在の関数内で初期化されたすべての変数、その型、および値が表示されます。
+
+[start=5]
+. 関数外の変数の値を表示するには、その変数の出現箇所にカーソルを置きます。ツールチップに変数の値が表示されます。
+
+[start=6]
+. コールしているすべての関数内の行を含めてプログラムを1行ずつ実行するには、[F7]を押すか、「デバッグ」>「ステップ・イン」を選択して、「ローカル変数」ウィンドウで変数の値の変化をウォッチします。
+
+[start=7]
+. 式の変化をウォッチしてプログラムのロジックを確認するには、次の手順で新しいウォッチを定義します。
+.. 「ウォッチ」ウィンドウを開くには、「ウィンドウ」>「デバッグ」>「ウォッチ」を選択するか、または[Ctrl]-[Shift]-[2]を押します。「ウォッチ」ウィンドウが開きます。
+.. 「ウォッチ」ウィンドウ内の任意の場所でマウスの右ボタンをクリックし、ポップアップ・メニューから「新規ウォッチ」を選択します。「新規ウォッチ」ウィンドウが開きます。
+.. ウォッチ式を入力し、「OK」をクリックします。
 
 これで、デバッグ中に追加の確認を行うことができます。
 
 *重要:* ウォッチを設定するには、<<options,PHPオプションの「デバッグ」タブ>>でウォッチを有効にする必要があります。
 
-8. 関数内のコードの1行ずつの実行を取り消して、関数コールの次の行まで移動するには、[Ctrl]-[F7]/[⌘]-[F7]を押すか、または「デバッグ」>「ステップ・アウト」を選択します。
-9. 関数内のコードを1行ずつ実行しないで、関数から返される値を取得し、関数コールの次の行まで移動するには、[F8]を押すか、または「デバッグ」>「ステップ・オーバー」を選択します。
-10. デバッグ・セッションを一時休止するには、「デバッグ」>「一時休止」を選択します。
-11. デバッグ・セッションを続行するには、「デバッグ」>「続行」を選択するか、またはimage::images/continue-debugging-session.png[]を押します。
-12. デバッグ・セッションを取り消すには、image::images/stop-debugging-session.png[]を押します。
-13. 
+
+[start=8]
+. 関数内のコードの1行ずつの実行を取り消して、関数コールの次の行まで移動するには、[Ctrl]-[F7]/[⌘]-[F7]を押すか、または「デバッグ」>「ステップ・アウト」を選択します。
+
+[start=9]
+. 関数内のコードを1行ずつ実行しないで、関数から返される値を取得し、関数コールの次の行まで移動するには、[F8]を押すか、または「デバッグ」>「ステップ・オーバー」を選択します。
+
+[start=10]
+. デバッグ・セッションを一時休止するには、「デバッグ」>「一時休止」を選択します。
+
+[start=11]
+. デバッグ・セッションを続行するには、「デバッグ」>「続行」を選択するか、またはimage:images/continue-debugging-session.png[]を押します。
+
+[start=12]
+. デバッグ・セッションを取り消すには、image:images/stop-debugging-session.png[]を押します。
+
+[start=13]
+. 
 プログラムの最後に到達すると、デバッガ・ウィンドウが閉じます。
 
 
@@ -275,46 +291,122 @@
 * ソースの場所 - デフォルトの ``htdocs`` フォルダ
 * 実行構成 - ローカルWebサイト
 PHPプロジェクトの設定については、ドキュメントのlink:project-setup.html[+PHPプロジェクトの設定+]を参照してください。
-2. セッション中のホット・キーの使用を有効にするには、カーソルをプロジェクト・ノードに置き、ポップアップ・メニューから「メイン・プロジェクトとして設定」を選択します。
-3.  ``index.php`` ファイルに次のコードを入力します。
+
+[start=2]
+. セッション中のホット・キーの使用を有効にするには、カーソルをプロジェクト・ノードに置き、ポップアップ・メニューから「メイン・プロジェクトとして設定」を選択します。
+
+[start=3]
+.  ``index.php`` ファイルに次のコードを入力します。
 
 [source,php]
 ----
+  <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+    <head>
+        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+        <title>NetBeans PHP debugging sample</title>
+    </head>
+<body>
+<?php
+    $m=5;
+    $n=10;
+    $sum_of_factorials = calculate_sum_of_factorials ($m, $n);
+    echo "The sum of factorials of the entered integers is " . $sum_of_factorials;
+    function calculate_sum_of_factorials ($argument1, $argument2) {
+        $factorial1 = calculate_factorial ($argument1);
+        $factorial2 = calculate_factorial ($argument2);
+        $result = calculate_sum ($factorial1, $factorial2);
+        return $result;
+    }
+    function calculate_factorial ($argument) {
+        $factorial_result = 1;
+        for ($i=1; $i<=$argument; $i++) {
+            $factorial_result = $factorial_result*$i;
+        }
+        return $factorial_result;
+    }
+    function calculate_sum ($argument1, $argument2) {
+        return $argument1 + $argument2;
+    }	
+?>
+</body>
+</html>
 
-  <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>NetBeans PHP debugging sample</title></head><body><?php$m=5;$n=10;$sum_of_factorials = calculate_sum_of_factorials ($m, $n);echo "The sum of factorials of the entered integers is " . $sum_of_factorials;function calculate_sum_of_factorials ($argument1, $argument2) {$factorial1 = calculate_factorial ($argument1);$factorial2 = calculate_factorial ($argument2);$result = calculate_sum ($factorial1, $factorial2);return $result;}function calculate_factorial ($argument) {$factorial_result = 1;for ($i=1; $i<=$argument; $i++) {$factorial_result = $factorial_result*$i;}return $factorial_result;}function calculate_sum ($argument1, $argument2) {return $argument1 + $argument2;}	?></body></html>
 ----
+
 このコードには次の3つの関数があります。
 *  ``calculate_factorial ()`` 関数
 *  ``calcualte_sum ()`` 関数
 *  ``calculate_sum_of_factorials ()`` 関数(この関数は、 ``calculate_factorial`` 関数を2回コールしてから ``calcualte_sum ()`` 関数を1回コールし、階乗の和を返します。)
-4. PHPブロックの先頭にブレークポイントを設定します([Ctrl]-[F8]/[⌘]-[F8])。
+
+[start=4]
+. PHPブロックの先頭にブレークポイントを設定します([Ctrl]-[F8]/[⌘]-[F8])。
 
 [source,php]
 ----
 
 <?php
 ----
-5. デバッグを開始するには、image::images/debug-main-project-button.png[]をクリックします。デバッガがブレークポイントで停止します。
-6. [F7]を3回押します。関数 ``calculate_sum_of_factorials ()`` をコールしている行でデバッガが停止します。「ローカル変数」ウィンドウに、変数 ``$m`` と ``$n`` 、およびそれらの値が表示されます。
+
+[start=5]
+. デバッグを開始するには、image:images/debug-main-project-button.png[]をクリックします。デバッガがブレークポイントで停止します。
+
+[start=6]
+. [F7]を3回押します。関数 ``calculate_sum_of_factorials ()`` をコールしている行でデバッガが停止します。「ローカル変数」ウィンドウに、変数 ``$m`` と ``$n`` 、およびそれらの値が表示されます。
+
 image::images/degugger-stopped-at-function-call.png[]
-7. 関数 ``calculate_sum_of_factorials()`` にステップ・インするには、[F7]を押します。デバッガが関数 ``calculate_sum_of_factorials ()`` 内のコードの実行を開始し、関数 ``calculate_factorial()`` のコールで停止します。
+
+
+[start=7]
+. 関数 ``calculate_sum_of_factorials()`` にステップ・インするには、[F7]を押します。デバッガが関数 ``calculate_sum_of_factorials ()`` 内のコードの実行を開始し、関数 ``calculate_factorial()`` のコールで停止します。
+
 image::images/call-of-embedded-function.png[]
+
 「ローカル変数」ウィンドウに、関数 ``calculate_sum_of_factorials ()`` 内で宣言されているローカル変数 ``$argument1`` と ``$argument2`` が表示されます。
+
 image::images/variables-inside-function-call-another-function.png[]
-8. [F7]を押します。デバッガが、関数 ``calculate_factorial()`` からコードの実行を開始します。「コール・スタック」ウィンドウに、関数へのコールのスタックが逆の順序で表示され、最後にコールされた関数がリストの先頭に表示されます。
+
+
+[start=8]
+. [F7]を押します。デバッガが、関数 ``calculate_factorial()`` からコードの実行を開始します。「コール・スタック」ウィンドウに、関数へのコールのスタックが逆の順序で表示され、最後にコールされた関数がリストの先頭に表示されます。
+
 image::images/call-stack.png[]
-9. [F7]を押してループにステップ・インします。「変数」ウィンドウに変数の値が表示されます。
+
+
+[start=9]
+. [F7]を押してループにステップ・インします。「変数」ウィンドウに変数の値が表示されます。
+
 image::images/local-variables-inside-loop.png[]
-10. コードが正常に機能することを確認したら、[Ctrl]-[F7]/[⌘]-[F7]を押して関数の実行を取り消します。プログラムは、関数 ``calculate_factorial()`` のコールの次の行に戻ります。
-*注意:* プログラムで関数 ``calculate_factorial()`` の実行が完了するまでは、[F7]を押すこともできます。この場合も、コールの次の行に戻ります。
+
+
+[start=10]
+. コードが正常に機能することを確認したら、[Ctrl]-[F7]/[⌘]-[F7]を押して関数の実行を取り消します。プログラムは、関数 ``calculate_factorial()`` のコールの次の行に戻ります。
+NOTE:  プログラムで関数 ``calculate_factorial()`` の実行が完了するまでは、[F7]を押すこともできます。この場合も、コールの次の行に戻ります。
+
 image::images/call-of-embedded-function-second-time.png[]
-11. 関数 ``calculate_factorial()`` が正常に機能することを確認できたため、その実行を省略できます(ステップ・オーバー)。ステップ・オーバーするには、[F8]を押します。プログラムは、関数 ``calculate_sum()`` のコールで停止します。
+
+
+[start=11]
+. 関数 ``calculate_factorial()`` が正常に機能することを確認できたため、その実行を省略できます(ステップ・オーバー)。ステップ・オーバーするには、[F8]を押します。プログラムは、関数 ``calculate_sum()`` のコールで停止します。
+
 image::images/cal-of-embedded-function-calculate-sum.png[]
-12. 関数 ``calculate_sum()`` にステップ・インするには、[F7]を押します。
-13. ステップ・オーバーするには、[F8]を押します。いずれの場合も、デバッガは関数 ``calculate_sum_of_factorials()`` の最後の行で停止します。
+
+
+[start=12]
+. 関数 ``calculate_sum()`` にステップ・インするには、[F7]を押します。
+
+[start=13]
+. ステップ・オーバーするには、[F8]を押します。いずれの場合も、デバッガは関数 ``calculate_sum_of_factorials()`` の最後の行で停止します。
+
 image::images/return-result.png[]
-14. [F7]を押します。デバッガは ``echo`` 文の行に移動します。
-15. デバッガがプログラムを終了するまで[F7]を押します。ブラウザ・ウィンドウが開き、プログラムの実行結果が表示されます。
+
+
+[start=14]
+. [F7]を押します。デバッガは ``echo`` 文の行に移動します。
+
+[start=15]
+. デバッガがプログラムを終了するまで[F7]を押します。ブラウザ・ウィンドウが開き、プログラムの実行結果が表示されます。
+
 image::images/program-output.png[]
 
 
@@ -326,30 +418,38 @@
 
 1. コードを次のように更新します(プラスをマイナスに置き換えます)。
 
-[source,java]
+[]
 ----
 
 function calculate_sum ($argument1, $argument2) {return $argument1 - argument2;}
 ----
 実際には和を求める必要がありますが、間違えてこのように入力したとします。
-2. 「デバッグ」>「新規ウォッチ」を選択するか、または[Ctrl]/[⌘]-[Shift]-[F7]を押します。「新規ウォッチ」ウィンドウが開きます。
-3. 次の式を入力し、「OK」をクリックします。
 
-[source,java]
+[start=2]
+. 「デバッグ」>「新規ウォッチ」を選択するか、または[Ctrl]/[⌘]-[Shift]-[F7]を押します。「新規ウォッチ」ウィンドウが開きます。
+
+[start=3]
+. 次の式を入力し、「OK」をクリックします。
+
+[]
 ----
 
 $factorial1+$factorial2
 ----
 新しい式が「ウォッチ」ウィンドウに表示されます。
-4. デバッグ・セッションを実行します。デバッガが次の行で停止します。
 
-[source,java]
+[start=4]
+. デバッグ・セッションを実行します。デバッガが次の行で停止します。
+
+[]
 ----
 
 return $result;
 ----
 「ウォッチ」ウィンドウ内の式の値と、「ローカル変数」ウィンドウ内の$resultの値を比較します。これらは同一である必要がありますが、現時点では異なります。
+
 image::images/watches.png[]
+
 この例は非常に単純で、ウォッチ使用の概念を示しています。
 
 
@@ -359,32 +459,47 @@
 
 1. <?php?> ブロックの上に次のHTMLコードを追加します。
 
-[source,xml]
+[source,html]
 ----
-
- <form action="index.php" method="POST">Enter the first integer, please:<input type="text" name="first_integer"/><br/>Enter the second integer, please:<input type="text" name="second_integer"/><br/><input type="submit" name="enter" value="Enter"/></form>
+ <form action="index.php" method="POST">
+    Enter the first integer, please:<input type="text" name="first_integer"/>
+    <br/>
+    Enter the second integer, please:<input type="text" name="second_integer"/>
+    <br/>
+    <input type="submit" name="enter" value="Enter"/>
+ </form>
 ----
 
 詳細は、link:wish-list-lesson2.html#htmlForm[+HTML入力フォーム+]を参照してください。
 
-2. <?php?>ブロックの先頭で、次の行を置き換えます。
 
-[source,java]
+[start=2]
+. <?php?>ブロックの先頭で、次の行を置き換えます。
+
+[]
 ----
 
 $m=5;$n=10;$sum_of_factorials = calculate_sum_of_factorials ($m, $n);echo "The sum of factorials of the entered integers is " . $sum_of_factorials;
 ----
 次のコードに置き換えます。
 
-[source,java]
+[]
 ----
 
 if (array_key_exists ("first_integer", $_POST) &amp;&amp; array_key_exists ("second_integer", $_POST)) {$result = calculate_sum_of_factorials ($_POST["first_integer"], $_POST["second_integer"]);echo "Sum of factorials is " . $result;}
 ----
-3. ブレークポイントを<?php?>ブロックの先頭に設定し、<<debuggingSession,デバッグ・セッション>>を開始します。
-4. [F7]を押します。デバッガがプログラムにステップ・インします。ブラウザ・ウィンドウが開きますが、入力フォームは表示されません。Webページが表示される前に、デバッガがページのソース・コード全体を通過する必要があるため、これはデバッガの正常な動作です。実際には、デバッガがコードを2回通過することを意味します。1回目は、HTML入力フォームを表示するコードがデバッガで処理されます。2回目は、デバッガでPHPコードがステップ実行されます。
-5. デバッガがプログラムの終わりに達し、入力フォームが開くまで[F7]を押します。
-6. フォームに入力して[Enter]を押します。デバッグ・セッションは、<<sampleDebuggingSession,デバッグ・セッションの例>>の項に示すように処理を続行します。
+
+[start=3]
+. ブレークポイントを<?php?>ブロックの先頭に設定し、<<debuggingSession,デバッグ・セッション>>を開始します。
+
+[start=4]
+. [F7]を押します。デバッガがプログラムにステップ・インします。ブラウザ・ウィンドウが開きますが、入力フォームは表示されません。Webページが表示される前に、デバッガがページのソース・コード全体を通過する必要があるため、これはデバッガの正常な動作です。実際には、デバッガがコードを2回通過することを意味します。1回目は、HTML入力フォームを表示するコードがデバッガで処理されます。2回目は、デバッガでPHPコードがステップ実行されます。
+
+[start=5]
+. デバッガがプログラムの終わりに達し、入力フォームが開くまで[F7]を押します。
+
+[start=6]
+. フォームに入力して[Enter]を押します。デバッグ・セッションは、<<sampleDebuggingSession,デバッグ・セッションの例>>の項に示すように処理を続行します。
 
 
 == [[パス・マッピング、デバッガ・プロキシ、およびカスタムURLでのデバッグ・セッションの開始]] 
@@ -401,7 +516,9 @@
 
 * 毎回聞く: デバッグ・セッションを開始したとき、IDEによってURLの入力が求められます。
 * Webブラウザを開かない: ブラウザを開いてURLを手動で入力するようにユーザーに求めます(GET/POST XDEBUG_SESSION_START変数が必要です)。
-6. デバッグ用のプロキシ・サーバーを使用する場合、「デバッガ・プロキシ」セクションにサーバーのホスト名とポートを入力します。
+
+[start=6]
+. デバッグ用のプロキシ・サーバーを使用する場合、「デバッガ・プロキシ」セクションにサーバーのホスト名とポートを入力します。
 
 詳細は、PHP向けのNetBeansブログに投稿されたlink:http://blogs.oracle.com/netbeansphp/entry/path_mapping_in_php_debugger[+PHPデバッガでのパス・マッピング+]を参照してください。
 
diff --git a/netbeans.apache.org/src/content/kb/docs/php/debugging_pt_BR.asciidoc b/netbeans.apache.org/src/content/kb/docs/php/debugging_pt_BR.asciidoc
index 0443f33..4e2f671 100644
--- a/netbeans.apache.org/src/content/kb/docs/php/debugging_pt_BR.asciidoc
+++ b/netbeans.apache.org/src/content/kb/docs/php/debugging_pt_BR.asciidoc
@@ -30,9 +30,6 @@
 :keywords: Apache NetBeans, Tutorials, Depurando o Código-Fonte do PHP no NetBeans IDE
 
 
-image::images/netbeans-stamp-80-74-73.png[title="O conteúdo desta página se aplica ao NetBeans IDE 7.2, 7.3, 7.4 e 8.0"]
-
-
 *Para seguir este tutorial, são necessários os recursos e o software a seguir.*
 
 |===
@@ -72,7 +69,7 @@
 
 As Opções do NetBeans IDE incluem uma guia para alterar determinadas definições default para PHP de depuração. Para abrir essas opções, acesse Ferramentas > Opções (NetBeans > Preferências no Mac), selecione as opções PHP e selecione a guia Depuração.
 
-*Observação: *a guia Depuração foi introduzida no NetBeans IDE versão 7.1. Versões anteriores do NetBeans têm as opções de depuração na guia Gerais PHP. Nem todas as opções da versão 7.1 estão disponíveis em versões anteriores.
+NOTE: a guia Depuração foi introduzida no NetBeans IDE versão 7.1. Versões anteriores do NetBeans têm as opções de depuração na guia Gerais PHP. Nem todas as opções da versão 7.1 estão disponíveis em versões anteriores.
 
 image::images/php-debugging-options.png[]
 
@@ -87,7 +84,7 @@
 * *Mostrar URLs Solicitados.* Abre uma nova janela de Saída durante a depuração. A janela de Saída é nomeada como URLs Solicitados por PHP e mostra os URLs processados atualmente. Os URLs são clicáveis. Clique em um URL na janela de Saída para abrir o URL em uma janela do browser.
 * *Console do Depurador PHP* Abre uma nova janela de Saída que mostra a saída de scrpts depurados.
 
-*Observação:* defina  ``output_buffering = Off``  em seu arquivo  ``php.ini`` . Caso contrário, haverá um atraso em ver a saída do script na janela de Saída.
+NOTE:  defina  ``output_buffering = Off``  em seu arquivo  ``php.ini`` . Caso contrário, haverá um atraso em ver a saída do script na janela de Saída.
 
 Para o propósito deste tutorial, não é preciso alterar nenhuma destas definições, exceto, como opção, para ativar watches.
 
@@ -111,19 +108,19 @@
 A barra de ferramentas oferece as seguintes ações:
 
 |===
-|*Finalizar Sessão* ( image::images/finish-session-button.png[] ) |Finalizar sessão de depuração 
+|*Finalizar Sessão* ( image:images/finish-session-button.png[] ) |Finalizar sessão de depuração 
 
-|*Pausar* ( image::images/pause-button.png[] ) |Suspender sessão de depuração 
+|*Pausar* ( image:images/pause-button.png[] ) |Suspender sessão de depuração 
 
-|*Retomar* ( image::images/resume-button.png[] ) |Retomar sessão de depuração 
+|*Retomar* ( image:images/resume-button.png[] ) |Retomar sessão de depuração 
 
-|*Fazer Step Over* ( image::images/step-over-button.png[] ) |Fazer step over de uma instrução de execução 
+|*Fazer Step Over* ( image:images/step-over-button.png[] ) |Fazer step over de uma instrução de execução 
 
-|*Fazer Step Into* ( image::images/step-into-button.png[] ) |Fazer step into em uma chamada de função 
+|*Fazer Step Into* ( image:images/step-into-button.png[] ) |Fazer step into em uma chamada de função 
 
-|*Fazer Step Out* ( image::images/step-out-button.png[] ) |Fazer step out da chamada de função atual 
+|*Fazer Step Out* ( image:images/step-out-button.png[] ) |Fazer step out da chamada de função atual 
 
-|*Executar até o Cursor* ( image::images/run-to-cursor-button.png[] ) |Executar até a posição do cursor 
+|*Executar até o Cursor* ( image:images/run-to-cursor-button.png[] ) |Executar até a posição do cursor 
 |===
 
  
@@ -139,9 +136,9 @@
 
 image::images/set-breakpoint.png[title="Pontos de interrupção podem ser definidos no editor"]
 
-Você pode remover o ponto de interrupção clicando no emblema do ponto de interrupção ( image::images/breakpoint-badge.png[] ).
+Você pode remover o ponto de interrupção clicando no emblema do ponto de interrupção ( image:images/breakpoint-badge.png[] ).
 
-Também é possível desativar temporariamente os pontos de interrupção. Para isso, clique com o botão direito do mouse em um emblema de ponto de interrupção e desfaça a seleção de Ponto de interrupção > ✔Ativado. Isso alterna o ponto de interrupção para um estado desativado, resultando em um emblema cinza ( image::images/disabled-breakpoint-badge.png[] ) sendo exibido na margem esquerda.
+Também é possível desativar temporariamente os pontos de interrupção. Para isso, clique com o botão direito do mouse em um emblema de ponto de interrupção e desfaça a seleção de Ponto de interrupção > ✔Ativado. Isso alterna o ponto de interrupção para um estado desativado, resultando em um emblema cinza ( image:images/disabled-breakpoint-badge.png[] ) sendo exibido na margem esquerda.
 
 Se o depurador encontrar um ponto de interrupção durante a execução, ele parará no ponto de interrupção, permitindo que você examine as variáveis nas janelas de depuração e entre em qualquer código depois do ponto de interrupção.
 
@@ -182,9 +179,9 @@
 
 image::images/sessions-win2.png[]
 
-A sessão atual (ou seja, a sessão que você pode controlar utilizando a barra de ferramentas do depurador) é indicada pelo ícone mais proeminente (image::images/current-session-icon.png[] ). Para alternar sessões, você pode clicar duas vezes na sessão que deseja tornar atual, ou clicar com o botão direito do mouse em uma sessão não atual e selecionar Tornar Atual.
+A sessão atual (ou seja, a sessão que você pode controlar utilizando a barra de ferramentas do depurador) é indicada pelo ícone mais proeminente (image:images/current-session-icon.png[] ). Para alternar sessões, você pode clicar duas vezes na sessão que deseja tornar atual, ou clicar com o botão direito do mouse em uma sessão não atual e selecionar Tornar Atual.
 
-*Observação: *Não recomendamos alternar entre sessões se a sessão em que está trabalhando no momento estiver suspensa.
+NOTE: Não recomendamos alternar entre sessões se a sessão em que está trabalhando no momento estiver suspensa.
 
 Você também pode usar a janela pop-up do lado direito do mouse para encerrar uma sessão (clicar com o botão direito do mouse e selecionar Finalizar), ou alternar entre a depuração do thread atual ou todos os threads da sessão (clicar com o botão direito do mouse e selecionar Escopo > Depurar Todos os Threads ou Depurar Thread Atual).
 
@@ -244,26 +241,45 @@
 1. Inicie o ide e abra o arquivo que contém o código-fonte que você deseja depurar.
 2. Defina um ponto de interrupção em cada linha onde deseja que o depurador pause. Para definir um ponto de interrupção, coloque o cursor no início de uma linha e pressione Ctrl-F8⌘-F8 ou selecione Depurar > Alternar Ponto de Interrupção de Linha.
 3. Na janela Projetos, navegue para o nó do projeto atual, clique com o botão direito do mouse e selecione Depurar do menu pop-up. O IDE abrirá as janelas do Depurador e executará o projeto no depurador, até que o ponto de interrupção seja atingido. 
-*Observação:* se o projeto atual for definido como Principal, você poderá selecionar Depurar  > Depurar Projeto Principal ou pressione Ctrl-F5 ou clique em image::images/debug-main-project-button.png[].
-4. Alterne para a janela Variáveis Locais. A janela mostra todas as variáveis que foram inicializadas na função atual, seus tipos e valores.
-5. Para exibir o valor de uma variável fora da função, coloque o cursor em uma ocorrência da variável. A dica de ferramenta mostra o valor da variável.
-6. Para executar o programa linha a linha, incluindo as linhas de todas as funções chamadas, pressione F7 ou selecione Depurar > Fazer Step Into e observe as alterações nos valores das variáveis na janela Variáveis Locais.
-7. Para verificar a lógica do programa observando as alterações das expressões, defina um novo watch:
-1. Para abrir a janela Watches, selecione Janela > Depuração > Watches ou pressione Ctrl-Shift-2. A janela Watches será aberta.
-2. Em qualquer lugar na janela Watches, clique com o botão direito do mouse e selecione Novo Watch do menu pop-up. A Janela Novo Watch será Aberta.
-3. Digite a expressão do watch e clique em OK.
+NOTE:  se o projeto atual for definido como Principal, você poderá selecionar Depurar  > Depurar Projeto Principal ou pressione Ctrl-F5 ou clique em image:images/debug-main-project-button.png[].
+
+[start=4]
+. Alterne para a janela Variáveis Locais. A janela mostra todas as variáveis que foram inicializadas na função atual, seus tipos e valores.
+
+[start=5]
+. Para exibir o valor de uma variável fora da função, coloque o cursor em uma ocorrência da variável. A dica de ferramenta mostra o valor da variável.
+
+[start=6]
+. Para executar o programa linha a linha, incluindo as linhas de todas as funções chamadas, pressione F7 ou selecione Depurar > Fazer Step Into e observe as alterações nos valores das variáveis na janela Variáveis Locais.
+
+[start=7]
+. Para verificar a lógica do programa observando as alterações das expressões, defina um novo watch:
+.. Para abrir a janela Watches, selecione Janela > Depuração > Watches ou pressione Ctrl-Shift-2. A janela Watches será aberta.
+.. Em qualquer lugar na janela Watches, clique com o botão direito do mouse e selecione Novo Watch do menu pop-up. A Janela Novo Watch será Aberta.
+.. Digite a expressão do watch e clique em OK.
 
 Agora você pode fazer uma verificação adicional durante a depuração.
 
 *Importante:* você precisa ativar os watches na <<options,guia Depuração das Opções PHP>> para poder definir watches.
 
-8. Para cancelar a execução linha a linha do código em uma função e passar para a próxima linha depois da chamada da função, pressione Ctrl-F7/⌘-F7 ou selecione Depurar > Fazer Step Out.
-9. Para ignorar a execução linha a linha do código em uma função, obtenha o valor retornado pela função e passe para a próxima linha depois da chamada da função, pressione F8 ou selecione Depurar > Fazer Step Over.
-10. Para pausar a sessão de depuração, selecione Depurar > Pausar.
-11. Para continuar a sessão de depuração, selecione Depurar > Continuar ou pressione image::images/continue-debugging-session.png[].
-12. Para cancelar a sessão de depuração, pressione image::images/stop-debugging-session.png[].
-13. 
-Quando o programa chegar ao fim, as janelas do depurador serão fechadas.
+
+[start=8]
+. Para cancelar a execução linha a linha do código em uma função e passar para a próxima linha depois da chamada da função, pressione Ctrl-F7/⌘-F7 ou selecione Depurar > Fazer Step Out.
+
+[start=9]
+. Para ignorar a execução linha a linha do código em uma função, obtenha o valor retornado pela função e passe para a próxima linha depois da chamada da função, pressione F8 ou selecione Depurar > Fazer Step Over.
+
+[start=10]
+. Para pausar a sessão de depuração, selecione Depurar > Pausar.
+
+[start=11]
+. Para continuar a sessão de depuração, selecione Depurar > Continuar ou pressione image:images/continue-debugging-session.png[].
+
+[start=12]
+. Para cancelar a sessão de depuração, pressione image:images/stop-debugging-session.png[].
+
+[start=13]
+.  Quando o programa chegar ao fim, as janelas do depurador serão fechadas.
 
 
 == Sessão de Depuração de Amostra
@@ -275,8 +291,12 @@
 * Local dos códigos-fonte - o local default da pasta  ``htdocs`` 
 * Executar configuração: Web Site Local
 Encontre mais detalhes sobre como configurar um projeto PHP no documento link:project-setup.html[+Configurando um Projeto PHP+].
-2. Para permitir o uso de teclas de atalho durante a sessão, posicione o cursor no nó do projeto e selecione Definir como Projeto Principal no menu pop-up.
-3. No arquivo  ``index.php`` , digite o seguinte código:
+
+[start=2]
+. Para permitir o uso de teclas de atalho durante a sessão, posicione o cursor no nó do projeto e selecione Definir como Projeto Principal no menu pop-up.
+
+[start=3]
+. No arquivo  ``index.php`` , digite o seguinte código:
 
 [source,php]
 ----
@@ -287,34 +307,76 @@
 * A função  ``calculate_factorial ()`` 
 * A função  ``calcualte_sum ()`` 
 * A função  ``calculate_sum_of_factorials ()``  que chama a função  ``calculate_factorial``  duas vezes, depois chama a função  ``calcualte_sum ()``  uma vez e retorna a soma calculada dos fatoriais.
-4. Definir um ponto de interrupção (Ctrl-F8/⌘-F8) no início do bloco PHP:
+
+[start=4]
+. Definir um ponto de interrupção (Ctrl-F8/⌘-F8) no início do bloco PHP:
 
 [source,php]
 ----
 
 <?php
 ----
-5. Para iniciar a depuração, clique em image::images/debug-main-project-button.png[]. O depurador para no ponto de interrupção.
-6. Pressione F7 três vezes. O depurador para na linha em que a função  ``calculate_sum_of_factorials ()``  é chamada. A janela Variáveis Locais mostra as variáveis  ``$m``  e  ``$n``  com seus valores:
+
+[start=5]
+. Para iniciar a depuração, clique em image:images/debug-main-project-button.png[]. O depurador para no ponto de interrupção.
+
+[start=6]
+. Pressione F7 três vezes. O depurador para na linha em que a função  ``calculate_sum_of_factorials ()``  é chamada. A janela Variáveis Locais mostra as variáveis  ``$m``  e  ``$n``  com seus valores:
+
 image::images/degugger-stopped-at-function-call.png[]
-7. Para fazer step into na função  ``calculate_sum_of_factorials()`` , pressione F7. O depurador começa a executar o código na função  ``calculate_sum_of_factorials ()``  e para na chamada da função  ``calculate_factorial()`` . 
+
+
+[start=7]
+. Para fazer step into na função  ``calculate_sum_of_factorials()`` , pressione F7. O depurador começa a executar o código na função  ``calculate_sum_of_factorials ()``  e para na chamada da função  ``calculate_factorial()`` . 
+
 image::images/call-of-embedded-function.png[] 
+
 A janela Variáveis Locais agora mostra as variáveis locais  ``$argument1``  e  ``$argument2``  declaradas na função  ``calculate_sum_of_factorials ()`` . 
+
 image::images/variables-inside-function-call-another-function.png[]
-8. Pressione F7. O depurador começa a executar o código com a função  ``calculate_factorial()`` . A janela Pilha de Chamadas mostra a pilha de chamadas para as funções na ordem inversa, com a última função chamada na parte superior da lista: 
+
+
+[start=8]
+. Pressione F7. O depurador começa a executar o código com a função  ``calculate_factorial()`` . A janela Pilha de Chamadas mostra a pilha de chamadas para as funções na ordem inversa, com a última função chamada na parte superior da lista: 
+
 image::images/call-stack.png[]
-9. Pressione F7 para fazer step into no loop. Exiba os valores das variáveis na janela Variáveis. 
+
+
+[start=9]
+. Pressione F7 para fazer step into no loop. Exiba os valores das variáveis na janela Variáveis. 
+
 image::images/local-variables-inside-loop.png[]
-10. Quando você se certificar de que o código está funcionando corretamente, pressione Ctrl-F7/⌘-F7 para cancelar a execução da função. O programa retorna para a linha após a chamada da função  ``calculate_factorial()`` . 
-*Observação:* como alternativa, você pode pressionar F7, até que o programa conclua a execução da função  ``calculate_factorial()`` . Você também retornará para a linha após essa chamada. 
+
+
+[start=10]
+. Quando você se certificar de que o código está funcionando corretamente, pressione Ctrl-F7/⌘-F7 para cancelar a execução da função. O programa retorna para a linha após a chamada da função  ``calculate_factorial()`` . 
+
+NOTE:  como alternativa, você pode pressionar F7, até que o programa conclua a execução da função  ``calculate_factorial()`` . Você também retornará para a linha após essa chamada. 
+
 image::images/call-of-embedded-function-second-time.png[]
-11. Como você acabou de verificar a função  ``calculate_factorial()``  e sabe que ela está funcionando corretamente, pode pular sua execução ("fazer step over"). Para fazer step over, pressione F8. O programa para na chamada da função  ``calculate_sum()`` . 
+
+
+[start=11]
+. Como você acabou de verificar a função  ``calculate_factorial()``  e sabe que ela está funcionando corretamente, pode pular sua execução ("fazer step over"). Para fazer step over, pressione F8. O programa para na chamada da função  ``calculate_sum()`` . 
+
 image::images/cal-of-embedded-function-calculate-sum.png[]
-12. Para fazer step into na função  ``calculate_sum()`` , pressione F7.
-13. Para fazer step over, pressione F8. Em qualquer um dos casos, o depurador para na última linha na função  ``calculate_sum_of_factorials()`` .
+
+
+[start=12]
+. Para fazer step into na função  ``calculate_sum()`` , pressione F7.
+
+[start=13]
+. Para fazer step over, pressione F8. Em qualquer um dos casos, o depurador para na última linha na função  ``calculate_sum_of_factorials()`` .
+
 image::images/return-result.png[]
-14. Pressione F7. O depurador vai para a linha com a instrução  ``echo`` .
-15. Pressione F7, até que o depurador saia do programa. A janela do browser será aberta e mostrará o resultado da execução do programa:
+
+
+[start=14]
+. Pressione F7. O depurador vai para a linha com a instrução  ``echo`` .
+
+[start=15]
+. Pressione F7, até que o depurador saia do programa. A janela do browser será aberta e mostrará o resultado da execução do programa:
+
 image::images/program-output.png[]
 
 
@@ -326,30 +388,38 @@
 
 1. Atualize o código como se segue (substitua um mais por um menos):
 
-[source,java]
+[source,php]
 ----
 
 function calculate_sum ($argument1, $argument2) {return $argument1 - argument2;}
 ----
 Imagine que isso tenha resultado de um erro de digitação, mas você na verdade precise calcular a soma.
-2. Selecione Depurar > Novo Watch ou pressione Ctrl/⌘-shift-F7. A Janela Novo Watch será Aberta.
-3. Digite a seguinte expressão e clique em OK.
 
-[source,java]
+[start=2]
+. Selecione Depurar > Novo Watch ou pressione Ctrl/⌘-shift-F7. A Janela Novo Watch será Aberta.
+
+[start=3]
+. Digite a seguinte expressão e clique em OK.
+
+[source,php]
 ----
 
 $factorial1+$factorial2
 ----
 A nova expressão aparece na janela Watches.
-4. Execute a sessão de depuração. Quando o depurador parar na linha
 
-[source,java]
+[start=4]
+. Execute a sessão de depuração. Quando o depurador parar na linha
+
+[source,php]
 ----
 
 return $result;
 ----
 compare o valor da expressão na janela Watches e o valor de $result na janela Variáveis Locais. Eles devem ser iguais, mas estão diferentes. 
+
 image::images/watches.png[]
+
 Este exemplo é muito simples e deve dar uma noção geral do uso de watches.
 
 
@@ -367,24 +437,34 @@
 
 Encontre mais informações sobre link:wish-list-lesson2.html#htmlForm[+forms de entrada HTML+].
 
-2. Substitua as seguintes linhas na parte superior do bloco <?php ?>:
 
-[source,java]
+[start=2]
+. Substitua as seguintes linhas na parte superior do bloco <?php ?>:
+
+[source,php]
 ----
 
 $m=5;$n=10;$sum_of_factorials = calculate_sum_of_factorials ($m, $n);echo "The sum of factorials of the entered integers is " . $sum_of_factorials;
 ----
 pelo seguinte código:
 
-[source,java]
+[source,php]
 ----
 
 if (array_key_exists ("first_integer", $_POST) &amp;&amp; array_key_exists ("second_integer", $_POST)) {$result = calculate_sum_of_factorials ($_POST["first_integer"], $_POST["second_integer"]);echo "Sum of factorials is " . $result;}
 ----
-3. Defina um ponto de interrupção no início do bloco <?php ?> e inicie a <<debuggingSession,sessão de depuração>>.
-4. Pressione F7. O depurador entra no programa. A janela do browser é aberta mas o form de entrada não é exibido. Esse é o comportamento correto do depurador, porque ele tem que entrar em todo o código-fonte de uma página web, antes que a página possa ser exibida. Praticamente, isso significa que o depurador entra no código duas vezes. Na primeira vez, o depurador processa o código para exibir o form de entrada de HTML. Na segunda vez, o depurador executa o código PHP passo a passo.
-5. Pressione F7, até que o depurador alcance o final do programa e o form de entrada seja aberto.
-6. Preencha o form e clique em Enter. A sessão de depuração continua conforme descrito na seção <<sampleDebuggingSession,Sessão de Depuração de Amostra>>.
+
+[start=3]
+. Defina um ponto de interrupção no início do bloco <?php ?> e inicie a <<debuggingSession,sessão de depuração>>.
+
+[start=4]
+. Pressione F7. O depurador entra no programa. A janela do browser é aberta mas o form de entrada não é exibido. Esse é o comportamento correto do depurador, porque ele tem que entrar em todo o código-fonte de uma página web, antes que a página possa ser exibida. Praticamente, isso significa que o depurador entra no código duas vezes. Na primeira vez, o depurador processa o código para exibir o form de entrada de HTML. Na segunda vez, o depurador executa o código PHP passo a passo.
+
+[start=5]
+. Pressione F7, até que o depurador alcance o final do programa e o form de entrada seja aberto.
+
+[start=6]
+. Preencha o form e clique em Enter. A sessão de depuração continua conforme descrito na seção <<sampleDebuggingSession,Sessão de Depuração de Amostra>>.
 
 
 == [[ Mapeamento de Caminho, Proxy do Depurador e Iniciando uma Sessão de Depuração em um URL Personalizado]] 
@@ -401,7 +481,9 @@
 
 * Perguntar Todas as Vezes, que faz com que o IDE solicite o URL quando você inicia uma sessão de depuração.
 * Não Abrir o Web Browser, que requer que você abra o browser e insira manualmente o URL (é preciso ter a variável GET/POST XDEBUG_SESSION_START).
-6. Se você estiver usando um servidor proxy para a depuração, digite o nome do host e a porta do servidor na seção Proxy do Depurador.
+
+[start=6]
+. Se você estiver usando um servidor proxy para a depuração, digite o nome do host e a porta do servidor na seção Proxy do Depurador.
 
 Para obter mais informações, consulte o post link:http://blogs.oracle.com/netbeansphp/entry/path_mapping_in_php_debugger[+Mapeamento do Caminho no Depurador PHP+] no blog Net Beans para o PHP.
 
diff --git a/netbeans.apache.org/src/content/kb/docs/php/debugging_ru.asciidoc b/netbeans.apache.org/src/content/kb/docs/php/debugging_ru.asciidoc
index 592142b..19609b4 100644
--- a/netbeans.apache.org/src/content/kb/docs/php/debugging_ru.asciidoc
+++ b/netbeans.apache.org/src/content/kb/docs/php/debugging_ru.asciidoc
@@ -30,9 +30,6 @@
 :keywords: Apache NetBeans, Tutorials, Отладка исходного кода PHP в IDE NetBeans
 
 
-image::images/netbeans-stamp-80-74-73.png[title="Содержимое этой страницы применимо к IDE NetBeans 7.2, 7.3, 7.4 и 8.0"]
-
-
 *Для работы с этим учебным курсом требуется следующее программное обеспечение и ресурсы.*
 
 |===
@@ -72,7 +69,7 @@
 
 Параметры IDE NetBeans включают вкладку для изменения определенных настроек по умолчанию для отладки PHP. Чтобы открыть эти параметры, зайдите в Tools ("Средства") > Options ("Параметры") (NetBeans > Preferences ("Настройки") на Mac), выберите параметры PHP, после чего выберите вкладку Debugging ("Отладка").
 
-*Примечание *. Вкладка 'Отладка' была реализована в IDE NetBeans версии 7.1. В более ранних версиях NetBeans на вкладке 'Общие' PHP имеются параметры отладки. Не все параметры версии 7.1 доступны в предыдущих версиях.
+NOTE: . Вкладка 'Отладка' была реализована в IDE NetBeans версии 7.1. В более ранних версиях NetBeans на вкладке 'Общие' PHP имеются параметры отладки. Не все параметры версии 7.1 доступны в предыдущих версиях.
 
 image::images/php-debugging-options.png[]
 
@@ -87,7 +84,7 @@
 * *Показывать запрошенные URL-адреса.* Открывается новое окно вывода при отладке. Это окно вывода называется PHP Requested Urls ("URL-адреса, запрошенные PHP") и отображает URL-адреса, обрабатываемые в настоящий момент. URL-адреса можно щелкать. Щелкните URL-адрес в окне вывода, чтобы открыть этот URL-адрес в окне браузера.
 * *Консоль отладчика PHP.* Открывается новое окно вывода, в котором показан результат сценариев отладки.
 
-*Примечание.* Задайте  ``output_buffering = Off``  в используемом файле  ``php.ini`` . иначе выводы сценариев будут появляться в окне вывода с задержкой.
+NOTE:  Задайте  ``output_buffering = Off``  в используемом файле  ``php.ini`` . иначе выводы сценариев будут появляться в окне вывода с задержкой.
 
 В рамках данного учебного курса нет необходимости менять любые из этих параметров. При желании это можно сделать для включения точек наблюдения.
 
@@ -111,19 +108,19 @@
 Панель инструментов предоставляет возможности выполнения следующих действий:
 
 |===
-|*Завершить сеанс* ( image::images/finish-session-button.png[] ) |Завершение сеанса отладки 
+|*Завершить сеанс* ( image:images/finish-session-button.png[] ) |Завершение сеанса отладки 
 
-|*Приостановить* ( image::images/pause-button.png[] ) |Приостановка сеанса отладки 
+|*Приостановить* ( image:images/pause-button.png[] ) |Приостановка сеанса отладки 
 
-|*Возобновить* ( image::images/resume-button.png[] ) |Возобновление сеанса отладки 
+|*Возобновить* ( image:images/resume-button.png[] ) |Возобновление сеанса отладки 
 
-|*Обход процедур* ( image::images/step-over-button.png[] ) |Переход к следующему оператору выполнения 
+|*Обход процедур* ( image:images/step-over-button.png[] ) |Переход к следующему оператору выполнения 
 
-|*Вход в* ( image::images/step-into-button.png[] ) |Переход к вызову функции 
+|*Вход в* ( image:images/step-into-button.png[] ) |Переход к вызову функции 
 
-|*Выходt* ( image::images/step-out-button.png[] ) |Выход из текущего состояния вызова функции 
+|*Выходt* ( image:images/step-out-button.png[] ) |Выход из текущего состояния вызова функции 
 
-|*Переход к курсору* ( image::images/run-to-cursor-button.png[] ) |Запуск выполнения с позиции курсора 
+|*Переход к курсору* ( image:images/run-to-cursor-button.png[] ) |Запуск выполнения с позиции курсора 
 |===
 
  
@@ -139,9 +136,9 @@
 
 image::images/set-breakpoint.png[title="Точка останова может быть задана в редакторе"]
 
-Чтобы удалить точку останова, щелкните маркер точки останова ( image::images/breakpoint-badge.png[] ).
+Чтобы удалить точку останова, щелкните маркер точки останова ( image:images/breakpoint-badge.png[] ).
 
-Также можно временно отключить точки останова. Для этого щелкните правой кнопкой мыши значок точки останова и снимите выделение с 'Точка останова' > ✔'Включено'. Выполняется переключение точки останова в отключенное состояние, после чего маркер выделяется серым ( image::images/disabled-breakpoint-badge.png[] ) и отображается на левом поле.
+Также можно временно отключить точки останова. Для этого щелкните правой кнопкой мыши значок точки останова и снимите выделение с 'Точка останова' > ✔'Включено'. Выполняется переключение точки останова в отключенное состояние, после чего маркер выделяется серым ( image:images/disabled-breakpoint-badge.png[] ) и отображается на левом поле.
 
 Если отладчик во время работы достигает точки останова, отладка приостанавливается, что позволяет просмотреть значения в окнах отладки и перейти к любому месту кода после точки останова.
 
@@ -182,9 +179,9 @@
 
 image::images/sessions-win2.png[]
 
-Текущий сеанс (т.е. сеанс, которым можно управлять с помощью панели инструментов отладчика) отмечен более заметным значком ( image::images/current-session-icon.png[] ). Для переключения сеансов дважды щелкните сеанс, который необходимо сделать текущим или щелкните правой кнопкой мыши сеанс, который не является текущим и выберите 'Сделать текущим'.
+Текущий сеанс (т.е. сеанс, которым можно управлять с помощью панели инструментов отладчика) отмечен более заметным значком ( image:images/current-session-icon.png[] ). Для переключения сеансов дважды щелкните сеанс, который необходимо сделать текущим или щелкните правой кнопкой мыши сеанс, который не является текущим и выберите 'Сделать текущим'.
 
-*Примечание. *Рекомендуется воспользоваться переключением сеансов, если текущий сеанс отложен.
+NOTE: Рекомендуется воспользоваться переключением сеансов, если текущий сеанс отложен.
 
 Также можно щелкнуть правой кнопкой мыши всплывающее окно для завершения сеанса (щелкните правой кнопкой мыши и выберите 'Завершить') или переключитесь между отладкой текущего потока или всех потоков в сеансе (щелкните правой кнопкой мыши и выберите 'Область' > 'Отладка всех потоков' или 'Отладка текущего потока').
 
@@ -244,26 +241,51 @@
 1. Запустите среду IDE и откройте файл, содержащий исходный код, который необходимо отладить.
 2. Установите точку останова в каждой строке, где отладчику следует приостановить работу. Для установки точки останова, поместите курсор в начало строки и нажмите Ctrl-F8 / ⌘-F8 или выберите 'Отладка' > 'Переключение точек останова на строке'
 3. В окне 'Проекты' перейдите к узлу текущего проекта, щелкните правой кнопкой мыши и выберите 'Отладка' во всплывающем меню. Среда IDE открывает окна отладки и выполняет проект в отладчике до достижения установленной точки останова. 
-*Примечание.* Если текущий проект настроен как 'Главный' выберите 'Отладка'  > 'Отладка главного проекта' или нажмите Ctrl-F5, или щелкните image::images/debug-main-project-button.png[].
-4. Перейдите в окно "Local Variables". В данном окне показаны все переменные, которые инициализированы внутри текущей функции, их типы и их значения.
-5. Для просмотра значения переменной отдельно от функции переместите курсор на отображаемую переменную. Подсказка показывает значение переменной.
-6. Для построчного выполнения программы (включая строки внутри всех вызванных функций) нажмите F7 или выберите "Debug > StepInto" и наблюдайте за изменениями значений переменных в окне "Локальные переменные".
-7. Для проверки логики программы путем наблюдения за изменениями выражений определите новый параметр наблюдения:
-1. Для открытия окна "Watches " выберите путь "Window > Debugging > Watches" или нажмите сочетание клавиш Ctrl-Shift-2. Откроется окно "Watches".
-2. Щелкните окно "Watches" правой кнопкой мыши и выберите "New Watch" во всплывающем меню. Откроется окно "New Watch".
-3. Введите наблюдаемое выражение и нажмите OK.
+NOTE:  Если текущий проект настроен как 'Главный' выберите 'Отладка'  > 'Отладка главного проекта' или нажмите Ctrl-F5, или щелкните image:images/debug-main-project-button.png[].
+
+[start=4]
+. Перейдите в окно "Local Variables". В данном окне показаны все переменные, которые инициализированы внутри текущей функции, их типы и их значения.
+
+[start=5]
+. Для просмотра значения переменной отдельно от функции переместите курсор на отображаемую переменную. Подсказка показывает значение переменной.
+
+[start=6]
+. Для построчного выполнения программы (включая строки внутри всех вызванных функций) нажмите F7 или выберите "Debug > StepInto" и наблюдайте за изменениями значений переменных в окне "Локальные переменные".
+
+[start=7]
+. Для проверки логики программы путем наблюдения за изменениями выражений определите новый параметр наблюдения:
+.. Для открытия окна "Watches " выберите путь "Window > Debugging > Watches" или нажмите сочетание клавиш Ctrl-Shift-2. Откроется окно "Watches".
+.. Щелкните окно "Watches" правой кнопкой мыши и выберите "New Watch" во всплывающем меню. Откроется окно "New Watch".
+.. Введите наблюдаемое выражение и нажмите OK.
 
 Теперь в течение отладки можно выполнить дополнительную проверку.
 
 *Важно!* Для установки точек наблюдения необходимо включить точки наблюдения на <<options,вкладке Debugging ("Отладка") параметров PHP>>.
 
-8. Для пропуска построчного выполнения кода в функции получите возвращенное этой функцией значение, перейдите к следующей строке после вызова функции и нажмите F8 или выберите "Debug > Step Over".
-9. Для пропуска построчного выполнения кода в функции получите возвращенное этой функцией значение, перейдите к следующей строке после вызова функции и нажмите F8 или выберите "Debug > Step Over".
-10. Для приостановки сеанса отладки выберите "Debug > Pause".
-11. Для продолжения сеанса отладки выберите "Debug > Continue".image::images/continue-debugging-session.png[].
-12. Для отмены сеанса отладки нажмите image::images/stop-debugging-session.png[].
-13. 
-После завершения программы окна отладки закрываются.
+
+[start=8]
+. Для пропуска построчного выполнения кода в функции получите возвращенное этой функцией значение, перейдите к следующей строке после вызова функции и нажмите F8 или выберите "Debug > Step Over".
+
+[start=9]
+. Для пропуска построчного выполнения кода в функции получите возвращенное этой функцией значение, перейдите к следующей строке после вызова функции и нажмите F8 или выберите "Debug > Step Over".
+
+[start=10]
+. Для приостановки сеанса отладки выберите "Debug > Pause".
+
+[start=11]
+. Для продолжения сеанса отладки выберите "Debug > Continue".
+
+image::images/continue-debugging-session.png[].
+
+
+[start=12]
+. Для отмены сеанса отладки нажмите 
+
+image::images/stop-debugging-session.png[].
+
+
+[start=13]
+. После завершения программы окна отладки закрываются.
 
 
 == Пример сеанса отладки
@@ -275,8 +297,12 @@
 * Расположение исходных файлов – по умолчанию папка  ``htdocs`` 
 * Настройка выполнения – локальный веб-сайт
 Для получения более подробной информации о настройке проекта PHP см. link:project-setup.html[+Настройка проекта PHP+].
-2. Для активации возможности использования "горячих" клавиш во время сеанса установите курсор на узел проекта и выберите "Set as Main Project" во всплывающем меню.
-3. Введите следующий код в файле  ``index.php`` :
+
+[start=2]
+. Для активации возможности использования "горячих" клавиш во время сеанса установите курсор на узел проекта и выберите "Set as Main Project" во всплывающем меню.
+
+[start=3]
+. Введите следующий код в файле  ``index.php`` :
 
 [source,php]
 ----
@@ -287,34 +313,76 @@
 * функция  ``calculate_factorial ()`` ;
 * функция  ``calcualte_sum ()`` ;
 * функция  ``calculate_sum_of_factorials ()``  (дважды вызывает функцию  ``calculate_factorial`` , затем однократно вызывает функцию  ``calcualte_sum ()``  и возвращает рассчитанную сумму факториалов).
-4. Задайте точку останова (Ctrl-F8/⌘-F8) в начале блока PHP:
+
+[start=4]
+. Задайте точку останова (Ctrl-F8/⌘-F8) в начале блока PHP:
 
 [source,php]
 ----
 
 <?php
 ----
-5. Для начала отладка щелкните image::images/debug-main-project-button.png[]. Отладчик остановится по достижении точки останова.
-6. Нажмите F7 три раза. Отладчик остановится в той строке, в которой вызывается функция  ``calculate_sum_of_factorials ()`` . В окне "Local Variables" отображаются переменные  ``$m``  и  ``$n``  с соответствующими значениями:
+
+[start=5]
+. Для начала отладка щелкните image:images/debug-main-project-button.png[]. Отладчик остановится по достижении точки останова.
+
+[start=6]
+. Нажмите F7 три раза. Отладчик остановится в той строке, в которой вызывается функция  ``calculate_sum_of_factorials ()`` . В окне "Local Variables" отображаются переменные  ``$m``  и  ``$n``  с соответствующими значениями:
+
 image::images/degugger-stopped-at-function-call.png[]
-7. Нажмите F7 для перехода к функции  ``calculate_sum_of_factorials()`` . Отладчик начнет выполнение кода внутри функции  ``calculate_sum_of_factorials ()``  и остановится при вызове функции  ``calculate_factorial()`` . 
+
+
+[start=7]
+. Нажмите F7 для перехода к функции  ``calculate_sum_of_factorials()`` . Отладчик начнет выполнение кода внутри функции  ``calculate_sum_of_factorials ()``  и остановится при вызове функции  ``calculate_factorial()`` . 
+
 image::images/call-of-embedded-function.png[] 
+
 Теперь в окне "Local Variables" отображаются локальные переменные  ``$argument1``  и  ``$argument2`` , заявленные в функции  ``calculate_sum_of_factorials ()`` . 
+
 image::images/variables-inside-function-call-another-function.png[]
-8. Нажмите F7. Отладчик начнет выполнение кода с функцией  ``calculate_factorial()`` . В окне "Call Stack" отображается стек вызовов функций в обратном порядке, начиная с последней вызванной функции: 
+
+
+[start=8]
+. Нажмите F7. Отладчик начнет выполнение кода с функцией  ``calculate_factorial()`` . В окне "Call Stack" отображается стек вызовов функций в обратном порядке, начиная с последней вызванной функции: 
+
 image::images/call-stack.png[]
-9. Нажмите F7 для перехода к циклу. Просмотрите значения переменных в окне Variables ("Переменные"). 
+
+
+[start=9]
+. Нажмите F7 для перехода к циклу. Просмотрите значения переменных в окне Variables ("Переменные"). 
+
 image::images/local-variables-inside-loop.png[]
-10. После подтверждения правильности работы кода нажмите Ctrl-F7/⌘-F7, чтобы отменить выполнение функции. Затем будет выполнен возврат к строке, следующей после строки вызова функции  ``calculate_factorial()`` . 
-*Примечание.* В качестве альтернативы можно нажимать F7 до завершения программой выполнения функции  ``calculate_factorial()`` . После вызова этой функции также будет выполнен возврат к следующей строке. 
+
+
+[start=10]
+. После подтверждения правильности работы кода нажмите Ctrl-F7/⌘-F7, чтобы отменить выполнение функции. Затем будет выполнен возврат к строке, следующей после строки вызова функции  ``calculate_factorial()`` . 
+
+NOTE:  В качестве альтернативы можно нажимать F7 до завершения программой выполнения функции  ``calculate_factorial()`` . После вызова этой функции также будет выполнен возврат к следующей строке. 
+
 image::images/call-of-embedded-function-second-time.png[]
-11. Поскольку проверка функции  ``calculate_factorial()``  была только что выполнена, и известно, что функция работает нормально, ее выполнение можно "пропустить". Для этого нажмите F8. Программа завершит работу при вызове функции  ``calculate_sum()`` . 
+
+
+[start=11]
+. Поскольку проверка функции  ``calculate_factorial()``  была только что выполнена, и известно, что функция работает нормально, ее выполнение можно "пропустить". Для этого нажмите F8. Программа завершит работу при вызове функции  ``calculate_sum()`` . 
+
 image::images/cal-of-embedded-function-calculate-sum.png[]
-12. Для перехода к функции  ``calculate_sum()``  нажмите F7.
-13. Для этого нажмите F8. В любом случае отладчик остановится на последней строке в функции  ``calculate_sum_of_factorials()`` .
+
+
+[start=12]
+. Для перехода к функции  ``calculate_sum()``  нажмите F7.
+
+[start=13]
+. Для этого нажмите F8. В любом случае отладчик остановится на последней строке в функции  ``calculate_sum_of_factorials()`` .
+
 image::images/return-result.png[]
-14. Нажмите F7. Отладчик переместится к строке с оператором  ``echo`` .
-15. Нажимайте F7 до тех пор, пока отладчик не завершит работу с программой. Откроется окно браузера, в котором отображается результат выполнения программы:
+
+
+[start=14]
+. Нажмите F7. Отладчик переместится к строке с оператором  ``echo`` .
+
+[start=15]
+. Нажимайте F7 до тех пор, пока отладчик не завершит работу с программой. Откроется окно браузера, в котором отображается результат выполнения программы:
+
 image::images/program-output.png[]
 
 
@@ -326,30 +394,38 @@
 
 1. Обновите код, как показано ниже (замените знак "плюс" на знак "минус"):
 
-[source,java]
+[source,php]
 ----
 
 function calculate_sum ($argument1, $argument2) {return $argument1 - argument2;}
 ----
 Можно предположить, что это следствие неправильного написания кода, но фактически требуется еще раз подсчитать сумму.
-2. Выберите 'Отладка' > 'Создать наблюдение' или нажмите Ctrl/⌘-shift-F7. Откроется окно "New Watch".
-3. Введите следующее выражение и нажмите "ОК".
 
-[source,java]
+[start=2]
+. Выберите 'Отладка' > 'Создать наблюдение' или нажмите Ctrl/⌘-shift-F7. Откроется окно "New Watch".
+
+[start=3]
+. Введите следующее выражение и нажмите "ОК".
+
+[source,php]
 ----
 
 $factorial1+$factorial2
 ----
 Новое выражение появится в окне "Watches".
-4. Запустите сеанс отладки. После остановки отладчика остановится в указанной строке:
 
-[source,java]
+[start=4]
+. Запустите сеанс отладки. После остановки отладчика остановится в указанной строке:
+
+[source,php]
 ----
 
 return $result;
 ----
 сравните значение выражения в окне "Watches" со значением $result в окне "Local Variables". Эти значения должны совпадать, но они различны. 
+
 image::images/watches.png[]
+
 Этот пример является простым, однако позволяет получить некоторое представление об использовании наблюдаемых выражений.
 
 
@@ -367,24 +443,34 @@
 
 Дополнительная информация о link:wish-list-lesson2.html#htmlForm[+формах ввода HTML+].
 
-2. Замените следующие строки в верхней части блока <? php? >:
 
-[source,java]
+[start=2]
+. Замените следующие строки в верхней части блока <? php? >:
+
+[source,php]
 ----
 
 $m=5;$n=10;$sum_of_factorials = calculate_sum_of_factorials ($m, $n);echo "The sum of factorials of the entered integers is " . $sum_of_factorials;
 ----
 на следующий код:
 
-[source,java]
+[source,php]
 ----
 
 if (array_key_exists ("first_integer", $_POST) &amp;&amp; array_key_exists ("second_integer", $_POST)) {$result = calculate_sum_of_factorials ($_POST["first_integer"], $_POST["second_integer"]);echo "Sum of factorials is " . $result;}
 ----
-3. Установите точку останова в начале блока <? php? > и начните <<debuggingSession,сеанс отладки>>.
-4. Нажмите F7. Отладчик перейдет к программе. Откроется окно браузера, но форма ввода в нем не отображается. Это нормальный режим работы отладчика, поскольку для отображения веб-страницы отладчик должен пройти по всему исходному коду. Фактически это означает, что отладчик обрабатывает код дважды. Первый раз обрабатывается код для отображения формы ввода HTML. Второй раз поэтапно обрабатывается код PHP.
-5. Нажимайте F7 до тех пор, пока не будет достигнут конец программы; после этого откроется форма ввода.
-6. Заполните форму и нажмите Enter. Сеанс отладки будет продолжен, как описано в разделе <<sampleDebuggingSession,Пример сеанса отладки>>.
+
+[start=3]
+. Установите точку останова в начале блока <? php? > и начните <<debuggingSession,сеанс отладки>>.
+
+[start=4]
+. Нажмите F7. Отладчик перейдет к программе. Откроется окно браузера, но форма ввода в нем не отображается. Это нормальный режим работы отладчика, поскольку для отображения веб-страницы отладчик должен пройти по всему исходному коду. Фактически это означает, что отладчик обрабатывает код дважды. Первый раз обрабатывается код для отображения формы ввода HTML. Второй раз поэтапно обрабатывается код PHP.
+
+[start=5]
+. Нажимайте F7 до тех пор, пока не будет достигнут конец программы; после этого откроется форма ввода.
+
+[start=6]
+. Заполните форму и нажмите Enter. Сеанс отладки будет продолжен, как описано в разделе <<sampleDebuggingSession,Пример сеанса отладки>>.
 
 
 == [[Отображение пути, прокси отладчика и запуск сеанса отладки по пользовательскому URL-адресу]] 
@@ -401,7 +487,9 @@
 
 * Ask Every Time ("Спрашивать каждый раз"), указывающий среде IDE запрашивать URL-адрес у пользователя при каждом запуске сеанса отладки.
 * Do Not Open Web Browser ("Не открывать веб-браузер"), в результате чего придется открыть браузер и ввести URL-адрес вручную (будет необходима переменная GET/POST XDEBUG_SESSION_START).
-6. В случае использования для отладки прокси-сервера введите имя узла и порт сервера в разделе Debugger Proxy ("Прокси отладчика").
+
+[start=6]
+. В случае использования для отладки прокси-сервера введите имя узла и порт сервера в разделе Debugger Proxy ("Прокси отладчика").
 
 Дополнительные сведения приведены в записи link:http://blogs.oracle.com/netbeansphp/entry/path_mapping_in_php_debugger[+Path Mapping in PHP Debugger ("Сопоставление путей в отладчике PHP")+] блога по Net Beans для PHP.
 
diff --git a/netbeans.apache.org/src/content/kb/docs/php/debugging_zh_CN.asciidoc b/netbeans.apache.org/src/content/kb/docs/php/debugging_zh_CN.asciidoc
index a29f77a..3a2a8de 100644
--- a/netbeans.apache.org/src/content/kb/docs/php/debugging_zh_CN.asciidoc
+++ b/netbeans.apache.org/src/content/kb/docs/php/debugging_zh_CN.asciidoc
@@ -30,9 +30,6 @@
 :keywords: Apache NetBeans, Tutorials, 在 NetBeans IDE 中调试 PHP 源代码
 
 
-image::images/netbeans-stamp-80-74-73.png[title="此页上的内容适用于 NetBeans IDE 7.2、7.3、7.4 和 8.0"]
-
-
 *要学习本教程,您需要具备以下软件和资源。*
 
 |===
@@ -72,7 +69,7 @@
 
 NetBeans IDE 的 "Options"(选项)中包含一个标签,用于更改 PHP 调试的某些默认设置。要打开这些选项,请转至 "Tools"(工具)> "Options"(选项)(在 Mac 上则转至 "NetBeans" > "Preferences"(首选项)),然后依次选择 "PHP" 选项和 "Debugging"(调试)标签。
 
-*注:*在 NetBeans IDE 版本 7.1 中引入了 "Debugging"(调试)标签。早期版本的 NetBeans 在 "General PHP"(常规 PHP)标签中具有调试选项。版本 7.1 中的部分选项在早期版本中不可用。
+NOTE: 在 NetBeans IDE 版本 7.1 中引入了 "Debugging"(调试)标签。早期版本的 NetBeans 在 "General PHP"(常规 PHP)标签中具有调试选项。版本 7.1 中的部分选项在早期版本中不可用。
 
 image::images/php-debugging-options.png[]
 
@@ -87,7 +84,7 @@
 * *Show Requested URLs(显示请求的 URL)。*调试期间打开新的 "Output"(输出)窗口。此 "Output"(输出)窗口名为 "PHP Requested Urls"(PHP 请求的 URL),它会显示当前处理的 URL。这些 URL 是可单击的。在 "Output"(输出)窗口中单击 URL,以便在浏览器窗口中打开该 URL。
 * *PHP Debugger Console(PHP 调试器控制台)。*打开显示已调试脚本输出的新 "Output"(输出)窗口。
 
-*注:*请设置  ``php.ini``  文件中的  ``output_buffering = Off`` 。否则,在 "Output"(输出)窗口中,将会延迟显示脚本输出。
+NOTE: 请设置  ``php.ini``  文件中的  ``output_buffering = Off`` 。否则,在 "Output"(输出)窗口中,将会延迟显示脚本输出。
 
 就本教程而言,您不需要更改任何这些设置,除非选择性地启用监视。
 
@@ -111,19 +108,19 @@
 工具栏提供了以下操作:
 
 |===
-|*完成会话* (image::images/finish-session-button.png[]) |完成调试会话 
+|*完成会话* (image:images/finish-session-button.png[]) |完成调试会话 
 
-|*暂停* (image::images/pause-button.png[]) |挂起调试会话 
+|*暂停* (image:images/pause-button.png[]) |挂起调试会话 
 
-|*恢复* (image::images/resume-button.png[]) |继续调试会话 
+|*恢复* (image:images/resume-button.png[]) |继续调试会话 
 
-|*步过* (image::images/step-over-button.png[]) |越过执行语句 
+|*步过* (image:images/step-over-button.png[]) |越过执行语句 
 
-|*步入* (image::images/step-into-button.png[]) |步入函数调用 
+|*步入* (image:images/step-into-button.png[]) |步入函数调用 
 
-|*步出* (image::images/step-out-button.png[]) |步出当前函数调用 
+|*步出* (image:images/step-out-button.png[]) |步出当前函数调用 
 
-|*运行至光标位置* (image::images/run-to-cursor-button.png[]) |运行至光标位置 
+|*运行至光标位置* (image:images/run-to-cursor-button.png[]) |运行至光标位置 
 |===
 
  
@@ -139,9 +136,9 @@
 
 image::images/set-breakpoint.png[title="可在编辑器中设置断点"]
 
-可以通过单击断点标记 (image::images/breakpoint-badge.png[]) 删除断点。
+可以通过单击断点标记 (image:images/breakpoint-badge.png[]) 删除断点。
 
-此外,还可以暂时禁用断点。要执行此操作,请右键单击断点标记,然后取消选中 "Breakpoint"(断点)> "✔Enabled"(✔启用)。这会将断点切换为禁用状态,从而导致一个灰色标记 (image::images/disabled-breakpoint-badge.png[]) 显示在左旁注中。
+此外,还可以暂时禁用断点。要执行此操作,请右键单击断点标记,然后取消选中 "Breakpoint"(断点)> "✔Enabled"(✔启用)。这会将断点切换为禁用状态,从而导致一个灰色标记 (image:images/disabled-breakpoint-badge.png[]) 显示在左旁注中。
 
 如果调试器在执行时遇到断点,它将在断点处停止,以便您在调试窗口中检查变量,然后逐步执行断点后面的任何代码。
 
@@ -182,9 +179,9 @@
 
 image::images/sessions-win2.png[]
 
-当前会话(即您可使用调试器工具栏控制的会话)由更为醒目的图标 (image::images/current-session-icon.png[]) 指示。要切换会话,您可以双击要激活的会话,或者右键单击非当前会话,然后选择“激活”。
+当前会话(即您可使用调试器工具栏控制的会话)由更为醒目的图标 (image:images/current-session-icon.png[]) 指示。要切换会话,您可以双击要激活的会话,或者右键单击非当前会话,然后选择“激活”。
 
-*注:*如果挂起了当前所在的会话,建议您不要切换会话。
+NOTE: 如果挂起了当前所在的会话,建议您不要切换会话。
 
 您还可以使用右键单击弹出式窗口终止会话(单击鼠标右键,然后选择 "Finish"(完成)),或者在调试会话中的当前线程或调试所有线程之间切换(单击鼠标右键,然后选择 "Scope"(范围)> "Debug All Threads"(调试所有线程)或 "Debug Current Thread"(调试当前线程))。
 
@@ -244,26 +241,45 @@
 1. 启动 IDE,然后打开包含要调试的源代码的文件。
 2. 在要暂停调试器的每行设置断点。要设置断点,请将光标放在行首,然后按 Ctrl-F8/⌘-F8 组合键,或者选择 "Debug"(调试)> "Toggle Line Breakpoint"(开启/关闭行断点)。
 3. 在 "Projects"(项目)窗口中,导航至当前项目节点,单击鼠标右键,然后从弹出式菜单中选择 "Debug"(调试)。IDE 将打开调试器窗口并在调试器中运行该项目,直至到达断点为止。
-*注:*如果当前项目设置为“主项目”,您可以选择“调试”>“调试主项目”,按 Ctrl-F5,或单击 image::images/debug-main-project-button.png[]。
-4. 切换至 "Local Variables"(局部变量)窗口。该窗口显示当前函数中已初始化的所有变量及其类型和值。
-5. 要查看该函数外部的变量值,请将光标置于此变量出现的某个位置上。工具提示会显示变量值。
-6. 要逐行(包括所有被调用函数中的行)执行程序,请按 F7 键或选择 "Debug"(调试)> "Step Into"(步入),然后在 "Local Variables"(局部变量)窗口中监视这些变量值的更改。
-7. 要通过监视表达式的更改来检查程序逻辑,请定义一个新监视:
-1. 要打开 "Watches"(监视)窗口,请选择 "Window"(窗口)> "Debugging"(调试)> "Watches"(监视),或者按 Ctrl-Shift-2 组合键。"Watches"(监视)窗口打开。
-2. 在 "Watches"(监视)窗口中的任意位置单击鼠标右键,然后从弹出式菜单中选择 "New Watch"(新建监视)。"New Watch"(新建监视)窗口打开。
-3. 输入监视表达式,然后单击 "OK"(确定)。
+NOTE: 如果当前项目设置为“主项目”,您可以选择“调试”>“调试主项目”,按 Ctrl-F5,或单击 image:images/debug-main-project-button.png[]。
+
+[start=4]
+. 切换至 "Local Variables"(局部变量)窗口。该窗口显示当前函数中已初始化的所有变量及其类型和值。
+
+[start=5]
+. 要查看该函数外部的变量值,请将光标置于此变量出现的某个位置上。工具提示会显示变量值。
+
+[start=6]
+. 要逐行(包括所有被调用函数中的行)执行程序,请按 F7 键或选择 "Debug"(调试)> "Step Into"(步入),然后在 "Local Variables"(局部变量)窗口中监视这些变量值的更改。
+
+[start=7]
+. 要通过监视表达式的更改来检查程序逻辑,请定义一个新监视:
+.. 要打开 "Watches"(监视)窗口,请选择 "Window"(窗口)> "Debugging"(调试)> "Watches"(监视),或者按 Ctrl-Shift-2 组合键。"Watches"(监视)窗口打开。
+.. 在 "Watches"(监视)窗口中的任意位置单击鼠标右键,然后从弹出式菜单中选择 "New Watch"(新建监视)。"New Watch"(新建监视)窗口打开。
+.. 输入监视表达式,然后单击 "OK"(确定)。
 
 现在,您便可以在调试过程中进行其他检查。
 
 *重要提示:*您必须在 <<options,PHP "Options"(选项)的 "Debugging"(调试)标签>>中启用监视才能设置监视。
 
-8. 要取消对某个函数中代码的逐行执行操作并跳至该函数调用后的下一行,请按 Ctrl-F7/⌘-F7 组合键或选择 "Debug"(调试)> "Step Out"(步出)。
-9. 要跳过对某个函数中代码的逐行执行操作,获取该函数返回的值,并跳至该函数调用后的下一行,请按 F8 键或选择 "Debug"(调试)> "Step Over"(步过)。
-10. 要暂停调试会话,请选择 "Debug"(调试)> "Pause"(暂停)。
-11. 要继续调试会话,请选择 "Debug"(调试)> "Continue"(继续)或按 image::images/continue-debugging-session.png[]。
-12. 要取消调试会话,请按 image::images/stop-debugging-session.png[]。
-13. 
-在程序结束时,调试器窗口会关闭。
+
+[start=8]
+. 要取消对某个函数中代码的逐行执行操作并跳至该函数调用后的下一行,请按 Ctrl-F7/⌘-F7 组合键或选择 "Debug"(调试)> "Step Out"(步出)。
+
+[start=9]
+. 要跳过对某个函数中代码的逐行执行操作,获取该函数返回的值,并跳至该函数调用后的下一行,请按 F8 键或选择 "Debug"(调试)> "Step Over"(步过)。
+
+[start=10]
+. 要暂停调试会话,请选择 "Debug"(调试)> "Pause"(暂停)。
+
+[start=11]
+. 要继续调试会话,请选择 "Debug"(调试)> "Continue"(继续)或按 image:images/continue-debugging-session.png[]。
+
+[start=12]
+. 要取消调试会话,请按 image:images/stop-debugging-session.png[]。
+
+[start=13]
+.  在程序结束时,调试器窗口会关闭。
 
 
 == 样例调试会话
@@ -275,8 +291,12 @@
 * 源位置 -  ``htdocs``  文件夹的默认位置
 * 运行配置 - "Local Web Site"(本地 Web 站点)
 有关设置 PHP 项目的更多详细信息,请参见link:project-setup.html[+设置 PHP 项目+]文档。
-2. 要在会话过程中使用热键,请将光标置于项目节点上,然后从弹出式菜单中选择 "Set as Main Project"(设置为主项目)。
-3. 在  ``index.php``  文件中,输入以下代码:
+
+[start=2]
+. 要在会话过程中使用热键,请将光标置于项目节点上,然后从弹出式菜单中选择 "Set as Main Project"(设置为主项目)。
+
+[start=3]
+. 在  ``index.php``  文件中,输入以下代码:
 
 [source,php]
 ----
@@ -287,34 +307,75 @@
 *  ``calculate_factorial ()``  函数
 *  ``calcualte_sum ()``  函数
 *  ``calculate_sum_of_factorials ()``  函数,该函数调用  ``calculate_factorial ()``  函数两次,再调用  ``calcualte_sum ()``  函数一次,然后返回计算的阶乘和。
-4. 在 PHP 块的开头设置一个断点(Ctrl-F8/⌘-F8 组合键):
+
+[start=4]
+. 在 PHP 块的开头设置一个断点(Ctrl-F8/⌘-F8 组合键):
 
 [source,php]
 ----
 
 <?php
 ----
-5. 要开始调试,请单击 image::images/debug-main-project-button.png[]。调试器将在断点处停止。
-6. 按 F7 键三次。调试器将在调用函数  ``calculate_sum_of_factorials ()``  的行上停止。"Local Variables"(局部变量)窗口会显示变量  ``$m``  和  ``$n``  以及它们的值:
+
+[start=5]
+. 要开始调试,请单击 image:images/debug-main-project-button.png[]。调试器将在断点处停止。
+
+[start=6]
+. 按 F7 键三次。调试器将在调用函数  ``calculate_sum_of_factorials ()``  的行上停止。"Local Variables"(局部变量)窗口会显示变量  ``$m``  和  ``$n``  以及它们的值:
+
 image::images/degugger-stopped-at-function-call.png[]
-7. 要步入函数  ``calculate_sum_of_factorials ()`` ,请按 F7 键。调试器开始执行函数  ``calculate_sum_of_factorials ()``  中的代码,然后在函数  ``calculate_factorial ()``  的调用处停止。
+
+
+[start=7]
+. 要步入函数  ``calculate_sum_of_factorials ()`` ,请按 F7 键。调试器开始执行函数  ``calculate_sum_of_factorials ()``  中的代码,然后在函数  ``calculate_factorial ()``  的调用处停止。
+
 image::images/call-of-embedded-function.png[] 
+
 现在,"Local Variables"(局部变量)窗口将显示函数  ``calculate_sum_of_factorials ()``  中声明的局部变量  ``$argument1``  和  ``$argument2`` 。 
+
 image::images/variables-inside-function-call-another-function.png[]
-8. 按 F7 键。调试器开始执行函数  ``calculate_factorial ()``  中的代码。"Call Stack"(调用堆栈)窗口将按倒序显示函数的调用堆栈,最后调用的函数位于列表顶部: 
+
+
+[start=8]
+. 按 F7 键。调试器开始执行函数  ``calculate_factorial ()``  中的代码。"Call Stack"(调用堆栈)窗口将按倒序显示函数的调用堆栈,最后调用的函数位于列表顶部: 
+
 image::images/call-stack.png[]
-9. 按 F7 键步入循环。在 "Variables"(变量)窗口中查看变量值。 
+
+[start=9]
+. 按 F7 键步入循环。在 "Variables"(变量)窗口中查看变量值。 
+
 image::images/local-variables-inside-loop.png[]
-10. 如果您确定代码运行正常,请按 Ctrl-F7/⌘-F7 组合键,以取消函数执行。程序将在调用函数  ``calculate_factorial ()``  后返回至下一行。
-*注:*您也可以按 F7 键,直到程序执行完函数  ``calculate_factorial ()``  为止。您也会在调用该函数后返回至下一行。 
+
+
+[start=10]
+. 如果您确定代码运行正常,请按 Ctrl-F7/⌘-F7 组合键,以取消函数执行。程序将在调用函数  ``calculate_factorial ()``  后返回至下一行。
+
+NOTE: 您也可以按 F7 键,直到程序执行完函数  ``calculate_factorial ()``  为止。您也会在调用该函数后返回至下一行。 
+
 image::images/call-of-embedded-function-second-time.png[]
-11. 由于您刚检查了函数  ``calculate_factorial ()`` ,并且确定其运行正常,因此可以跳过对该函数的再次执行操作(“步过”)。要越过该函数,请按 F8 键。程序将在函数  ``calculate_sum ()``  的调用处停止。 
+
+
+[start=11]
+. 由于您刚检查了函数  ``calculate_factorial ()`` ,并且确定其运行正常,因此可以跳过对该函数的再次执行操作(“步过”)。要越过该函数,请按 F8 键。程序将在函数  ``calculate_sum ()``  的调用处停止。 
+
 image::images/cal-of-embedded-function-calculate-sum.png[]
-12. 要步入函数  ``calculate_sum ()`` ,请按 F7 键。
-13. 要越过该函数,请按 F8 键。对于任何一种情况,调试器都会在函数  ``calculate_sum_of_factorials ()``  的最后一行停止。
+
+
+[start=12]
+. 要步入函数  ``calculate_sum ()`` ,请按 F7 键。
+
+[start=13]
+. 要越过该函数,请按 F8 键。对于任何一种情况,调试器都会在函数  ``calculate_sum_of_factorials ()``  的最后一行停止。
+
 image::images/return-result.png[]
-14. 按 F7 键。调试器将移到  ``echo``  语句所在的行上。
-15. 按 F7 键,直到调试器退出程序为止。将打开浏览器窗口并显示程序执行的结果:
+
+
+[start=14]
+. 按 F7 键。调试器将移到  ``echo``  语句所在的行上。
+
+[start=15]
+. 按 F7 键,直到调试器退出程序为止。将打开浏览器窗口并显示程序执行的结果:
+
 image::images/program-output.png[]
 
 
@@ -326,30 +387,38 @@
 
 1. 按如下所示更新代码(将加号替换为减号):
 
-[source,java]
+[source,php]
 ----
 
 function calculate_sum ($argument1, $argument2) {return $argument1 - argument2;}
 ----
 假定运算符的改变是由于拼写错误造成的,而实际上您需要计算和。
-2. 选择 "Debug"(调试)> "New Watch"(新建监视),或者按 Ctrl/⌘-shift-F7 组合键。"New Watch"(新建监视)窗口打开。
-3. 输入以下表达式,然后单击 "OK"(确定)。
 
-[source,java]
+[start=2]
+. 选择 "Debug"(调试)> "New Watch"(新建监视),或者按 Ctrl/⌘-shift-F7 组合键。"New Watch"(新建监视)窗口打开。
+
+[start=3]
+. 输入以下表达式,然后单击 "OK"(确定)。
+
+[source,php]
 ----
 
 $factorial1+$factorial2
 ----
 "Watches"(监视)窗口中将显示新表达式。
-4. 运行调试会话。当调试器在以下行停止时
 
-[source,java]
+[start=4]
+. 运行调试会话。当调试器在以下行停止时
+
+[source,php]
 ----
 
 return $result;
 ----
 将 "Watches"(监视)窗口中表达式的值与 "Local Variables"(局部变量)窗口中 $result 的值进行比较。它们应该相同,但在此示例中不同。 
+
 image::images/watches.png[]
+
 此示例非常简单,它为您提供了使用监视的一些基本概念。
 
 
@@ -367,24 +436,34 @@
 
 有关详细信息,请参见 link:wish-list-lesson2.html#htmlForm[+HTML 输入窗体+]。
 
-2. 替换 <?php ?> 块下键入或粘贴以下代码:
 
-[source,java]
+[start=2]
+. 替换 <?php ?> 块下键入或粘贴以下代码:
+
+[source,php]
 ----
 
 $m=5;$n=10;$sum_of_factorials = calculate_sum_of_factorials ($m, $n);echo "The sum of factorials of the entered integers is " . $sum_of_factorials;
 ----
 替换为以下代码:
 
-[source,java]
+[source,php]
 ----
 
 if (array_key_exists ("first_integer", $_POST) &amp;&amp; array_key_exists ("second_integer", $_POST)) {$result = calculate_sum_of_factorials ($_POST["first_integer"], $_POST["second_integer"]);echo "Sum of factorials is " . $result;}
 ----
-3. 在 <?php ?> 块的开头设置断点,然后启动<<debuggingSession,调试会话>>。
-4. 按 F7 键。调试器将步入程序。同时,会打开浏览器窗口,但不显示输入窗体。这是调试器的正确行为,因为它必须首先通过 Web 页的整个源代码,然后才能显示该页面。实际上,这意味着调试器通过了两次代码。第一次是调试器处理代码以显示 HTML 输入窗体。第二次是调试器逐步执行 PHP 代码。
-5. 按 F7 键,直到调试器到达程序末尾并且打开输入窗体为止。
-6. 填写该窗体,然后单击 Enter 键。将继续调试会话(如<<sampleDebuggingSession,样例调试会话>>部分中所述)。
+
+[start=3]
+. 在 <?php ?> 块的开头设置断点,然后启动<<debuggingSession,调试会话>>。
+
+[start=4]
+. 按 F7 键。调试器将步入程序。同时,会打开浏览器窗口,但不显示输入窗体。这是调试器的正确行为,因为它必须首先通过 Web 页的整个源代码,然后才能显示该页面。实际上,这意味着调试器通过了两次代码。第一次是调试器处理代码以显示 HTML 输入窗体。第二次是调试器逐步执行 PHP 代码。
+
+[start=5]
+. 按 F7 键,直到调试器到达程序末尾并且打开输入窗体为止。
+
+[start=6]
+. 填写该窗体,然后单击 Enter 键。将继续调试会话(如<<sampleDebuggingSession,样例调试会话>>部分中所述)。
 
 
 == [[路径映射、调试器代理以及在定制 URL 上启动调试会话]] 
@@ -401,7 +480,9 @@
 
 * "Ask Every Time"(每次都询问):让 IDE 提示您在启动调试会话时输入 URL。
 * "Do Not Open Web Browser"(不打开 Web 浏览器):需要您手动打开浏览器并输入 URL(您需要 GET/POST XDEBUG_SESSION_START 变量)。
-6. 使用代理服务器进行调试时,请在 "Debugger Proxy"(调试器代理)类别中输入该服务器的主机名和端口。
+
+[start=6]
+. 使用代理服务器进行调试时,请在 "Debugger Proxy"(调试器代理)类别中输入该服务器的主机名和端口。
 
 有关详细信息,请参见 "NetBeans for PHP"(NetBeans PHP) 博客中的 link:http://blogs.oracle.com/netbeansphp/entry/path_mapping_in_php_debugger[+Path Mapping in PHP Debugger+](使用 PHP 调试器进行路径映射)的帖子。
 
diff --git a/netbeans.apache.org/src/content/kb/docs/php/phpunit.asciidoc b/netbeans.apache.org/src/content/kb/docs/php/phpunit.asciidoc
index 8810b1c..d59a151 100644
--- a/netbeans.apache.org/src/content/kb/docs/php/phpunit.asciidoc
+++ b/netbeans.apache.org/src/content/kb/docs/php/phpunit.asciidoc
@@ -81,7 +81,9 @@
 }
 ?>
 ----
-2. Add a comment block with the link:http://sebastian-bergmann.de/archives/628-Improved-Skeleton-Generator-in-PHPUnit-3.html[+@assert annotation+] and some sample input and output. Note that one incorrect assertion is included in this example.
+
+[start=2]
+. Add a comment block with the link:http://sebastian-bergmann.de/archives/628-Improved-Skeleton-Generator-in-PHPUnit-3.html[+@assert annotation+] and some sample input and output. Note that one incorrect assertion is included in this example.
 
 [source,php]
 ----
@@ -104,24 +106,36 @@
 ?>
 ----
 
-*Note: *You can use annotation code completion to add `@assert` annotations. Navigate between parameters with the Tab key, or click Enter after filling in a parameter value.
+NOTE: You can use annotation code completion to add `@assert` annotations. Navigate between parameters with the Tab key, or click Enter after filling in a parameter value.
 
 image::images/assert-cc.png[]image::images/assert-cc-complete.png[]
-3. In the Projects window, right-click the Calculator.php node and select Tools > Create PHPUnit Tests. Note that you can create tests for all files in a project in the context menu for the Source Files node.
+
+
+[start=3]
+. In the Projects window, right-click the Calculator.php node and select Tools > Create PHPUnit Tests. Note that you can create tests for all files in a project in the context menu for the Source Files node.
+
 image::images/create-tests.png[]
-4. The first time you create tests, a dialog opens asking you for the directory in which you want to store test files. In this example, the Browse function was used to create a  ``tests``  directory. 
+
+
+[start=4]
+. The first time you create tests, a dialog opens asking you for the directory in which you want to store test files. In this example, the Browse function was used to create a  ``tests``  directory. 
+
 image::images/test-directory.png[]
 
 NOTE: You can manually write multiple tests for a project. If you write multiple tests, you can sort them into subfolders of the test file directory, such as "important" or "quick." You can then run tests in a subfolder by right-clicking that folder and selecting Run Tests.
 
 image::images/test-in-folder.png[]
-5. The IDE generates a skeleton test class in a file called CalculatorTest.php, which appears in your Projects window and opens in the editor. 
+
+
+[start=5]
+. The IDE generates a skeleton test class in a file called CalculatorTest.php, which appears in your Projects window and opens in the editor. 
+
 image::images/test-class-in-project.png[]
 
 Note that a test is created for each  ``@assert``  annotation.
 
 
-[source,java]
+[source,php]
 ----
 
     /**
@@ -135,7 +149,10 @@
         );
     }
 ----
-6. You can test either an individual file or the entire project. To test the project, right-click the project's parent node and select Test, or press Alt-F6. To test the Calculator.php file, right-clict the file's node and select Test, or press Ctrl-F6/⌘-F6. This example has only one class in one file, so the results are the same. The IDE runs the tests and displays the results in the Test Results window. 
+
+[start=6]
+. You can test either an individual file or the entire project. To test the project, right-click the project's parent node and select Test, or press Alt-F6. To test the Calculator.php file, right-clict the file's node and select Test, or press Ctrl-F6/⌘-F6. This example has only one class in one file, so the results are the same. The IDE runs the tests and displays the results in the Test Results window. 
+
 image::images/test-results-narrow.png[]
 
 A more verbose textual version of the results is displayed in the Output window.
@@ -155,12 +172,25 @@
 
 1. In the Projects window, right-click the Calculator node and select Properties. The Project Properties open.
 2. In the Project Properties, select the PhpUnit category. Select Ask for Test Groups Before Running Tests. Click OK.
+
 image::images/test-group-properties.png[]
-3. Open  ``CalculatorTest.php``  in the editor.
-4. For the methods  ``testAdd`` ,  ``testAdd3``  and  ``testAdd5`` , add the annotation  ``@group production`` .
+
+
+[start=3]
+. Open  ``CalculatorTest.php``  in the editor.
+
+[start=4]
+. For the methods  ``testAdd`` ,  ``testAdd3``  and  ``testAdd5`` , add the annotation  ``@group production`` .
+
 image::images/production-group-annotation.png[]
-5. For the methods  ``testAdd2``  and  ``testAdd4`` , add the annotations  ``@group production``  and  ``@group development`` . image::images/production-development-group-code.png[]
-6. Right-click the  ``Calculator.php``  node and select Test. A dialog opens, asking you which test groups to run. Select "development" and click OK. The IDE only runs the tests that are annotated with  ``@group development`` .
+
+
+[start=5]
+. For the methods  ``testAdd2``  and  ``testAdd4`` , add the annotations  ``@group production``  and  ``@group development`` . image::images/production-development-group-code.png[]
+
+[start=6]
+. Right-click the  ``Calculator.php``  node and select Test. A dialog opens, asking you which test groups to run. Select "development" and click OK. The IDE only runs the tests that are annotated with  ``@group development`` .
+
 image::images/select-test-group.png[]
 
 For more information about PhpUnit test groups in NetBeans IDE, see the NetBeans IDE for PHP blog post link:http://blogs.oracle.com/netbeansphp/entry/using_phpunit_test_groups[+Using PHP Unit Test Groups+].
@@ -181,13 +211,13 @@
 
 The Test Results window includes the following buttons on the left side:
 
-* Rerun the test image::images/rerun-button.png[]
-* Show failed tests image::images/show-failed.png[]
-* Show passed tests image::images/show-passed.png[]
-* Show tests that passed but with errors image::images/show-error.png[]
-* Navigate between showing the next test result image::images/next-test-button.png[] or the previous test result image::images/previous-test-button.png[]
+* Rerun the test image:images/rerun-button.png[]
+* Show failed tests image:images/show-failed.png[]
+* Show passed tests image:images/show-passed.png[]
+* Show tests that passed but with errors image:images/show-error.png[]
+* Navigate between showing the next test result image:images/next-test-button.png[] or the previous test result image:images/previous-test-button.png[]
 
-The Output window shows the full output of the PHPUnit script. It can be useful when you cannot identify the cause of an error with the information in the Test Results window. Like Test Results, the Output window includes links to the test class line that failed. It also includes buttons on the left side for rerunning the test and for opening the PHP Options window. image::images/options-link-button.png[]
+The Output window shows the full output of the PHPUnit script. It can be useful when you cannot identify the cause of an error with the information in the Test Results window. Like Test Results, the Output window includes links to the test class line that failed. It also includes buttons on the left side for rerunning the test and for opening the PHP Options window. image:images/options-link-button.png[]
 
 image::images/test-result-output.png[]
 
@@ -225,21 +255,38 @@
 ?>
 
 ----
-2. Right-click the project node. From the context menu, select Code Coverage > Collect and Display Code Coverage. By default, Show Editor Bar is also selected. 
-image::images/turn-on-code-coverage.png[]
-3. The editor now has a code coverage editor bar across the bottom. Because code coverage has not been tested, the editor bar reports 0% coverage. (It also displays this after you click Clear to clear test results.) 
-image::images/editor-bar-before.png[]
-4. Click Test to test the open file or All Tests to run all tests for the project. The Test Results display. In addition, the Code Coverage bar tells you what percentage of your executable code statements is covered by tests. In the editor window, covered code is highlighted in green and uncovered code is highlighted in red.
 
-*Warning: *If you re-generate the test files AFTER adding the add2 function, the PHPUnit tests will not run. This is because PHPUnit creates two conflicting testAdd2 functions. Do not differentiate functions by appending numbers at the end if you plan to use PHPUnit on more than one such function. See the link:http://www.phpunit.de/ticket/701[+the PHPUnit documentation+].
+[start=2]
+. Right-click the project node. From the context menu, select Code Coverage > Collect and Display Code Coverage. By default, Show Editor Bar is also selected. 
+
+image::images/turn-on-code-coverage.png[]
+
+
+[start=3]
+. The editor now has a code coverage editor bar across the bottom. Because code coverage has not been tested, the editor bar reports 0% coverage. (It also displays this after you click Clear to clear test results.) 
+
+image::images/editor-bar-before.png[]
+
+
+[start=4]
+. Click Test to test the open file or All Tests to run all tests for the project. The Test Results display. In addition, the Code Coverage bar tells you what percentage of your executable code statements is covered by tests. In the editor window, covered code is highlighted in green and uncovered code is highlighted in red.
+
+WARNING: If you re-generate the test files AFTER adding the add2 function, the PHPUnit tests will not run. This is because PHPUnit creates two conflicting testAdd2 functions. Do not differentiate functions by appending numbers at the end if you plan to use PHPUnit on more than one such function. See the link:http://www.phpunit.de/ticket/701[+the PHPUnit documentation+].
 
 image::images/editor-bar-after.png[]
-5. In the Editor Bar, click on Report... The Code Coverage report opens, showing the results of all tests run on your project. Buttons in the report let you clear the results, run all the tests again, or deactivate code coverage (click Done). 
-image::images/code-coverage-report.png[]
-6. You can add another class to your project, delete and recreate the test files and look at the code coverage report again. Your new class is listed. In the following report, the  ``Calculator``  class again has a function that is not included in the tests. 
-image::images/code-coverage-report2.png[]
 
 
+[start=5]
+. In the Editor Bar, click on Report... The Code Coverage report opens, showing the results of all tests run on your project. Buttons in the report let you clear the results, run all the tests again, or deactivate code coverage (click Done). 
+
+image::images/code-coverage-report.png[]
+
+
+[start=6]
+. You can add another class to your project, delete and recreate the test files and look at the code coverage report again. Your new class is listed. In the following report, the  ``Calculator``  class again has a function that is not included in the tests. 
+
+image::images/code-coverage-report2.png[]
+
 [[project-specific-configurations]]
 == Using Project-Specific Configurations
 
@@ -253,10 +300,17 @@
 *To set a project-specific configuration:*
 
 1. Right-click the project's node or the project's Test Files node and select Properties. This opens the Properties dialog.
+
 image::images/project-ctxmenu.png[]
-2. Select the PHPUnit category. A dialog opens in which you can select a custom bootstrap, XML configuration, PHPUnit script, or test suite file.
+
+[start=2]
+. Select the PHPUnit category. A dialog opens in which you can select a custom bootstrap, XML configuration, PHPUnit script, or test suite file.
+
 image::images/proj-properties.png[]
-3. If you are not familiar with the structure of bootstrap or XML configuration files, you can use NetBeans IDE to generate a skeleton for you. You can also find instructions about using the dialog by clicking Help. 
+
+[start=3]
+. If you are not familiar with the structure of bootstrap or XML configuration files, you can use NetBeans IDE to generate a skeleton for you. You can also find instructions about using the dialog by clicking Help. 
+
 image::images/proj-properties-selected.png[]
 
 The _bootstrap option_ is required for projects that use a custom class loader, for example by implementing the  ``__autoload()``  magic function. You also use the bootstrap option if you need to include a file in advance, such as a file that defines global constants used by multiple classes in your project.
@@ -282,11 +336,19 @@
 1. Open a command prompt and run the command  ``pear install Testing_Selenium-beta`` . You need `` PHP_HOME/php/PEAR``  on your Path. If the command is successful, the prompt will display  ``install ok: channel://pear.php.net/Testing_Selenium-0.4.3`` .
 2. In the IDE, open Tools > Plugins and install the Selenium Module for PHP.
 3. In the Projects window, right-click the project node for your Calculator project. Select New > Other. The New File wizard opens. Select Selenium and click Next. 
+
 image::images/new-selenium.png[]
-4. The first time you create a Selenium test, a dialog opens asking you to set a directory for Selenium test files. This should be a separate directory from PHPUnit test files. Otherwise, the Selenium tests run every time you run unit tests. Running functional tests like Selenium usually takes more time than running unit tests, therefore you will probably not want to run these tests every time you run unit tests.
-5. Accept the defaults in the Name and Location page and click Finish. The new Selenium test file opens in the editor and appears in the Projects window. 
+
+[start=4]
+. The first time you create a Selenium test, a dialog opens asking you to set a directory for Selenium test files. This should be a separate directory from PHPUnit test files. Otherwise, the Selenium tests run every time you run unit tests. Running functional tests like Selenium usually takes more time than running unit tests, therefore you will probably not want to run these tests every time you run unit tests.
+
+[start=5]
+. Accept the defaults in the Name and Location page and click Finish. The new Selenium test file opens in the editor and appears in the Projects window. 
+
 image::images/selenium-test-in-project.png[]
-6. The Run Selenium Tests item is now added to the project's context menu. Click this item, and the Selenium test results display in the Test Results window, the same as PHPUnit tests.
+
+[start=6]
+. The Run Selenium Tests item is now added to the project's context menu. Click this item, and the Selenium test results display in the Test Results window, the same as PHPUnit tests.
 
 
 [[more-exercises]]
diff --git a/netbeans.apache.org/src/content/kb/docs/php/phpunit_ja.asciidoc b/netbeans.apache.org/src/content/kb/docs/php/phpunit_ja.asciidoc
index 65ed107..affc219 100644
--- a/netbeans.apache.org/src/content/kb/docs/php/phpunit_ja.asciidoc
+++ b/netbeans.apache.org/src/content/kb/docs/php/phpunit_ja.asciidoc
@@ -34,9 +34,6 @@
 NetBeans IDEでは、PHPUnitに加えて、Seleniumの移植可能なテスト・フレームワークもサポートされています。Seleniumプラグインは、更新センターから入手できます。このプラグインをインストールすると、SeleniumサーバーがIDEの登録済サーバーに追加され、Seleniumのテスト・オプションがPHPのメニューに追加されます。
 
 
-image::images/netbeans-stamp-80-74-73.png[title="このページの内容は、NetBeans IDE 7.2、7.3、7.4および8.0に適用されます"]
-
-
 *このチュートリアルに従うには、次のソフトウェアとリソースが必要です。*
 
 |===
@@ -87,7 +84,9 @@
 }
 ?>
 ----
-2. link:http://sebastian-bergmann.de/archives/628-Improved-Skeleton-Generator-in-PHPUnit-3.html[+@assert注釈+]と、入力と出力の例を使用したコメント・ブロックを追加します。この例には間違った表明が1つ含まれています。
+
+[start=2]
+. link:http://sebastian-bergmann.de/archives/628-Improved-Skeleton-Generator-in-PHPUnit-3.html[+@assert注釈+]と、入力と出力の例を使用したコメント・ブロックを追加します。この例には間違った表明が1つ含まれています。
 
 [source,php]
 ----
@@ -110,24 +109,38 @@
 ?>
 ----
 
-*注意: *注釈のコード補完を使用して、`@assert`注釈を追加できます。[Tab]キーを使用してパラメータ間を移動するか、またはパラメータ値を入力して[Enter]を押します。
+NOTE: 注釈のコード補完を使用して、`@assert`注釈を追加できます。[Tab]キーを使用してパラメータ間を移動するか、またはパラメータ値を入力して[Enter]を押します。
 
-image::images/assert-cc.png[]image::images/assert-cc-complete.png[]
-3. 「プロジェクト」ウィンドウで「Calculator.php」ノードを右クリックし、「ツール」>「PHPUnitテストを作成」を選択します。「ソース・ファイル」ノードのコンテキスト・メニューで、プロジェクト内のすべてのファイルのテストを作成できます。
+image::images/assert-cc.png[]
+
+image::images/assert-cc-complete.png[]
+
+
+[start=3]
+. 「プロジェクト」ウィンドウで「Calculator.php」ノードを右クリックし、「ツール」>「PHPUnitテストを作成」を選択します。「ソース・ファイル」ノードのコンテキスト・メニューで、プロジェクト内のすべてのファイルのテストを作成できます。
+
 image::images/create-tests.png[]
-4. テストを初めて作成するときは、テスト・ファイルを保存するディレクトリを指定するダイアログが開きます。この例では、参照機能を使用して ``tests`` ディレクトリを作成しています。
+
+
+[start=4]
+. テストを初めて作成するときは、テスト・ファイルを保存するディレクトリを指定するダイアログが開きます。この例では、参照機能を使用して ``tests`` ディレクトリを作成しています。
+
 image::images/test-directory.png[]
 
-*注意:* 1つのプロジェクトに複数のテストを手動で記述できます。複数のテストを記述する場合は、テスト・ファイルのディレクトリのサブディレクトリ(たとえば、"important"、"quick")に、それらのテストをソートできます。次に、サブフォルダを右クリックし、「テストの実行」を選択して、サブフォルダ内のテストを実行できます。
+NOTE:  1つのプロジェクトに複数のテストを手動で記述できます。複数のテストを記述する場合は、テスト・ファイルのディレクトリのサブディレクトリ(たとえば、"important"、"quick")に、それらのテストをソートできます。次に、サブフォルダを右クリックし、「テストの実行」を選択して、サブフォルダ内のテストを実行できます。
 
 image::images/test-in-folder.png[]
-5. IDEによって、CalculatorTest.phpというファイルに、スケルトン・テスト・クラスが生成されます(このファイルは、「プロジェクト」ウィンドウに表示され、エディタで開きます)。
+
+
+[start=5]
+. IDEによって、CalculatorTest.phpというファイルに、スケルトン・テスト・クラスが生成されます(このファイルは、「プロジェクト」ウィンドウに表示され、エディタで開きます)。
+
 image::images/test-class-in-project.png[]
 
  ``@assert`` 注釈ごとにテストが作成されます。
 
 
-[source,java]
+[source,php]
 ----
 
     /**
@@ -141,7 +154,10 @@
         );
     }
 ----
-6. 1つのファイルまたはプロジェクト全体をテストできます。プロジェクトをテストするには、プロジェクトの親ノードを右クリックして「テスト」を選択するか、または[Alt]-[F6]を押します。Calculator.phpファイルをテストするには、ファイルのノードを右クリックして「テスト」を選択するか、または[Ctrl]-[F6]/[⌘]-[F6]を押します。この例では、1つのファイルに1つのクラスのみがあるため、結果は同じです。IDEによってテストが実行され、「テスト結果」ウィンドウに結果が表示されます。
+
+[start=6]
+. 1つのファイルまたはプロジェクト全体をテストできます。プロジェクトをテストするには、プロジェクトの親ノードを右クリックして「テスト」を選択するか、または[Alt]-[F6]を押します。Calculator.phpファイルをテストするには、ファイルのノードを右クリックして「テスト」を選択するか、または[Ctrl]-[F6]/[⌘]-[F6]を押します。この例では、1つのファイルに1つのクラスのみがあるため、結果は同じです。IDEによってテストが実行され、「テスト結果」ウィンドウに結果が表示されます。
+
 image::images/test-results-narrow.png[]
 
 より詳細なテキスト・バージョンの結果が「出力」ウィンドウに表示されます。
@@ -161,12 +177,25 @@
 
 1. 「プロジェクト」ウィンドウで「Calculator」ノードを右クリックし、「プロパティ」を選択します。「プロジェクト・プロパティ」が開きます。
 2. 「プロジェクト・プロパティ」で「PHPUnit」カテゴリを選択します。「テストの実行前にテスト・グループの入力を求める」を選択します。「OK」をクリックします。
+
 image::images/test-group-properties.png[]
-3. エディタで ``CalculatorTest.php`` を開きます。
-4. メソッド ``testAdd`` 、 ``testAdd3`` 、および ``testAdd5`` について、注釈 ``@group production`` を追加します。
+
+
+[start=3]
+. エディタで ``CalculatorTest.php`` を開きます。
+
+[start=4]
+. メソッド ``testAdd`` 、 ``testAdd3`` 、および ``testAdd5`` について、注釈 ``@group production`` を追加します。
+
 image::images/production-group-annotation.png[]
-5. メソッド ``testAdd2`` および ``testAdd4`` について、注釈 ``@group production`` および ``@group development`` を追加します。image::images/production-development-group-code.png[]
-6.  ``Calculator.php`` ノードを右クリックし、「テスト」を選択します。ダイアログが開き、実行するテスト・グループを指定するように求められます。「development」を選択して「OK」をクリックします。IDEは、 ``@group development`` という注釈が付いたテストのみを実行します。
+
+
+[start=5]
+. メソッド ``testAdd2`` および ``testAdd4`` について、注釈 ``@group production`` および ``@group development`` を追加します。image:images/production-development-group-code.png[]
+
+[start=6]
+.  ``Calculator.php`` ノードを右クリックし、「テスト」を選択します。ダイアログが開き、実行するテスト・グループを指定するように求められます。「development」を選択して「OK」をクリックします。IDEは、 ``@group development`` という注釈が付いたテストのみを実行します。
+
 image::images/select-test-group.png[]
 
 NetBeans IDEのPHPUnitテスト・グループの詳細は、PHP向けのNetBeans IDEブログ投稿のlink:http://blogs.oracle.com/netbeansphp/entry/using_phpunit_test_groups[+PHPUnitテスト・グループの使用+]を参照してください。
@@ -187,13 +216,13 @@
 
 「テスト結果」ウィンドウの左側には次のボタンがあります。
 
-* テストを再実行image::images/rerun-button.png[]
-* 失敗したテストの表示image::images/show-failed.png[]
-* 成功したテストの表示image::images/show-passed.png[]
-* 成功したがエラーがあるテストの表示image::images/show-error.png[]
-* 次のテスト結果image::images/next-test-button.png[]または前のテスト結果image::images/previous-test-button.png[]への移動
+* テストを再実行image:images/rerun-button.png[]
+* 失敗したテストの表示image:images/show-failed.png[]
+* 成功したテストの表示image:images/show-passed.png[]
+* 成功したがエラーがあるテストの表示image:images/show-error.png[]
+* 次のテスト結果image:images/next-test-button.png[]または前のテスト結果image:images/previous-test-button.png[]への移動
 
-「出力」ウィンドウには、PHPUnitスクリプトの完全な出力が表示されます。「テスト結果」ウィンドウ内の情報ではエラーの原因を特定できない場合に便利です。「テスト結果」ウィンドウと同様に、「出力」ウィンドウには、失敗したテスト・クラス行へのリンクが含まれます。また、テストを再実行したり、PHPの「オプション」ウィンドウを開いたりするためのボタンが左側にあります。image::images/options-link-button.png[]
+「出力」ウィンドウには、PHPUnitスクリプトの完全な出力が表示されます。「テスト結果」ウィンドウ内の情報ではエラーの原因を特定できない場合に便利です。「テスト結果」ウィンドウと同様に、「出力」ウィンドウには、失敗したテスト・クラス行へのリンクが含まれます。また、テストを再実行したり、PHPの「オプション」ウィンドウを開いたりするためのボタンが左側にあります。image:images/options-link-button.png[]
 
 image::images/test-result-output.png[]
 
@@ -231,18 +260,36 @@
 ?>
 
 ----
-2. プロジェクト・ノードを右クリックします。コンテキスト・メニューから、「コード・カバレージ」>「コード・カバレージを収集し表示」を選択します。デフォルトでは、「エディタ・バーを表示」も選択されています。
+
+[start=2]
+. プロジェクト・ノードを右クリックします。コンテキスト・メニューから、「コード・カバレージ」>「コード・カバレージを収集し表示」を選択します。デフォルトでは、「エディタ・バーを表示」も選択されています。
+
 image::images/turn-on-code-coverage.png[]
-3. エディタの最下部に、コード・カバレージのエディタ・バーが表示されます。コード・カバレージはテストされていないので、エディタ・バーには0%のカバレージが表示されます。(「クリア」をクリックしてテスト結果をクリアした後もこのように表示されます。)
+
+
+[start=3]
+. エディタの最下部に、コード・カバレージのエディタ・バーが表示されます。コード・カバレージはテストされていないので、エディタ・バーには0%のカバレージが表示されます。(「クリア」をクリックしてテスト結果をクリアした後もこのように表示されます。)
+
 image::images/editor-bar-before.png[]
-4. 「テスト」をクリックして開いているファイルをテストするか、または「すべてのテスト」をクリックしてプロジェクトのすべてのテストを実行します。テスト結果が表示されます。また、コード・カバレージのバーに、テストでカバーされている実行可能コード文の割合(パーセント)が示されます。エディタ・ウィンドウで、カバーされているコードは緑色で強調表示され、カバーされていないコードは赤で強調表示されます。
+
+
+[start=4]
+. 「テスト」をクリックして開いているファイルをテストするか、または「すべてのテスト」をクリックしてプロジェクトのすべてのテストを実行します。テスト結果が表示されます。また、コード・カバレージのバーに、テストでカバーされている実行可能コード文の割合(パーセント)が示されます。エディタ・ウィンドウで、カバーされているコードは緑色で強調表示され、カバーされていないコードは赤で強調表示されます。
 
 *警告: *add2関数を追加した後でテスト・ファイルを再生成した場合、PHPUnitテストは実行されません。これは、PHPUnitが2つの競合するtestAdd2関数を作成するためです。このような複数の関数についてPHPUnitを使用する場合、末尾に数字を付加することによって関数を区別しないでください。link:http://www.phpunit.de/ticket/701[+PHPUnitのドキュメント+]を参照してください。
 
 image::images/editor-bar-after.png[]
-5. エディタ・バーで、「レポート」をクリックします。コード・カバレージのレポートが開き、プロジェクトに対して実行されたすべてのテストの結果が表示されます。レポート内のボタンを使用して、結果をクリアしたり、すべてのテストを再実行したり、コード・カバレージを非アクティブ化(「完了」をクリック)できます。
+
+
+[start=5]
+. エディタ・バーで、「レポート」をクリックします。コード・カバレージのレポートが開き、プロジェクトに対して実行されたすべてのテストの結果が表示されます。レポート内のボタンを使用して、結果をクリアしたり、すべてのテストを再実行したり、コード・カバレージを非アクティブ化(「完了」をクリック)できます。
+
 image::images/code-coverage-report.png[]
-6. プロジェクトに別のクラスを追加し、テスト・ファイルを削除して再作成して、コード・カバレージのレポートをもう一度確認できます。新しいクラスが表示されます。次のレポートでは、 ``Calculator`` クラスに、テストに含まれない関数が再度含まれています。
+
+
+[start=6]
+. プロジェクトに別のクラスを追加し、テスト・ファイルを削除して再作成して、コード・カバレージのレポートをもう一度確認できます。新しいクラスが表示されます。次のレポートでは、 ``Calculator`` クラスに、テストに含まれない関数が再度含まれています。
+
 image::images/code-coverage-report2.png[]
 
 
@@ -258,11 +305,22 @@
 
 *プロジェクト固有の構成を設定するには:*
 
-1. プロジェクトのノードまたはプロジェクトの「テスト・ファイル」ノードを右クリックし、「プロパティ」を選択します。「プロパティ」ダイアログが開きます。
+
+[start=1]
+. プロジェクトのノードまたはプロジェクトの「テスト・ファイル」ノードを右クリックし、「プロパティ」を選択します。「プロパティ」ダイアログが開きます。
+
 image::images/project-ctxmenu.png[]
-2. 「PHPUnit」カテゴリを選択します。カスタムのブートストラップ、XML構成、PHPUnitスクリプト、またはテスト・スイート・ファイルを選択できるダイアログが開きます。
+
+
+[start=2]
+. 「PHPUnit」カテゴリを選択します。カスタムのブートストラップ、XML構成、PHPUnitスクリプト、またはテスト・スイート・ファイルを選択できるダイアログが開きます。
+
 image::images/proj-properties.png[]
-3. ブートストラップの構造やXML構成ファイルに精通していない場合は、NetBeans IDEを使用してスケルトンを生成できます。また、「ヘルプ」をクリックして、ダイアログを使用する手順を調べることができます。
+
+
+[start=3]
+. ブートストラップの構造やXML構成ファイルに精通していない場合は、NetBeans IDEを使用してスケルトンを生成できます。また、「ヘルプ」をクリックして、ダイアログを使用する手順を調べることができます。
+
 image::images/proj-properties-selected.png[]
 
 カスタム・クラス・ローダーを使用するプロジェクトの場合、 ``__autoload()`` 特殊関数の実装などによる、_ブートストラップ・オプション_が必要です。プロジェクトの複数のクラスで使用するグローバル定数を定義するファイルなど、事前にファイルを含める必要がある場合も、ブートストラップ・オプションを使用します。
@@ -288,11 +346,21 @@
 1. コマンド・プロンプトを開き、コマンド ``pear install Testing_Selenium-beta`` を実行します。パスに ``PHP_HOME/php/PEAR`` が含まれている必要があります。コマンドが正常に完了したら、プロンプトに ``install ok: channel://pear.php.net/Testing_Selenium-0.4.3`` と表示されます。
 2. IDEで、「ツール」>「プラグイン」を開き、PHP向けのSeleniumモジュールをインストールします。
 3. 「プロジェクト」ウィンドウで、Calculatorプロジェクトのプロジェクト・ノードを右クリックします。「新規」>「その他」を選択します。新規ファイル・ウィザードが開きます。「Selenium」を選択し、「次」をクリックします。
+
 image::images/new-selenium.png[]
-4. Seleniumのテストを初めて作成するときは、Seleniumのテスト・ファイル用のディレクトリを設定するダイアログが開きます。これは、PHPUnitのテスト・ファイルとは別のディレクトリにします。そうしないと、単体テストを実行するたびにSeleniumのテストが実行されます。Seleniumのような機能的なテストの実行は、単体テストの実行よりも時間がかかるため、単体テストを実行するたびにこれらのテストが実行されることは避けたい場合があります。
-5. 名前と場所ページの設定はデフォルトのままにし、「終了」をクリックします。Seleniumの新しいテスト・ファイルがエディタで開き、「プロジェクト」ウィンドウに表示されます。
+
+
+[start=4]
+. Seleniumのテストを初めて作成するときは、Seleniumのテスト・ファイル用のディレクトリを設定するダイアログが開きます。これは、PHPUnitのテスト・ファイルとは別のディレクトリにします。そうしないと、単体テストを実行するたびにSeleniumのテストが実行されます。Seleniumのような機能的なテストの実行は、単体テストの実行よりも時間がかかるため、単体テストを実行するたびにこれらのテストが実行されることは避けたい場合があります。
+
+[start=5]
+. 名前と場所ページの設定はデフォルトのままにし、「終了」をクリックします。Seleniumの新しいテスト・ファイルがエディタで開き、「プロジェクト」ウィンドウに表示されます。
+
 image::images/selenium-test-in-project.png[]
-6. プロジェクトのコンテキスト・メニューに「Run Selenium Tests」という項目が追加されます。この項目をクリックすると、PHPUnitテストと同様に、Seleniumのテスト結果が「テスト結果」ウィンドウに表示されます。
+
+
+[start=6]
+. プロジェクトのコンテキスト・メニューに「Run Selenium Tests」という項目が追加されます。この項目をクリックすると、PHPUnitテストと同様に、Seleniumのテスト結果が「テスト結果」ウィンドウに表示されます。
 
 
 [[more-exercises]]
diff --git a/netbeans.apache.org/src/content/kb/docs/php/phpunit_pt_BR.asciidoc b/netbeans.apache.org/src/content/kb/docs/php/phpunit_pt_BR.asciidoc
index e3c4290..baea026 100644
--- a/netbeans.apache.org/src/content/kb/docs/php/phpunit_pt_BR.asciidoc
+++ b/netbeans.apache.org/src/content/kb/docs/php/phpunit_pt_BR.asciidoc
@@ -87,7 +87,9 @@
 }
 ?>
 ----
-2. Adicione um bloco de comentário com a link:http://sebastian-bergmann.de/archives/628-Improved-Skeleton-Generator-in-PHPUnit-3.html[+anotação @assert+] e alguma amostra de entrada e saída. Observe que uma afirmação incorreta está incluída neste exemplo.
+
+[start=2]
+. Adicione um bloco de comentário com a link:http://sebastian-bergmann.de/archives/628-Improved-Skeleton-Generator-in-PHPUnit-3.html[+anotação @assert+] e alguma amostra de entrada e saída. Observe que uma afirmação incorreta está incluída neste exemplo.
 
 [source,php]
 ----
@@ -110,24 +112,36 @@
 ?>
 ----
 
-*Observação: *Você pode usar autocompletar código da anotação para adicionar aotações `@assert`. Navegue entre os parâmetros com a tecla Tab ou clique em Enter depois de preencher um valor de parâmetro.
+NOTE: Você pode usar autocompletar código da anotação para adicionar aotações `@assert`. Navegue entre os parâmetros com a tecla Tab ou clique em Enter depois de preencher um valor de parâmetro.
 
 image::images/assert-cc.png[]image::images/assert-cc-complete.png[]
-3. Na janela Projetos, clique com o botão direito do mouse no nó Calulator.php e selecione Ferramentas > Criar Testes PHPUnit. Observe que você pode criar testes para todos os arquivos em um projeto a partir do menu de contexto para o nó Arquivos de Código-Fonte.
+
+
+[start=3]
+. Na janela Projetos, clique com o botão direito do mouse no nó Calulator.php e selecione Ferramentas > Criar Testes PHPUnit. Observe que você pode criar testes para todos os arquivos em um projeto a partir do menu de contexto para o nó Arquivos de Código-Fonte.
+
 image::images/create-tests.png[]
-4. Na primeira vez que você cria testes, uma caixa de diálogo é aberta perguntando pelo diretório onde deseja armazenar os arquivos de teste. Nesse exemplo, a função Procurar foi utilizada para criar um diretório  ``testes`` . 
+
+
+[start=4]
+. Na primeira vez que você cria testes, uma caixa de diálogo é aberta perguntando pelo diretório onde deseja armazenar os arquivos de teste. Nesse exemplo, a função Procurar foi utilizada para criar um diretório  ``testes`` . 
+
 image::images/test-directory.png[]
 
-*Observação:* você pode escrever, manualmente, vários testes para um projeto. Se escrever vários testes, você poderá organizá-los em subpastas do diretório de arquivos de teste, como "importante" ou "rápido". Em seguida, você poderá executar testes em uma subpasta clicando com o botão direito do mouse nessa pasta e selecionando Executar Testes.
+NOTE:  você pode escrever, manualmente, vários testes para um projeto. Se escrever vários testes, você poderá organizá-los em subpastas do diretório de arquivos de teste, como "importante" ou "rápido". Em seguida, você poderá executar testes em uma subpasta clicando com o botão direito do mouse nessa pasta e selecionando Executar Testes.
 
 image::images/test-in-folder.png[]
-5. O IDE gera uma classe de teste de esqueleto em um arquivo denominado CalculatorTest.php, que aparece em sua janela Projetos e é aberta no editor. 
+
+
+[start=5]
+. O IDE gera uma classe de teste de esqueleto em um arquivo denominado CalculatorTest.php, que aparece em sua janela Projetos e é aberta no editor. 
+
 image::images/test-class-in-project.png[]
 
 Observe que um teste é criado para cada anotação  ``@assert`` .
 
 
-[source,java]
+[source,php]
 ----
 
     /**
@@ -141,7 +155,10 @@
         );
     }
 ----
-6. É possível testar um arquivo individual ou todo o projeto. Para testar o projeto, clique com o botão direito do mouse no nó pai do projeto e selecione Testar ou pressione Alt-F6. Para testar o arquivo Calculator.php, clique com o botão direito do mouse no nó do arquivo e selecione Testar ou pressione Ctrl-F6/⌘-F6. Esse exemplo tem somente uma classe em um arquivo, portanto, os resultados são os mesmos. O IDE executa os testes e exibe os resultados na janela Resultados do Teste. 
+
+[start=6]
+. É possível testar um arquivo individual ou todo o projeto. Para testar o projeto, clique com o botão direito do mouse no nó pai do projeto e selecione Testar ou pressione Alt-F6. Para testar o arquivo Calculator.php, clique com o botão direito do mouse no nó do arquivo e selecione Testar ou pressione Ctrl-F6/⌘-F6. Esse exemplo tem somente uma classe em um arquivo, portanto, os resultados são os mesmos. O IDE executa os testes e exibe os resultados na janela Resultados do Teste. 
+
 image::images/test-results-narrow.png[]
 
 Uma versão textual mais detalhada dos resultados é exibida na janela de Saída.
@@ -161,12 +178,25 @@
 
 1. Na janela Projetos, clique com o botão direito do mouse no nó Calculadora e selecione Propriedades. Serão Exibidas as Propriedades do Projeto.
 2. Nas Propriedades do Projeto, selecione a categoria PhpUnit. Selecione Solicitar Grupos de Teste, Antes de Executar os Testes. Clique em OK.
+
 image::images/test-group-properties.png[]
-3. Abra  ``CalculatorTest.php``  no editor.
-4. Para os métodos  ``testAdd`` ,  ``testAdd3``  e  ``testAdd5`` , acrescente a anotação  ``@group production`` .
+
+
+[start=3]
+. Abra  ``CalculatorTest.php``  no editor.
+
+[start=4]
+. Para os métodos  ``testAdd`` ,  ``testAdd3``  e  ``testAdd5`` , acrescente a anotação  ``@group production`` .
+
 image::images/production-group-annotation.png[]
-5. para os métodos  ``testAdd2``  e  ``testAdd4`` , adicione as anotações  ``@group production``  e  ``desenvolvimento @group`` . image::images/production-development-group-code.png[]
-6. Clique com o botão direito do mouse no nó  ``Calculator.php``  e selecione Teste. Uma caixa de diálogo será aberta, perguntando quais grupos de teste serão executados. Selecione “development” e clique em OK. O IDE só executa os testes anotados com  ``@group development`` .
+
+
+[start=5]
+. para os métodos  ``testAdd2``  e  ``testAdd4`` , adicione as anotações  ``@group production``  e  ``desenvolvimento @group`` . image:images/production-development-group-code.png[]
+
+[start=6]
+. Clique com o botão direito do mouse no nó  ``Calculator.php``  e selecione Teste. Uma caixa de diálogo será aberta, perguntando quais grupos de teste serão executados. Selecione “development” e clique em OK. O IDE só executa os testes anotados com  ``@group development`` .
+
 image::images/select-test-group.png[]
 
 Para obter mais informações sobre os grupos de teste PhpUnit no NetBeans IDE, consulte o post do blog do NetBeans IDE para PHPlink:http://blogs.oracle.com/netbeansphp/entry/using_phpunit_test_groups[+Usando Grupos de Teste da Unidade PHP+].
@@ -187,13 +217,13 @@
 
 A janela Resultados do teste inclui os seguintes botões no lado esquerdo:
 
-* Reexecutar o teste image::images/rerun-button.png[]
-* Mostrar testes com falha image::images/show-failed.png[]
-* Mostrar testes que passaram image::images/show-passed.png[]
-* Mostrar testes que passaram, mas com erros image::images/show-error.png[]
-* Navegue entre mostrar o próximo resultado do teste image::images/next-test-button.png[] ou o resultado do teste anterior image::images/previous-test-button.png[]
+* Reexecutar o teste image:images/rerun-button.png[]
+* Mostrar testes com falha image:images/show-failed.png[]
+* Mostrar testes que passaram image:images/show-passed.png[]
+* Mostrar testes que passaram, mas com erros image:images/show-error.png[]
+* Navegue entre mostrar o próximo resultado do teste image:images/next-test-button.png[] ou o resultado do teste anterior image:images/previous-test-button.png[]
 
-A janela de Saída mostra a saída completa do script PHPUnit. Ela pode ser útil quando você não pode identificar a causa de um erro com as informações na janela Resultados do Teste. Como na janela Resultados do Teste, a janela de Saída inclui links para a linha da classe de teste que falhou. Também inclui botões no lado esquerdo para reexecutar o teste e para abrir a janela Opções do PHP. image::images/options-link-button.png[]
+A janela de Saída mostra a saída completa do script PHPUnit. Ela pode ser útil quando você não pode identificar a causa de um erro com as informações na janela Resultados do Teste. Como na janela Resultados do Teste, a janela de Saída inclui links para a linha da classe de teste que falhou. Também inclui botões no lado esquerdo para reexecutar o teste e para abrir a janela Opções do PHP. image:images/options-link-button.png[]
 
 image::images/test-result-output.png[]
 
@@ -231,18 +261,35 @@
 ?>
 
 ----
-2. Clique com o botão direito do mouse no nó do projeto. No menu de contexto, selecione Cobertura de Código > Coletar e Exibir a Cobertura de Código. Por default, Mostrar Barra do Editor também é selecionado. 
-image::images/turn-on-code-coverage.png[]
-3. O editor agora tem uma barra do editor de cobertura de código na parte inferior. Como a cobertura do código ainda não foi testada, a barra do editor informa 0% de cobertura. (Ela também exibe isso após você clicar em Limpar para limpar os resultados do teste). 
-image::images/editor-bar-before.png[]
-4. Clique em Testar para testar o arquivo aberto ou em Todos os Testes para executar todos os testes do projeto. Os Resultados do Teste serão Exibidos. Além disso, a barra Cobertura de Código lhe informa qual a porcentagem das instruções de código executáveis é coberta pelos testes. Na janela editor, o código coberto é realçado em verde e o código não coberto é realçado em vermelho.
 
-*Advertência: *se os arquivos de testes forem gerados novamente DEPOIS da adição da função add2, os testes PHPUnit não serão executados. Isso ocorre porque o PHPUnit cria duas funções testAdd2 conflitantes. Não diferencie funções acrescentando números no final, caso pretenda usar o PHPUnit em mais de uma função como essa. Consulte a link:http://www.phpunit.de/ticket/701[+documentação do PHPUnit+].
+[start=2]
+. Clique com o botão direito do mouse no nó do projeto. No menu de contexto, selecione Cobertura de Código > Coletar e Exibir a Cobertura de Código. Por default, Mostrar Barra do Editor também é selecionado. 
+
+image::images/turn-on-code-coverage.png[]
+
+
+[start=3]
+. O editor agora tem uma barra do editor de cobertura de código na parte inferior. Como a cobertura do código ainda não foi testada, a barra do editor informa 0% de cobertura. (Ela também exibe isso após você clicar em Limpar para limpar os resultados do teste). 
+ image::images/editor-bar-before.png[]
+
+
+[start=4]
+. Clique em Testar para testar o arquivo aberto ou em Todos os Testes para executar todos os testes do projeto. Os Resultados do Teste serão Exibidos. Além disso, a barra Cobertura de Código lhe informa qual a porcentagem das instruções de código executáveis é coberta pelos testes. Na janela editor, o código coberto é realçado em verde e o código não coberto é realçado em vermelho.
+
+WARNING: se os arquivos de testes forem gerados novamente DEPOIS da adição da função add2, os testes PHPUnit não serão executados. Isso ocorre porque o PHPUnit cria duas funções testAdd2 conflitantes. Não diferencie funções acrescentando números no final, caso pretenda usar o PHPUnit em mais de uma função como essa. Consulte a link:http://www.phpunit.de/ticket/701[+documentação do PHPUnit+].
 
 image::images/editor-bar-after.png[]
-5. Na Barra do Editor, clique em Relatório... O relatório de Cobertura de Código será aberto, mostrando os resultados de todos os testes executados em seu projeto. Os botões no relatório permitem limpar os resultados, reexecutar todos os testes ou desativar a cobertura de código (clique em Concluído). 
+
+
+[start=5]
+. Na Barra do Editor, clique em Relatório... O relatório de Cobertura de Código será aberto, mostrando os resultados de todos os testes executados em seu projeto. Os botões no relatório permitem limpar os resultados, reexecutar todos os testes ou desativar a cobertura de código (clique em Concluído). 
+
 image::images/code-coverage-report.png[]
-6. Você pode adicionar outra classe ao seu projeto, deletar e recriar os arquivos de teste e examinar novamente o relatório de cobertura de código. Sua nova classe será listada. No relatório a seguir, a classe  ``Calculator``  tem novamente uma função que não está incluída nos testes. 
+
+
+[start=6]
+. Você pode adicionar outra classe ao seu projeto, deletar e recriar os arquivos de teste e examinar novamente o relatório de cobertura de código. Sua nova classe será listada. No relatório a seguir, a classe  ``Calculator``  tem novamente uma função que não está incluída nos testes. 
+
 image::images/code-coverage-report2.png[]
 
 
@@ -259,10 +306,19 @@
 *Para definir uma configuração específica de projeto:*
 
 1. Clique com o botão direito do mouse no nó do projeto ou no nó Arquivos de Teste do projeto e selecione Propriedades. Isso abre a caixa de diálogo Propriedades.
+
 image::images/project-ctxmenu.png[]
-2. Selecione a categoria PHPUnit. Uma caixa de diálogo será aberta, na qual você pode selecionar um arquivo bootstrap personalizado, um arquivo de configuração XML ou um arquivo de conjunto de testes.
+
+
+[start=2]
+. Selecione a categoria PHPUnit. Uma caixa de diálogo será aberta, na qual você pode selecionar um arquivo bootstrap personalizado, um arquivo de configuração XML ou um arquivo de conjunto de testes.
+
 image::images/proj-properties.png[]
-3. Se não estiver familiarizado com a estrutura dos arquivos bootstrap ou de configuração XML, você poderá usar o NetBeans IDE para gerar um esqueleto para você. Você também pode localizar instruções sobre como utilizar a caixa de diálogo clicando em Ajuda 
+
+
+[start=3]
+. Se não estiver familiarizado com a estrutura dos arquivos bootstrap ou de configuração XML, você poderá usar o NetBeans IDE para gerar um esqueleto para você. Você também pode localizar instruções sobre como utilizar a caixa de diálogo clicando em Ajuda 
+
 image::images/proj-properties-selected.png[]
 
 A _opção bootstrap_ é necessária em projetos que utilizam um carregador de classe personalizado, por exemplo, implementando a função mágica  ``__autoload()`` . Você também pode utilizar a opção bootstrap se for necessário incluir um arquivo com antecedência, como um arquivo que defina as constantes globais utilizadas por várias classes no projeto.
@@ -285,14 +341,28 @@
 
 *Para executar testes Selenium no PHP:*
 
+
 1. Abra um prompt de comando e execute o comando  ``pear install Testing_Selenium-beta`` . É preciso ter `` PHP_HOME/php/PEAR``  em seu Caminho. Se o comando obtiver êxito, o prompt exibirá  ``install ok: channel://pear.php.net/Testing_Selenium-0.4.3`` .
-2. No IDE, abra Ferramentas > Plug-ins e instale o Módulo Selenium para PHP.
-3. Na janela Projetos, clique com o botão direito do mouse no nó do projeto Calculador. Selecione Novo > Outro. O Assistente de Novo Arquivo será aberto. Selecione Selenium e clique em Próximo. 
+
+[start=2]
+. No IDE, abra Ferramentas > Plug-ins e instale o Módulo Selenium para PHP.
+
+[start=3]
+. Na janela Projetos, clique com o botão direito do mouse no nó do projeto Calculador. Selecione Novo > Outro. O Assistente de Novo Arquivo será aberto. Selecione Selenium e clique em Próximo. 
+
 image::images/new-selenium.png[]
-4. Na primeira vez que você cria um teste Selenium, será exibida uma caixa de diálogo solicitando que você defina um diretório para os arquivos de teste Selenium. Esse diretório deverá ser separado do diretório dos arquivos de teste PHPUnit. Caso contrário, os testes Selenium serão executados cada vez que você executar testes de unidade. A execução de testes funcionais como o Selenium, normalmente leva mais tempo do que a execução de testes de unidade, portanto, você provavelmente não desejará executar esses testes cada vez que executar testes de unidade.
-5. Aceite os defaults na página Nome e Localização e clique em Finalizar. O novo arquivo de teste Selenium será aberto no editor e aparecerá na janela Projetos. 
+
+[start=4]
+. Na primeira vez que você cria um teste Selenium, será exibida uma caixa de diálogo solicitando que você defina um diretório para os arquivos de teste Selenium. Esse diretório deverá ser separado do diretório dos arquivos de teste PHPUnit. Caso contrário, os testes Selenium serão executados cada vez que você executar testes de unidade. A execução de testes funcionais como o Selenium, normalmente leva mais tempo do que a execução de testes de unidade, portanto, você provavelmente não desejará executar esses testes cada vez que executar testes de unidade.
+
+[start=5]
+. Aceite os defaults na página Nome e Localização e clique em Finalizar. O novo arquivo de teste Selenium será aberto no editor e aparecerá na janela Projetos. 
+
 image::images/selenium-test-in-project.png[]
-6. O item Executar Testes Selenium está agora adicionado ao menu de contexto do projeto. Clique nesse item e os resultados do teste Selenium serão exibidos na janela Resultados do Teste, da mesma forma que os resultados de testes PHPUnit.
+
+
+[start=6]
+. O item Executar Testes Selenium está agora adicionado ao menu de contexto do projeto. Clique nesse item e os resultados do teste Selenium serão exibidos na janela Resultados do Teste, da mesma forma que os resultados de testes PHPUnit.
 
 
 [[more-exercises]]
diff --git a/netbeans.apache.org/src/content/kb/docs/php/phpunit_ru.asciidoc b/netbeans.apache.org/src/content/kb/docs/php/phpunit_ru.asciidoc
index 83ef1ce..54ce2b0 100644
--- a/netbeans.apache.org/src/content/kb/docs/php/phpunit_ru.asciidoc
+++ b/netbeans.apache.org/src/content/kb/docs/php/phpunit_ru.asciidoc
@@ -33,10 +33,6 @@
 
 IDE NetBeans также поддерживает переносимую платформу тестирования Selenium в сочетании с PHPUnit. Подключаемый модуль Selenium доступен из центра обновления. При установке этот подключаемый модуль добавляет сервер Selenium к зарегистрированным серверам среды IDE, а также добавляет параметры тестирования Selenium к меню PHP.
 
-
-image::images/netbeans-stamp-80-74-73.png[title="Содержимое этой страницы применимо к IDE NetBeans 7.2, 7.3, 7.4 и 8.0"]
-
-
 *Для работы с этим учебным курсом требуется следующее программное обеспечение и ресурсы.*
 
 |===
@@ -62,6 +58,7 @@
 
 Чтобы проверить, распознает ли среда IDE NetBeans установочный комплект PHPUnit, откройте "Сервис" > "Параметры" (в ОС Mac откройте "Параметры NetBeans") и просмотрите окно "PHP". Откройте вкладку "Модульное тестирование". Должны отобразиться пути к сценариям PHPUnit и генератору схемы. Если сценарий отсутствует, щелкните 'Поиск' рядом с пустым полем. IDE выполнит поиск сценария в локальной системе. В качестве альтернативы можно нажать кнопку "Обзор" и выполнить поиск сценария.
 
+
 image::images/unittesting-options.png[]
 
 
@@ -87,7 +84,9 @@
 }
 ?>
 ----
-2. Добавьте блок комментариев с link:http://sebastian-bergmann.de/archives/628-Improved-Skeleton-Generator-in-PHPUnit-3.html[+аннотацией @assert+], а также пример входных и выходных данных. Обратите внимание – в этот пример включено одно неверное подтверждение.
+
+[start=2]
+. Добавьте блок комментариев с link:http://sebastian-bergmann.de/archives/628-Improved-Skeleton-Generator-in-PHPUnit-3.html[+аннотацией @assert+], а также пример входных и выходных данных. Обратите внимание – в этот пример включено одно неверное подтверждение.
 
 [source,php]
 ----
@@ -110,24 +109,41 @@
 ?>
 ----
 
-*Примечание.* Можно использовать завершение кода аннотаций для добавления аннотаций `@assert`. Для перемещения между параметрами используйте клавишу табуляции, или нажмите Enter после ввода значения параметра.
+NOTE:  Можно использовать завершение кода аннотаций для добавления аннотаций `@assert`. Для перемещения между параметрами используйте клавишу табуляции, или нажмите Enter после ввода значения параметра.
+
 
 image::images/assert-cc.png[]image::images/assert-cc-complete.png[]
-3. В окне "Проекты" правой кнопкой мыши щелкните узел Calculator.php и выберите команду "Сервис" > "Создать тесты PHPUnit". Обратите внимание на то, что тесты для всех файлов в проекте можно создавать в контекстном меню для узла "Исходные файлы".
+
+
+[start=3]
+. В окне "Проекты" правой кнопкой мыши щелкните узел Calculator.php и выберите команду "Сервис" > "Создать тесты PHPUnit". Обратите внимание на то, что тесты для всех файлов в проекте можно создавать в контекстном меню для узла "Исходные файлы".
+
+
 image::images/create-tests.png[]
-4. При первом создании тестов в диалоговом окне выводится вопрос о каталоге, в котором следует сохранить файлы тестов. В этом примере функция "Обзор" используется для создания папки  ``tests`` . 
+
+
+[start=4]
+. При первом создании тестов в диалоговом окне выводится вопрос о каталоге, в котором следует сохранить файлы тестов. В этом примере функция "Обзор" используется для создания папки  ``tests`` . 
+
+
 image::images/test-directory.png[]
 
-*Примечание.* Пользователи могут написать для проекта несколько тестов вручную. Если создано несколько тестов, вы можете отсортировать их в подпапки каталога файлов тестов, такие как "Важные" или "Быстрые". Тесты можно запустить во вложенной папке, щелкнув правой кнопкой мыши эту папку и выбрав 'Выполнить тесты'.
+NOTE:  Пользователи могут написать для проекта несколько тестов вручную. Если создано несколько тестов, вы можете отсортировать их в подпапки каталога файлов тестов, такие как "Важные" или "Быстрые". Тесты можно запустить во вложенной папке, щелкнув правой кнопкой мыши эту папку и выбрав 'Выполнить тесты'.
+
 
 image::images/test-in-folder.png[]
-5. В среде IDE в файле с именем CalculatorTest.php создается базовый класс, который отображается в окне "Проекты" и открывается в редакторе. 
+
+
+[start=5]
+. В среде IDE в файле с именем CalculatorTest.php создается базовый класс, который отображается в окне "Проекты" и открывается в редакторе. 
+
+
 image::images/test-class-in-project.png[]
 
 Обратите внимание на то, что тест создается для каждой аннотации  ``@assert`` .
 
 
-[source,java]
+[source,php]
 ----
 
     /**
@@ -141,11 +157,16 @@
         );
     }
 ----
-6. Можно выполнить тестирование отдельного файла или целого проекта. Для тестирования проекта щелкните правой кнопкой мыши родительский узел проекта и выберите команду "Тестировать" или нажмите сочетание клавиш ALT+F6. Для тестирования файла Calculator.php щелкните правой кнопкой узел файла и выберите 'Тестировать' или нажмите Ctrl-F6/⌘-F6. В этом примере существует только один класс в одном файле, так что результаты являются идентичными. Среда IDE выполняет тесты и отображает результаты в окне "Результаты теста". 
+
+[start=6]
+. Можно выполнить тестирование отдельного файла или целого проекта. Для тестирования проекта щелкните правой кнопкой мыши родительский узел проекта и выберите команду "Тестировать" или нажмите сочетание клавиш ALT+F6. Для тестирования файла Calculator.php щелкните правой кнопкой узел файла и выберите 'Тестировать' или нажмите Ctrl-F6/⌘-F6. В этом примере существует только один класс в одном файле, так что результаты являются идентичными. Среда IDE выполняет тесты и отображает результаты в окне "Результаты теста". 
+
+
 image::images/test-results-narrow.png[]
 
 Более подробная текстовая версия результатов отображается в окне "Вывод".
 
+
 image::images/test-result-output.png[]
 
 
@@ -161,12 +182,25 @@
 
 1. В окне "Проекты" правой кнопкой мыши щелкните узел "Калькулятор" и выберите "Свойства". Откроется раздел "Свойства проекта".
 2. В разделе "Свойства проекта" выберите категорию PhpUnit. Выберите "Запрос групп тестирования перед выполнением тестов". Нажмите кнопку "ОК".
+
 image::images/test-group-properties.png[]
-3. Откройте файл  ``CalculatorTest.php``  в редакторе.
-4. Для методов  ``testAdd`` ,  ``testAdd3``  и  ``testAdd5``  добавьте аннотацию  ``@group production`` .
+
+
+[start=3]
+. Откройте файл  ``CalculatorTest.php``  в редакторе.
+
+[start=4]
+. Для методов  ``testAdd`` ,  ``testAdd3``  и  ``testAdd5``  добавьте аннотацию  ``@group production`` .
+
 image::images/production-group-annotation.png[]
-5. Для методов  ``testAdd2``  и  ``testAdd4``  добавьте аннотации  ``@group production``  и  ``@group development`` . image::images/production-development-group-code.png[]
-6. Правой кнопкой мыши щелкните узел  ``Calculator.php``  и выберите "Тестировать". Откроется диалоговое окно выбора групп тестирования для выполнения. Выберите "разработка" и нажмите клавишу "ОК". Среда IDE выполняет только те тесты, которые имеют аннотацию  ``@group development`` .
+
+
+[start=5]
+. Для методов  ``testAdd2``  и  ``testAdd4``  добавьте аннотации  ``@group production``  и  ``@group development`` . image:images/production-development-group-code.png[]
+
+[start=6]
+. Правой кнопкой мыши щелкните узел  ``Calculator.php``  и выберите "Тестировать". Откроется диалоговое окно выбора групп тестирования для выполнения. Выберите "разработка" и нажмите клавишу "ОК". Среда IDE выполняет только те тесты, которые имеют аннотацию  ``@group development`` .
+
 image::images/select-test-group.png[]
 
 Дополнительные сведения о группах тестов PhpUnit в IDE NetBeans см. IDE NetBeans для публикации в блоге link:http://blogs.oracle.com/netbeansphp/entry/using_phpunit_test_groups[+Использование групп тестов единиц PHP+].
@@ -183,17 +217,19 @@
 * Текст правой панели со ссылками на строки кода теста со сбоем
 * Текст всплывающей подсказки, отображающийся при наведении курсора на тест со сбоем в панели пользовательского интерфейса
 
+
 image::images/test-results-tooltip.png[]
 
 На левой стороне окна "Результаты теста" расположены следующие кнопки:
 
-* Повторное выполнение теста image::images/rerun-button.png[];
-* Показать неуспешные тесты image::images/show-failed.png[]
-* Показать успешные тесты image::images/show-passed.png[]
-* Показать завершенные тесты, содержащие ошибки image::images/show-error.png[]
-* Переход между отображением следующего результата теста image::images/next-test-button.png[] или предыдущего результата тестаimage::images/previous-test-button.png[].
+* Повторное выполнение теста image:images/rerun-button.png[];
+* Показать неуспешные тесты image:images/show-failed.png[]
+* Показать успешные тесты image:images/show-passed.png[]
+* Показать завершенные тесты, содержащие ошибки image:images/show-error.png[]
+* Переход между отображением следующего результата теста image:images/next-test-button.png[] или предыдущего результата теста image:images/previous-test-button.png[].
 
-В окне "Вывод" отображаются все выходные данные сценария PHPUnit. Использование этой функции целесообразно, если причину ошибки невозможно установить с помощью информации в окне "Результаты теста". Как и окно "Результаты теста", окно "Вывод" содержит ссылки на строку класса теста с ошибкой. Также включает в себя кнопки на левой стороне для повторного выполнения теста и для открытия окна параметров PHP.image::images/options-link-button.png[]
+В окне "Вывод" отображаются все выходные данные сценария PHPUnit. Использование этой функции целесообразно, если причину ошибки невозможно установить с помощью информации в окне "Результаты теста". Как и окно "Результаты теста", окно "Вывод" содержит ссылки на строку класса теста с ошибкой. Также включает в себя кнопки на левой стороне для повторного выполнения теста и для открытия окна параметров PHP.image:images/options-link-button.png[]
+
 
 image::images/test-result-output.png[]
 
@@ -231,18 +267,37 @@
 ?>
 
 ----
-2. Щелкните узел проекта правой кнопкой мыши. В контекстном меню выберите команду "Охват кода" > "Сбор и отображения охвата кода". По умолчанию панель "Отобразить панель редактора" также выбрана. 
-image::images/turn-on-code-coverage.png[]
-3. Панель покрытия кода теперь отображается в нижней части редактора. Поскольку тестирование покрытия кода еще не выполнялось, на панели редактора отображается значение покрытия, равное 0%. (Это значение также отображается при нажатии на кнопку "Очистить" для очистки результатов теста). 
-image::images/editor-bar-before.png[]
-4. Выберите команду "Тестировать" для тестирования открытого файла или "Все тесты" для запуска всех тестов по проекту. Отобразится окно "Результаты теста". Кроме того, на панели "Покрытие кода" отобразится процент задействованных в тестах операторов исполняемого кода. Задействованный код в окне редактора выделяется зеленым цветом, а незадействованный код – красным цветом.
 
-*Внимание!*При повторном создании файлов теста ПОСЛЕ добавления функции add2 тесты PHPUnit выполняться не будут. Причиной этого является то, что PHPUnit создает две конфликтующие функции testAdd2. Не разграничивайте функции добавляемыми в конце номерами, если планируете использовать PHPUnit для нескольких подобных функций. См. link:http://www.phpunit.de/ticket/701[+документацию по PHPUnit+].
+[start=2]
+. Щелкните узел проекта правой кнопкой мыши. В контекстном меню выберите команду "Охват кода" > "Сбор и отображения охвата кода". По умолчанию панель "Отобразить панель редактора" также выбрана. 
+
+image::images/turn-on-code-coverage.png[]
+
+
+[start=3]
+. Панель покрытия кода теперь отображается в нижней части редактора. Поскольку тестирование покрытия кода еще не выполнялось, на панели редактора отображается значение покрытия, равное 0%. (Это значение также отображается при нажатии на кнопку "Очистить" для очистки результатов теста). 
+
+image::images/editor-bar-before.png[]
+
+
+[start=4]
+. Выберите команду "Тестировать" для тестирования открытого файла или "Все тесты" для запуска всех тестов по проекту. Отобразится окно "Результаты теста". Кроме того, на панели "Покрытие кода" отобразится процент задействованных в тестах операторов исполняемого кода. Задействованный код в окне редактора выделяется зеленым цветом, а незадействованный код – красным цветом.
+
+WARNING: При повторном создании файлов теста ПОСЛЕ добавления функции add2 тесты PHPUnit выполняться не будут. Причиной этого является то, что PHPUnit создает две конфликтующие функции testAdd2. Не разграничивайте функции добавляемыми в конце номерами, если планируете использовать PHPUnit для нескольких подобных функций. См. link:http://www.phpunit.de/ticket/701[+документацию по PHPUnit+].
+
 
 image::images/editor-bar-after.png[]
-5. На панели редактора щелкните элемент "Отчет...". Отобразится отчет "Покрытие кода", в котором будут показаны результаты всех тестов, выполненных для проекта. Кнопки в отчете позволяют очищать результаты, повторно выполнять тесты или отключать покрытие кода (нажмите кнопку "Готово"). 
+
+
+[start=5]
+. На панели редактора щелкните элемент "Отчет...". Отобразится отчет "Покрытие кода", в котором будут показаны результаты всех тестов, выполненных для проекта. Кнопки в отчете позволяют очищать результаты, повторно выполнять тесты или отключать покрытие кода (нажмите кнопку "Готово"). 
+
 image::images/code-coverage-report.png[]
-6. Разработчик может добавить другой класс в проект, удалить и заново создать файлы теста, а также еще раз изучить отчет о покрытии кода. Будет показан новый класс. В следующем отчете класс  ``Calculator``  снова содержит функцию, не включенную в тесты. 
+
+
+[start=6]
+. Разработчик может добавить другой класс в проект, удалить и заново создать файлы теста, а также еще раз изучить отчет о покрытии кода. Будет показан новый класс. В следующем отчете класс  ``Calculator``  снова содержит функцию, не включенную в тесты. 
+
 image::images/code-coverage-report2.png[]
 
 
@@ -259,10 +314,19 @@
 *Настройка конфигурации, связанной с проектом.*
 
 1. Щелкните правой кнопкой мыши узел проекта или узел проекта "Файлы тестов", а затем выберите пункт меню "Свойства". В результате откроется диалоговое окно "Свойства".
+
 image::images/project-ctxmenu.png[]
-2. Выберите в нем категорию "PHPUnit". Откроется диалоговое окно, в котором можно выбрать особый файл начальной загрузки, конфигурацию XML, сценарий PHPUnit или файл набора тестов.
+
+
+[start=2]
+. Выберите в нем категорию "PHPUnit". Откроется диалоговое окно, в котором можно выбрать особый файл начальной загрузки, конфигурацию XML, сценарий PHPUnit или файл набора тестов.
+
 image::images/proj-properties.png[]
-3. Пользователи, не знакомые со структурой начальной нагрузки или файлами конфигурации XML можно использовать IDE NetBeans для создания основы. Инструкции по использованию диалогового доступны при выборе 'Справка'. 
+
+
+[start=3]
+. Пользователи, не знакомые со структурой начальной нагрузки или файлами конфигурации XML можно использовать IDE NetBeans для создания основы. Инструкции по использованию диалогового доступны при выборе 'Справка'. 
+
 image::images/proj-properties-selected.png[]
 
 _Вариант начальной загрузки_ требуется для проектов, в которых используется собственный загрузчик классов, например, посредством реализации магической функции  ``__autoload()`` . Вариант начальной загрузки используется также при необходимости включения файла, содержащего, например, глобальные константы, которые используются несколькими классами в проекте, в будущем.
@@ -288,11 +352,21 @@
 1. Откройте командную строку и запустите команду  ``pear install Testing_Selenium-beta`` .  `` PHP_HOME/php/PEAR``  должен быть добавлен к пути. Если команда выполнена успешно, то командная строка отобразит текст  ``install ok: channel://pear.php.net/Testing_Selenium-0.4.3`` .
 2. В среде IDE откройте меню "Сервис" > "Подключаемые модули" и установите модуль Selenium для PHP.
 3. В окне "Проекты" правой кнопкой мыши щелкните узел проекта для проекта Calculator. Выберите команду "Создать" > "Прочие". Откроется мастер создания файла. Выберите параметр "Selenium" и нажмите кнопку "Далее". 
+
 image::images/new-selenium.png[]
-4. При первом создании теста Selenium будет открыто диалоговое окно, позволяющее установить каталог для файлов теста Selenium. Этот каталог должен отличаться от каталога файлов теста PHPUnit. В противном случае тесты Selenium будут запускаться при каждом запуске модульных тестов. Запуск функциональных тестов вида Selenium обычно занимает больше времени, чем запуск модульных тестов, поэтому их совместный запуск с модульными тестами скорее всего нежелателен.
-5. Примите параметры по умолчанию на странице "Имя и местоположение" и нажмите кнопку "Готово". Новый файл теста Selenium откроется в редакторе и появится в окне "Проекты". 
+
+
+[start=4]
+. При первом создании теста Selenium будет открыто диалоговое окно, позволяющее установить каталог для файлов теста Selenium. Этот каталог должен отличаться от каталога файлов теста PHPUnit. В противном случае тесты Selenium будут запускаться при каждом запуске модульных тестов. Запуск функциональных тестов вида Selenium обычно занимает больше времени, чем запуск модульных тестов, поэтому их совместный запуск с модульными тестами скорее всего нежелателен.
+
+[start=5]
+. Примите параметры по умолчанию на странице "Имя и местоположение" и нажмите кнопку "Готово". Новый файл теста Selenium откроется в редакторе и появится в окне "Проекты". 
+
 image::images/selenium-test-in-project.png[]
-6. Элемент "Выполнить тесты Selenium" добавлен в контекстное меню проекта. Щелкните этот элемент, и результаты теста Selenium отобразятся в окне "Результаты теста", как и для тестов PHPUnit.
+
+
+[start=6]
+. Элемент "Выполнить тесты Selenium" добавлен в контекстное меню проекта. Щелкните этот элемент, и результаты теста Selenium отобразятся в окне "Результаты теста", как и для тестов PHPUnit.
 
 
 [[more-exercises]]
diff --git a/netbeans.apache.org/src/content/kb/docs/php/phpunit_zh_CN.asciidoc b/netbeans.apache.org/src/content/kb/docs/php/phpunit_zh_CN.asciidoc
index 52c8aa2..622795a 100644
--- a/netbeans.apache.org/src/content/kb/docs/php/phpunit_zh_CN.asciidoc
+++ b/netbeans.apache.org/src/content/kb/docs/php/phpunit_zh_CN.asciidoc
@@ -34,9 +34,6 @@
 NetBeans IDE 还支持将 Selenium 可移植测试框架与 PHPUnit 结合使用。Selenium 插件可以从更新中心获取。安装此插件会将 Selenium 服务器添加到 IDE 的已注册服务器中,并将 Selenium 测试选项添加到 PHP 菜单。
 
 
-image::images/netbeans-stamp-80-74-73.png[title="此页上的内容适用于 NetBeans IDE 7.2、7.3、7.4 和 8.0"]
-
-
 *要学习本教程,您需要具备以下软件和资源。*
 
 |===
@@ -87,7 +84,9 @@
 }
 ?>
 ----
-2. 添加一个包含 link:http://sebastian-bergmann.de/archives/628-Improved-Skeleton-Generator-in-PHPUnit-3.html[+@assert 标注+]以及一些样例输入和输出的注释块。请注意,本示例中包括一个错误的断言。
+
+[start=2]
+. 添加一个包含 link:http://sebastian-bergmann.de/archives/628-Improved-Skeleton-Generator-in-PHPUnit-3.html[+@assert 标注+]以及一些样例输入和输出的注释块。请注意,本示例中包括一个错误的断言。
 
 [source,php]
 ----
@@ -112,22 +111,36 @@
 
 *注:*您可以使用标注代码完成来添加 `@assert` 标注。使用 Tab 键在参数之间导航,或者在填写参数值后单击 Enter。
 
-image::images/assert-cc.png[]image::images/assert-cc-complete.png[]
-3. 在 "Projects"(项目)窗口中,右键单击 "Calculator.php" 节点,然后选择 "Tools"(工具)> "Create PHPUnit Tests"(创建 PHPUnit 测试)。请注意,您可以在 "Source Files"(源文件)节点的上下文菜单中为项目中的所有文件创建测试。
+image::images/assert-cc.png[]
+
+image::images/assert-cc-complete.png[]
+
+
+[start=3]
+. 在 "Projects"(项目)窗口中,右键单击 "Calculator.php" 节点,然后选择 "Tools"(工具)> "Create PHPUnit Tests"(创建 PHPUnit 测试)。请注意,您可以在 "Source Files"(源文件)节点的上下文菜单中为项目中的所有文件创建测试。
+
 image::images/create-tests.png[]
-4. 第一次创建测试时,将会打开一个对话框,询问您要存储测试文件的目录。在本示例中,使用“浏览”功能创建了  ``tests``  目录。 
+
+
+[start=4]
+. 第一次创建测试时,将会打开一个对话框,询问您要存储测试文件的目录。在本示例中,使用“浏览”功能创建了  ``tests``  目录。 
+
 image::images/test-directory.png[]
 
 *注:*您可以手动为一个项目编写多个测试。如果编写多个测试,可以将它们分类到测试文件目录的子文件夹中,例如 "important" 或 "quick"。然后,可以通过右键单击某个子文件夹并选择 "Run Tests"(运行测试),来运行该文件夹中的测试。
 
 image::images/test-in-folder.png[]
-5. IDE 在一个名为 CalculatorTest.php 的文件中生成框架测试类,在 "Projects"(项目)窗口中会显示该文件,并在编辑器中将其打开。 
+
+
+[start=5]
+. IDE 在一个名为 CalculatorTest.php 的文件中生成框架测试类,在 "Projects"(项目)窗口中会显示该文件,并在编辑器中将其打开。 
+
 image::images/test-class-in-project.png[]
 
 请注意,将为每个  ``@assert``  标注创建一个测试。
 
 
-[source,java]
+[source,php]
 ----
 
     /**
@@ -141,7 +154,10 @@
         );
     }
 ----
-6. 您既可以测试单个文件,也可以测试整个项目。要测试项目,请右键单击项目的父节点,然后选择 "Test"(测试)或按 Alt-F6 组合键。要测试 Calculator.php 文件,请右键单击该文件的节点,然后选择 "Test"(测试),或者按 Ctrl-F6/⌘-F6 组合键。本示例只有一个文件,且该文件中只有一个类,因此两种测试结果相同。IDE 会运行测试并在 "Test Results"(测试结果)窗口中显示结果。 
+
+[start=6]
+. 您既可以测试单个文件,也可以测试整个项目。要测试项目,请右键单击项目的父节点,然后选择 "Test"(测试)或按 Alt-F6 组合键。要测试 Calculator.php 文件,请右键单击该文件的节点,然后选择 "Test"(测试),或者按 Ctrl-F6/⌘-F6 组合键。本示例只有一个文件,且该文件中只有一个类,因此两种测试结果相同。IDE 会运行测试并在 "Test Results"(测试结果)窗口中显示结果。 
+
 image::images/test-results-narrow.png[]
 
 测试结果的更详细文本版本会显示在 "Output"(输出)窗口中。
@@ -161,12 +177,25 @@
 
 1. 在 "Projects"(项目)窗口中,右键单击 "Calculator" 节点,然后选择 "Properties"(属性)。"Project Properties"(项目属性)打开。
 2. 在 "Project Properties"(项目属性)中,选择 "PhpUnit" 类别。选择 "Ask for Test Groups Before Running Tests"(在运行测试之前询问测试组)。单击 "OK"(确定)。
+
 image::images/test-group-properties.png[]
-3. 在编辑器中打开  ``CalculatorTest.php`` 。
-4. 为  ``testAdd`` 、 ``testAdd3``  和  ``testAdd5``  方法添加标注  ``@group production`` 。
+
+
+[start=3]
+. 在编辑器中打开  ``CalculatorTest.php`` 。
+
+[start=4]
+. 为  ``testAdd`` 、 ``testAdd3``  和  ``testAdd5``  方法添加标注  ``@group production`` 。
+
 image::images/production-group-annotation.png[]
-5. 对于方法  ``testAdd2``  和  ``testAdd4`` ,添加标注  ``@group production``  和  ``@group development`` 。image::images/production-development-group-code.png[]
-6. 右键单击  ``Calculator.php``  节点,然后选择 "Test"(测试)。此时将会打开一个对话框,询问您要运行哪些测试组。选择 "development",然后单击 "OK"(确定)。IDE 只运行使用  ``@group development``  标注的测试。
+
+
+[start=5]
+. 对于方法  ``testAdd2``  和  ``testAdd4`` ,添加标注  ``@group production``  和  ``@group development`` 。image:images/production-development-group-code.png[]
+
+[start=6]
+. 右键单击  ``Calculator.php``  节点,然后选择 "Test"(测试)。此时将会打开一个对话框,询问您要运行哪些测试组。选择 "development",然后单击 "OK"(确定)。IDE 只运行使用  ``@group development``  标注的测试。
+
 image::images/select-test-group.png[]
 
 有关 NetBeans IDE 中 PhpUnit 测试组的详细信息,请参见 "NetBeans IDE for PHP" 博客帖子:link:http://blogs.oracle.com/netbeansphp/entry/using_phpunit_test_groups[+Using PHP Unit Test Groups+](使用 PHP 单元测试组)。
@@ -187,13 +216,13 @@
 
 "Test Results"(测试结果)窗口在左侧包括以下按钮:
 
-* 重新运行测试按钮 image::images/rerun-button.png[]
-* 显示失败的测试 image::images/show-failed.png[]
-* 显示通过的测试 image::images/show-passed.png[]
-* 显示通过但出错的测试 image::images/show-error.png[]
-* 导航至下一个测试结果的按钮 image::images/next-test-button.png[],以及导航至上一个测试结果的按钮 image::images/previous-test-button.png[]
+* 重新运行测试按钮 image:images/rerun-button.png[]
+* 显示失败的测试 image:images/show-failed.png[]
+* 显示通过的测试 image:images/show-passed.png[]
+* 显示通过但出错的测试 image:images/show-error.png[]
+* 导航至下一个测试结果的按钮 image:images/next-test-button.png[],以及导航至上一个测试结果的按钮 image:images/previous-test-button.png[]
 
-"Output"(输出)窗口显示 PHPUnit 脚本的完整输出。当您无法通过 "Test Results"(测试结果)窗口中的信息找出错误原因时,该窗口会非常有用。与 "Test Results"(测试结果)窗口类似,"Output"(输出)窗口包括指向失败的测试类行的链接。它还在左侧包括用于重新运行测试和用于打开 "PHP Options"(PHP 选项)窗口的按钮。image::images/options-link-button.png[]
+"Output"(输出)窗口显示 PHPUnit 脚本的完整输出。当您无法通过 "Test Results"(测试结果)窗口中的信息找出错误原因时,该窗口会非常有用。与 "Test Results"(测试结果)窗口类似,"Output"(输出)窗口包括指向失败的测试类行的链接。它还在左侧包括用于重新运行测试和用于打开 "PHP Options"(PHP 选项)窗口的按钮。image:images/options-link-button.png[]
 
 image::images/test-result-output.png[]
 
@@ -231,18 +260,36 @@
 ?>
 
 ----
-2. 右键单击项目节点。从上下文菜单中,选择 "Code Coverage"(代码覆盖率)> "Collect and Display Code Coverage"(收集并显示代码覆盖率)。默认情况下,"Show Editor Bar"(显示编辑器栏)也会处于选定状态。 
+
+[start=2]
+. 右键单击项目节点。从上下文菜单中,选择 "Code Coverage"(代码覆盖率)> "Collect and Display Code Coverage"(收集并显示代码覆盖率)。默认情况下,"Show Editor Bar"(显示编辑器栏)也会处于选定状态。 
+
 image::images/turn-on-code-coverage.png[]
-3. 现在,编辑器会在底部显示代码覆盖率编辑器栏。由于尚未测试代码覆盖率,因此编辑器栏报告覆盖率为 0%。(在单击 "Clear"(清除)以清除测试结果后,编辑器栏也会显示覆盖率为 0%。) 
+
+
+[start=3]
+. 现在,编辑器会在底部显示代码覆盖率编辑器栏。由于尚未测试代码覆盖率,因此编辑器栏报告覆盖率为 0%。(在单击 "Clear"(清除)以清除测试结果后,编辑器栏也会显示覆盖率为 0%。) 
+
 image::images/editor-bar-before.png[]
-4. 单击 "Test"(测试)以测试打开的文件,或单击 "All Tests"(所有测试)以运行项目的所有测试。此时显示 "Test Results"(测试结果)。此外,"Code Coverage"(代码覆盖率)栏会告知您测试所覆盖的可执行代码语句百分比。在编辑器窗口中,覆盖的代码将以绿色突出显示,未覆盖的代码将以红色突出显示。
+
+
+[start=4]
+. 单击 "Test"(测试)以测试打开的文件,或单击 "All Tests"(所有测试)以运行项目的所有测试。此时显示 "Test Results"(测试结果)。此外,"Code Coverage"(代码覆盖率)栏会告知您测试所覆盖的可执行代码语句百分比。在编辑器窗口中,覆盖的代码将以绿色突出显示,未覆盖的代码将以红色突出显示。
 
 *警告:*如果在添加 add2 函数之后重新生成测试文件,则不会运行 PHPUnit 测试。这是因为 PHPUnit 创建了两个冲突的 testAdd2 函数。如果您计划对多个此类函数使用 PHPUnit,则不要通过在末尾附加数字的方式来区分函数。请参见 link:http://www.phpunit.de/ticket/701[+PHPUnit 文档+]。
 
 image::images/editor-bar-after.png[]
-5. 在编辑器栏中,单击 "Report..."(报告...)。代码覆盖率报告打开,其中显示了对项目运行的所有测试的结果。使用报告中的按钮,您可以清除结果,再次运行所有测试或取消激活代码覆盖率(单击 "Done"(完成))。 
+
+
+[start=5]
+. 在编辑器栏中,单击 "Report..."(报告...)。代码覆盖率报告打开,其中显示了对项目运行的所有测试的结果。使用报告中的按钮,您可以清除结果,再次运行所有测试或取消激活代码覆盖率(单击 "Done"(完成))。 
+
 image::images/code-coverage-report.png[]
-6. 您可以在项目中添加其他类;删除测试文件,然后重新创建测试文件;接下来,再次查看代码覆盖率报告。此时将会列出新类。在下面的报告中, ``Calculator``  类又有一个函数未包括在测试中。 
+
+
+[start=6]
+. 您可以在项目中添加其他类;删除测试文件,然后重新创建测试文件;接下来,再次查看代码覆盖率报告。此时将会列出新类。在下面的报告中, ``Calculator``  类又有一个函数未包括在测试中。 
+
 image::images/code-coverage-report2.png[]
 
 
@@ -259,10 +306,19 @@
 *要设置项目特定的配置,请执行以下操作:*
 
 1. 右键单击项目节点或项目的 "Test Files"(测试文件)节点,然后选择 "Properties"(属性)。这会打开 "Properties"(属性)对话框。
+
 image::images/project-ctxmenu.png[]
-2. 选择 PHPUnit 类别。此时将打开一个对话框,可以在其中选择定制引导、XML 配置、PHPUnit 脚本或测试套件文件。
+
+
+[start=2]
+. 选择 PHPUnit 类别。此时将打开一个对话框,可以在其中选择定制引导、XML 配置、PHPUnit 脚本或测试套件文件。
+
 image::images/proj-properties.png[]
-3. 如果您不熟悉引导或 XML 配置文件的结构,可以使用 NetBeans IDE 生成框架。您还可以通过单击 "Help"(帮助)查找有关使用该对话框的说明。
+
+
+[start=3]
+. 如果您不熟悉引导或 XML 配置文件的结构,可以使用 NetBeans IDE 生成框架。您还可以通过单击 "Help"(帮助)查找有关使用该对话框的说明。
+
 image::images/proj-properties-selected.png[]
 
 使用定制类加载器的项目需要_引导选项_,例如,通过实现 Magic 函数  ``__autoload()`` 。如果需要预先包含一个文件(如定义项目中的多个类所使用的全局常量的文件),则也需要使用引导选项。
@@ -286,13 +342,27 @@
 *对 PHP 运行 Selenium 测试:*
 
 1. 打开命令提示符,然后运行  ``pear install Testing_Selenium-beta``  命令。您需要在 Path 变量中包含  ``PHP_HOME/php/PEAR`` 。如果成功运行该命令,则将显示以下提示: ``install ok: channel://pear.php.net/Testing_Selenium-0.4.3`` 。
-2. 在 IDE 中,打开 "Tools"(工具)> "Plugins"(插件),然后安装 "Selenium Module for PHP"。
-3. 在 "Projects"(项目)窗口中,右键单击 Calculator 项目的节点。选择 "New"(新建)> "Other"(其他)。此时将打开新建文件向导。选择 "Selenium",然后单击 "Next"(下一步)。 
+
+[start=2]
+. 在 IDE 中,打开 "Tools"(工具)> "Plugins"(插件),然后安装 "Selenium Module for PHP"。
+
+[start=3]
+. 在 "Projects"(项目)窗口中,右键单击 Calculator 项目的节点。选择 "New"(新建)> "Other"(其他)。此时将打开新建文件向导。选择 "Selenium",然后单击 "Next"(下一步)。 
+
 image::images/new-selenium.png[]
-4. 第一次创建 Selenium 测试时,将会打开一个对话框,要求您设置 Selenium 测试文件的目录。此目录应不同于 PHPUnit 测试文件的目录。否则,每次运行单元测试时,Selenium 测试都会运行。运行 Selenium 之类的功能测试通常比运行单元测试所花费的时间长,因此在每次运行单元测试时,您可能不会希望运行这些测试。
-5. 接受 "Name and Location"(名称和位置)页中的默认设置,然后单击 "Finish"(完成)。新 Selenium 测试文件在编辑器中打开,并在 "Projects"(项目)窗口中显示。 
+
+
+[start=4]
+. 第一次创建 Selenium 测试时,将会打开一个对话框,要求您设置 Selenium 测试文件的目录。此目录应不同于 PHPUnit 测试文件的目录。否则,每次运行单元测试时,Selenium 测试都会运行。运行 Selenium 之类的功能测试通常比运行单元测试所花费的时间长,因此在每次运行单元测试时,您可能不会希望运行这些测试。
+
+[start=5]
+. 接受 "Name and Location"(名称和位置)页中的默认设置,然后单击 "Finish"(完成)。新 Selenium 测试文件在编辑器中打开,并在 "Projects"(项目)窗口中显示。 
+
 image::images/selenium-test-in-project.png[]
-6. 现在,"Run Selenium Tests"(运行 Selenium 测试)项已添加到项目的上下文菜单中。单击此项,Selenium 测试结果随即显示在与 PHPUnit 测试相同的 "Test Results"(测试结果)窗口中。
+
+
+[start=6]
+. 现在,"Run Selenium Tests"(运行 Selenium 测试)项已添加到项目的上下文菜单中。单击此项,Selenium 测试结果随即显示在与 PHPUnit 测试相同的 "Test Results"(测试结果)窗口中。
 
 
 [[more-exercises]]
diff --git a/netbeans.apache.org/src/content/kb/docs/php/project-setup.asciidoc b/netbeans.apache.org/src/content/kb/docs/php/project-setup.asciidoc
index 6b5a2ae..18a6adf 100644
--- a/netbeans.apache.org/src/content/kb/docs/php/project-setup.asciidoc
+++ b/netbeans.apache.org/src/content/kb/docs/php/project-setup.asciidoc
@@ -80,13 +80,13 @@
 A copy of the source files must be kept in a subfolder of the document root. However, you can have your Sources Folder in a different location than the document root and copy source files from this location to the document root. See <<copy-sources,Specifying the Run Configuration>>.
 
 [start=4]
-4. From the Default Encoding dropdown list, choose the default encoding for your project.
-5. If you want to store NetBeans metadata in a different location than your source files, select "Put NetBeans metadata into a separate directory." For example, you might want to store your sources in your document root but the NetBeans metadata in your NetBeansProjects directory. 
+. From the Default Encoding dropdown list, choose the default encoding for your project.
+. If you want to store NetBeans metadata in a different location than your source files, select "Put NetBeans metadata into a separate directory." For example, you might want to store your sources in your document root but the NetBeans metadata in your NetBeansProjects directory. 
 
 image::images/new-php-project-m1.png[]
 
 [start=6]
-6. Click Next. The Run Configuration panel opens.
+. Click Next. The Run Configuration panel opens.
 
 
 === Importing Existing Local Source Files into a Project
@@ -98,13 +98,13 @@
 NOTE: If you are going to run the <<localServer,project on a local web server>>, do not forget to specify <<copyFilesFromSourcesFolder,copying the source files>> to it.
 
 [start=4]
-4. From the Default Encoding dropdown list, choose the default encoding for your project.
-5. If you want to store NetBeans metadata in a different location than your source files, select "Put NetBeans metadata into a separate directory." For example, you might want to store your sources in your document root but the NetBeans metadata in your NetBeansProjects directory. 
+. From the Default Encoding dropdown list, choose the default encoding for your project.
+. If you want to store NetBeans metadata in a different location than your source files, select "Put NetBeans metadata into a separate directory." For example, you might want to store your sources in your document root but the NetBeans metadata in your NetBeansProjects directory. 
 
 image::images/new-php-project-with-ssources.png[]
 
 [start=6]
-6. Click Next. The Run Configuration panel opens.
+. Click Next. The Run Configuration panel opens.
 
 
 === Importing Existing Remote Source Files into a Project
@@ -116,8 +116,8 @@
 The document root is the folder where the local web server looks for files to open in the browser. The document root is specified in the web server link:../../trails/php.html#configuration[+configuration file+]. After installation, the New Project wizard locates the document root and by default specifies the following path:  ``<Document Root>\<New PHP Project>`` . Note that it is useful to be able to test the project on a local server.
 
 [start=4]
-4. If you want to store NetBeans metadata in a different location than your source files, select "Put NetBeans metadata into a separate directory." For example, you might want to store your sources in your document root but the NetBeans metadata in your NetBeansProjects directory.
-5. Click Next. The Remote Connection panel opens. The tutorial link:remote-hosting-and-ftp-account.html[+Deploying a PHP Application to a Remote Web Server+] describes how to set up remote connections.
+. If you want to store NetBeans metadata in a different location than your source files, select "Put NetBeans metadata into a separate directory." For example, you might want to store your sources in your document root but the NetBeans metadata in your NetBeansProjects directory.
+. Click Next. The Remote Connection panel opens. The tutorial link:remote-hosting-and-ftp-account.html[+Deploying a PHP Application to a Remote Web Server+] describes how to set up remote connections.
 
 
 == Specifying the Default Run Configuration of the New Project
@@ -150,12 +150,13 @@
 image::images/run-configuration-local-server-project-with-existing-sources.png[]
 
 [start=3]
-3. If you are creating the project from existing sources, you can choose which source file to use as the index file.
-4. To store the project's source files in a different directory than the NetBeans IDE project, select "Copy files from Sources Folder to another location". _If you are creating a project from existing sources, this is a required step, unless the existing sources were already in the web folder of your Apache server._
+. If you are creating the project from existing sources, you can choose which source file to use as the index file.
+. To store the project's source files in a different directory than the NetBeans IDE project, select "Copy files from Sources Folder to another location". _If you are creating a project from existing sources, this is a required step, unless the existing sources were already in the web folder of your Apache server._
 The field by default specifies the following path: `` <Document Root>\<New PHP Project>`` . Use the Browse button to specify a different path, if necessary.
 The document root is the folder where the web server looks for files to open in the browser. The document root is specified in the web server link:../../trails/php.html#configuration[+configuration file+]. 
 The wizard detects the Apache installation type, either a component or within a package, and provides the path to the default location of the  ``htdocs``  folder for the current installation type. Therefore, if you accepted the default settings during the installation of the Apache server or the AMP package, choose the path from the dropdown list.
-5. Click Finish. The IDE creates your PHP project.
+[start=5]
+. Click Finish. The IDE creates your PHP project.
 
 
 === Remote Web Site
@@ -170,21 +171,21 @@
 image::images/project-properties-script.png[]
 
 [start=2]
-2. To specify the location of the PHP engine, click the Configure button next to the Use Default PHP Interpreter box. The PHP Options dialog opens on the General tab.
+. To specify the location of the PHP engine, click the Configure button next to the Use Default PHP Interpreter box. The PHP Options dialog opens on the General tab.
 
 image::images/run-config-script-options-m1.png[]
 
 [start=3]
-3. In the PHP 5 Interpreter field, specify the path to the  ``php.exe``  file. Use the Browse or Search... button, if necessary.
-4. To specify how the script execution results will be shown, select the relevant checkbox in the Open Result In area. The following options are available:
+. In the PHP 5 Interpreter field, specify the path to the  ``php.exe``  file. Use the Browse or Search... button, if necessary.
+. To specify how the script execution results will be shown, select the relevant checkbox in the Open Result In area. The following options are available:
 
 * Output Window. The results of executing a script will appear in the output window in the bottom of the NetBeans IDE window.
 * Web Browser. The default browser window will open with the results of executing a script in the form of an HTML file.
 * Editor. The results of executing a script will open as an HTML file in the IDE editor window.
 
 [start=5]
-5. Click OK. The Options dialog box closes and the system returns to the Run Configuration panel. 
-6. Add any arguments, such as  ``debug=true`` , and any link:http://www.php.net/manual/en/features.commandline.options.php[+PHP command-line options+].
+. Click OK. The Options dialog box closes and the system returns to the Run Configuration panel. 
+. Add any arguments, such as  ``debug=true`` , and any link:http://www.php.net/manual/en/features.commandline.options.php[+PHP command-line options+].
 
 
 == Customizing the Project Setup
@@ -204,7 +205,7 @@
 image::images/pprop-sources.png[]
 
 [start=4]
-4. To complete the project customization, click OK.
+. To complete the project customization, click OK.
 
 
 === Run Configuration
@@ -221,7 +222,7 @@
 image::images/pprop-runconfig.png[]
 
 [start=6]
-6. To complete the project customization, click OK.
+. To complete the project customization, click OK.
 
 
 === PHP Include Path
@@ -237,7 +238,7 @@
 image::images/pprop-include-path.png[]
 
 [start=5]
-5. To complete the project customization, click OK.
+. To complete the project customization, click OK.
 
 
 === Formatting
@@ -252,14 +253,14 @@
 image::images/global-formatting.png[]
 
 [start=3]
-3. From the Language dropdown list, select the language to which the settings should be applied.
-4. From the Categories dropdown list, select the format items to which the setting will be applied.
-5. Set your desired formatting and click OK.
-6. Click the Help button for detailed information.
+. From the Language dropdown list, select the language to which the settings should be applied.
+. From the Categories dropdown list, select the format items to which the setting will be applied.
+. Set your desired formatting and click OK.
+. Click the Help button for detailed information.
 
 ==== To define project-specific formatting:
 
-1. Choose "Use project-specific options". The hidden area displays. image::images/pprop-formatting.png[]
+1. Choose "Use project-specific options". The hidden area displays. image:images/pprop-formatting.png[]
 2. From the Language dropdown list, select All Languages or PHP. In this case, All Languages means PHP and all other languages you have in your PHP project.
 3. From the Categories dropdown list, select the format items to which the setting will be applied.
 4. Set your desired formatting and click OK.
diff --git a/netbeans.apache.org/src/content/kb/docs/php/project-setup_ja.asciidoc b/netbeans.apache.org/src/content/kb/docs/php/project-setup_ja.asciidoc
index 86f98f1..d05496f 100644
--- a/netbeans.apache.org/src/content/kb/docs/php/project-setup_ja.asciidoc
+++ b/netbeans.apache.org/src/content/kb/docs/php/project-setup_ja.asciidoc
@@ -31,10 +31,6 @@
 
 このチュートリアルでは、NetBeans IDEでのPHPプロジェクトの設定方法を示します。
 
-
-image::images/netbeans-stamp-80-74-73.png[title="このページの内容は、NetBeans IDE 7.2、7.3、7.4および8.0に適用されます"]
-
-
 *このチュートリアルに従うには、次のソフトウェアとリソースが必要です。*
 
 |===
@@ -82,10 +78,18 @@
 
 ソース・ファイルのコピーは、ドキュメント・ルートのサブフォルダに保持される必要があります。ただし、ドキュメント・ルート以外の別の場所にソース・フォルダを保持することもでき、この場所からドキュメント・ルートにソース・ファイルをコピーすることもできます。<<copy-sources,実行構成の指定>>を参照してください。
 
-4. 「デフォルトのエンコーディング」ドロップダウン・リストから、プロジェクトでデフォルトとなるエンコーディングを選択します。
-5. NetBeansのメタデータをソース・ファイル以外の別の場所に保存する場合、「NetBeansのメタデータを別のディレクトリに配置」を選択します。たとえば、ソースはドキュメント・ルートに保存するが、NetBeansのメタデータはNetBeansProjectsディレクトリに保存する場合です。
+
+[start=4]
+. 「デフォルトのエンコーディング」ドロップダウン・リストから、プロジェクトでデフォルトとなるエンコーディングを選択します。
+
+[start=5]
+. NetBeansのメタデータをソース・ファイル以外の別の場所に保存する場合、「NetBeansのメタデータを別のディレクトリに配置」を選択します。たとえば、ソースはドキュメント・ルートに保存するが、NetBeansのメタデータはNetBeansProjectsディレクトリに保存する場合です。
+
 image::images/new-php-project-m1.png[]
-6. 「次」をクリックします。「実行構成」パネルが開きます。
+
+
+[start=6]
+. 「次」をクリックします。「実行構成」パネルが開きます。
 
 
 === プロジェクトへの既存のローカル・ソース・ファイルのインポート
@@ -93,11 +97,21 @@
 1. 「プロジェクト」領域で、「既存のソースを使用するPHPアプリケーション」を選択して「次」をクリックします。「新規PHPプロジェクト」>「名前と場所」パネルを開きます。
 2. 「プロジェクト名」テキスト・フィールドで、プロジェクトの名前を入力します。
 3. 「ソース・フォルダ」フィールドで、ソース・ファイルのインポート元のフォルダを指定します。
-*注意:* <<localServer,プロジェクトをローカルWebサーバー>>で実行する場合は、そのサーバーへの<<copyFilesFromSourcesFolder,ソース・ファイルのコピー>>を指定することを忘れないでください。
-4. 「デフォルトのエンコーディング」ドロップダウン・リストから、プロジェクトでデフォルトとなるエンコーディングを選択します。
-5. NetBeansのメタデータをソース・ファイル以外の別の場所に保存する場合、「NetBeansのメタデータを別のディレクトリに配置」を選択します。たとえば、ソースはドキュメント・ルートに保存するが、NetBeansのメタデータはNetBeansProjectsディレクトリに保存する場合です。
+
+NOTE:  <<localServer,プロジェクトをローカルWebサーバー>>で実行する場合は、そのサーバーへの<<copyFilesFromSourcesFolder,ソース・ファイルのコピー>>を指定することを忘れないでください。
+
+
+[start=4]
+. 「デフォルトのエンコーディング」ドロップダウン・リストから、プロジェクトでデフォルトとなるエンコーディングを選択します。
+
+[start=5]
+. NetBeansのメタデータをソース・ファイル以外の別の場所に保存する場合、「NetBeansのメタデータを別のディレクトリに配置」を選択します。たとえば、ソースはドキュメント・ルートに保存するが、NetBeansのメタデータはNetBeansProjectsディレクトリに保存する場合です。
+
 image::images/new-php-project-with-ssources.png[]
-6. 「次」をクリックします。「実行構成」パネルが開きます。
+
+
+[start=6]
+. 「次」をクリックします。「実行構成」パネルが開きます。
 
 
 === プロジェクトへの既存のリモート・ソース・ファイルのインポート
@@ -108,8 +122,12 @@
 
 ドキュメント・ルートは、ローカルWebサーバーがブラウザで開くファイルを探すフォルダです。ドキュメント・ルートは、Webサーバーのlink:../../trails/php.html#configuration[+構成ファイル+]で指定されています。インストール後、新規プロジェクト・ウィザードによってドキュメント・ルートが検索され、デフォルトでは、 ``<ドキュメント・ルート>\<新規PHPプロジェクト>`` というパスが指定されます。プロジェクトをローカル・サーバーでテストできることは便利です。
 
-4. NetBeansのメタデータをソース・ファイル以外の別の場所に保存する場合、「NetBeansのメタデータを別のディレクトリに配置」を選択します。たとえば、ソースはドキュメント・ルートに保存するが、NetBeansのメタデータはNetBeansProjectsディレクトリに保存する場合です。
-5. 「次」をクリックします。「リモート接続」パネルが開きます。チュートリアルのlink:remote-hosting-and-ftp-account.html[+リモートWebサーバーへのPHPアプリケーションのデプロイ+]に、リモート接続の設定方法が説明されています。
+
+[start=4]
+. NetBeansのメタデータをソース・ファイル以外の別の場所に保存する場合、「NetBeansのメタデータを別のディレクトリに配置」を選択します。たとえば、ソースはドキュメント・ルートに保存するが、NetBeansのメタデータはNetBeansProjectsディレクトリに保存する場合です。
+
+[start=5]
+. 「次」をクリックします。「リモート接続」パネルが開きます。チュートリアルのlink:remote-hosting-and-ftp-account.html[+リモートWebサーバーへのPHPアプリケーションのデプロイ+]に、リモート接続の設定方法が説明されています。
 
 
 == 新規プロジェクトのデフォルト実行構成の指定
@@ -138,13 +156,21 @@
 
 1. 「実行方法」ドロップダウン・リストから「ローカルWebサイト」を選択します。
 2. 「プロジェクトURL」フィールドで、自動的に生成されたURLアドレスを確認します。Apache HTTPサーバーがデフォルトのポート80で待機していることを確認します。そうでない場合、ポート番号を ``localhost:<port number>`` の形式で明示的に指定します。
+
 image::images/run-configuration-local-server-project-with-existing-sources.png[]
-3. 既存のソースからプロジェクトを作成する場合、インデックス・ファイルとして使用するソース・ファイルを選択できます。
-4. プロジェクトのソース・ファイルをNetBeans IDEプロジェクトとは異なるディレクトリに格納するには、「ファイルをソース・フォルダから別の場所にコピー」を選択します。_プロジェクトを既存のソースから作成する場合は、既存のソースがApacheサーバーのWebフォルダにすでに存在しないかぎり、これは必要なステップです。_
+
+
+[start=3]
+. 既存のソースからプロジェクトを作成する場合、インデックス・ファイルとして使用するソース・ファイルを選択できます。
+
+[start=4]
+. プロジェクトのソース・ファイルをNetBeans IDEプロジェクトとは異なるディレクトリに格納するには、「ファイルをソース・フォルダから別の場所にコピー」を選択します。_プロジェクトを既存のソースから作成する場合は、既存のソースがApacheサーバーのWebフォルダにすでに存在しないかぎり、これは必要なステップです。_
 フィールドにはデフォルトで、 ``<ドキュメント・ルート>\<新規PHPプロジェクト>`` というパスが指定されています。必要な場合は、「参照」ボタンを使用して別のパスを指定します。
 ドキュメント・ルートは、Webサーバーがブラウザで開くファイルを探すフォルダです。ドキュメント・ルートは、Webサーバーのlink:../../trails/php.html#configuration[+構成ファイル+]で指定されています。
 ウィザードは、Apacheのインストール・タイプ(コンポーネントまたはパッケージ内のいずれか)を検出し、現在のインストール・タイプ用に ``htdocs`` フォルダのデフォルトの場所へのパスを提供します。そのため、ApacheサーバーまたはAMPパッケージのインストール中にデフォルトの設定を受け入れた場合は、ドロップダウン・リストからパスを選択します。
-5. 「終了」をクリックします。IDEによってPHPプロジェクトが作成されます。
+
+[start=5]
+. 「終了」をクリックします。IDEによってPHPプロジェクトが作成されます。
 
 
 === リモートWebサイト
@@ -155,17 +181,31 @@
 === スクリプト
 
 1. 「実行方法」ドロップダウン・リストから「スクリプト」を選択します。
+
 image::images/project-properties-script.png[]
-2. PHPエンジンの場所を指定するには、「デフォルトのPHPインタプリタを使用」ボックスの横にある「構成」ボタンをクリックします。PHPオプションのダイアログの「一般」タブが開きます。
+
+
+[start=2]
+. PHPエンジンの場所を指定するには、「デフォルトのPHPインタプリタを使用」ボックスの横にある「構成」ボタンをクリックします。PHPオプションのダイアログの「一般」タブが開きます。
+
 image::images/run-config-script-options-m1.png[]
-3. 「PHP 5インタプリタ」フィールドで、 ``php.exe`` ファイルへのパスを指定します。必要な場合は、「参照」または「検索」ボタンを使用します。
-4. スクリプトの実行結果の表示方法を指定するには、「結果を開く場所」領域で適切なチェックボックスを選択します。次のオプションがあります。
+
+
+[start=3]
+. 「PHP 5インタプリタ」フィールドで、 ``php.exe`` ファイルへのパスを指定します。必要な場合は、「参照」または「検索」ボタンを使用します。
+
+[start=4]
+. スクリプトの実行結果の表示方法を指定するには、「結果を開く場所」領域で適切なチェックボックスを選択します。次のオプションがあります。
 
 * 出力ウィンドウ。スクリプトの実行結果は、NetBeans IDEウィンドウの下部にある出力ウィンドウに表示されます。
 * Webブラウザ。スクリプト実行の結果は、HTMLファイルの形式でデフォルトのブラウザ・ウィンドウに表示されます。
 * エディタ。スクリプト実行の結果は、HTMLファイルとしてIDEエディタ・ウィンドウに表示されます。
-5. 「OK」をクリックします。「オプション」ダイアログ・ボックスが閉じ、システムは「実行構成」パネルに戻ります。
-6.  ``debug=true`` などの任意の引数と、link:http://www.php.net/manual/en/features.commandline.options.php[+PHPコマンド行オプション+]を追加します。
+
+[start=5]
+. 「OK」をクリックします。「オプション」ダイアログ・ボックスが閉じ、システムは「実行構成」パネルに戻ります。
+
+[start=6]
+.  ``debug=true`` などの任意の引数と、link:http://www.php.net/manual/en/features.commandline.options.php[+PHPコマンド行オプション+]を追加します。
 
 
 == プロジェクト設定のカスタマイズ
@@ -181,8 +221,12 @@
 1. 「Webルート」フィールドには使用しているアプリケーション・サイトのルート・フォルダが表示されます。デフォルトでは、このフィールドにはソース・フォルダが表示されます。Webルートを変更するには、「参照」をクリックし、別のフォルダを選択します。
 2. 必要に応じて、「<<location,ファイルをソース・フォルダから別の場所にコピー>>」を選択し、記憶域フォルダへのパスを指定します。
 3. 必要に応じてエンコーディングを変更します。
+
 image::images/pprop-sources.png[]
-4. プロジェクトのカスタマイズを完了するには、「OK」をクリックします。
+
+
+[start=4]
+. プロジェクトのカスタマイズを完了するには、「OK」をクリックします。
 
 
 === 実行構成
@@ -195,8 +239,12 @@
 3. 「構成名」フィールドで、新規の実行構成の名前を入力し、「OK」をクリックします。「実行構成」パネルに戻ります。
 4. プロジェクトの作成中に、<<runConfiguration,デフォルトの実行構成>>を定義したのと同じ方法で実行構成の設定を定義し、「OK」をクリックします。新規の構成が「構成」ドロップダウン・リストに追加されます。
 5. 構成を除去するには、「構成」ドロップダウン・リストから構成を選択し、「削除」をクリックします。
+
 image::images/pprop-runconfig.png[]
-6. プロジェクトのカスタマイズを完了するには、「OK」をクリックします。
+
+
+[start=6]
+. プロジェクトのカスタマイズを完了するには、「OK」をクリックします。
 
 
 === PHPインクルード・パス
@@ -208,8 +256,12 @@
 2. 該当するフォルダを選択し、「開く」をクリックします。「PHPインクルード・パス」パネルに戻ります。新しいフォルダがリストに追加されます。
 3. リスト内を移動するには、「上へ移動」ボタンまたは「下へ移動」ボタンを使用します。
 4. インクードされたフォルダのリストからフォルダを除去するには、フォルダを選択し、「除去」をクリックします。
+
 image::images/pprop-include-path.png[]
-5. プロジェクトのカスタマイズを完了するには、「OK」をクリックします。
+
+
+[start=5]
+. プロジェクトのカスタマイズを完了するには、「OK」をクリックします。
 
 
 === フォーマット
@@ -220,15 +272,25 @@
 
 1. 「グローバル・オプションを使用」を選択します。
 2. 「グローバル・オプションを編集」をクリックします。IDEの「オプション」ダイアログで、「エディタ」>「フォーマット」タブが開きます。
+
 image::images/global-formatting.png[]
-3. 言語ドロップダウン・リストから、設定を適用する言語を選択します。
-4. 「カテゴリ」ドロップダウン・リストから、設定を適用するフォーマット項目を選択します。
-5. 目的のフォーマットを設定して「OK」をクリックします。
-6. 詳細情報については「ヘルプ」ボタンをクリックします。
+
+
+[start=3]
+. 言語ドロップダウン・リストから、設定を適用する言語を選択します。
+
+[start=4]
+. 「カテゴリ」ドロップダウン・リストから、設定を適用するフォーマット項目を選択します。
+
+[start=5]
+. 目的のフォーマットを設定して「OK」をクリックします。
+
+[start=6]
+. 詳細情報については「ヘルプ」ボタンをクリックします。
 
 *プロジェクト固有のフォーマットを定義するには、次を実行します。*
 
-1. 「プロジェクト固有オプションを使用」を選択します。非表示領域が表示されます。image::images/pprop-formatting.png[]
+1. 「プロジェクト固有オプションを使用」を選択します。非表示領域が表示されます。image:images/pprop-formatting.png[]
 2. 「言語」ドロップダウン・リストから、「すべての言語」または「PHP」を選択します。この場合の「すべての言語」とは、PHPと、PHPプロジェクト内にある他のすべての言語を意味します。
 3. 「カテゴリ」ドロップダウン・リストから、設定を適用するフォーマット項目を選択します。
 4. 目的のフォーマットを設定して「OK」をクリックします。
diff --git a/netbeans.apache.org/src/content/kb/docs/php/project-setup_pt_BR.asciidoc b/netbeans.apache.org/src/content/kb/docs/php/project-setup_pt_BR.asciidoc
index a7f56c2..b637356 100644
--- a/netbeans.apache.org/src/content/kb/docs/php/project-setup_pt_BR.asciidoc
+++ b/netbeans.apache.org/src/content/kb/docs/php/project-setup_pt_BR.asciidoc
@@ -32,9 +32,6 @@
 Este tutorial mostra como configurar um projeto PHP no NetBeans IDE.
 
 
-image::images/netbeans-stamp-80-74-73.png[title="O conteúdo desta página se aplica ao NetBeans IDE 7.2, 7.3, 7.4 e 8.0"]
-
-
 *Para seguir este tutorial, são necessários os recursos e o software a seguir.*
 
 |===
@@ -82,10 +79,18 @@
 
 Uma cópia dos arquivos de código-fonte deve ser mantida em uma subpasta da raiz do documento. Entretanto, você pode ter uma Pasta de Códigos-Fonte em um local diferente da raiz do documento e copiar os arquivos de código-fonte desse local para a raiz do documento. Consulte <<copy-sources,Especificando a Configuração de Execução>>.
 
-4. Na lista drop-down Codificação Default, selecione a codificação default do seu projeto.
-5. Se você desejar armazenar metadados do NetBeans em um local diferente dos seus arquivos de código-fonte, selecione "Colocar metadados do NetBeans em um diretório separado". Por exemplo, você pode querer armazenar seus códigos-fonte na raiz do documento, mas os metadados do NetBeans no diretório Projetos do NetBeans. 
+
+[start=4]
+. Na lista drop-down Codificação Default, selecione a codificação default do seu projeto.
+
+[start=5]
+. Se você desejar armazenar metadados do NetBeans em um local diferente dos seus arquivos de código-fonte, selecione "Colocar metadados do NetBeans em um diretório separado". Por exemplo, você pode querer armazenar seus códigos-fonte na raiz do documento, mas os metadados do NetBeans no diretório Projetos do NetBeans. 
+
 image::images/new-php-project-m1.png[]
-6. Clique em Próximo. O painel Configuração de Execução será aberto.
+
+
+[start=6]
+. Clique em Próximo. O painel Configuração de Execução será aberto.
 
 
 === Importando Arquivos Locais de Código-Fonte Existentes para um Projeto
@@ -93,11 +98,21 @@
 1. Na área Projetos, selecione Aplicação PHP com Códigos-Fonte Existentes e clique em Próximo. O painel Novo Projeto PHP > Nome e Localização será aberto.
 2. No campo de texto Nome do Projeto, digite o nome do projeto.
 3. No campo Pasta de Códigos-Fonte, especifique a pasta da qual você deseja importar os arquivos de código-fonte.
-*Observação:*<<localServer, se você for executar o projeto em um servidor Web local, não se esqueça de especificar a >><<copyFilesFromSourcesFolder,cópia dos arquivos de código-fonte>> para ele.
-4. Na lista drop-down Codificação Default, selecione a codificação default do seu projeto.
-5. Se você desejar armazenar metadados do NetBeans em um local diferente dos seus arquivos de código-fonte, selecione "Colocar metadados do NetBeans em um diretório separado". Por exemplo, você pode querer armazenar seus códigos-fonte na raiz do documento, mas os metadados do NetBeans no diretório Projetos do NetBeans. 
+
+NOTE: <<localServer, se você for executar o projeto em um servidor Web local, não se esqueça de especificar a >><<copyFilesFromSourcesFolder,cópia dos arquivos de código-fonte>> para ele.
+
+
+[start=4]
+. Na lista drop-down Codificação Default, selecione a codificação default do seu projeto.
+
+[start=5]
+. Se você desejar armazenar metadados do NetBeans em um local diferente dos seus arquivos de código-fonte, selecione "Colocar metadados do NetBeans em um diretório separado". Por exemplo, você pode querer armazenar seus códigos-fonte na raiz do documento, mas os metadados do NetBeans no diretório Projetos do NetBeans. 
+
 image::images/new-php-project-with-ssources.png[]
-6. Clique em Próximo. O painel Configuração de Execução será aberto.
+
+
+[start=6]
+. Clique em Próximo. O painel Configuração de Execução será aberto.
 
 
 === Importando Arquivos Remotos de Código-Fonte Existentes para um Projeto
@@ -108,8 +123,12 @@
 
 A raiz do documento é a pasta em que o servidor Web local procura pelos arquivos a serem abertos no browser. A raiz do documento é especificada no link:../../trails/php.html#configuration[+arquivo de configuração+] do servidor Web. Depois da instalação, o assistente Novo Projeto localiza a raiz do documento e por default especifica o seguinte caminho:  ``<Raiz do Documento>\<Novo Projeto PHP>`` . Observe que é útil poder testar o projeto em um servidor local.
 
-4. Se você desejar armazenar metadados do NetBeans em um local diferente dos seus arquivos de código-fonte, selecione "Colocar metadados do NetBeans em um diretório separado". Por exemplo, você pode querer armazenar seus códigos-fonte na raiz do documento, mas os metadados do NetBeans no diretório Projetos do NetBeans.
-5. Clique em Próximo. O painel Conexão Remota será aberto. O tutorial link:remote-hosting-and-ftp-account.html[+Implantando uma Aplicação PHP em um Servidor Web Remoto+] descreve como configurar conexões remotas.
+
+[start=4]
+. Se você desejar armazenar metadados do NetBeans em um local diferente dos seus arquivos de código-fonte, selecione "Colocar metadados do NetBeans em um diretório separado". Por exemplo, você pode querer armazenar seus códigos-fonte na raiz do documento, mas os metadados do NetBeans no diretório Projetos do NetBeans.
+
+[start=5]
+. Clique em Próximo. O painel Conexão Remota será aberto. O tutorial link:remote-hosting-and-ftp-account.html[+Implantando uma Aplicação PHP em um Servidor Web Remoto+] descreve como configurar conexões remotas.
 
 
 == Especificando a Configuração de Execução Default do Novo Projeto
@@ -138,13 +157,21 @@
 
 1. Na lista drop-down Executar Como, selecione Web Site Local.
 2. No campo URL do Projeto, verifique o endereço do URL gerado automaticamente. Verifique se o servidor HTTP do Apache ouve a porta default 80. Caso contrário, especifique explicitamente o número da porta no formato  ``localhost:<número da porta>`` .
+
 image::images/run-configuration-local-server-project-with-existing-sources.png[]
-3. Se você estiver criando um projeto a partir de códigos-fonte existentes, poderá selecionar qual arquivo de código-fonte usar como o arquivo de índice.
-4. Para armazenar os arquivos de código-fonte do projeto em um diretório diferente do diretório do projeto NetBeans IDE, selecione “Copiar arquivos da Pasta de Códigos-Fonte para outro local”. _Se você estiver criando um projeto a partir de códigos-fonte existentes, essa é uma etapa necessária, a não ser que os códigos-fonte existentes já estejam na pasta Web do servidor Apache._
+
+
+[start=3]
+. Se você estiver criando um projeto a partir de códigos-fonte existentes, poderá selecionar qual arquivo de código-fonte usar como o arquivo de índice.
+
+[start=4]
+. Para armazenar os arquivos de código-fonte do projeto em um diretório diferente do diretório do projeto NetBeans IDE, selecione “Copiar arquivos da Pasta de Códigos-Fonte para outro local”. _Se você estiver criando um projeto a partir de códigos-fonte existentes, essa é uma etapa necessária, a não ser que os códigos-fonte existentes já estejam na pasta Web do servidor Apache._
 O campo, por default, especifica o seguinte caminho:  ``<Raiz do Documento>\<Novo Projeto PHP>`` . Se necessário, use o botão Procurar para especificar um caminho diferente.
 A raiz do documento é a pasta em que o servidor Web procura por arquivos a serem abertos no browser. A raiz do documento é especificada no link:../../trails/php.html#configuration[+arquivo de configuração+] do servidor Web. 
 O assistente detecta o tipo de instalação do Apache, um componente ou dentro de um pacote, e fornece o caminho para a localização default da pasta  ``htdocs``  do tipo de instalação atual. Portanto, se você tiver aceitado as definições default durante a instalação do servidor Apache ou do pacote AMP, selecione o caminho na lista drop-down.
-5. Clique em Finalizar. O IDE criará o projeto PHP.
+
+[start=5]
+. Clique em Finalizar. O IDE criará o projeto PHP.
 
 
 === Web Site Remoto
@@ -155,17 +182,31 @@
 === Script
 
 1. Na lista drop-down Executar Como, selecione Script.
+
 image::images/project-properties-script.png[]
-2. Para especificar a localização do mecanismo PHP, clique no botão Configurar ao lado da caixa Usar Interpretador PHP Default. A caixa de diálogo Opções do PHP será aberta na guia Geral.
+
+
+[start=2]
+. Para especificar a localização do mecanismo PHP, clique no botão Configurar ao lado da caixa Usar Interpretador PHP Default. A caixa de diálogo Opções do PHP será aberta na guia Geral.
+
 image::images/run-config-script-options-m1.png[]
-3. No campo Interpretador do PHP 5, especifique o caminho para o arquivo  ``php.exe`` . Use o botão Procurar ou Pesquisar..., se necessário.
-4. Para especificar como os resultados da execução do script serão mostrados, marque a caixa de seleção relevante na área Abrir Resultado Em. As seguintes opções estão disponíveis:
+
+
+[start=3]
+. No campo Interpretador do PHP 5, especifique o caminho para o arquivo  ``php.exe`` . Use o botão Procurar ou Pesquisar..., se necessário.
+
+[start=4]
+. Para especificar como os resultados da execução do script serão mostrados, marque a caixa de seleção relevante na área Abrir Resultado Em. As seguintes opções estão disponíveis:
 
 * Janela de Saída. Os resultados da execução de um script aparecerão na janela de saída na parte inferior da janela do NetBeans IDE.
 * Web Browser. A janela do browser default se abrirá com os resultados da execução de um script no formato de um arquivo HTML.
 * Editor. Os resultados da execução de um script se abrirão como um arquivo HTML na janela do editor do IDE.
-5. Clique em OK. A caixa de diálogo Opções se fechará e o sistema retornará para o painel Configuração de Execução. 
-6. Adicionar qualquer argumento, como  ``debug=true``  e qualquer link:http://www.php.net/manual/en/features.commandline.options.php[+opção de linha de comandos PHP+].
+
+[start=5]
+. Clique em OK. A caixa de diálogo Opções se fechará e o sistema retornará para o painel Configuração de Execução. 
+
+[start=6]
+. Adicionar qualquer argumento, como  ``debug=true``  e qualquer link:http://www.php.net/manual/en/features.commandline.options.php[+opção de linha de comandos PHP+].
 
 
 == Personalizando a Configuração do Projeto
@@ -181,8 +222,12 @@
 1. O campo Raiz da Web mostra a pasta raiz do site da sua aplicação. Por default, o campo mostra a pasta Códigos-fonte. Para alterar a raiz da Web, clique em Procurar e selecione outra pasta.
 2. Selecione <<location,Copiar arquivos da pasta de Códigos-Fonte>> para outra localização, se necessário, e especifique o caminho para a pasta de armazenamento.
 3. Altere a codificação, se necessário 
+
 image::images/pprop-sources.png[]
-4. Para concluir a personalização do projeto, clique em OK.
+
+
+[start=4]
+. Para concluir a personalização do projeto, clique em OK.
 
 
 === Configuração de Execução
@@ -195,8 +240,12 @@
 3. No campo Nome da Configuração, digite o nome da nova configuração de execução e clique em OK. Você retornará para o painel Configuração de Execução.
 4. Especifique as definições da configuração de execução da mesma forma que a <<runConfiguration,configuração de execução default>> foi definida durante a criação do projeto e clique em OK. A nova configuração será adicionada à lista drop-down Configuração.
 5. Para remover uma configuração, selecione-a na lista drop-down Configuração e clique em Deletar. 
+
 image::images/pprop-runconfig.png[]
-6. Para concluir a personalização do projeto, clique em OK.
+
+
+[start=6]
+. Para concluir a personalização do projeto, clique em OK.
 
 
 === Incluir Caminho do PHP
@@ -208,8 +257,12 @@
 2. Selecione as pastas relevantes e clique em Abrir. Você retornará para o painel Incluir Caminho do PHP. A nova pasta será adicionada à lista.
 3. Para navegar pela lista, use os botões Mover para Cima e Mover para Baixo.
 4. Para remover uma pasta da lista de pastas incluída, selecione a pasta e clique em Remover.
+
 image::images/pprop-include-path.png[]
-5. Para concluir a personalização do projeto, clique em OK.
+
+
+[start=5]
+. Para concluir a personalização do projeto, clique em OK.
 
 
 === Formatando
@@ -220,15 +273,25 @@
 
 1. Selecione "Usar opções globais".
 2. Clique em Editar Opções Globais. A caixa de diálogo de opções do IDE abre na guia Editor > Formatação. 
+
 image::images/global-formatting.png[]
-3. Da lista drop-down Linguagem, selecione a linguagem na qual as definições deverão ser aplicadas.
-4. Na lista drop-down Categorias, selecione os itens de formato nos quais a definição será aplicada.
-5. Defina sua formatação desejada e clique em OK.
-6. Clique no botão Ajuda para obter informações detalhadas.
+
+
+[start=3]
+. Da lista drop-down Linguagem, selecione a linguagem na qual as definições deverão ser aplicadas.
+
+[start=4]
+. Na lista drop-down Categorias, selecione os itens de formato nos quais a definição será aplicada.
+
+[start=5]
+. Defina sua formatação desejada e clique em OK.
+
+[start=6]
+. Clique no botão Ajuda para obter informações detalhadas.
 
 *Para definir a formatação específica do projeto:*
 
-1. Selecione “Usar opções específicas do projeto". A área oculta será exibida. image::images/pprop-formatting.png[]
+1. Selecione “Usar opções específicas do projeto". A área oculta será exibida. image:images/pprop-formatting.png[]
 2. Na lista drop-down Linguagem, selecione Todas as Linguagens ou PHP. Nesse caso, Todas as Linguagens é o PHP e todas as outras linguagens você tem no seu projeto PHP.
 3. Na lista drop-down Categorias, selecione os itens de formato nos quais a definição será aplicada.
 4. Defina sua formatação desejada e clique em OK.
diff --git a/netbeans.apache.org/src/content/kb/docs/php/project-setup_ru.asciidoc b/netbeans.apache.org/src/content/kb/docs/php/project-setup_ru.asciidoc
index 6d76fb6..7df0f56 100644
--- a/netbeans.apache.org/src/content/kb/docs/php/project-setup_ru.asciidoc
+++ b/netbeans.apache.org/src/content/kb/docs/php/project-setup_ru.asciidoc
@@ -31,10 +31,6 @@
 
 В этом учебном руководстве описывается настройка проекта PHP в IDE NetBeans.
 
-
-image::images/netbeans-stamp-80-74-73.png[title="Содержимое этой страницы применимо к IDE NetBeans 7.2, 7.3, 7.4 и 8.0"]
-
-
 *Для работы с этим учебным курсом требуется следующее программное обеспечение и ресурсы.*
 
 |===
@@ -82,10 +78,18 @@
 
 Копия исходных файлов должна быть сохранена в подпапке корневого узла документов. Однако папка "Sources Folder" не обязательно должна находиться в корневом узле документов, ей можно назначить и другое местоположение и отсюда копировать исходные файлы в корневой узел. См. раздел <<copy-sources,Выбор настройки выполнения нового проекта>>.
 
-4. В раскрывающемся списке "Default Encoding" ("Кодировка по умолчанию") выберите для проекта кодировку по умолчанию.
-5. Если требуется сохранение метаданных NetBeans в другом местоположении (не в папке "Source files"), выберите команду "Put NetBeans metadata into a separate directory" ("Поместить метаданные NetBeans в отдельный каталог"). Например, может потребоваться сохранение исходных файлов в корневом узле документов, а метаданных NetBeans – в каталоге "NetBeansProjects". 
+
+[start=4]
+. В раскрывающемся списке "Default Encoding" ("Кодировка по умолчанию") выберите для проекта кодировку по умолчанию.
+
+[start=5]
+. Если требуется сохранение метаданных NetBeans в другом местоположении (не в папке "Source files"), выберите команду "Put NetBeans metadata into a separate directory" ("Поместить метаданные NetBeans в отдельный каталог"). Например, может потребоваться сохранение исходных файлов в корневом узле документов, а метаданных NetBeans – в каталоге "NetBeansProjects". 
+
 image::images/new-php-project-m1.png[]
-6. Нажмите кнопку "Далее". Откроется панель "Настройки выполнения".
+
+
+[start=6]
+. Нажмите кнопку "Далее". Откроется панель "Настройки выполнения".
 
 
 === Импорт существующих локальных исходных файлов в проект
@@ -93,11 +97,21 @@
 1. В области "Projects" выберите "PHP Application with Existing Sources" ("Приложение PHP с существующими исходными кодами") и нажмите "Next". Откроется панель "Новый проект PHP > Имя и местоположение".
 2. В текстовом поле "Project Name" ("Имя проекта") введите имя проекта.
 3. В поле "Sources Folder" укажите папку, из которой требуется импортировать исходные файлы.
-*Примечание.* Если планируется запуск <<localServer,проекта на локальном веб-сервере>>, не забудьте указать <<copyFilesFromSourcesFolder,копирование исходного файла>> в него.
-4. В раскрывающемся списке "Default Encoding" ("Кодировка по умолчанию") выберите для проекта кодировку по умолчанию.
-5. Если требуется сохранение метаданных NetBeans в другом местоположении (не в папке "Source files"), выберите команду "Put NetBeans metadata into a separate directory" ("Поместить метаданные NetBeans в отдельный каталог"). Например, может потребоваться сохранение исходных файлов в корневом узле документов, а метаданных NetBeans – в каталоге "NetBeansProjects". 
+
+NOTE:  Если планируется запуск <<localServer,проекта на локальном веб-сервере>>, не забудьте указать <<copyFilesFromSourcesFolder,копирование исходного файла>> в него.
+
+
+[start=4]
+. В раскрывающемся списке "Default Encoding" ("Кодировка по умолчанию") выберите для проекта кодировку по умолчанию.
+
+[start=5]
+. Если требуется сохранение метаданных NetBeans в другом местоположении (не в папке "Source files"), выберите команду "Put NetBeans metadata into a separate directory" ("Поместить метаданные NetBeans в отдельный каталог"). Например, может потребоваться сохранение исходных файлов в корневом узле документов, а метаданных NetBeans – в каталоге "NetBeansProjects". 
+
 image::images/new-php-project-with-ssources.png[]
-6. Нажмите кнопку "Далее". Откроется панель "Настройки выполнения".
+
+
+[start=6]
+. Нажмите кнопку "Далее". Откроется панель "Настройки выполнения".
 
 
 === Импорт существующих удаленных исходных файлов в проект
@@ -108,8 +122,12 @@
 
 Корневой узел документов представляет собой папку, в которой на локальном веб-сервере выполняется поиск файлов для просмотра в браузере. Корневой узел документов указан в link:../../trails/php.html#configuration[+файле настройки+] веб-сервера. После завершения установки мастер создания проекта определяет корневой узел документов и по умолчанию указывает следующий путь:  ``<Document Root>\<New PHP Project>`` . Обратите внимание, что полезно иметь возможность протестировать проект на локальном сервере.
 
-4. Если требуется сохранение метаданных NetBeans в другом местоположении (не в папке "Source files"), выберите команду "Put NetBeans metadata into a separate directory" ("Поместить метаданные NetBeans в отдельный каталог"). Например, может потребоваться сохранение исходных файлов в корневом узле документов, а метаданных NetBeans – в каталоге "NetBeansProjects".
-5. Нажмите кнопку "Далее". Откроется панель "Remote Connection" ("Удаленное подключение"). Процесс настройки удаленных подключений описан в учебном курсе link:remote-hosting-and-ftp-account.html[+Развертывание приложения PHP на удаленном веб-сервере+].
+
+[start=4]
+. Если требуется сохранение метаданных NetBeans в другом местоположении (не в папке "Source files"), выберите команду "Put NetBeans metadata into a separate directory" ("Поместить метаданные NetBeans в отдельный каталог"). Например, может потребоваться сохранение исходных файлов в корневом узле документов, а метаданных NetBeans – в каталоге "NetBeansProjects".
+
+[start=5]
+. Нажмите кнопку "Далее". Откроется панель "Remote Connection" ("Удаленное подключение"). Процесс настройки удаленных подключений описан в учебном курсе link:remote-hosting-and-ftp-account.html[+Развертывание приложения PHP на удаленном веб-сервере+].
 
 
 == Выбор настройки выполнения нового проекта по умолчанию
@@ -138,13 +156,21 @@
 
 1. В раскрывающемся списке "Run As" ("Выполнить как") выберите "Local Web Site" ("Локальный веб-сайт").
 2. В поле "Project URL" ("URL-адрес проекта") проверьте автоматически предложенный URL-адрес. Убедитесь, что сервер HTTP Apache прослушивает порт 80 по умолчанию. Если это не так, явным образом укажите номер порта в формате  ``localhost:<номер порта>`` .
+
 image::images/run-configuration-local-server-project-with-existing-sources.png[]
-3. При создании проекта из существующих исходных кодов можно выбрать файл исходного кода для использования в качестве файла индекса.
-4. Для хранения исходных файлов проекта в другом каталоге, отличном от проекта IDE NetBeans выберите "Копировать файлы из папки исходных файлов в другое местоположение". _При создании проекта из существующих исходных кодов данное действие является обязательным, кроме случаев, когда существующие исходные коды уже находились в папке "web" сервера Apache._
+
+
+[start=3]
+. При создании проекта из существующих исходных кодов можно выбрать файл исходного кода для использования в качестве файла индекса.
+
+[start=4]
+. Для хранения исходных файлов проекта в другом каталоге, отличном от проекта IDE NetBeans выберите "Копировать файлы из папки исходных файлов в другое местоположение". _При создании проекта из существующих исходных кодов данное действие является обязательным, кроме случаев, когда существующие исходные коды уже находились в папке "web" сервера Apache._
 В этом поле по умолчанию указан следующий путь:  `` <Document Root>\<New PHP Project>`` . Используйте кнопку "Browse" ("Обзор") для указания другого пути при необходимости.
 Корень документов – это папка, в которой веб-сервер ищет файлы для открытия в браузере. Корневой узел документов указан в link:../../trails/php.html#configuration[+файле настройки+] веб-сервера. 
 Мастер обнаруживает тип установки Apache либо как отдельного компонента, либо в составе пакета и предлагает путь к папке по умолчанию  ``htdocs``  (папка для текущего типа установки). Поэтому при принятии параметров по умолчанию в течение настройки сервера Apache или пакета AMP следует выбрать соответствующий путь в раскрывающемся списке.
-5. Нажмите кнопку 'Готово'. Среда IDE создает проект PHP.
+
+[start=5]
+. Нажмите кнопку 'Готово'. Среда IDE создает проект PHP.
 
 
 === Удаленный веб-сайт
@@ -155,17 +181,31 @@
 === Сценарий
 
 1. В раскрывающемся списке "Run As" выберите "Script".
+
 image::images/project-properties-script.png[]
-2. Чтобы указать местоположение механизма PHP, нажмите кнопку "Configure" рядом с окном "Use Default PHP Interpreter". На вкладке "General" откроется диалоговое окно "PHP Options".
+
+
+[start=2]
+. Чтобы указать местоположение механизма PHP, нажмите кнопку "Configure" рядом с окном "Use Default PHP Interpreter". На вкладке "General" откроется диалоговое окно "PHP Options".
+
 image::images/run-config-script-options-m1.png[]
-3. В поле "PHP 5 Interpreter" укажите путь к файлу  ``php.exe`` . При необходимости используйте кнопку "Browse" или кнопку "Search...".
-4. Для указания формы отображения результатов выполнения сценария установите соответствующий флажок в области "Open Result In". Доступны следующие параметры:
+
+
+[start=3]
+. В поле "PHP 5 Interpreter" укажите путь к файлу  ``php.exe`` . При необходимости используйте кнопку "Browse" или кнопку "Search...".
+
+[start=4]
+. Для указания формы отображения результатов выполнения сценария установите соответствующий флажок в области "Open Result In". Доступны следующие параметры:
 
 * Окно 'Результаты'. Результаты выполнения сценария будут отображены в окне выходных данных в нижней части окна IDE NetBeans.
 * Веб-браузер. Откроется окно браузера по умолчанию с результатами выполнения сценария в форме файла HTML.
 * Редактор. Результаты выполнения сценария отобразятся в виде файла HTML в окне редактора IDE.
-5. Нажмите кнопку "ОК". Диалоговое окно "Options" закроется, и будет выполнен возврат к панели "Run Configuration". 
-6. Добавьте любые аргументы, например  ``debug=true``  и любые link:http://www.php.net/manual/en/features.commandline.options.php[+необязательные параметры командной строки PHP+].
+
+[start=5]
+. Нажмите кнопку "ОК". Диалоговое окно "Options" закроется, и будет выполнен возврат к панели "Run Configuration". 
+
+[start=6]
+. Добавьте любые аргументы, например  ``debug=true``  и любые link:http://www.php.net/manual/en/features.commandline.options.php[+необязательные параметры командной строки PHP+].
 
 
 == Настройка проекта
@@ -181,8 +221,12 @@
 1. В поле "Web Root" отображается корневая папка местоположения приложения. По умолчанию в этом поле отображается папка "Sources". Для изменения корневого веб-узла нажмите кнопку "Browse" и выберите другую папку.
 2. При необходимости выберите "<<location,Copy files from Sources Folder to another location>>" и укажите путь к папке, в которой сохранены данные.
 3. При необходимости измените кодировку. 
+
 image::images/pprop-sources.png[]
-4. Для завершения настройки проекта нажмите кнопку "ОК".
+
+
+[start=4]
+. Для завершения настройки проекта нажмите кнопку "ОК".
 
 
 === Настройка выполнения проекта
@@ -195,8 +239,12 @@
 3. В поле "Configuration Name" введите имя новой настройки выполнения и нажмите кнопку "ОК". Будет выполнен возврат к панели "Настройки выполнения".
 4. Определите такие же параметры настройки, которые были установлены во время создания проекта была при определении <<runConfiguration,настройки выполнения по умолчанию>>, и нажмите кнопку "ОК". Новая настройка добавлена в раскрывающийся список "Configuration".
 5. Для удаления настройки выберите ее в раскрывающемся списке "Configuration" и нажмите кнопку "Delete" (Удалить). 
+
 image::images/pprop-runconfig.png[]
-6. Для завершения настройки проекта нажмите кнопку "ОК".
+
+
+[start=6]
+. Для завершения настройки проекта нажмите кнопку "ОК".
 
 
 === Панель "PHP Include Path"
@@ -208,8 +256,12 @@
 2. Выберите требуемые папки и нажмите "Open". Будет выполнен возврат к панели "PHP Include Path". Новая папка добавлена в список.
 3. Для перемещения по списку используйте кнопки "Move Up" и "Down".
 4. Для удаления папки из списка включенных папок выберите папку и нажмите "Remove".
+
 image::images/pprop-include-path.png[]
-5. Для завершения настройки проекта нажмите кнопку "ОК".
+
+
+[start=5]
+. Для завершения настройки проекта нажмите кнопку "ОК".
 
 
 === Форматирование
@@ -220,15 +272,25 @@
 
 1. Выберите "Use global options".
 2. Щeлкните "Edit Global Options". На вкладке "Editor > Formatting" откроется диалоговое окно "IDE Options". 
+
 image::images/global-formatting.png[]
-3. В раскрывающемся списке "Language" выберите язык, к которому должны быть применены параметры установки.
-4. В раскрывающемся списке "Categories" выберите элементы формата, к которым будут применены эти параметры.
-5. Укажите нужный тип форматирования и нажмите кнопку "ОК".
-6. Для получения дополнительных сведений нажмите кнопку "Help".
+
+
+[start=3]
+. В раскрывающемся списке "Language" выберите язык, к которому должны быть применены параметры установки.
+
+[start=4]
+. В раскрывающемся списке "Categories" выберите элементы формата, к которым будут применены эти параметры.
+
+[start=5]
+. Укажите нужный тип форматирования и нажмите кнопку "ОК".
+
+[start=6]
+. Для получения дополнительных сведений нажмите кнопку "Help".
 
 *Выбор форматирования конкретного проекта.*
 
-1. Выберите "Use project-specific options". Отображается скрытая область. image::images/pprop-formatting.png[]
+1. Выберите "Use project-specific options". Отображается скрытая область. image:images/pprop-formatting.png[]
 2. В раскрывающемся списке "Language" выберите "All Languages" или "PHP". В этом случае вариант "All Languages" означает PHP и все языки PHP проекта.
 3. В раскрывающемся списке "Categories" выберите элементы формата, к которым будут применены эти параметры.
 4. Укажите нужный тип форматирования и нажмите кнопку "ОК".
@@ -241,8 +303,12 @@
 
 *Добавление библиотек JavaScript к проекту.*
 
-1. Загрузите необходимые библиотеки JavaScript или укажите их местоположение, если они уже имеются.
-2. Скопируйте библиотеки JavaScript в папку с проектом PHP с помощью среды IDE или проводника файлов.
+
+[start=1]
+. Загрузите необходимые библиотеки JavaScript или укажите их местоположение, если они уже имеются.
+
+[start=2]
+. Скопируйте библиотеки JavaScript в папку с проектом PHP с помощью среды IDE или проводника файлов.
 
 Если свойства проекта установлены таким образом, что исходные коды проекта копируются в другое местоположение (см. <<sources,Исходные коды>>), то библиотеки JavaScript также будут копироваться в это местоположение. Если развертывание проекта осуществляется на удаленном сервере, то библиотеки JavaScript загружаются на этот сервере при следующей загрузке на него исходных кодов проекта.
 
diff --git a/netbeans.apache.org/src/content/kb/docs/php/project-setup_zh_CN.asciidoc b/netbeans.apache.org/src/content/kb/docs/php/project-setup_zh_CN.asciidoc
index 0b1d814..2ae9443 100644
--- a/netbeans.apache.org/src/content/kb/docs/php/project-setup_zh_CN.asciidoc
+++ b/netbeans.apache.org/src/content/kb/docs/php/project-setup_zh_CN.asciidoc
@@ -32,9 +32,6 @@
 本教程介绍了如何在 NetBeans IDE 中设置 PHP 项目。
 
 
-image::images/netbeans-stamp-80-74-73.png[title="此页上的内容适用于 NetBeans IDE 7.2、7.3、7.4 和 8.0"]
-
-
 *要学习本教程,您需要具备以下软件和资源。*
 
 |===
@@ -82,10 +79,18 @@
 
 源文件的副本必须保存在文档根目录的子文件夹中。不过,您也可以选择文档根目录以外的其他位置作为源文件夹,然后将该位置中的源文件复制到文档根目录。请参见<<copy-sources,指定运行配置>>。
 
-4. 从 "Default Encoding"(默认编码)下拉列表中,选择项目的默认编码。
-5. 如果要在不同于源文件的位置存储 NetBeans 元数据,请选择 "Put NetBeans metadata into a separate directory."(将 NetBeans 元数据放入单独的目录)。例如,您可能希望将源文件存储在文档根目录,而将 NetBeans 元数据存储在 NetBeansProjects 目录。 
+
+[start=4]
+. 从 "Default Encoding"(默认编码)下拉列表中,选择项目的默认编码。
+
+[start=5]
+. 如果要在不同于源文件的位置存储 NetBeans 元数据,请选择 "Put NetBeans metadata into a separate directory."(将 NetBeans 元数据放入单独的目录)。例如,您可能希望将源文件存储在文档根目录,而将 NetBeans 元数据存储在 NetBeansProjects 目录。 
+
 image::images/new-php-project-m1.png[]
-6. 单击 "Next"(下一步)。"Run Configuration"(运行配置)面板打开。
+
+
+[start=6]
+. 单击 "Next"(下一步)。"Run Configuration"(运行配置)面板打开。
 
 
 === 将现有的本地源文件导入到项目中
@@ -93,11 +98,21 @@
 1. 在 "Projects"(项目)区域中,选择 "PHP Application with Existing Sources"(基于现有源代码的 PHP 应用程序),然后单击 "Next"(下一步)。"New PHP Project"(新建 PHP 项目)的 "Name and Location"(名称和位置)面板打开。
 2. 在 "Project Name"(项目名称)文本字段中,输入项目的名称。
 3. 在 "Sources Folder"(源文件夹)字段中,指定要从中导入源文件的文件夹。
-*注:*如果要<<localServer,在本地 Web 服务器上运行项目>>,请不要忘记指定<<copyFilesFromSourcesFolder,将源文件复制>>到该服务器上。
-4. 从 "Default Encoding"(默认编码)下拉列表中,选择项目的默认编码。
-5. 如果要在不同于源文件的位置存储 NetBeans 元数据,请选择 "Put NetBeans metadata into a separate directory."(将 NetBeans 元数据放入单独的目录)。例如,您可能希望将源文件存储在文档根目录,而将 NetBeans 元数据存储在 NetBeansProjects 目录。 
+
+NOTE: 如果要<<localServer,在本地 Web 服务器上运行项目>>,请不要忘记指定<<copyFilesFromSourcesFolder,将源文件复制>>到该服务器上。
+
+
+[start=4]
+. 从 "Default Encoding"(默认编码)下拉列表中,选择项目的默认编码。
+
+[start=5]
+. 如果要在不同于源文件的位置存储 NetBeans 元数据,请选择 "Put NetBeans metadata into a separate directory."(将 NetBeans 元数据放入单独的目录)。例如,您可能希望将源文件存储在文档根目录,而将 NetBeans 元数据存储在 NetBeansProjects 目录。 
+
 image::images/new-php-project-with-ssources.png[]
-6. 单击 "Next"(下一步)。"Run Configuration"(运行配置)面板打开。
+
+
+[start=6]
+. 单击 "Next"(下一步)。"Run Configuration"(运行配置)面板打开。
 
 
 === 将现有的远程源文件导入到项目中
@@ -108,8 +123,12 @@
 
 本地 Web 服务器会从文档根目录文件夹中查找要在浏览器中打开的文件。文档根目录是在 Web 服务器link:../../trails/php.html#configuration[+配置文件+]中指定的。安装完成后,新建项目向导将会找到文档根目录,并在默认情况下指定以下路径: ``<文档根目录>\<新 PHP 项目>`` 。请注意,必须能够在本地服务器上测试项目,这一点很有用。
 
-4. 如果要在不同于源文件的位置存储 NetBeans 元数据,请选择 "Put NetBeans metadata into a separate directory."(将 NetBeans 元数据放入单独的目录)。例如,您可能希望将源文件存储在文档根目录,而将 NetBeans 元数据存储在 NetBeansProjects 目录。
-5. 单击 "Next"(下一步)。"Remote Connection"(远程连接)面板打开。link:remote-hosting-and-ftp-account.html[+将 PHP 应用程序部署到远程 Web 服务器+]教程介绍了如何设置远程连接。
+
+[start=4]
+. 如果要在不同于源文件的位置存储 NetBeans 元数据,请选择 "Put NetBeans metadata into a separate directory."(将 NetBeans 元数据放入单独的目录)。例如,您可能希望将源文件存储在文档根目录,而将 NetBeans 元数据存储在 NetBeansProjects 目录。
+
+[start=5]
+. 单击 "Next"(下一步)。"Remote Connection"(远程连接)面板打开。link:remote-hosting-and-ftp-account.html[+将 PHP 应用程序部署到远程 Web 服务器+]教程介绍了如何设置远程连接。
 
 
 == 指定新项目的默认运行配置
@@ -138,13 +157,21 @@
 
 1. 从 "Run As"(运行方式)下拉列表中,选择 "Local Web Site"(本地 Web 站点)。
 2. 在 "Project URL"(项目 URL)字段中,检查自动生成的 URL 地址。确保 Apache HTTP 服务器监听默认端口 80。如果不是这样,请采用  ``localhost:<port number>``  格式明确指定端口号。
+
 image::images/run-configuration-local-server-project-with-existing-sources.png[]
-3. 如果项目是基于现有源创建的,则可以选择将哪个源文件用作索引文件。
-4. 要将项目的源文件存储在不同于 NetBeans IDE 项目的目录中,请选择 "Copy files from Sources Folder to another location"(将源文件夹中的文件复制到其他位置)。_如果项目是基于现有源创建的,则这是必需的步骤,除非现有源已位于 Apache 服务器的 Web 文件夹中。_
+
+
+[start=3]
+. 如果项目是基于现有源创建的,则可以选择将哪个源文件用作索引文件。
+
+[start=4]
+. 要将项目的源文件存储在不同于 NetBeans IDE 项目的目录中,请选择 "Copy files from Sources Folder to another location"(将源文件夹中的文件复制到其他位置)。_如果项目是基于现有源创建的,则这是必需的步骤,除非现有源已位于 Apache 服务器的 Web 文件夹中。_
 默认情况下,该字段将指定以下路径: ``<文档根目录>\<新 PHP 项目>`` 。使用 "Browse"(浏览)按钮指定其他路径(如若需要)。
 Web 服务器会从文档根目录文件夹中查找要在浏览器中打开的文件。文档根目录是在 Web 服务器link:../../trails/php.html#configuration[+配置文件+]中指定的。
 该向导将检测 Apache 安装类型(组件或在包内),并提供当前安装类型的  ``htdocs``  文件夹默认位置的路径。因此,如果在安装 Apache 服务器或 AMP 包的过程中接受了默认设置,请从下拉列表中选择路径。
-5. 单击 "Finish"(完成)。IDE 将创建 PHP 项目。
+
+[start=5]
+. 单击 "Finish"(完成)。IDE 将创建 PHP 项目。
 
 
 === 远程 Web 站点
@@ -155,17 +182,31 @@
 === 脚本
 
 1. 从 "Run As"(运行方式)下拉列表中,选择 "Script"(脚本)。
+
 image::images/project-properties-script.png[]
-2. 要指定 PHP 引擎的位置,请单击 "Use Default PHP Interpreter"(使用默认 PHP 解释器)复选框旁边的 "Configure"(配置)按钮。此时将打开 PHP 的 "Options"(选项)对话框中的 "General"(常规)标签。
+
+
+[start=2]
+. 要指定 PHP 引擎的位置,请单击 "Use Default PHP Interpreter"(使用默认 PHP 解释器)复选框旁边的 "Configure"(配置)按钮。此时将打开 PHP 的 "Options"(选项)对话框中的 "General"(常规)标签。
+
 image::images/run-config-script-options-m1.png[]
-3. 在 "PHP 5 Interpreter"(PHP 5 解释器)字段中,指定  ``php.exe``  文件的路径。根据需要使用 "Browse..."(浏览...)或 "Search..."(搜索...)按钮。
-4. 要指定脚本执行结果的显示方式,请在 "Open Result In"(显示结果的位置)区域中选中相关的复选框。可以使用以下选项:
+
+
+[start=3]
+. 在 "PHP 5 Interpreter"(PHP 5 解释器)字段中,指定  ``php.exe``  文件的路径。根据需要使用 "Browse..."(浏览...)或 "Search..."(搜索...)按钮。
+
+[start=4]
+. 要指定脚本执行结果的显示方式,请在 "Open Result In"(显示结果的位置)区域中选中相关的复选框。可以使用以下选项:
 
 * "Output"(输出)窗口。将在 NetBeans IDE 窗口底部的输出窗口中显示执行脚本的结果。
 * Web 浏览器。将在默认的浏览器窗口中以 HTML 文件的形式显示执行脚本的结果。
 * 编辑器。将在 IDE 编辑器窗口中以 HTML 文件的形式显示执行脚本的结果。
-5. 单击 "OK"(确定)。将关闭 "Options"(选项)对话框,并且系统返回到 "Run Configuration"(运行配置)面板。 
-6. 添加任意参数,如  ``debug=true`` ,以及任意 link:http://www.php.net/manual/en/features.commandline.options.php[+PHP 命令行选项+]。
+
+[start=5]
+. 单击 "OK"(确定)。将关闭 "Options"(选项)对话框,并且系统返回到 "Run Configuration"(运行配置)面板。 
+
+[start=6]
+. 添加任意参数,如  ``debug=true`` ,以及任意 link:http://www.php.net/manual/en/features.commandline.options.php[+PHP 命令行选项+]。
 
 
 == 定制项目设置
@@ -181,8 +222,12 @@
 1. "Web Root"(Web 根目录)字段显示应用程序站点的根文件夹。默认情况下,该字段显示源文件夹。要更改 Web 根目录,请单击 "Browse"(浏览),然后选择其他文件夹。
 2. 如有必要,选中 "<<location,Copy files from Sources Folder>> to another location"(将源文件夹中的文件复制到其他位置),然后指定存储文件夹的路径。
 3. 如有必要,更改编码。 
+
 image::images/pprop-sources.png[]
-4. 要完成项目定制,请单击 "OK"(确定)。
+
+
+[start=4]
+. 要完成项目定制,请单击 "OK"(确定)。
 
 
 === 运行配置
@@ -195,8 +240,12 @@
 3. 在 "Configuration Name"(配置名称)字段中,输入新运行配置的名称,然后单击 "OK"(确定)。返回到 "Run Configuration"(运行配置)面板。
 4. 按照在项目创建过程中定义<<runConfiguration,默认运行配置>>的相同方式定义运行配置设置,然后单击 "OK"(确定)。"Configuration"(配置)下拉列表中将添加新配置。
 5. 要删除某个配置,请从 "Configuration"(配置)下拉列表中选择该配置,然后单击“删除”。 
+
 image::images/pprop-runconfig.png[]
-6. 要完成项目定制,请单击 "OK"(确定)。
+
+
+[start=6]
+. 要完成项目定制,请单击 "OK"(确定)。
 
 
 === PHP 包含路径
@@ -208,8 +257,12 @@
 2. 选择相关的文件夹,然后单击 "Open"(打开)。将返回到 "PHP Include Path"(PHP 包含路径)面板。此时列表中会添加新文件夹。
 3. 要在列表中导航,请使用 "Move Up"(上移)和 "Move Down"(下移)按钮。
 4. 要从包含的文件夹列表中删除某个文件夹,请选择该文件夹,然后单击 "Remove"(删除)。
+
 image::images/pprop-include-path.png[]
-5. 要完成项目定制,请单击 "OK"(确定)。
+
+
+[start=5]
+. 要完成项目定制,请单击 "OK"(确定)。
 
 
 === 格式设置
@@ -220,15 +273,25 @@
 
 1. 选择 "Use global options"(使用全局选项)。
 2. 单击 "Edit Global Options"(编辑全局选项)。此时将打开 IDE 的 "Options"(选项)对话框中的 "Editor"(编辑器)> "Formatting"(格式设置)标签。 
+
 image::images/global-formatting.png[]
-3. 从 "Language"(语言)下拉列表中,选择将应用该设置的语言。
-4. 从 "Categories"(类别)下拉列表中,选择将应用该设置的格式项。
-5. 设置所需的格式,然后单击 "OK"(确定)。
-6. 单击 "Help"(帮助)按钮,以获得详细信息。
+
+
+[start=3]
+. 从 "Language"(语言)下拉列表中,选择将应用该设置的语言。
+
+[start=4]
+. 从 "Categories"(类别)下拉列表中,选择将应用该设置的格式项。
+
+[start=5]
+. 设置所需的格式,然后单击 "OK"(确定)。
+
+[start=6]
+. 单击 "Help"(帮助)按钮,以获得详细信息。
 
 *定义特定于项目的格式设置:*
 
-1. 选择 "Use project-specific options"(使用特定于项目的选项)。此时将显示隐藏区域。image::images/pprop-formatting.png[]
+1. 选择 "Use project-specific options"(使用特定于项目的选项)。此时将显示隐藏区域。image:images/pprop-formatting.png[]
 2. 从 "Language"(语言)下拉列表中,选择 "All Languages"(所有语言)或 "PHP"。在这种情况下,"All Languages"(所有语言)代表 PHP 以及 PHP 项目中包含的其他所有语言。
 3. 从 "Categories"(类别)下拉列表中,选择将应用该设置的格式项。
 4. 设置所需的格式,然后单击 "OK"(确定)。
diff --git a/netbeans.apache.org/src/content/kb/docs/php/quickstart.asciidoc b/netbeans.apache.org/src/content/kb/docs/php/quickstart.asciidoc
index 9dab76f..56db74f 100644
--- a/netbeans.apache.org/src/content/kb/docs/php/quickstart.asciidoc
+++ b/netbeans.apache.org/src/content/kb/docs/php/quickstart.asciidoc
@@ -70,16 +70,16 @@
 image::images/new-project-name-location.png[title="Name and Location panel of New PHP Project wizard, with Source Folder location as XAmpp document root."]
 
 [start=4]
-4. In the Project Name text field, enter  ``NewPHPProject`` .
-5. In the Sources Folder field, browse for your PHP document root and create a subfolder there called  ``NewPHPProject`` . The document root is the folder where the web server looks for files to open in the browser. The document root is specified in the web server link:index.html#configuration[+configuration file+]. For example, on Xampp, the document root is XAMPP_HOME/htdocs.
-6. Leave all other fields with their default values. Click Next. The Run Configuration window opens. 
+. In the Project Name text field, enter  ``NewPHPProject`` .
+. In the Sources Folder field, browse for your PHP document root and create a subfolder there called  ``NewPHPProject`` . The document root is the folder where the web server looks for files to open in the browser. The document root is specified in the web server link:index.html#configuration[+configuration file+]. For example, on Xampp, the document root is XAMPP_HOME/htdocs.
+. Leave all other fields with their default values. Click Next. The Run Configuration window opens. 
 
 image::images/new-project-run-config.png[]
 
 [start=7]
-7. In the Run As drop-down list, select Local Web Site. The project will run on your local Apache server. Your other options are to run the project remotely via FTP and to run it from the command line.
-8. Leave the Project URL at default.
-9. Click Finish. The IDE creates the project.
+. In the Run As drop-down list, select Local Web Site. The project will run on your local Apache server. Your other options are to run the project remotely via FTP and to run it from the command line.
+. Leave the Project URL at default.
+. Click Finish. The IDE creates the project.
 
 Learn more about link:project-setup.html[+Setting up a PHP project in NetBeans+].
 
@@ -91,7 +91,7 @@
 image::images/getting-started-open-new-project.png[]
 
 [start=3]
-3. Enter the following code inside the  ``<?php ?>``  block:
+. Enter the following code inside the  ``<?php ?>``  block:
 
 [source,php]
 ----
@@ -100,7 +100,7 @@
 ----
 
 [start=4]
-4. To run the project, position the cursor on the NewPHPProject node and choose Run from the context menu. The figure below shows what you should see in the browser window:
+. To run the project, position the cursor on the NewPHPProject node and choose Run from the context menu. The figure below shows what you should see in the browser window:
 
 image::images/getting-started-browser-hello-world.png[]
 
diff --git a/netbeans.apache.org/src/content/kb/docs/php/quickstart_ja.asciidoc b/netbeans.apache.org/src/content/kb/docs/php/quickstart_ja.asciidoc
index 5df6fe2..d665ace 100644
--- a/netbeans.apache.org/src/content/kb/docs/php/quickstart_ja.asciidoc
+++ b/netbeans.apache.org/src/content/kb/docs/php/quickstart_ja.asciidoc
@@ -31,10 +31,6 @@
 
 このドキュメントは、PHP開発用の環境の準備、PHPプロジェクトの設定、およびPHP向けのNetBeans IDEでの最初のPHPアプリケーションの開発と実行に関する、一般的なガイドラインを示します。
 
-
-image::images/netbeans-stamp-80-74-73.png[title="このページの内容は、NetBeans IDE 7.2、7.3、7.4および8.0に適用されます"]
-
-
 *このチュートリアルに従うには、次のソフトウェアとリソースが必要です。*
 
 |===
@@ -71,14 +67,30 @@
 1. IDEを起動し、「プロジェクト」ウィンドウに移動して、「ファイル」>「新規プロジェクト」を選択します。「プロジェクトを選択」パネルが開きます。
 2. 「カテゴリ」リストで、PHPを選択します。
 3. 「プロジェクト」領域で、「PHPアプリケーション」を選択して「次」をクリックします。「新規PHPプロジェクト」>「名前と場所」パネルを開きます。
+
 image::images/new-project-name-location.png[title="XAmppドキュメント・ルートとして「ソース・フォルダ」の場所が指定された、新規PHPプロジェクト・ウィザードの「名前と場所」パネル。"]
-4. 「プロジェクト名」テキスト・フィールドに、「 ``NewPHPProject`` 」と入力します。
-5. 「ソース・フォルダ」フィールドで、PHPドキュメント・ルートを参照し、そこに ``NewPHPProject`` という名前のサブフォルダを作成します。ドキュメント・ルートは、Webサーバーがブラウザで開くファイルを探すフォルダです。ドキュメント・ルートは、Webサーバーのlink:../../trails/php.html#configuration[+構成ファイル+]で指定されています。たとえば、Xamppでは、ドキュメント・ルートはXAMPP_HOME/htdocsです。
-6. 他のフィールドはすべてデフォルト値のままにします。「次」をクリックします。「実行構成」ウィンドウが開きます。
+
+
+[start=4]
+. 「プロジェクト名」テキスト・フィールドに、「 ``NewPHPProject`` 」と入力します。
+
+[start=5]
+. 「ソース・フォルダ」フィールドで、PHPドキュメント・ルートを参照し、そこに ``NewPHPProject`` という名前のサブフォルダを作成します。ドキュメント・ルートは、Webサーバーがブラウザで開くファイルを探すフォルダです。ドキュメント・ルートは、Webサーバーのlink:../../trails/php.html#configuration[+構成ファイル+]で指定されています。たとえば、Xamppでは、ドキュメント・ルートはXAMPP_HOME/htdocsです。
+
+[start=6]
+. 他のフィールドはすべてデフォルト値のままにします。「次」をクリックします。「実行構成」ウィンドウが開きます。
+
 image::images/new-project-run-config.png[]
-7. 「実行方法」ドロップダウン・リストで、「ローカルWebサイト」を選択します。プロジェクトはローカルのApacheサーバーで実行されます。その他のオプションは、FTP経由でリモートでのプロジェクトの実行と、コマンド行からのプロジェクトの実行です。
-8. プロジェクトのURLはデフォルトのままにします。
-9. 「終了」をクリックします。IDEによってプロジェクトが作成されます。
+
+
+[start=7]
+. 「実行方法」ドロップダウン・リストで、「ローカルWebサイト」を選択します。プロジェクトはローカルのApacheサーバーで実行されます。その他のオプションは、FTP経由でリモートでのプロジェクトの実行と、コマンド行からのプロジェクトの実行です。
+
+[start=8]
+. プロジェクトのURLはデフォルトのままにします。
+
+[start=9]
+. 「終了」をクリックします。IDEによってプロジェクトが作成されます。
 
 詳細は、link:project-setup.html[+NetBeansでのPHPプロジェクトの設定+]で学習してください。
 
@@ -87,23 +99,33 @@
 
 1. IDEを起動し、「ファイル」>「プロジェクトを開く」を選択します。「プロジェクトを開く」ダイアログ・ボックスが開きます。
 2. 「 ``NewPHPProject`` 」を選択し、「プロジェクトを開く」をクリックします。「プロジェクト」ウィンドウに「NewPHPProject」ツリーが表示され、プロジェクトの ``index.php`` ファイルがエディタおよび「ナビゲータ」ウィンドウで開きます。
+
 image::images/getting-started-open-new-project.png[]
-3. 次のコードを ``<?php?>>`` ブロック内部に入力します。
 
-[source,java]
+
+[start=3]
+. 次のコードを ``<?php?>>`` ブロック内部に入力します。
+
+[source,php]
 ----
-
  echo "Hello, world! This is my first PHP project!";
 ----
-4. プロジェクトを実行するには、カーソルを「NewPHPProject」ノードに置き、コンテキスト・メニューから「実行」を選択します。ブラウザ・ウィンドウには、次の図のように表示されるはずです。
+
+
+[start=4]
+. プロジェクトを実行するには、カーソルを「NewPHPProject」ノードに置き、コンテキスト・メニューから「実行」を選択します。ブラウザ・ウィンドウには、次の図のように表示されるはずです。
+
 image::images/getting-started-browser-hello-world.png[]
+
 おめでとうございます。作成したプログラムは正常に動作します。
 
 
 == PHP向けのNetBeans IDEでのデータベース・サーバーの使用
 
 PHP向けのNetBeans IDEでは様々なデータベース・サーバーを使用できますが、最もポピュラなのはMySQLサーバーです。link:http://dev.mysql.com/downloads/mysql/5.1.html[+ここ+]からダウンロードできます。
-*注意:* 製品の推奨バージョンはMySQL Server 5.0です。
+
+NOTE:  製品の推奨バージョンはMySQL Server 5.0です。
+
 関連項目:
 
 * link:../ide/install-and-configure-mysql-server.html[+Windowsオペレーティング・システムでのMySQLデータベース・サーバーの設定+]
diff --git a/netbeans.apache.org/src/content/kb/docs/php/quickstart_pt_BR.asciidoc b/netbeans.apache.org/src/content/kb/docs/php/quickstart_pt_BR.asciidoc
index d1cda16..bc908b8 100644
--- a/netbeans.apache.org/src/content/kb/docs/php/quickstart_pt_BR.asciidoc
+++ b/netbeans.apache.org/src/content/kb/docs/php/quickstart_pt_BR.asciidoc
@@ -31,10 +31,6 @@
 
 Este documento oferece orientações gerais para preparar o ambiente de desenvolvimento do PHP, configurar um projeto PHP e desenvolver e executar a sua primeira aplicação PHP no NetBeans IDE para PHP.
 
-
-image::images/netbeans-stamp-80-74-73.png[title="O conteúdo desta página se aplica ao NetBeans IDE 7.2, 7.3, 7.4 e 8.0"]
-
-
 *Para seguir este tutorial, são necessários os recursos e o software a seguir.*
 
 |===
@@ -71,14 +67,30 @@
 1. Inicie o IDE, alterne para a janela Projetos e selecione Arquivo > Novo projeto. O painel Escolher Projeto será aberto
 2. Na lista Categorias, selecione PHP.
 3. Na área Projetos, selecione Aplicação PHP e clique em Próximo. O painel Novo Projeto PHP > Nome e Localização será aberto. 
+
 image::images/new-project-name-location.png[title="Painel Nome e Localização do assistente Novo Projeto PHP, com localização da Pasta de Código-fonte como raiz de documento XAmpp"]
-4. No campo de texto Nome do Projeto, digite  ``NewPHPProject`` .
-5. No campo Pasta de Códigos-fonte, procure a raiz do seu documento PHP e crie uma subpasta denominada  ``NewPHPProject`` . A raiz do documento é a pasta em que o servidor Web procura por arquivos a serem abertos no browser. A raiz do documento é especificada no link:../../trails/php.html#configuration[+arquivo de configuração+] do servidor Web. Por exemplo, no Xampp, a raiz do documento é XAMPP_HOME/htdocs.
-6. Deixe todos os outros campos com seus valores default. Clique em Próximo. O painel Configuração de Execução será aberto. 
+
+
+[start=4]
+. No campo de texto Nome do Projeto, digite  ``NewPHPProject`` .
+
+[start=5]
+. No campo Pasta de Códigos-fonte, procure a raiz do seu documento PHP e crie uma subpasta denominada  ``NewPHPProject`` . A raiz do documento é a pasta em que o servidor Web procura por arquivos a serem abertos no browser. A raiz do documento é especificada no link:../../trails/php.html#configuration[+arquivo de configuração+] do servidor Web. Por exemplo, no Xampp, a raiz do documento é XAMPP_HOME/htdocs.
+
+[start=6]
+. Deixe todos os outros campos com seus valores default. Clique em Próximo. O painel Configuração de Execução será aberto. 
+
 image::images/new-project-run-config.png[]
-7. Na lista drop-down Executar Como, selecione Web Site Local. O projeto será executado no servidor Apache local. As outras opções são executar o projeto remotamente via FTP e executá-lo da linha de comandos.
-8. Deixe o URL do projeto com o valor default.
-9. Clique em Finalizar. O IDE criará o projeto.
+
+
+[start=7]
+. Na lista drop-down Executar Como, selecione Web Site Local. O projeto será executado no servidor Apache local. As outras opções são executar o projeto remotamente via FTP e executá-lo da linha de comandos.
+
+[start=8]
+. Deixe o URL do projeto com o valor default.
+
+[start=9]
+. Clique em Finalizar. O IDE criará o projeto.
 
 Saiba mais sobre link:project-setup.html[+Configurando um projeto PHP no NetBeans+].
 
@@ -87,23 +99,33 @@
 
 1. Inicie o IDE, selecione Arquivo > Abrir Projeto. A caixa de diálogo Abrir Projeto será aberta.
 2. Selecione  ``NewPHPProject``  e clique em Abrir Projeto. A árvore NewPHPProject será exibida na janela Projetos e o arquivo  ``index.php``  do projeto será aberto no editor e na janela Navegador. 
-image::images/getting-started-open-new-project.png[]
-3. Digite o seguinte código no bloco  ``<?php ?>`` :
 
-[source,java]
+image::images/getting-started-open-new-project.png[]
+
+
+[start=3]
+. Digite o seguinte código no bloco  ``<?php ?>`` :
+
+[source,php]
 ----
 
  echo "Hello, world! This is my first PHP project!";
 ----
-4. Para executar o projeto, posicione o cursor no nó NewPHPProject e selecione Executar no menu de contexto. A ilustração abaixo mostra o que deveria ser exibido na janela do browser:
+
+[start=4]
+. Para executar o projeto, posicione o cursor no nó NewPHPProject e selecione Executar no menu de contexto. A ilustração abaixo mostra o que deveria ser exibido na janela do browser:
+
 image::images/getting-started-browser-hello-world.png[]
+
 Parabéns! Seu programa funciona!
 
 
 == Utilizando Servidores de Banco de Dados com NetBeans IDE para PHP
 
 Você pode utilizar vários servidores de banco de dados com o NetBeans IDE para PHP, embora o mais popular seja o servidor MySQL. Os downloads estão disponíveis link:http://dev.mysql.com/downloads/mysql/5.1.html[+aqui+]. 
-*Observação:* a versão recomendada do produto é MySQL Server 5.0.
+
+NOTE:  a versão recomendada do produto é MySQL Server 5.0.
+
 Consulte também:
 
 * link:../ide/install-and-configure-mysql-server.html[+Configurando o Servidor de Banco de Dados MySQL no Sistema Operacional Windows+]
diff --git a/netbeans.apache.org/src/content/kb/docs/php/quickstart_zh_CN.asciidoc b/netbeans.apache.org/src/content/kb/docs/php/quickstart_zh_CN.asciidoc
index d112154..5bf1b39 100644
--- a/netbeans.apache.org/src/content/kb/docs/php/quickstart_zh_CN.asciidoc
+++ b/netbeans.apache.org/src/content/kb/docs/php/quickstart_zh_CN.asciidoc
@@ -31,10 +31,6 @@
 
 本文档为在适用于 PHP 的 NetBeans IDE 中准备 PHP 开发环境、设置 PHP 项目以及开发并运行首个 PHP 应用程序提供了一般性指导。
 
-
-image::images/netbeans-stamp-80-74-73.png[title="此页上的内容适用于 NetBeans IDE 7.2、7.3、7.4 和 8.0"]
-
-
 *要学习本教程,您需要具备以下软件和资源。*
 
 |===
@@ -71,14 +67,30 @@
 1. 启动 IDE,切换至 "Projects"(项目)窗口,然后选择 "File"(文件)> "New Project"(新建项目)。"Choose Project"(选择项目)面板打开。
 2. 在 "Categories"(类别)列表中,选择 "PHP"。
 3. 在 "Projects"(项目)区域中,选择 "PHP Application"(PHP 应用程序),然后单击 "Next"(下一步)。"New PHP Project"(新建 PHP 项目)的 "Name and Location"(名称和位置)面板打开。 
+
 image::images/new-project-name-location.png[title="新建 PHP 项目向导的 "Name and Location"(名称和位置)面板,其中 "Source Folder"(源文件夹)位置作为 XAmpp 文档根目录。"]
-4. 在 "Project Name"(项目名称)文本字段中,输入  ``NewPHPProject`` 。
-5. 在 "Sources Folder"(源文件夹)字段中,浏览到您的 PHP 文档根目录并在此处创建一个名为  ``NewPHPProject``  的子目录。Web 服务器会从文档根目录文件夹中查找要在浏览器中打开的文件。文档根目录是在 Web 服务器link:../../trails/php.html#configuration[+配置文件+]中指定的。例如,对于 Xampp,文档根目录为 XAMPP_HOME/htdocs。
-6. 将所有其他字段保留为其默认值。单击 "Next"(下一步)。"Run Configuration"(运行配置)窗口打开。 
+
+
+[start=4]
+. 在 "Project Name"(项目名称)文本字段中,输入  ``NewPHPProject`` 。
+
+[start=5]
+. 在 "Sources Folder"(源文件夹)字段中,浏览到您的 PHP 文档根目录并在此处创建一个名为  ``NewPHPProject``  的子目录。Web 服务器会从文档根目录文件夹中查找要在浏览器中打开的文件。文档根目录是在 Web 服务器link:../../trails/php.html#configuration[+配置文件+]中指定的。例如,对于 Xampp,文档根目录为 XAMPP_HOME/htdocs。
+
+[start=6]
+. 将所有其他字段保留为其默认值。单击 "Next"(下一步)。"Run Configuration"(运行配置)窗口打开。 
+
 image::images/new-project-run-config.png[]
-7. 在 "Run As"(运行方式)下拉列表中,选择 "Local Web Site"(本地 Web 站点)。该项目将在本地 Apache 服务器中运行。其他选项将通过 FTP 远程运行项目,以及在命令行中运行。
-8. 将 "Project URL"(项目 URL)保留为默认值。
-9. 单击 "Finish"(完成)。IDE 将创建该项目。
+
+
+[start=7]
+. 在 "Run As"(运行方式)下拉列表中,选择 "Local Web Site"(本地 Web 站点)。该项目将在本地 Apache 服务器中运行。其他选项将通过 FTP 远程运行项目,以及在命令行中运行。
+
+[start=8]
+. 将 "Project URL"(项目 URL)保留为默认值。
+
+[start=9]
+. 单击 "Finish"(完成)。IDE 将创建该项目。
 
 了解有关link:project-setup.html[+在 NetBeans 中设置 PHP 项目+]的更多信息。
 
@@ -87,23 +99,33 @@
 
 1. 启动 IDE,选择 "File"(文件)> "Open Project"(打开项目)。"Open Project"(打开项目)对话框打开。
 2. 选择  ``NewPHPProject`` ,然后单击 "Open Project"(打开项目)。在 "Projects"(项目)窗口中显示 NewPHPProject 树,并在编辑器和 "Navigator"(导航器)窗口中打开该项目的  ``index.php``  文件。 
-image::images/getting-started-open-new-project.png[]
-3. 在  ``<?php ?>``  块内输入以下代码:
 
-[source,java]
+image::images/getting-started-open-new-project.png[]
+
+
+[start=3]
+. 在  ``<?php ?>``  块内输入以下代码:
+
+[source,php]
 ----
 
  echo "Hello, world! This is my first PHP project!";
 ----
-4. 要运行该项目,请将光标置于 "NewPHPProject" 节点上,然后从上下文菜单中选择 "Run"(运行)。下图显示了应在浏览器窗口中看到的内容:
+
+[start=4]
+. 要运行该项目,请将光标置于 "NewPHPProject" 节点上,然后从上下文菜单中选择 "Run"(运行)。下图显示了应在浏览器窗口中看到的内容:
+
 image::images/getting-started-browser-hello-world.png[]
+
 恭喜!您的程序可以正常运行!
 
 
 == 在适用于 PHP 的 NetBeans IDE 中使用数据库服务器
 
 您可以在适用于 PHP 的 NetBeans IDE 中使用各种数据库服务器,但最常用的是 MySQL 服务器。可以从link:http://dev.mysql.com/downloads/mysql/5.1.html[+此处+]进行下载。
-*注:*该产品的推荐版本为 MySQL Server 5.0。
+
+NOTE: 该产品的推荐版本为 MySQL Server 5.0。
+
 另请参见:
 
 * link:../ide/install-and-configure-mysql-server.html[+在 Windows 操作系统中设置 MySQL 数据库服务器+]
diff --git a/netbeans.apache.org/src/content/kb/docs/php/remote-hosting-and-ftp-account.asciidoc b/netbeans.apache.org/src/content/kb/docs/php/remote-hosting-and-ftp-account.asciidoc
index 81c9e41..aa76e00 100644
--- a/netbeans.apache.org/src/content/kb/docs/php/remote-hosting-and-ftp-account.asciidoc
+++ b/netbeans.apache.org/src/content/kb/docs/php/remote-hosting-and-ftp-account.asciidoc
@@ -95,10 +95,18 @@
 6. In the User Name field, enter your FTP Username as it is written in the FTP account creation confirmation message. In this example, the FTP username is  ``nbuser`` .
 7. Fill in the Password field. In this example the password is  ``qwerty1234`` .
 8. In the Initial Directory field, enter the name of your account directory on the FTP server. In this example, no account directory is specified, enter a slash in the field. 
+
 image::images/manageremoteconnections.png[]
-9. Click OK. You return to the Run Configuration panel.
-10. In the Upload Directory field, enter the name of the subfolder in the initial directory where the source files will be uploaded. The prompt below the field shows the FTP host URL.
-11. To complete setting up a new project, click Finish.
+
+
+[start=9]
+. Click OK. You return to the Run Configuration panel.
+
+[start=10]
+. In the Upload Directory field, enter the name of the subfolder in the initial directory where the source files will be uploaded. The prompt below the field shows the FTP host URL.
+
+[start=11]
+. To complete setting up a new project, click Finish.
 
 
 == Uploading the Source Files to a Remote Server
@@ -136,21 +144,45 @@
 *To perform remote synchronization:*
 
 1. In the Projects window (Ctrl-1), expand the node for the PHP project that you want to synchronize. Right-click the Source Files node. The context menu appears, including the Synchronize option. 
+
 image::images/sync-ctxmenuitem.png[]
-2. Select Synchronize. The IDE retrieves the file names and paths from the remote server and opens the Remote Synchronization dialog.
+
+
+[start=2]
+. Select Synchronize. The IDE retrieves the file names and paths from the remote server and opens the Remote Synchronization dialog.
 
 The Remote Synchronization dialog shows a table of project files. The remote versions on the file are on the left and the local versions are on the right. In the center column is an icon showing the operation that the IDE will perform on synchronization. Warning icons are on the far left. A summary of operations and problems appears at the bottom of the table. A verbose description of any errors appears below the table. Above the table are sets of checkboxes for filtering which problems and operations the dialog shows. For detailed information about this dialog, click Help.
 
 image::images/main-dialog.png[]
-3. Select multiple items in the table. At the bottom of the table the summary now only includes those items.
+
+
+[start=3]
+. Select multiple items in the table. At the bottom of the table the summary now only includes those items.
+
 image::images/multiple-items.png[]
-4. Right-click the selected items. A context menu of possible operations appears. 
+
+
+[start=4]
+. Right-click the selected items. A context menu of possible operations appears. 
+
 image::images/context-menu.png[]
-5. If an item has a Resolve Conflicts error icon, select that item. A description of the error appears at the bottom of the table.
+
+
+[start=5]
+. If an item has a Resolve Conflicts error icon, select that item. A description of the error appears at the bottom of the table.
+
 image::images/error-item.png[]
-6. Select the item with an error. Select Diff... image::images/diff-icon.png[] from either the row of buttons or from the context menu. The Diff dialog opens. In this dialog, scroll down to each difference between the remote and local versions of the file. In the graphics view, you can apply or refuse to apply the remote change to your local file. If you want to edit the file manually, switch to the Textual tab. When you are finished with the diff, click OK. You return to the Remote Synchronization dialog. The operation for the file changes to Upload and the file is marked with an asterisk, because you changed it.
+
+
+[start=6]
+. Select the item with an error. Select Diff... image:images/diff-icon.png[] from either the row of buttons or from the context menu. The Diff dialog opens. In this dialog, scroll down to each difference between the remote and local versions of the file. In the graphics view, you can apply or refuse to apply the remote change to your local file. If you want to edit the file manually, switch to the Textual tab. When you are finished with the diff, click OK. You return to the Remote Synchronization dialog. The operation for the file changes to Upload and the file is marked with an asterisk, because you changed it.
+
 image::images/diff.png[]
-7. If you have no conflict, click Synchronize. If you selected Show Summary Before Start, the Synchronize summary appears so you can review the operations one more time before performing the synchronization. If you approve of the operations, click OK.
+
+
+[start=7]
+. If you have no conflict, click Synchronize. If you selected Show Summary Before Start, the Synchronize summary appears so you can review the operations one more time before performing the synchronization. If you approve of the operations, click OK.
+
 image::images/sync-summary.png[]
 
 The IDE performs the synchronization. You can follow the progress of the synchronization in a window that the IDE opens.
@@ -165,7 +197,7 @@
 
 1. On the Properties panel, make sure that the Remote Web Site is chosen from the <<chooisngRunConfigurationType,Run As dropdown list>>.
 2. Check the Run Configuration settings.
-3. If the project is set as main, click image::images/run-main-project-button.png[] on the toolbar.
+3. If the project is set as main, click image:images/run-main-project-button.png[] on the toolbar.
 4. If the project is not set as main, position the cursor on the project node and choose Run from the popup menu.
 
 
diff --git a/netbeans.apache.org/src/content/kb/docs/php/remote-hosting-and-ftp-account_ja.asciidoc b/netbeans.apache.org/src/content/kb/docs/php/remote-hosting-and-ftp-account_ja.asciidoc
index dfc6c0d..78eba24 100644
--- a/netbeans.apache.org/src/content/kb/docs/php/remote-hosting-and-ftp-account_ja.asciidoc
+++ b/netbeans.apache.org/src/content/kb/docs/php/remote-hosting-and-ftp-account_ja.asciidoc
@@ -31,7 +31,7 @@
 
 通常、実際のPHPアプリケーションはリモート・サーバー上で実行されます。リモート・アプリケーションは、バージョン管理システムか、ファイル転送プロトコル(FTP)のいずれかでアクセスされます。
 
-*注意:* NetBeansでは、単独の開発者が単純なプロジェクトで作業するには十分な、FTP/SFTPの基本的なサポートが提供されています。複雑なプロジェクトまたは複数の開発者で作業する場合は、バージョン管理システムを使用してください。NetBeans IDEは多くのバージョン管理システムをサポートしています。たとえば、link:../ide/subversion.html[+Subversion+]およびlink:../ide/git.html[+Git+]のチュートリアルを参照してください。複雑なプロジェクトでFTP/SFTPを使用する必要がある場合、各種機能を備えたFTPクライアントとともにIDEを使用すること、およびIDE内のPHPプロジェクトをローカルWebサイトとして編集することを検討してください。
+NOTE:  NetBeansでは、単独の開発者が単純なプロジェクトで作業するには十分な、FTP/SFTPの基本的なサポートが提供されています。複雑なプロジェクトまたは複数の開発者で作業する場合は、バージョン管理システムを使用してください。NetBeans IDEは多くのバージョン管理システムをサポートしています。たとえば、link:../ide/subversion.html[+Subversion+]およびlink:../ide/git.html[+Git+]のチュートリアルを参照してください。複雑なプロジェクトでFTP/SFTPを使用する必要がある場合、各種機能を備えたFTPクライアントとともにIDEを使用すること、およびIDE内のPHPプロジェクトをローカルWebサイトとして編集することを検討してください。
 
 *JDK 7+Windows 7/Vista:* Windows 7およびWindows Vistaのファイアウォールは、JDK 7によって起動された一部のFTP操作をブロックします。回避策については、link:http://forums.netbeans.org/post-115176.html#113923[+NetBeansフォーラム+]を参照してください。
 
@@ -101,10 +101,18 @@
 6. 「ユーザー名」フィールドに、FTPアカウント作成の確認メッセージに記載されていたFTPユーザー名を入力します。この例では、FTPユーザー名は ``nbuser`` です。
 7. 「パスワード」フィールドに入力します。この例では、パスワードは ``qwerty1234`` です。
 8. 「初期ディレクトリ」フィールドで、FTPサーバー上のアカウント・ディレクトリの名前を入力します。この例ではアカウント・ディレクトリが指定されていないため、フィールドにスラッシュを入力します。
+
 image::images/manageremoteconnections.png[]
-9. 「OK」をクリックします。「実行構成」パネルに戻ります。
-10. 「アップロード・ディレクトリ」フィールドで、ソース・ファイルがアップロードされる、初期ディレクトリのサブフォルダの名前を入力します。このフィールドの下のプロンプトにFTPホストのURLが表示されます。
-11. 新規プロジェクトの設定を完了するには、「終了」をクリックします。
+
+
+[start=9]
+. 「OK」をクリックします。「実行構成」パネルに戻ります。
+
+[start=10]
+. 「アップロード・ディレクトリ」フィールドで、ソース・ファイルがアップロードされる、初期ディレクトリのサブフォルダの名前を入力します。このフィールドの下のプロンプトにFTPホストのURLが表示されます。
+
+[start=11]
+. 新規プロジェクトの設定を完了するには、「終了」をクリックします。
 
 
 == ソース・ファイルのリモート・サーバーへのアップロード
@@ -137,26 +145,50 @@
 
 *警告: *FTPサーバーのタイムスタンプは100%信頼できるわけではないため、リモート同期も100%信頼できるわけではありません。安全な解決策はバージョン管理です。
 
-*注意: *プロジェクト全体でリモート同期を実行すると、信頼性がより向上します。個別のファイルに対してリモート同期を実行できますが、リスクが高くなります。
+NOTE: プロジェクト全体でリモート同期を実行すると、信頼性がより向上します。個別のファイルに対してリモート同期を実行できますが、リスクが高くなります。
 
 *リモート同期を実行するには:*
 
 1. 「プロジェクト」ウィンドウ([Ctrl]-[1])で、同期するPHPプロジェクトのノードを展開します。「ソース・ファイル」ノードを右クリックします。「同期」オプションを含むコンテキスト・メニューが表示されます。
+
 image::images/sync-ctxmenuitem.png[]
-2. 「同期」を選択します。IDEでは、リモート・サーバーからファイル名とパスを取得し、リモート同期ダイアログが開きます。
+
+
+[start=2]
+. 「同期」を選択します。IDEでは、リモート・サーバーからファイル名とパスを取得し、リモート同期ダイアログが開きます。
 
 リモート同期ダイアログには、プロジェクト・ファイルの表が表示されます。左側はファイルのリモート・バージョンで、右側はローカル・バージョンです。中央の列には、同期時にIDEで実行される操作を示すアイコンが表示されます。左端には警告アイコンが表示されます。表の最下部には、操作および問題のサマリーが表示されます。エラーの詳細な説明は、表の下に表示されます。表の上には、ダイアログに表示する問題や操作をフィルタリングするための一連のチェックボックスがあります。このダイアログの詳細を確認するには、「ヘルプ」をクリックしてください。
 
 image::images/main-dialog.png[]
-3. 表内で複数の項目を選択します。表の最下部のサマリーには、これらの項目のみが含まれます。
+
+
+[start=3]
+. 表内で複数の項目を選択します。表の最下部のサマリーには、これらの項目のみが含まれます。
+
 image::images/multiple-items.png[]
-4. 選択した項目を右クリックします。コンテキスト・メニューに可能な操作が表示されます。
+
+
+[start=4]
+. 選択した項目を右クリックします。コンテキスト・メニューに可能な操作が表示されます。
+
 image::images/context-menu.png[]
-5. 項目に「競合を解決」エラー・アイコンが表示されている場合は、その項目を選択します。表の最下部に、エラーの説明が表示されます。
+
+
+[start=5]
+. 項目に「競合を解決」エラー・アイコンが表示されている場合は、その項目を選択します。表の最下部に、エラーの説明が表示されます。
+
 image::images/error-item.png[]
-6. エラーがある項目を選択します。ボタンの行、またはコンテキスト・メニューから、「差分」image::images/diff-icon.png[]を選択します。「差分」ダイアログが開きます。このダイアログで、ファイルのリモート・バージョンとローカル・バージョンの各差分まで下にスクロールします。グラフィックス表示で、リモートの変更をローカル・ファイルに適用するか、または適用を拒否できます。ファイルを手動で編集する場合は、「テキスト」タブに切り替えます。差分の処理が終了したら、「OK」をクリックします。リモート同期ダイアログに戻ります。ファイルに対する操作が「アップロード」に変わり、ファイルが変更されたことを示すアスタリスクがファイルにマークされます。
+
+
+[start=6]
+. エラーがある項目を選択します。ボタンの行、またはコンテキスト・メニューから、「差分」image:images/diff-icon.png[]を選択します。「差分」ダイアログが開きます。このダイアログで、ファイルのリモート・バージョンとローカル・バージョンの各差分まで下にスクロールします。グラフィックス表示で、リモートの変更をローカル・ファイルに適用するか、または適用を拒否できます。ファイルを手動で編集する場合は、「テキスト」タブに切り替えます。差分の処理が終了したら、「OK」をクリックします。リモート同期ダイアログに戻ります。ファイルに対する操作が「アップロード」に変わり、ファイルが変更されたことを示すアスタリスクがファイルにマークされます。
+
 image::images/diff.png[]
-7. 競合がない場合は、「同期」をクリックします。「開始前にサマリーを表示」を選択した場合は同期のサマリーが表示されるため、同期を実行する前に複数回、操作を確認できます。操作を承認する場合は、「OK」をクリックします。
+
+
+[start=7]
+. 競合がない場合は、「同期」をクリックします。「開始前にサマリーを表示」を選択した場合は同期のサマリーが表示されるため、同期を実行する前に複数回、操作を確認できます。操作を承認する場合は、「OK」をクリックします。
+
 image::images/sync-summary.png[]
 
 IDEで同期が実行されます。IDEによって開いたウィンドウで、同期の進捗を確認できます。
@@ -171,7 +203,7 @@
 
 1. 「プロパティ」パネルの<<chooisngRunConfigurationType,「実行方法」ドロップダウン・リスト>>から、リモートWebサイトが選択されていることを確認します。
 2. 実行構成の設定を確認します。
-3. プロジェクトがメインとして設定されている場合は、ツールバーでimage::images/run-main-project-button.png[]をクリックします。
+3. プロジェクトがメインとして設定されている場合は、ツールバーで image:images/run-main-project-button.png[]をクリックします。
 4. プロジェクトがメインとして設定されていない場合は、プロジェクト・ノードにカーソルを置き、ポップアップ・メニューから「実行」を選択します。
 
 
diff --git a/netbeans.apache.org/src/content/kb/docs/php/remote-hosting-and-ftp-account_pt_BR.asciidoc b/netbeans.apache.org/src/content/kb/docs/php/remote-hosting-and-ftp-account_pt_BR.asciidoc
index f9ab560..6e8f6ae 100644
--- a/netbeans.apache.org/src/content/kb/docs/php/remote-hosting-and-ftp-account_pt_BR.asciidoc
+++ b/netbeans.apache.org/src/content/kb/docs/php/remote-hosting-and-ftp-account_pt_BR.asciidoc
@@ -31,7 +31,7 @@
 
 Normalmente, uma aplicação PHP real é executada em um servidor remoto. Aplicações remotas são acessadas por um sistema de controle de versão ou por um Protocolo de Transferência de Arquivos (FTP).
 
-*Cuidado: *o NetBeans oferece suporte básico a FTP/SFTP, o suficiente para um desenvolvedor trabalhar sozinho em um projeto simples. Se estiver trabalhando em um projeto complexo com diversos desenvolvedores, é importante usar um sistema de controle de versão. O NetBeans IDE suporta uma série de sistemas de controle de versão. Consulte nossos tutoriais link:../ide/subversion.html[+Subversion+] e link:../ide/git.html[+Git+], por exemplo. Se for necessário o uso de FTP/SFTP com um projeto complexo, considere usar o IDE em conjunto com um cliente de FTP completo e edite o projeto PHP no IDE como um web site local.
+WARNING: o NetBeans oferece suporte básico a FTP/SFTP, o suficiente para um desenvolvedor trabalhar sozinho em um projeto simples. Se estiver trabalhando em um projeto complexo com diversos desenvolvedores, é importante usar um sistema de controle de versão. O NetBeans IDE suporta uma série de sistemas de controle de versão. Consulte nossos tutoriais link:../ide/subversion.html[+Subversion+] e link:../ide/git.html[+Git+], por exemplo. Se for necessário o uso de FTP/SFTP com um projeto complexo, considere usar o IDE em conjunto com um cliente de FTP completo e edite o projeto PHP no IDE como um web site local.
 
 *JDK 7 + Windows 7/Vista:* o firewall do Windows 7 e o Windows Vista bloqueia algumas operações do FTP que são acionadas pelo JDK 7. Consulte o link:http://forums.netbeans.org/post-115176.html#113923[+fórum NetBeans+] para a solução desse problema.
 
@@ -101,10 +101,18 @@
 6. No campo Nome de Usuário, digite seu Nome de usuário FTP conforme está escrito na mensagem de confirmação da criação da conta FTP . Neste exemplo, o nome de usuário do FTP  ``nbuser`` .
 7. Preencha o campo Senha. Neste exemplo, a senha é  ``qwerty1234`` .
 8. No campo Diretório Inicial, digite o nome do diretório da conta no servidor FTP. Neste exemplo, não há um diretório de conta especificado, digite uma barra no campo. 
+
 image::images/manageremoteconnections.png[]
-9. Clique em OK. Você retornará para o painel Configuração de Execução.
-10. No campo Diretório de Upload, digite o nome da subpasta no diretório inicial onde será feito o upload do arquivos de código-fonte. O prompt abaixo do campo mostra o URL do host do FTP.
-11. Para concluir a configuração de um novo projeto, clique em Finalizar.
+
+
+[start=9.]
+. Clique em OK. Você retornará para o painel Configuração de Execução.
+
+[start=10.]
+. No campo Diretório de Upload, digite o nome da subpasta no diretório inicial onde será feito o upload do arquivos de código-fonte. O prompt abaixo do campo mostra o URL do host do FTP.
+
+[start=11.]
+. Para concluir a configuração de um novo projeto, clique em Finalizar.
 
 
 == Fazendo upload dos Arquivos de Código-Fonte em um Servidor Remoto
@@ -142,21 +150,45 @@
 *Para executar a sincronização remota:*
 
 1. Na janela Projetos (Ctrl-1), expanda o nó do projeto PHP que deseja sincronizar. Clique com o botão direito do mouse no nó Arquivos de Código-Fonte. O menu de contexto aparecerá, incluindo a opção Sincronizar. 
+
 image::images/sync-ctxmenuitem.png[]
-2. Selecione Sincronizar. O IDE recupera os nomes dos arquivos e os caminhos do servidor remoto e abre a caixa de diálogo Sincronização Remota.
+
+
+[start=2.]
+. Selecione Sincronizar. O IDE recupera os nomes dos arquivos e os caminhos do servidor remoto e abre a caixa de diálogo Sincronização Remota.
 
 A caixa de diálogo Sincronização Remota mostra uma tabela de arquivos do projeto. As versões remotas do arquivo estão à esquerda e as versões locais estão à direita. Na coluna do centro, está um ícone que mostra a operação que o IDE executará na sincronização. Os ícones de advertência estão bem à esquerda. Um resumo das operações e problemas aparece na parte inferior da tabela. Uma descrição detalhada de todos os erros aparece abaixo da tabela. Acima da tabela estão conjuntos de caixas de seleção para filtrar quais problemas e operações a caixa de diálogo mostrará. Para obter informações detalhadas sobre essa caixa de diálogo, clique em Ajuda.
 
 image::images/main-dialog.png[]
-3. Selecione vários itens da tabela. Na parte inferior da tabela o resumo incluirá, agora, apenas esses itens.
+
+
+[start=3.]
+. Selecione vários itens da tabela. Na parte inferior da tabela o resumo incluirá, agora, apenas esses itens.
+
 image::images/multiple-items.png[]
-4. Clique com o botão direito do mouse nos itens selecionados. Um menu de contexto de operações possíveis será exibido. 
+
+
+[start=4.]
+. Clique com o botão direito do mouse nos itens selecionados. Um menu de contexto de operações possíveis será exibido. 
+
 image::images/context-menu.png[]
-5. Se um item tiver u m ícone de erro Resolver Conflitos, selecione o item. Uma descrição do erro aparecerá na parte inferior da tabela.
+
+
+[start=5.]
+. Se um item tiver u m ícone de erro Resolver Conflitos, selecione o item. Uma descrição do erro aparecerá na parte inferior da tabela.
+
 image::images/error-item.png[]
-6. Selecione o item com um erro. Selecione Dif... image::images/diff-icon.png[] na linha de botões ou no menu de contexto. A caixa de diálogo Dif será aberta. Nessa caixa de diálogo, reole para baixo para cada diferença entre as versões remota e local do arquivo. Na view gráfica, você pode aplicar ou recusar a aplicar a alteração remota ao arquivo local. Se desejar editar o arquivo manualmente, alterne para a guia Textual. Quando tiver concluído com a dif, clique em OK. Você retornará para a caixa de diálogo Sincronização Remota. A operação para o arquivo é alterada para Upload e o arquivo é marcado com um asterisco, pois você o alterou.
+
+
+[start=6.]
+. Selecione o item com um erro. Selecione Dif... image:images/diff-icon.png[] na linha de botões ou no menu de contexto. A caixa de diálogo Dif será aberta. Nessa caixa de diálogo, reole para baixo para cada diferença entre as versões remota e local do arquivo. Na view gráfica, você pode aplicar ou recusar a aplicar a alteração remota ao arquivo local. Se desejar editar o arquivo manualmente, alterne para a guia Textual. Quando tiver concluído com a dif, clique em OK. Você retornará para a caixa de diálogo Sincronização Remota. A operação para o arquivo é alterada para Upload e o arquivo é marcado com um asterisco, pois você o alterou.
+
 image::images/diff.png[]
-7. Se não houver nenhum conflito, clique em Sincronizar. Se tiver selecionado Mostrar Resumo antes de Iniciar, o resumo Sincronizar será exibido para que você possa revisar as oeprações mais uma vez, antes de executar a sincronização. Se você aprovar as operações, clique em OK.
+
+
+[start=7.]
+. Se não houver nenhum conflito, clique em Sincronizar. Se tiver selecionado Mostrar Resumo antes de Iniciar, o resumo Sincronizar será exibido para que você possa revisar as oeprações mais uma vez, antes de executar a sincronização. Se você aprovar as operações, clique em OK.
+
 image::images/sync-summary.png[]
 
 O IDE executará a sincronização. Você pode acompanhar o andamento da sincronização em uma janela que o IDE abre.
@@ -171,7 +203,7 @@
 
 1. No painel Propriedades, certifique-se de que o Site remoto esteja selecionado na <<chooisngRunConfigurationType,lista drop-down Executar Como>>.
 2. Verifique as definições de Configuração de Execução.
-3. Se o projeto estiver definido como principal, clique em image::images/run-main-project-button.png[] na barra de ferramentas.
+3. Se o projeto estiver definido como principal, clique em image:images/run-main-project-button.png[] na barra de ferramentas.
 4. Se o projeto não estiver definido como principal, posicione o cursor no nó do projeto e selecione Executar no menu pop-up.
 
 
diff --git a/netbeans.apache.org/src/content/kb/docs/php/remote-hosting-and-ftp-account_ru.asciidoc b/netbeans.apache.org/src/content/kb/docs/php/remote-hosting-and-ftp-account_ru.asciidoc
index 4eed30b..3842562 100644
--- a/netbeans.apache.org/src/content/kb/docs/php/remote-hosting-and-ftp-account_ru.asciidoc
+++ b/netbeans.apache.org/src/content/kb/docs/php/remote-hosting-and-ftp-account_ru.asciidoc
@@ -31,7 +31,7 @@
 
 Обычно приложение PHP выполняется на удаленном сервере. Доступ к его файлам осуществляется по протоколу FTP (File Transfer Protocol, протокол передачи файлов).
 
-*Внимание!* NetBeans предоставляет базовую поддержку протокола FTP/SFTP, достаточную для разработки простого проекта одним разработчиком. Если же вы работаете над сложным проектом или в команде нескольких разработчиков, следует использовать систему контроля версий. IDE NetBeans поддерживает несколько систем управления версиями. Для примера обратитесь к нашим учебным курсам по link:../ide/subversion.html[+Subversion+] и link:../ide/git.html[+Git+]. Если необходимо использовать протокол FTP/SFTP для развертывания сложного проекта, можно использовать среду IDE в сочетании с полнофункциональным клиентом FTP и редактировать проект PHP в среде IDE как локальный веб-сайт.
+WARNING: NetBeans предоставляет базовую поддержку протокола FTP/SFTP, достаточную для разработки простого проекта одним разработчиком. Если же вы работаете над сложным проектом или в команде нескольких разработчиков, следует использовать систему контроля версий. IDE NetBeans поддерживает несколько систем управления версиями. Для примера обратитесь к нашим учебным курсам по link:../ide/subversion.html[+Subversion+] и link:../ide/git.html[+Git+]. Если необходимо использовать протокол FTP/SFTP для развертывания сложного проекта, можно использовать среду IDE в сочетании с полнофункциональным клиентом FTP и редактировать проект PHP в среде IDE как локальный веб-сайт.
 
 *JDK 7 + Windows 7/Vista:* Брандмауэр ОС Windows 7 и Windows Vista иногда блокируют некоторые операции по FTP, запускаемые JDK 7. Варианты решения этой проблемы приведены на link:http://forums.netbeans.org/post-115176.html#113923[+форуме NetBeans+].
 
@@ -101,10 +101,18 @@
 6. В поле 'Имя пользователя' введите имя пользователя FTP, указанное в сообщении, подтверждающем создание учетной записи FTP. В этом примере используется имя пользователя FTP  ``nbuser`` .
 7. Заполните поле "Пароль". В этом примере паролем является  ``qwerty1234`` .
 8. В поле "Начальный каталог" введите имя каталога учетной записи на сервере FTP. Если каталог учетной записи не указан (как в этом примере), введите в это поле косую черту. 
+
 image::images/manageremoteconnections.png[]
-9. Нажмите кнопку "ОК". Будет выполнен возврат к панели "Настройки выполнения".
-10. В поле "Каталог загрузки" введите имя подпапки в начальном каталоге, куда впоследствии будут выгружены исходные файлы. В запросе под этим полем содержится URL-адрес узла FTP.
-11. Для завершения настройки нового проекта нажмите кнопку "Готово".
+
+
+[start=9.]
+. Нажмите кнопку "ОК". Будет выполнен возврат к панели "Настройки выполнения".
+
+[start=10.]
+. В поле "Каталог загрузки" введите имя подпапки в начальном каталоге, куда впоследствии будут выгружены исходные файлы. В запросе под этим полем содержится URL-адрес узла FTP.
+
+[start=11.]
+. Для завершения настройки нового проекта нажмите кнопку "Готово".
 
 
 == Выгрузка исходных файлов на удаленный сервер
@@ -142,21 +150,46 @@
 *Выполнение удаленной синхронизации*
 
 1. В окне 'Проекты' (Ctrl-1) разверните узел для проекта PHP, который необходимо синхронизировать. Щелкните правой кнопкой мыши узел "Исходные файлы". Появится контекстное меню с параметром 'Синхронизация'. 
+
 image::images/sync-ctxmenuitem.png[]
-2. Выберите 'Синхронизация'. IDE извлекает имена файлов и пути с удаленного сервера и открывает диалоговое окно 'Удаленная синхронизация'.
+
+
+[start=2.]
+. Выберите 'Синхронизация'. IDE извлекает имена файлов и пути с удаленного сервера и открывает диалоговое окно 'Удаленная синхронизация'.
 
 Диалоговое окно 'Удаленная синхронизация', в котором отображается таблица файлов проекта. Удаленные версии в файлах находится слева, а локальные версии справа. В центральном столбце находится значок, указывающий операцию, выполняемую IDE при синхронизации. Значки предупреждения расположены по левому краю. Сводка операциям и проблемам отображается в нижней части таблицы. Подробное описание всех ошибок отображается под таблицей. Над таблицей находятся наборы флажков для фильтрации проблем и операций, отображаемых в диалоговом окне. Для получения более подробных данных об этом диалоговом окне щелкните 'Справка'.
 
 image::images/main-dialog.png[]
-3. Выберите в таблице несколько элементов. В нижней части страницы в сводке теперь отображаются только эти элементы.
+
+
+
+[start=3.]
+. Выберите в таблице несколько элементов. В нижней части страницы в сводке теперь отображаются только эти элементы.
+
 image::images/multiple-items.png[]
-4. Щелкните правой кнопкой мыши выбранные элементы. Откроется контекстное меню с возможными операциями. 
+
+
+[start=4.]
+. Щелкните правой кнопкой мыши выбранные элементы. Откроется контекстное меню с возможными операциями. 
+
 image::images/context-menu.png[]
-5. Если у элемента имеется значок ошибки 'Разрешение конфликтов' выберите этот элемент. Описание ошибки отображается в нижней части таблицы.
+
+
+[start=5.]
+. Если у элемента имеется значок ошибки 'Разрешение конфликтов' выберите этот элемент. Описание ошибки отображается в нижней части таблицы.
+
 image::images/error-item.png[]
-6. Выберите элемент с ошибкой. Выберите 'Различия...' image::images/diff-icon.png[] из ряда кнопок или из контекстного меню. Откроется диалоговое окно "Различия". В этом диалоговом окне с помощью прокрутки перейдите к каждому различию между удаленной и локальной версиями файла. В графическом представлении млжно применить или отклонить удаленные изменения локального файла. Если файл необходимо отредактировать вручную, перейдите на вкладку 'Текстовый'. После завершения работы с различиями нажмите кнопку ОК. Будет выполнен возврат в диалоговое окно удаленной синхронизации. Операция для файла изменится на 'Загрузку' и файл будет помечен звездочкой для указания его изменения.
+
+
+[start=6.]
+. Выберите элемент с ошибкой. Выберите 'Различия...' image:images/diff-icon.png[] из ряда кнопок или из контекстного меню. Откроется диалоговое окно "Различия". В этом диалоговом окне с помощью прокрутки перейдите к каждому различию между удаленной и локальной версиями файла. В графическом представлении млжно применить или отклонить удаленные изменения локального файла. Если файл необходимо отредактировать вручную, перейдите на вкладку 'Текстовый'. После завершения работы с различиями нажмите кнопку ОК. Будет выполнен возврат в диалоговое окно удаленной синхронизации. Операция для файла изменится на 'Загрузку' и файл будет помечен звездочкой для указания его изменения.
+
 image::images/diff.png[]
-7. При отсутствии конфликтов щелкните 'Синхронизация'. Если выбрано 'Показать сводку до запуска', отображается сводка по синхронизации, что позволяет просмотреть операции еще раз до выполнения синхронизации. Если все операции выбраны правильно, нажмите OK.
+
+
+[start=7.]
+. При отсутствии конфликтов щелкните 'Синхронизация'. Если выбрано 'Показать сводку до запуска', отображается сводка по синхронизации, что позволяет просмотреть операции еще раз до выполнения синхронизации. Если все операции выбраны правильно, нажмите OK.
+
 image::images/sync-summary.png[]
 
 Среда IDE выполнит синхронизацию. Ход выполнения синхронизации можно отслеживать в окне, открытом в IDE.
@@ -171,7 +204,7 @@
 
 1. Убедитесь, что на панели "Свойства" в <<chooisngRunConfigurationType,раскрывающемся списке "Выполнить как">> выбран пункт "Удаленный веб-сайт".
 2. Проверьте параметры настройки "Настройки выполнения".
-3. Если проект выбран в качестве главного, выберите image::images/run-main-project-button.png[] на панели инструментов.
+3. Если проект выбран в качестве главного, выберите image:images/run-main-project-button.png[] на панели инструментов.
 4. Если проект не выбран в качестве главного, установите курсор на узел проекта и выберите "Выполнить" во всплывающем меню.
 
 
diff --git a/netbeans.apache.org/src/content/kb/docs/php/remote-hosting-and-ftp-account_zh_CN.asciidoc b/netbeans.apache.org/src/content/kb/docs/php/remote-hosting-and-ftp-account_zh_CN.asciidoc
index 6861a2b..bbb4acf 100644
--- a/netbeans.apache.org/src/content/kb/docs/php/remote-hosting-and-ftp-account_zh_CN.asciidoc
+++ b/netbeans.apache.org/src/content/kb/docs/php/remote-hosting-and-ftp-account_zh_CN.asciidoc
@@ -31,7 +31,7 @@
 
 通常,PHP 应用程序实际上在远程服务器上运行。远程应用程序是通过版本控制系统或文件传输协议 (FTP) 来访问的。
 
-*注:*NetBeans 为 FTP/SFTP 提供的基本支持足以让开发者独自处理简单的项目。如果处理的是复杂项目或与多名开发者协同工作,则应使用版本控制系统。NetBeans IDE 支持多种版本控制系统。例如,请参见我们的 link:../ide/subversion.html[+Subversion+] 和 link:../ide/git.html[+Git+] 教程。如果必须在处理复杂项目时使用 FTP/SFTP,则可以考虑将 IDE 与功能全面的 FTP 客户端结合使用,并在 IDE 中将 PHP 项目作为本地 Web 站点来编辑。
+WARNING: NetBeans 为 FTP/SFTP 提供的基本支持足以让开发者独自处理简单的项目。如果处理的是复杂项目或与多名开发者协同工作,则应使用版本控制系统。NetBeans IDE 支持多种版本控制系统。例如,请参见我们的 link:../ide/subversion.html[+Subversion+] 和 link:../ide/git.html[+Git+] 教程。如果必须在处理复杂项目时使用 FTP/SFTP,则可以考虑将 IDE 与功能全面的 FTP 客户端结合使用,并在 IDE 中将 PHP 项目作为本地 Web 站点来编辑。
 
 *JDK 7 + Windows 7/Vista:*Windows 7 和 Windows Vista 防火墙会阻止某些由 JDK 7 启动的 FTP 操作。有关解决方法,请参见 link:http://forums.netbeans.org/post-115176.html#113923[+NetBeans 论坛+]。
 
@@ -40,9 +40,6 @@
 所有的用户名、口令和电子邮件地址都是虚构的,仅用作示例。如果用户未登录论坛的时间超过了一个星期,则托管管理会阻止该用户的帐户。因此您可能无法再使用与本教程中完全相同的用户名、口令、电子邮件地址和其他凭证。
 
 
-image::images/netbeans-stamp-80-74-73.png[title="此页上的内容适用于 NetBeans IDE 7.2、7.3、7.4 和 8.0"]
-
-
 *要学习本教程,您需要具备以下软件和资源。*
 
 |===
@@ -101,10 +98,18 @@
 6. 在 "User Name"(用户名)字段中,输入在 FTP 帐户创建确认消息中包含的 FTP 用户名。在本示例中,FTP 用户名是  ``nbuser`` 。
 7. 填写 "Password"(口令)字段。在此示例中,口令是  ``qwerty1234`` 。
 8. 在 "Initial Directory"(初始目录)字段中,输入 FTP 服务器上的帐户目录名称。在此示例中,不指定任何帐户目录,而是在该字段中输入一个正斜杠。 
+
 image::images/manageremoteconnections.png[]
-9. 单击 "OK"(确定)。返回到 "Run Configuration"(运行配置)面板。
-10. 在 "Upload Directory"(上载目录)字段中,输入初始目录中将上载源文件的子文件夹名称。该字段下的提示显示 FTP 主机 URL。
-11. 要完成对新项目的设置,请单击 "Finish"(完成)。
+
+
+[start=9.]
+. 单击 "OK"(确定)。返回到 "Run Configuration"(运行配置)面板。
+
+[start=10.]
+. 在 "Upload Directory"(上载目录)字段中,输入初始目录中将上载源文件的子文件夹名称。该字段下的提示显示 FTP 主机 URL。
+
+[start=11.]
+. 要完成对新项目的设置,请单击 "Finish"(完成)。
 
 
 == 将源文件上载到远程服务器
@@ -142,21 +147,45 @@
 *要执行远程同步,请执行以下操作:*
 
 1. 在 "Projects"(项目)窗口中(Ctrl-1 组合键),展开要同步的 PHP 项目的节点。右键单击 "Source Files"(源文件)节点。此时将显示包括 "Synchronize"(同步)选项的上下文菜单。
+
 image::images/sync-ctxmenuitem.png[]
-2. 选择 "Synchronize"(同步)。IDE 将从远程服务器检索文件名和路径并打开 "Remote Synchronization"(远程同步)对话框。
+
+
+[start=2.]
+. 选择 "Synchronize"(同步)。IDE 将从远程服务器检索文件名和路径并打开 "Remote Synchronization"(远程同步)对话框。
 
 "Remote Synchronization"(远程同步)对话框将显示项目文件表。文件的远程版本位于左侧,本地版本位于右侧。中间列中有图标,用于显示 IDE 将在同步时执行的操作。"Warning"(警告)图标位于最左侧。表底部显示操作和问题的概要。表下方显示所有错误的详细说明。表上方是复选框集合,用于过滤对话框显示哪些问题和操作。有关此对话框的详细信息,请单击 "Help"(帮助)。
 
 image::images/main-dialog.png[]
-3. 在表中选择多个项。表底部的概要现在只包含这些项。
+
+
+[start=3.]
+. 在表中选择多个项。表底部的概要现在只包含这些项。
+
 image::images/multiple-items.png[]
-4. 右键单击所选项。此时将显示可能操作的上下文菜单。
+
+
+[start=4.]
+. 右键单击所选项。此时将显示可能操作的上下文菜单。
+
 image::images/context-menu.png[]
-5. 如果某一项具有 "Resolve Conflicts"(解决冲突)错误图标,则选择该项。表底部将显示错误说明。
+
+
+[start=5.]
+. 如果某一项具有 "Resolve Conflicts"(解决冲突)错误图标,则选择该项。表底部将显示错误说明。
+
 image::images/error-item.png[]
-6. 选择出错的项。从按钮行或从上下文菜单选择 "Diff..."(比较...)image::images/diff-icon.png[]。此时将打开 "Diff"(比较)对话框。在此对话框中,向下滚动到文件的远程版本和本地版本之间的每个差异。在图形视图中,您可以应用或拒绝应用远程更改到本地文件。如果您要手动编辑文件,请切换到 "Textual"(文本)标签。完成比较操作后,单击 "OK"(确定)。您将返回到 "Remote Synchronization"(远程同步)对话框。对该文件的操作更改为 "Upload"(上载),并且该文件将用星号标记,因为您更改了它。
+
+
+[start=6.]
+. 选择出错的项。从按钮行或从上下文菜单选择 "Diff..."(比较...)image:images/diff-icon.png[]。此时将打开 "Diff"(比较)对话框。在此对话框中,向下滚动到文件的远程版本和本地版本之间的每个差异。在图形视图中,您可以应用或拒绝应用远程更改到本地文件。如果您要手动编辑文件,请切换到 "Textual"(文本)标签。完成比较操作后,单击 "OK"(确定)。您将返回到 "Remote Synchronization"(远程同步)对话框。对该文件的操作更改为 "Upload"(上载),并且该文件将用星号标记,因为您更改了它。
+
 image::images/diff.png[]
-7. 如果您没有冲突,请单击 "Synchronize"(同步)。如果选择了 "Show Summary Before Start"(开始之前显示概要),则将显示 "Synchronize"(同步)概要,以便您可以在执行同步之前再一次检查操作。如果您批准操作,请单击 "OK"(确定)。
+
+
+[start=7.]
+. 如果您没有冲突,请单击 "Synchronize"(同步)。如果选择了 "Show Summary Before Start"(开始之前显示概要),则将显示 "Synchronize"(同步)概要,以便您可以在执行同步之前再一次检查操作。如果您批准操作,请单击 "OK"(确定)。
+
 image::images/sync-summary.png[]
 
 IDE 执行同步。您可以在 IDE 打开的窗口中观察同步的进度。
@@ -171,7 +200,7 @@
 
 1. 在 "Properties"(属性)面板上,确保从 <<chooisngRunConfigurationType,"Run As"(运行方式)下拉列表>>中选择 "Remote Web Site"(远程 Web 站点)。
 2. 检查 "Run Configuration"(运行配置)设置。
-3. 如果此项目设置为主项目,请单击工具栏上的 image::images/run-main-project-button.png[]。
+3. 如果此项目设置为主项目,请单击工具栏上的 image:images/run-main-project-button.png[]。
 4. 如果此项目未设置为主项目,请将光标放置在此项目节点上,并从弹出式菜单中选择 "Run"(运行)。
 
 
diff --git a/netbeans.apache.org/src/content/kb/docs/php/wish-list-lesson1.asciidoc b/netbeans.apache.org/src/content/kb/docs/php/wish-list-lesson1.asciidoc
index cce72d8..4c745f8 100644
--- a/netbeans.apache.org/src/content/kb/docs/php/wish-list-lesson1.asciidoc
+++ b/netbeans.apache.org/src/content/kb/docs/php/wish-list-lesson1.asciidoc
@@ -29,45 +29,7 @@
 :description: Creating a Database Driven Application With PHP - Apache NetBeans
 :keywords: Apache NetBeans, Tutorials, Creating a Database Driven Application With PHP
 
-= Lesson 1a: Creating a MySQL Database
-:jbake-type: tutorial
-:jbake-tags: tutorials 
-:jbake-status: published
-:syntax: true
-:icons: font
-:source-highlighter: pygments
-:toc: left
-:toc-title:
-:description: Lesson 1a: Creating a MySQL Database - Apache NetBeans
-:keywords: Apache NetBeans, Tutorials, Lesson 1a: Creating a MySQL Database
-
-
-==== Tutorial contents:
-
-1. link:wish-list-tutorial-main-page.html[+Creating a CRUD Application with PHP - Main page+]
-2. 
-Creating the Database
-
-1. *=> Creating a MySQL Database*
-
-* <<register-mysql,Registering a MySQL Server>>
-* <<CreateUser,Creating the Database User>>
-* <<CreateDatabase,Creating the Wishlist Database>>
-* <<EstablishConnection,Establishing Connection to the Wishlist Database>>
-* <<DatabaseStructure,Designing the Structure of the Wishlist Database >>
-* <<CreateTables,Creating the Tables>>
-* <<EnterTestData,Entering the Test Data>>
-2. link:wish-list-oracle-lesson1.html[+ Creating Oracle Database Tables +]
-3. link:wish-list-lesson2.html[+ Designing the Application. Reading from the Database+]
-4. link:wish-list-lesson3.html[+Creating a New Application User+]
-5. link:wish-list-lesson4.html[+Optimizing the Code+]
-6. link:wish-list-lesson5.html[+Adding Security. Implementing Application User Logon+]
-7. link:wish-list-lesson6.html[+Adding a New Wish to the Database+]
-8. link:wish-list-lesson7.html[+Updating and Deleting Entries in the Database+]
-9. link:wish-list-lesson8.html[+Making the Application Look Better Using the CSS Technology+]
-10. link:wish-list-lesson9.html[+Deploying the Application on a Remote Web Server+]
-
-image::images/netbeans-stamp-80-74-73.png[title="Content on this page applies to the NetBeans IDE 7.2, 7.3, 7.4 and 8.0"]
+== Lesson 1a: Creating a MySQL Database
 
 This lesson describes the last preliminary step in developing the Wish List application, that of creating a sample database with test data. To complete the steps in this tutorial, you will need a database in which to store data of wishers. With the NetBeans IDE you can perform all these activities through the IDE interface. 
 Before starting, see the tutorial requirements described in link:wish-list-tutorial-main-page.html[+Creating a CRUD Application with PHP - Main page+].
@@ -91,25 +53,36 @@
 * <<createUserQuery,Executing a user creation MySQL statement>>.
 
 1. Start the IDE, switch to the Services window (Ctrl-5), and expand the Databases node.
-2. To 
-connect to the MySQL database server, navigate to the  ``MySQL Server``  node and from the context menu choose Connect. 
+2. To connect to the MySQL database server, navigate to the  ``MySQL Server``  node and from the context menu choose Connect. 
+
 image::images/mysql-ctxmenu-connect.png[]
-3. The NetBeans IDE connects to the MySQL server, checks for the databases available through the server, detects the system  ``mysql``  database, and adds the corresponding new node  ``mysql``  to the Databases tree. 
+
+
+[start=3.]
+. The NetBeans IDE connects to the MySQL server, checks for the databases available through the server, detects the system  ``mysql``  database, and adds the corresponding new node  ``mysql``  to the Databases tree. 
+
 image::images/mysql_node_added.png[]
-4. To execute an SQL command, you need to be connected to a database. Because only the MySQL system is available, you need to connect to it. 
+
+
+[start=4.]
+. To execute an SQL command, you need to be connected to a database. Because only the MySQL system is available, you need to connect to it. 
 To connect to the system database, navigate to the  ``mysql``  node and from the context menu choose Connect. If a connection does not already exist, the New Database Connection dialog box appears. The User Name field is by default filled in with root. In the Password field, enter the root user's password.
 
-*Note: *If you have connected to the `mysql` database before, this dialog does not appear. Instead, the new connection node simply appears in the tree.
+NOTE: If you have connected to the `mysql` database before, this dialog does not appear. Instead, the new connection node simply appears in the tree.
 
 image::images/create-new-database-connection.png[] 
+
 The New Database Connection dialog box shows the message "Connection established." Click OK. A new node named  ``jdbc:mysql://localhost:3306/mysql``  is added to the Databases tree.
-5. Navigate to the  ``jdbc:mysql://localhost:3306/mysql``  node and from the context menu choose Execute Command. 
+
+[start=5.]
+. Navigate to the  ``jdbc:mysql://localhost:3306/mysql``  node and from the context menu choose Execute Command. 
+
 image::images/execute-command.png[] 
+
 An SQL Command window opens. In the SQL Command window, use syntax similar to the following statement:
 
-[source,java]
+[source,sql]
 ----
-
 CREATE USER 'phpuser'@'localhost' IDENTIFIED BY 'phpuserpw'
 ----
 From the context menu, choose Run Statement. If the command is executed successfully, the Status bar shows the message: "SQL Statement(s) executed successfully". If another message is displayed, check the syntax and follow the message hints.
@@ -122,6 +95,7 @@
 1. Navigate to the  ``MySQL Server at localhost:3306``  node and from the context menu choose Create Database. The Create MySQL Database dialog box appears. Fill in the fields:
 * In the Database Name field, enter wishlist.
 * Switch on the Grant full access to user checkbox and from the drop down list select  ``phpuser@localhost``  Click OK.
+
 image::images/create-user.png[]
 
 The "Grant full access to user" function does not always work. If it does not work, <<EstablishConnection,connect to the database>> as the root user and send the SQL query [examplecode]# ``GRANT ALL ON wishlist.* TO phpuser@localhost`` #.
@@ -134,11 +108,21 @@
 At the end of the previous section, you created the `wishlist` database with a connection to the `root` user. Now you create a new connection for the `phpuser` user.
 
 1. In the Services window, right-click the Databases node and select New Connection. The New Connection Wizard opens.
+
 image::images/databases-ctxmenu-newconnection.png[]
-2. In the New Connection Wizard's Locate Driver panel, select the `MySQL (Connector/J Driver).` Click Next. The Customize Connection panel opens.
+
+
+[start=2.]
+. In the New Connection Wizard's Locate Driver panel, select the `MySQL (Connector/J Driver).` Click Next. The Customize Connection panel opens.
+
 image::images/locate-driver.png[]
-3. In the Database field, type `wishlist`.
-4. In the User Name and Password edit boxes, enter the name and the password specified in section <<CreateUser,Creating the Owner (User) of the Database>> (in our example  ``phpuser``  and  ``phpuserpw``  respectively). Tick Remember Password. Click Test Connection, and if the connection succeeds, click OK. 
+
+[start=3.]
+. In the Database field, type `wishlist`.
+
+[start=4.]
+. In the User Name and Password edit boxes, enter the name and the password specified in section <<CreateUser,Creating the Owner (User) of the Database>> (in our example  ``phpuser``  and  ``phpuserpw``  respectively). Tick Remember Password. Click Test Connection, and if the connection succeeds, click OK. 
+
 image::images/phpuser-connection.png[]
 
 The corresponding new connection node is displayed in the Databases tree. Now you can delete the `root` user's connection to the `wishlist` database. Click the  ``jdbc:mysql://localhost:3306/wishlist [root on Default schema]``  connection and choose Delete.
@@ -154,6 +138,7 @@
 * A wishes table for storing descriptions of wishes
 
 image::images/wishlist-db.png[]
+
 The wishers table contains three fields:
 
 1. id - the unique ID of a wisher. This field is used as the Primary Key
@@ -173,32 +158,49 @@
 == Creating the Tables
 
 1. To connect to the database, on the  ``jdbc:mysql://localhost:3306/wishlist``  connection, click the right mouse button and choose Connect from the context menu.
+
 NOTE: If the menu item is disabled, you are already connected. Continue with step 2.
-2. From the same context menu, choose Execute Command. An empty SQL Command window opens.
-3. To create the wishers table,
-1. Type the following SQL query (note that you need to explicitly set character sets to UTF-8 for internationalization):
 
-[source,java]
+
+[start=2.]
+. From the same context menu, choose Execute Command. An empty SQL Command window opens.
+
+[start=3.]
+. To create the wishers table,
+
+
+[start=1.]
+. Type the following SQL query (note that you need to explicitly set character sets to UTF-8 for internationalization):
+
+[source,sql]
 ----
-
 CREATE TABLE wishers(id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, name CHAR(50) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL UNIQUE,password CHAR(50) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL)
 ----
+
 NOTE: You can get a unique auto generated number from MySQL by specifying the AUTO_INCREMENT property for a field. MySQL will generate a unique number by incrementing the last number of the table and will automatically add to the auto incremented field. In our example the ID field is auto incremented.
-2. Click the right mouse button on the query and then choose Run Statement from the context menu.
 
-*Note: *The default storage engine for MySQL is MyISAM, which does not support foreign keys. If you want to use foreign keys, consider using InnoDB as the storage engine.
 
-4. To create the wishes table:
-1. Type the following SQL query:
+[start=2.]
+. Click the right mouse button on the query and then choose Run Statement from the context menu.
 
-[source,java]
+NOTE: The default storage engine for MySQL is MyISAM, which does not support foreign keys. If you want to use foreign keys, consider using InnoDB as the storage engine.
+
+
+[start=4.]
+. To create the wishes table:
+.. Type the following SQL query:
+
+[source,sql]
 ----
-
 CREATE TABLE wishes(id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,wisher_id INT NOT NULL,description CHAR(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,due_date DATE,FOREIGN KEY (wisher_id) REFERENCES wishers(id))
 ----
-2. Click the right mouse button on the query and then choose Run Statement from the context menu.
-5. To verify that the new tables are added to the database, switch to the Services window and then navigate to the jdbc:mysql://localhost:3306/wishlist connection node.
-6. Click the right mouse button and choose Refresh. The nodes wishers and wishes appear in the tree.
+.. Click the right mouse button on the query and then choose Run Statement from the context menu.
+
+[start=5.]
+. To verify that the new tables are added to the database, switch to the Services window and then navigate to the jdbc:mysql://localhost:3306/wishlist connection node.
+
+[start=6.]
+. Click the right mouse button and choose Refresh. The nodes wishers and wishes appear in the tree.
 
 Note: You can download a set of SQL commands for creating the MySQL wishlist database link:https://netbeans.org/projects/www/downloads/download/php%252FSQL-files-for-MySQL.zip[+here+].
 
@@ -207,26 +209,34 @@
 
 To test your application you will need some data in the database. The example below shows how to add two wishers and four wishes.
 
-1. On the jdbc:mysql://localhost:3306/wishlist connection, click the right mouse button and choose Execute Command. An empty SQL Command window opens.
-2. To add a wisher, use syntax similar to the example below:
 
-[source,java]
+[start=1.]
+. On the jdbc:mysql://localhost:3306/wishlist connection, click the right mouse button and choose Execute Command. An empty SQL Command window opens.
+
+[start=2.]
+. To add a wisher, use syntax similar to the example below:
+
+[source,sql]
 ----
 
 INSERT INTO wishers (name, password) VALUES ('Tom', 'tomcat');
 ----
 Click the right mouse button on the query and from the context menu choose Run Statement.
-*Note: * The statement does not contain a value for the  ``id``  field. The values are entered automatically because the field type is specified as  ``AUTO_INCREMENT`` .
+
+NOTE:  The statement does not contain a value for the  ``id``  field. The values are entered automatically because the field type is specified as  ``AUTO_INCREMENT`` .
+
 Enter another test wisher:
 
-[source,java]
+[source,sql]
 ----
 
 INSERT INTO wishers (name, password) VALUES ('Jerry', 'jerrymouse');
 ----
-3. To add the wishes, use syntax similar to the example below:
 
-[source,java]
+[start=3.]
+. To add the wishes, use syntax similar to the example below:
+
+[source,sql]
 ----
 
 INSERT INTO wishes (wisher_id, description, due_date) VALUES (1, 'Sausage', 080401);INSERT INTO wishes (wisher_id, description) VALUES (1, 'Icecream');INSERT INTO wishes (wisher_id, description, due_date) VALUES (2, 'Cheese', 080501);INSERT INTO wishes (wisher_id, description)VALUES (2, 'Candle');
@@ -236,7 +246,10 @@
 
 NOTE: You can also execute the queries one after another as described in item 2.
 
-4. To view the test data, click the right mouse button on the relevant table and from the context menu choose View Data. 
+
+[start=4.]
+. To view the test data, click the right mouse button on the relevant table and from the context menu choose View Data. 
+
 image::images/view-test-data.png[]
 
 To get some general understanding of database principles and design patterns, check the following tutorial: link:http://www.tekstenuitleg.net/en/articles/database_design_tutorial/1[+http://www.tekstenuitleg.net/en/articles/database_design_tutorial/1+].
diff --git a/netbeans.apache.org/src/content/kb/docs/php/wish-list-lesson1_ja.asciidoc b/netbeans.apache.org/src/content/kb/docs/php/wish-list-lesson1_ja.asciidoc
index 1a4995a..c12b2b6 100644
--- a/netbeans.apache.org/src/content/kb/docs/php/wish-list-lesson1_ja.asciidoc
+++ b/netbeans.apache.org/src/content/kb/docs/php/wish-list-lesson1_ja.asciidoc
@@ -29,38 +29,6 @@
 :description: PHPを使用するデータベース駆動型アプリケーションの作成 - Apache NetBeans
 :keywords: Apache NetBeans, Tutorials, PHPを使用するデータベース駆動型アプリケーションの作成
 
-= レッスン1a: MySQLデータベースの作成
-:jbake-type: tutorial
-:jbake-tags: tutorials 
-:jbake-status: published
-:icons: font
-:syntax: true
-:source-highlighter: pygments
-:toc: left
-:toc-title:
-:description: レッスン1a: MySQLデータベースの作成 - Apache NetBeans
-:keywords: Apache NetBeans, Tutorials, レッスン1a: MySQLデータベースの作成
-
-
-
-1. link:wish-list-tutorial-main-page.html[+PHPを使用するCRUDアプリケーションの作成 - メイン・ページ+]
-2. 
-データベースの作成
-
-1. *=> MySQLデータベースの作成*
-
-2. link:wish-list-oracle-lesson1.html[+Oracleデータベース表の作成+]
-3. link:wish-list-lesson2.html[+アプリケーションの設計。データベースからの読取り+]
-4. link:wish-list-lesson3.html[+新規アプリケーション・ユーザーの作成+]
-5. link:wish-list-lesson4.html[+コードの最適化+]
-6. link:wish-list-lesson5.html[+セキュリティの追加。アプリケーション・ユーザー・ログオンの実装+]
-7. link:wish-list-lesson6.html[+データベースへの新しいウィッシュの追加+]
-8. link:wish-list-lesson7.html[+データベース内のエントリの更新および削除+]
-9. link:wish-list-lesson8.html[+CSSテクノロジを使用したアプリケーションの外観の改良+]
-10. link:wish-list-lesson9.html[+リモートWebサーバーへのアプリケーションのデプロイ+]
-
-image::images/netbeans-stamp-80-74-73.png[title="このページの内容は、NetBeans IDE 7.2、7.3、7.4および8.0に適用されます"]
-
 このレッスンでは、ウィッシュ・リスト・アプリケーションの開発での最後の準備手順である、テスト・データを持つサンプルのデータベースの作成を示します。このチュートリアルの手順を完了するには、ウィッシャのデータを格納するデータベースが必要です。NetBeans IDEでは、IDEのインタフェースを使用して、これらのアクティビティをすべて実行できます。
 始める前に、link:wish-list-tutorial-main-page.html[+PHPを使用するCRUDアプリケーションの作成 - メイン・ページ+]にあるチュートリアルの要件を確認してください。
 
@@ -85,21 +53,34 @@
 1. IDEを起動し、「サービス」ウィンドウに切り替えて([Ctrl]-[5])、「データベース」ノードを展開します。
 2. MySQLデータベース・サーバーに
 接続するには、「 ``MySQLサーバー`` 」ノードに移動して、コンテキスト・メニューから「接続」を選択します。 
+
 image::images/mysql-ctxmenu-connect.png[]
-3. NetBeans IDEはMySQLサーバーに接続し、サーバー経由で使用できるデータベースを確認して、システムの ``mysql`` データベースを検出し、対応する新しい ``mysql`` ノードをデータベース・ツリーに追加します。 
+
+
+[start=3.]
+. NetBeans IDEはMySQLサーバーに接続し、サーバー経由で使用できるデータベースを確認して、システムの ``mysql`` データベースを検出し、対応する新しい ``mysql`` ノードをデータベース・ツリーに追加します。 
+
 image::images/mysql_node_added.png[]
-4. SQLコマンドを実行するには、データベースに接続する必要があります。MySQLシステムのみ使用可能なので、それに接続する必要があります。
+
+
+[start=4.]
+. SQLコマンドを実行するには、データベースに接続する必要があります。MySQLシステムのみ使用可能なので、それに接続する必要があります。
 システム・データベースに接続するには、「 ``mysql`` 」ノードに移動し、コンテキスト・メニューから「接続」を選択します。接続がまだ存在していない場合は、「データベースの新規接続」ダイアログ・ボックスが表示されます。「ユーザー名」フィールドは、デフォルトで「root」と入力されています。「パスワード」フィールドに、ルート・ユーザーのパスワードを入力します。
 
-*注意: *以前に`mysql`データベースに接続したことがある場合、このダイアログは表示されません。かわりに、新しい接続ノードがツリーに表示されるだけです。
+NOTE: 以前に`mysql`データベースに接続したことがある場合、このダイアログは表示されません。かわりに、新しい接続ノードがツリーに表示されるだけです。
 
 image::images/create-new-database-connection.png[] 
+
 「データベースの新規接続」ダイアログ・ボックスに、「接続が確立されました。」というメッセージが表示されます。「OK」をクリックします。 ``jdbc:mysql://localhost:3306/mysql`` という名前の新しいノードがデータベース・ツリーに追加されます。
-5. 「 ``jdbc:mysql://localhost:3306/mysql`` 」ノードに移動し、コンテキスト・メニューから「コマンドの実行」を選択します。
+
+[start=5.]
+. 「 ``jdbc:mysql://localhost:3306/mysql`` 」ノードに移動し、コンテキスト・メニューから「コマンドの実行」を選択します。
+
 image::images/execute-command.png[]
+
 「SQLコマンド」ウィンドウが開きます。「SQLコマンド」ウィンドウで、次の文のような構文を使用します。
 
-[source,java]
+[source,sql]
 ----
 
 CREATE USER 'phpuser'@'localhost' IDENTIFIED BY 'phpuserpw'
@@ -114,6 +95,7 @@
 1. 「 ``MySQLサーバーlocalhost:3306`` 」ノードに移動し、コンテキスト・メニューから「データベースを作成」を選択します。「MySQLデータベースの作成」ダイアログ・ボックスが表示されます。フィールドに次のように入力します。
 * 「データベース名」フィールドに、「wishlist」と入力します。
 * 「ユーザーにフル・アクセスを許可」チェックボックスをオンにし、ドロップダウン・リストから「 ``phpuser@localhost`` 」を選択して「OK」をクリックします。
+
 image::images/create-user.png[]
 
 「ユーザーにフル・アクセスを許可」機能は常に動作するわけではありません。これが動作しない場合、ルート・ユーザーとして<<EstablishConnection,データベースに接続>>し、SQL問合せ[examplecode]# ``GRANT ALL ON wishlist.* TO phpuser@localhost`` #を送信します。
@@ -126,11 +108,22 @@
 前の項の最後に、`wishlist`データベースと`root`ユーザーへの接続が作成されました。ここで、`phpuser`ユーザー用に新しい接続を作成します。
 
 1. 「サービス」ウィンドウで、「データベース」ノードを右クリックし、「新規接続」を選択します。新規接続ウィザードが開きます。
+
 image::images/databases-ctxmenu-newconnection.png[]
-2. 新規接続ウィザードの「ドライバを検索」パネルで、「`MySQL (Connector/J Driver)`」を選択します。「次」をクリックします。「接続をカスタマイズ」パネルが開きます。
+
+
+[start=2.]
+. 新規接続ウィザードの「ドライバを検索」パネルで、「`MySQL (Connector/J Driver)`」を選択します。「次」をクリックします。「接続をカスタマイズ」パネルが開きます。
+
 image::images/locate-driver.png[]
-3. 「データベース」フィールドに「`wishlist`」と入力します。
-4. 「ユーザー名」および「パスワード」編集ボックスで、<<CreateUser,データベースの所有者(ユーザー)の作成>>の項で指定したユーザー名とパスワード(この例ではそれぞれ ``phpuser`` と ``phpuserpw`` )を入力します。「パスワードを保存」を選択します。「接続をテスト」をクリックし、接続が成功したら、「OK」をクリックします。
+
+
+[start=3.]
+. 「データベース」フィールドに「`wishlist`」と入力します。
+
+[start=4.]
+. 「ユーザー名」および「パスワード」編集ボックスで、<<CreateUser,データベースの所有者(ユーザー)の作成>>の項で指定したユーザー名とパスワード(この例ではそれぞれ ``phpuser`` と ``phpuserpw`` )を入力します。「パスワードを保存」を選択します。「接続をテスト」をクリックし、接続が成功したら、「OK」をクリックします。
+
 image::images/phpuser-connection.png[]
 
 対応する新規接続ノードがデータベース・ツリーに表示されます。ここで、`root`ユーザーの`wishlist`データベースへの接続を削除できます。「 ``jdbc:mysql://localhost:3306/wishlist [root on Default schema]`` 」接続をクリックし、「削除」を選択します。
@@ -146,6 +139,7 @@
 * ウィッシュの説明を格納するwishes表
 
 image::images/wishlist-db.png[]
+
 wishers表には次の3つのフィールドがあります。
 
 1. ID (id) - ウィッシャの一意のID。このフィールドは主キーとして使用されます。
@@ -165,32 +159,46 @@
 == 表の作成
 
 1. データベースに接続するには、 ``jdbc:mysql://localhost:3306/wishlist`` 接続で、マウスの右ボタンをクリックし、コンテキスト・メニューから「接続」を選択します。
-*注意: *メニュー項目が無効になっている場合は、すでに接続されています。ステップ2へ進んでください。
+NOTE: メニュー項目が無効になっている場合は、すでに接続されています。ステップ2へ進んでください。
 2. 同じコンテキスト・メニューから「コマンドの実行」を選択します。空の「SQLコマンド」ウィンドウが開きます。
 3. wishers表を作成するには:
-1. 次のSQL問合せを入力します(国際化のためには文字セットを明示的にUTF-8に設定する必要があります)。
 
-[source,java]
+[start=1.]
+. 次のSQL問合せを入力します(国際化のためには文字セットを明示的にUTF-8に設定する必要があります)。
+
+[source,sql]
 ----
 
 CREATE TABLE wishers(id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, name CHAR(50) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL UNIQUE,password CHAR(50) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL)
 ----
-*注意: *フィールドに「AUTO_INCREMENT」プロパティを指定すると、MySQLから自動生成される一意の番号を取得できます。MySQLは、表の最後の数字を増分して一意の番号を生成し、自動増分フィールドに自動的に追加します。この例では、IDフィールドが自動的に増分されます。
-2. 問合せでマウスの右ボタンをクリックし、コンテキスト・メニューから「文の実行」を選択します。
+NOTE: フィールドに「AUTO_INCREMENT」プロパティを指定すると、MySQLから自動生成される一意の番号を取得できます。MySQLは、表の最後の数字を増分して一意の番号を生成し、自動増分フィールドに自動的に追加します。この例では、IDフィールドが自動的に増分されます。
 
-*注意: *MySQLのデフォルトのストレージ・エンジンはMyISAMで、外部キーをサポートしません。外部キーを使用する場合、ストレージ・エンジンとしてInnoDBを使用することを検討してください。
+[start=2.]
+. 問合せでマウスの右ボタンをクリックし、コンテキスト・メニューから「文の実行」を選択します。
 
-4. wishes表を作成するには:
-1. 次のSQL問合せを入力します。
+NOTE: MySQLのデフォルトのストレージ・エンジンはMyISAMで、外部キーをサポートしません。外部キーを使用する場合、ストレージ・エンジンとしてInnoDBを使用することを検討してください。
 
-[source,java]
+
+[start=4.]
+. wishes表を作成するには:
+
+[start=1.]
+. 次のSQL問合せを入力します。
+
+[source,sql]
 ----
 
 CREATE TABLE wishes(id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,wisher_id INT NOT NULL,description CHAR(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,due_date DATE,FOREIGN KEY (wisher_id) REFERENCES wishers(id))
 ----
-2. 問合せでマウスの右ボタンをクリックし、コンテキスト・メニューから「文の実行」を選択します。
-5. 新しい表がデータベースに追加されたことを確認するには、「サービス」ウィンドウに切り替えて、jdbc:mysql://localhost:3306/wishlistの接続ノードに移動します。
-6. マウスの右ボタンをクリックし、「リフレッシュ」を選択します。「wishers」ノードと「wishes」ノードがツリーに表示されます。
+
+[start=2.]
+. 問合せでマウスの右ボタンをクリックし、コンテキスト・メニューから「文の実行」を選択します。
+
+[start=5.]
+. 新しい表がデータベースに追加されたことを確認するには、「サービス」ウィンドウに切り替えて、jdbc:mysql://localhost:3306/wishlistの接続ノードに移動します。
+
+[start=6.]
+. マウスの右ボタンをクリックし、「リフレッシュ」を選択します。「wishers」ノードと「wishes」ノードがツリーに表示されます。
 
 注意: MySQL wishlistデータベースを作成するための一連のSQLコマンドは、link:https://netbeans.org/projects/www/downloads/download/php%252FSQL-files-for-MySQL.zip[+ここ+]からダウンロードできます。
 
@@ -199,26 +207,32 @@
 
 アプリケーションをテストするには、データベース内にいくつかのデータが必要です。以降の例では、2つのウィッシャと4つのウィッシュを追加する方法を示します。
 
-1. jdbc:mysql://localhost:3306/wishlistの接続で、マウスの右ボタンをクリックして「コマンドの実行」を選択します。空の「SQLコマンド」ウィンドウが開きます。
-2. ウィッシャを追加するには、次の例のような構文を使用します。
 
-[source,java]
+[start=1.]
+. jdbc:mysql://localhost:3306/wishlistの接続で、マウスの右ボタンをクリックして「コマンドの実行」を選択します。空の「SQLコマンド」ウィンドウが開きます。
+
+[start=2.]
+. ウィッシャを追加するには、次の例のような構文を使用します。
+
+[source,sql]
 ----
 
 INSERT INTO wishers (name, password) VALUES ('Tom', 'tomcat');
 ----
 問合せでマウスの右ボタンをクリックし、コンテキスト・メニューから「文の実行」を選択します。
-*注意: *文には ``id`` フィールドの値は含まれていません。フィールドの型が ``AUTO_INCREMENT`` に指定されているので、値は自動的に入力されます。
+NOTE: 文には ``id`` フィールドの値は含まれていません。フィールドの型が ``AUTO_INCREMENT`` に指定されているので、値は自動的に入力されます。
 別のテスト・ウィッシャを入力します。
 
-[source,java]
+[source,sql]
 ----
 
 INSERT INTO wishers (name, password) VALUES ('Jerry', 'jerrymouse');
 ----
-3. ウィッシュを追加するには、次の例のような構文を使用します。
 
-[source,java]
+[start=3.]
+. ウィッシュを追加するには、次の例のような構文を使用します。
+
+[source,sql]
 ----
 
 INSERT INTO wishes (wisher_id, description, due_date) VALUES (1, 'Sausage', 080401);INSERT INTO wishes (wisher_id, description) VALUES (1, 'Icecream');INSERT INTO wishes (wisher_id, description, due_date) VALUES (2, 'Cheese', 080501);INSERT INTO wishes (wisher_id, description)VALUES (2, 'Candle');
@@ -226,9 +240,12 @@
 
 問合せを選択し、各問合せでマウスの右ボタンをクリックして、コンテキスト・メニューから「セクションの実行」を選択します。
 
-*注意: *項目2で説明しているように、問合せを次々に実行することもできます。
+NOTE: 項目2で説明しているように、問合せを次々に実行することもできます。
 
-4. テスト・データを表示するには、関連する表でマウスの右ボタンをクリックし、コンテキスト・メニューから「データを表示」を選択します。
+
+[start=4.]
+. テスト・データを表示するには、関連する表でマウスの右ボタンをクリックし、コンテキスト・メニューから「データを表示」を選択します。
+
 image::images/view-test-data.png[]
 
 データベースの原則とデザイン・パターンの一般的な知識については、チュートリアルlink:http://www.tekstenuitleg.net/en/articles/database_design_tutorial/1[+http://www.tekstenuitleg.net/en/articles/database_design_tutorial/1+]を確認してください。
diff --git a/netbeans.apache.org/src/content/kb/docs/php/wish-list-lesson1_pt_BR.asciidoc b/netbeans.apache.org/src/content/kb/docs/php/wish-list-lesson1_pt_BR.asciidoc
index 10763b5..30f24ed 100644
--- a/netbeans.apache.org/src/content/kb/docs/php/wish-list-lesson1_pt_BR.asciidoc
+++ b/netbeans.apache.org/src/content/kb/docs/php/wish-list-lesson1_pt_BR.asciidoc
@@ -29,38 +29,6 @@
 :description: Criando uma Aplicação Orientada pelo Banco de Dados com o PHP - Apache NetBeans
 :keywords: Apache NetBeans, Tutorials, Criando uma Aplicação Orientada pelo Banco de Dados com o PHP
 
-= Lição 1: Criando um Banco de Dados MySQL
-:jbake-type: tutorial
-:jbake-tags: tutorials 
-:jbake-status: published
-:icons: font
-:syntax: true
-:source-highlighter: pygments
-:toc: left
-:toc-title:
-:description: Lição 1: Criando um Banco de Dados MySQL - Apache NetBeans
-:keywords: Apache NetBeans, Tutorials, Lição 1: Criando um Banco de Dados MySQL
-
-
-
-1. link:wish-list-tutorial-main-page.html[+Criando uma Aplicação CRUD com PHP - Página Principal+]
-2. 
-Criando o Banco de Dados
-
-1. *=> Criando um Banco de Dados MySQL*
-
-2. link:wish-list-oracle-lesson1.html[+Criando Tabelas do Banco de Dados Oracle+]
-3. link:wish-list-lesson2.html[+Projetando a Aplicação. Lendo do Banco de Dados+]
-4. link:wish-list-lesson3.html[+Criando um Novo Usuário da Aplicação+]
-5. link:wish-list-lesson4.html[+Otimizando o Código+]
-6. link:wish-list-lesson5.html[+Adicionando Segurança. Implementando o Log-in de Usuário da Aplicação+]
-7. link:wish-list-lesson6.html[+Adicionando um Novo Desejo ao Banco de Dados+]
-8. link:wish-list-lesson7.html[+Atualizando e Deletando Entradas no Banco de Dados+]
-9. link:wish-list-lesson8.html[+Melhorando a Aparência da Aplicação Usando a Tecnologia CSS+]
-10. link:wish-list-lesson9.html[+Implantando a Aplicação em um Servidor Web Remoto+]
-
-image::images/netbeans-stamp-80-74-73.png[title="O conteúdo desta página se aplica ao NetBeans IDE 7.2, 7.3, 7.4 e 8.0"]
-
 Esta lição descreve a última etapa preliminar no desenvolvimento da aplicação da Lista de Desejos: a criação de um banco de dados de amostra com dados de teste. Para concluir as etapas deste tutorial, você precisará de um banco de dados para armazenar os dados dos wishers. Com o NetBeans IDE, você pode realizar todas essas atividades usando a interface do IDE. 
 Antes de começar, veja os requisitos do tutorial descritos em link:wish-list-tutorial-main-page.html[+Criando uma Aplicação CRUD com PHP - Página Principal+].
 
@@ -85,21 +53,34 @@
 1. Inicie o IDE, alterne para a janela Serviços (Ctrl-5) e expanda o nó do Banco de Dados.
 2. Para 
 conectar ao servidor de banco de dados MySQL, navegue para o nó do  ``Servidor MySQL``  e, do menu de contexto, selecione Conectar. 
+
 image::images/mysql-ctxmenu-connect.png[]
-3. O NetBeans IDE conecta-se ao servidor MySQL, verifica quais bancos de dados estão disponíveis pelo servidor, detecta o banco de dados do sistema  ``mysql`` , e adiciona o novo nó correspondente  ``mysql``  na árvore Bancos de Dados. 
+
+
+[start=3.]
+. O NetBeans IDE conecta-se ao servidor MySQL, verifica quais bancos de dados estão disponíveis pelo servidor, detecta o banco de dados do sistema  ``mysql`` , e adiciona o novo nó correspondente  ``mysql``  na árvore Bancos de Dados. 
+
 image::images/mysql_node_added.png[]
-4. Para executar um comando SQL, você precisa estar conectado a um banco de dados. Como somente o sistema MySQL está disponível, você precisa se conectar ao mesmo. 
+
+
+[start=4.]
+. Para executar um comando SQL, você precisa estar conectado a um banco de dados. Como somente o sistema MySQL está disponível, você precisa se conectar ao mesmo. 
 Para conectar ao banco de dados do sistema, navegue até o nó  ``mysql``  e, no menu de contexto, selecione Conectar. Se uma conexão ainda não existir, a caixa de diálogo Nova Conexão de Banco de Dados será exibida. O campo Nome do Usuário está preenchido, por default, com raiz. No campo Senha, insira a senha do usuário raiz.
 
-*Observação: *se você estabeleceu conexão ao banco de dados `mysql` antes, esta caixa de diálogo não aparecerá. Em vez disso, o novo nó de conexão simplesmente aparece na árvore.
+NOTE: se você estabeleceu conexão ao banco de dados `mysql` antes, esta caixa de diálogo não aparecerá. Em vez disso, o novo nó de conexão simplesmente aparece na árvore.
 
 image::images/create-new-database-connection.png[] 
+
 A caixa de diálogo Nova Conexão de Banco de Dados mostra a mensagem "Conexão estabelecida". Clique em OK. Um novo nó chamado  ``jdbc:mysql://localhost:3306/mysql``  é adicionado na árvore do Bancos de Dados.
-5. Navegue até o nó  ``jdbc:mysql://localhost:3306/mysql``  e no menu de contexto selecione Executar Comando. 
+
+[start=5.]
+. Navegue até o nó  ``jdbc:mysql://localhost:3306/mysql``  e no menu de contexto selecione Executar Comando. 
+
 image::images/execute-command.png[] 
+
 Uma janela de Comando SQL é aberta. Na janela Comando SQL, use uma sintaxe similar à seguinte instrução:
 
-[source,java]
+[source,sql]
 ----
 
 CREATE USER 'phpuser'@'localhost' IDENTIFIED BY 'phpuserpw'
@@ -114,6 +95,7 @@
 1. Navegue para o nó  ``Servidor MySQL em localhost:3306``  e, no menu de contexto, selecione Criar Banco de Dados. A caixa de diálogo Criar Banco de Dados MySQL é exibida. Preencha os campos:
 * No campo Nome do Banco de Dados, insira a lista de desejos.
 * Ative a caixa de seleção Conceder acesso total ao usuário e, na lista drop-down, selecione  ``phpuser@localhost`` . Clique em OK.
+
 image::images/create-user.png[]
 
 A função “Conceder acesso total ao usuário” nem sempre funciona. Caso não funcione, <<EstablishConnection,conecte-se ao banco de dados>> como usuário raiz e envie a consulta SQL [examplecode]# ``GRANT ALL ON wishlist.* TO phpuser@localhost`` #.
@@ -126,11 +108,22 @@
 No fim da seção anterior, você criou o banco de dados `wishlist` com uma conexão ao usuário `raiz`. Agora você cria uma nova conexão para o usuário `phpuser`.
 
 1. Na janela Serviços, clique com o botão direito do mouse no nó Bancos de Dados e selecione Nova Conexão. O Assistente Nova Conexão será aberto.
+
 image::images/databases-ctxmenu-newconnection.png[]
-2. No painel Novo Driver de Localização do Assistente de Conexão, selecione o `MySQL (Driver Conector/J).` Clique em Próximo. O painel Personalizar Conexão é aberto.
+
+
+[start=2.]
+. No painel Novo Driver de Localização do Assistente de Conexão, selecione o `MySQL (Driver Conector/J).` Clique em Próximo. O painel Personalizar Conexão é aberto.
+
 image::images/locate-driver.png[]
-3. No campo Banco de Dados, digite `wishlist`.
-4. Nas caixas de edição Nome do Usuário e Senha, insira o nome e a senha especificados na seção <<CreateUser,Criando o Proprietário (Usuário) do Banco de Dados>> (em nosso exemplo  ``phpuser``  e  ``!phpuser``  respectivamente). Marque Lembrar Senha. Clique em Testar Conexão e se a conexão for bem-sucedida, clique em OK. 
+
+
+[start=3.]
+. No campo Banco de Dados, digite `wishlist`.
+
+[start=4.]
+. Nas caixas de edição Nome do Usuário e Senha, insira o nome e a senha especificados na seção <<CreateUser,Criando o Proprietário (Usuário) do Banco de Dados>> (em nosso exemplo  ``phpuser``  e  ``!phpuser``  respectivamente). Marque Lembrar Senha. Clique em Testar Conexão e se a conexão for bem-sucedida, clique em OK. 
+
 image::images/phpuser-connection.png[]
 
 O nó correspondente à nova conexão é exibido na árvore do Bancos de Dados. Agora você pode deletar a conexão do usuário `raiz` para o banco de dados `wishlist`. Clique na conexão  ``jdbc:mysql://localhost:3306/wishlist [raiz no esquema Default]``  e escolha Deletar.
@@ -146,6 +139,7 @@
 * Uma tabela de desejos para armazenar descrições de desejos
 
 image::images/wishlist-db.png[]
+
 A tabela de wishers contém três campos:
 
 1. id - a identificação exclusiva de um wisher. Este campo é usado como a Chave Primária
@@ -165,32 +159,50 @@
 == Criando as Tabelas
 
 1. Para conectar ao banco de dados, na conexão  ``jdbc:mysql://localhost:3306/wishlist`` , clique com o botão direito do mouse e selecione Conectar no menu de contexto.
-*Observação:* se o item de menu estiver desativado, você já está conectado. Prossiga com a etapa 2.
-2. No mesmo menu de contexto, selecione Executar Comando. Uma janela Comando SQL vazia é aberta.
-3. Para criar a tabela de wishers,
-1. Digite a seguinte Consulta SQL (observe que é preciso definir explicitamente os conjuntos de caracteres como URF-8 para internacionalização):
+NOTE:  se o item de menu estiver desativado, você já está conectado. Prossiga com a etapa 2.
 
-[source,java]
+[start=2.]
+. No mesmo menu de contexto, selecione Executar Comando. Uma janela Comando SQL vazia é aberta.
+
+[start=3.]
+. Para criar a tabela de wishers,
+
+[start=1.]
+. Digite a seguinte Consulta SQL (observe que é preciso definir explicitamente os conjuntos de caracteres como URF-8 para internacionalização):
+
+[source,sql]
 ----
 
 CREATE TABLE wishers(id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, name CHAR(50) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL UNIQUE,password CHAR(50) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL)
 ----
-*Observação:* você pode obter um número exclusivo gerado automaticamente do MySQL especificando a propriedade AUTO_INCREMENT de um campo. O MySQL irá gerar um número exclusivo incrementando o último número da tabela e adicionará automaticamente ao campo incrementado. No nosso exemplo, o campo ID é incrementado automaticamente.
-2. Clique com o botão direito do mouse na consulta e selecione Executar Instrução no menu de contexto.
+NOTE:  você pode obter um número exclusivo gerado automaticamente do MySQL especificando a propriedade AUTO_INCREMENT de um campo. O MySQL irá gerar um número exclusivo incrementando o último número da tabela e adicionará automaticamente ao campo incrementado. No nosso exemplo, o campo ID é incrementado automaticamente.
 
-*Observação: *O mecanismo de armazenamento default do MySQL é o MyISAM, que não é compatível com teclas estrangeiras. Caso deseje usar teclas estrangeiras, considere usar InnoDB como mecanismo de armazenamento.
+[start=2.]
+. Clique com o botão direito do mouse na consulta e selecione Executar Instrução no menu de contexto.
 
-4. Para criar a tabela de desejos:
-1. Digite a seguinte consulta SQL:
+NOTE: O mecanismo de armazenamento default do MySQL é o MyISAM, que não é compatível com teclas estrangeiras. Caso deseje usar teclas estrangeiras, considere usar InnoDB como mecanismo de armazenamento.
 
-[source,java]
+
+[start=4.]
+. Para criar a tabela de desejos:
+
+[start=1.]
+. Digite a seguinte consulta SQL:
+
+[source,sql]
 ----
 
 CREATE TABLE wishes(id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,wisher_id INT NOT NULL,description CHAR(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,due_date DATE,FOREIGN KEY (wisher_id) REFERENCES wishers(id))
 ----
-2. Clique com o botão direito do mouse na consulta e selecione Executar Instrução no menu de contexto.
-5. Para verificar se as novas tabelas foram adicionadas ao banco de dados, alterne para a janela Serviços e navegue para o nó da conexão jdbc:mysql://localhost:3306/wishlist.
-6. Clique com o botão direito do mouse e selecione Atualizar. Os nós de wishers e desejos aparecem na árvore.
+
+[start=2.]
+. Clique com o botão direito do mouse na consulta e selecione Executar Instrução no menu de contexto.
+
+[start=5.]
+. Para verificar se as novas tabelas foram adicionadas ao banco de dados, alterne para a janela Serviços e navegue para o nó da conexão jdbc:mysql://localhost:3306/wishlist.
+
+[start=6.]
+. Clique com o botão direito do mouse e selecione Atualizar. Os nós de wishers e desejos aparecem na árvore.
 
 Observação: você pode fazer download de um conjunto de comandos SQL para criar link:https://netbeans.org/projects/www/downloads/download/php%252FSQL-files-for-MySQL.zip[+aqui+] o banco de dados da lista de desejos MySQL.
 
@@ -199,26 +211,32 @@
 
 Para testar a aplicação, você precisará de alguns dados no banco de dados. O exemplo abaixo mostra como adicionar dois wishers e quatro desejos.
 
-1. Na conexão jdbc:mysql://localhost:3306/wishlist, clique com o botão direito do mouse e selecione Executar Comando. Uma janela Comando SQL vazia é aberta.
-2. Para adicionar um wisher, use uma sintaxe similar ao exemplo abaixo:
 
-[source,java]
+[start=1.]
+. Na conexão jdbc:mysql://localhost:3306/wishlist, clique com o botão direito do mouse e selecione Executar Comando. Uma janela Comando SQL vazia é aberta.
+
+[start=2.]
+. Para adicionar um wisher, use uma sintaxe similar ao exemplo abaixo:
+
+[source,sql]
 ----
 
 INSERT INTO wishers (name, password) VALUES ('Tom', 'tomcat');
 ----
 Clique com o botão direito do mouse na consulta e, no menu de contexto, selecione Executar Instrução.
-*Observação: * a instrução não contém um valor para o campo  ``id`` . Os valores são inseridos automaticamente porque o tipo de campo é especificado como  ``AUTO_INCREMENT`` .
+NOTE:  a instrução não contém um valor para o campo  ``id`` . Os valores são inseridos automaticamente porque o tipo de campo é especificado como  ``AUTO_INCREMENT`` .
 Inserir outro wisher de teste:
 
-[source,java]
+[source,sql]
 ----
 
 INSERT INTO wishers (name, password) VALUES ('Jerry', 'jerrymouse');
 ----
-3. Para adicionar os desejos, use uma sintaxe similar ao exemplo abaixo:
 
-[source,java]
+[start=3.]
+. Para adicionar os desejos, use uma sintaxe similar ao exemplo abaixo:
+
+[source,sql]
 ----
 
 INSERT INTO wishes (wisher_id, description, due_date) VALUES (1, 'Sausage', 080401);INSERT INTO wishes (wisher_id, description) VALUES (1, 'Icecream');INSERT INTO wishes (wisher_id, description, due_date) VALUES (2, 'Cheese', 080501);INSERT INTO wishes (wisher_id, description)VALUES (2, 'Candle');
@@ -226,9 +244,12 @@
 
 Selecione as consultas, clique com o botão direito do mouse em cada consulta e, no menu de contexto, selecione Executar Seleção.
 
-*Observação:* você também pode executar as consultas uma após a outra, conforme descrito no item 2.
+NOTE:  você também pode executar as consultas uma após a outra, conforme descrito no item 2.
 
-4. Para visualizar os dados de teste, clique com o botão direito do mouse na tabela relevante e, no menu de contexto, selecione Exibir dados. 
+
+[start=4.]
+. Para visualizar os dados de teste, clique com o botão direito do mouse na tabela relevante e, no menu de contexto, selecione Exibir dados. 
+
 image::images/view-test-data.png[]
 
 Para obter um entendimento geral dos princípios de bancos de dados e padrões de design, consulte o tutorial: link:http://www.tekstenuitleg.net/en/articles/database_design_tutorial/1[+http://www.tekstenuitleg.net/en/articles/database_design_tutorial/1+].
diff --git a/netbeans.apache.org/src/content/kb/docs/php/wish-list-lesson1_ru.asciidoc b/netbeans.apache.org/src/content/kb/docs/php/wish-list-lesson1_ru.asciidoc
index b7b463d..f5a4717 100644
--- a/netbeans.apache.org/src/content/kb/docs/php/wish-list-lesson1_ru.asciidoc
+++ b/netbeans.apache.org/src/content/kb/docs/php/wish-list-lesson1_ru.asciidoc
@@ -29,38 +29,6 @@
 :description: Создание приложения на основе базы данных на языке PHP - Apache NetBeans
 :keywords: Apache NetBeans, Tutorials, Создание приложения на основе базы данных на языке PHP
 
-= Урок 1a: создание базы данных MySQL
-:jbake-type: tutorial
-:jbake-tags: tutorials 
-:jbake-status: published
-:icons: font
-:syntax: true
-:source-highlighter: pygments
-:toc: left
-:toc-title:
-:description: Урок 1a: создание базы данных MySQL - Apache NetBeans
-:keywords: Apache NetBeans, Tutorials, Урок 1a: создание базы данных MySQL
-
-
-
-1. link:wish-list-tutorial-main-page.html[+Создание приложения типа CRUD на языке PHP – главная страница+]
-2. 
-Создание базы данных
-
-1. *=> Создание базы данных MySQL*
-
-2. link:wish-list-oracle-lesson1.html[+ Создание таблиц базы данных Oracle+]
-3. link:wish-list-lesson2.html[+Проектирование приложения. Чтение из базы данных+]
-4. link:wish-list-lesson3.html[+Создание нового пользователя приложения+]
-5. link:wish-list-lesson4.html[+Усовершенствование кода+]
-6. link:wish-list-lesson5.html[+Добавление функций безопасности. Реализация входа пользователя в приложение+]
-7. link:wish-list-lesson6.html[+Добавление к базе данных новых желаний+]
-8. link:wish-list-lesson7.html[+Обновление и удаление записей в базе данных+]
-9. link:wish-list-lesson8.html[+Усовершенствование внешнего вида приложения с использованием технологии CSS+]
-10. link:wish-list-lesson9.html[+Развертывание приложения на удаленном веб-сервере+]
-
-image::images/netbeans-stamp-80-74-73.png[title="Содержимое этой страницы применимо к IDE NetBeans 7.2, 7.3, 7.4 и 8.0"]
-
 В данном уроке описывается последний подготовительный этап разработки приложения "Wish List" ("Список желаний") в рамках создания демонстрационной базы данных с тестовыми данными. Для выполнения всех этапов, предложенных в данном руководстве, необходима база данных, которая позволит сохранять данные (желания), введенные пользователями. IDE NetBeans позволяет выполнять все эти действия с помощью интерфейса IDE. 
 Перед началом работы ознакомьтесь с требованиями, описанными в разделе link:wish-list-tutorial-main-page.html[+Создание приложения типа CRUD на языке PHP – главная страница+].
 
@@ -85,21 +53,34 @@
 1. Запустите IDE, перейдите в окно 'Службы' (Ctrl-5) и разверните узел 'Базы данных'.
 2. Для 
 подключения к серверу базы данных MySQL перейдите к узлу  ``MySQL Server``  и выберите "Connect" в контекстном меню. 
+
 image::images/mysql-ctxmenu-connect.png[]
-3. IDE NetBeans устанавливает соединение с сервером MySQL, проверяет наличие доступных баз данных с помощью сервера, обнаруживает системную базу данных  ``mysql``  и добавляет соответствующий новый узел  ``mysql``  к дереву баз данных. 
+
+
+[start=3.]
+. IDE NetBeans устанавливает соединение с сервером MySQL, проверяет наличие доступных баз данных с помощью сервера, обнаруживает системную базу данных  ``mysql``  и добавляет соответствующий новый узел  ``mysql``  к дереву баз данных. 
+
 image::images/mysql_node_added.png[]
-4. Для выполнения команды SQL необходимо подключение к базе данных. Поскольку доступна только система MySQL, следует подключиться к этой системе. 
+
+
+[start=4.]
+. Для выполнения команды SQL необходимо подключение к базе данных. Поскольку доступна только система MySQL, следует подключиться к этой системе. 
 Для подключения к системной базе данных перейдите к узлу  ``mysql``  и выберите "Connect" в контекстном меню. Если подключение на данный момент отсутствует, появится диалоговое окно "New Database Connection". В поле "User Name" по умолчанию вводится значение "root". В поле "Password" введите пароль пользователя root.
 
-*Примечание.*Если вы уже подключались к базе данных `mysql`, это диалоговое окно не отобразится. Вместо этого в дереве просто появится новый узел подключения.
+NOTE: Если вы уже подключались к базе данных `mysql`, это диалоговое окно не отобразится. Вместо этого в дереве просто появится новый узел подключения.
 
 image::images/create-new-database-connection.png[] 
+
 В диалоговом окне "New Database Connection" появится сообщение "Connection established". Нажмите кнопку "ОК". К дереву баз данных добавлен новый узел с именем  ``jdbc:mysql://localhost:3306/mysql`` .
-5. Перейдите к узлу  ``jdbc:mysql://localhost:3306/mysql``  и выберите в контекстном меню "Execute Command". 
+
+[start=5.]
+. Перейдите к узлу  ``jdbc:mysql://localhost:3306/mysql``  и выберите в контекстном меню "Execute Command". 
+
 image::images/execute-command.png[] 
+
 Откроется окно "SQL Command". В окне "SQL Command" введите следующие команды:
 
-[source,java]
+[source,sql]
 ----
 
 CREATE USER 'phpuser'@'localhost' IDENTIFIED BY 'phpuserpw'
@@ -114,6 +95,7 @@
 1. Перейдите к узлу  ``MySQL Server at localhost:3306``  и выберите из контекстного меню "Create Database". Появится диалоговое окно "Create MySQL Database". Заполните поля следующим образом:
 * В поле имени "Database Name" введите "wishlist".
 * Установите флажок "Grant full access to user" и выберите в раскрывающемся списке  ``phpuser@localhost`` . Нажмите кнопку "OK".
+
 image::images/create-user.png[]
 
 Функция "Grant full access to user", предоставляющая пользователю полные права доступа, срабатывает не всегда. Если она не работает, <<EstablishConnection,подключитесь к базе данных>> как пользователь root и отправьте запрос SQL [examplecode]# ``GRANT ALL ON wishlist.* TO phpuser@localhost`` #.
@@ -126,11 +108,22 @@
 На предыдущем этапе вы создали базу данных `wishlist` с подключением для пользователя `root`. Теперь необходимо создать подключение для пользователя `phpuser`.
 
 1. В окне 'Службы' щелкните правой кнопкой мыши узел 'Базы данных' и выберите 'Создать подключение'. Открывается мастер создания подключений.
+
 image::images/databases-ctxmenu-newconnection.png[]
-2. На панели 'Обнаружение драйвера' в мастере создания подключений выберите `MySQL (Connector/J Driver).` Нажмите 'Далее'. Открывается панель 'Настройка соединения'.
+
+
+[start=2.]
+. На панели 'Обнаружение драйвера' в мастере создания подключений выберите `MySQL (Connector/J Driver).` Нажмите 'Далее'. Открывается панель 'Настройка соединения'.
+
 image::images/locate-driver.png[]
-3. В поле 'База данных' введите `wishlist`.
-4. В полях "User Name" и "Password" введите соответственно имя и пароль пользователя, указанные в разделе <<CreateUser,Создание владельца (пользователя) базы данных>> (в нашем примере это  ``phpuser``  и  ``phpuserpw`` ). Установите флажок 'Запомнить пароль'. Нажмите 'Проверить подключение'. Если соединение установлено успешно, нажмите "OK". 
+
+
+[start=3.]
+. В поле 'База данных' введите `wishlist`.
+
+[start=4.]
+. В полях "User Name" и "Password" введите соответственно имя и пароль пользователя, указанные в разделе <<CreateUser,Создание владельца (пользователя) базы данных>> (в нашем примере это  ``phpuser``  и  ``phpuserpw`` ). Установите флажок 'Запомнить пароль'. Нажмите 'Проверить подключение'. Если соединение установлено успешно, нажмите "OK". 
+
 image::images/phpuser-connection.png[]
 
 В дереве баз данных будет отображаться соответствующий новый узел подключения. Подключение для пользователя `root` к базе данных `wishlist` можно удалить. Нажмите на подключение  ``jdbc:mysql://localhost:3306/wishlist [корневой элемент в схеме по умолчанию]``  и выберите 'Удалить'.
@@ -146,6 +139,7 @@
 * таблица "wishes", которая будет содержать описания требований.
 
 image::images/wishlist-db.png[]
+
 Таблица "wishers" содержит три поля:
 
 1. "id" – уникальный идентификатор пользователя. Это поле используется в качестве первичного ключа.
@@ -165,32 +159,50 @@
 == Создание таблиц
 
 1. Для подключения к базе данных щелкните правой кнопкой мыши узел подключения  ``jdbc:mysql://localhost:3306/wishlist``  и выберите "Connect" в контекстном меню.
-*Примечание.* Если пункт меню недоступен, пользователь уже подключен. Перейдите к действию 2.
-2. В том же контекстном меню выберите "Execute Command". Откроется пустое окно "SQL Command".
-3. Для создания таблицы "wishers"
-1. Введите следующий запрос SQL (отметьте, что как набор символов следует прямо установить UTF-8 для интернационализации):
+NOTE:  Если пункт меню недоступен, пользователь уже подключен. Перейдите к действию 2.
 
-[source,java]
+[start=2.]
+. В том же контекстном меню выберите "Execute Command". Откроется пустое окно "SQL Command".
+
+[start=3.]
+. Для создания таблицы "wishers"
+
+[start=1.]
+. Введите следующий запрос SQL (отметьте, что как набор символов следует прямо установить UTF-8 для интернационализации):
+
+[source,sql]
 ----
 
 CREATE TABLE wishers(id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, name CHAR(50) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL UNIQUE,password CHAR(50) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL)
 ----
-*Примечание.* Можно получить уникальный номер, автоматически создаваемый MySQL, задав свойство AUTO_INCREMENT для поля. MySQL создаст уникальный номер посредством увеличения на единицу последнего номера в таблице и автоматически добавит его к значению поля с этим свойством. В нашем примере автоматически должно увеличиваться значение в поле "ID".
-2. Щелкните запрос правой кнопкой мыши, затем выберите "Run Statement" в контекстном меню.
+NOTE:  Можно получить уникальный номер, автоматически создаваемый MySQL, задав свойство AUTO_INCREMENT для поля. MySQL создаст уникальный номер посредством увеличения на единицу последнего номера в таблице и автоматически добавит его к значению поля с этим свойством. В нашем примере автоматически должно увеличиваться значение в поле "ID".
 
-*Примечание. *Механизмом хранения по умолчанию для MySQL является MyISAM, не поддерживающий внешние ключи. Если нужна поддержка внешних ключей, используйте в качестве механизма хранения InnoDB.
+[start=2.]
+. Щелкните запрос правой кнопкой мыши, затем выберите "Run Statement" в контекстном меню.
 
-4. Для создания таблицы "Wishes"
-1. введите следующий запрос SQL:
+NOTE: Механизмом хранения по умолчанию для MySQL является MyISAM, не поддерживающий внешние ключи. Если нужна поддержка внешних ключей, используйте в качестве механизма хранения InnoDB.
 
-[source,java]
+
+[start=4.]
+. Для создания таблицы "Wishes"
+
+[start=1.]
+. введите следующий запрос SQL:
+
+[source,sql]
 ----
 
 CREATE TABLE wishes(id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,wisher_id INT NOT NULL,description CHAR(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,due_date DATE,FOREIGN KEY (wisher_id) REFERENCES wishers(id))
 ----
-2. Щелкните запрос правой кнопкой мыши, затем выберите "Run Statement" в контекстном меню.
-5. Для проверки того, что новые таблицы добавлены к базе данных, перейдите к окну "Services", а затем к узлу подключения jdbc:mysql://localhost:3306/wishlist.
-6. Нажмите правую кнопку мыши и выберите "Refresh". В дереве появятся узлы "wishers" и "wishes".
+
+[start=2.]
+. Щелкните запрос правой кнопкой мыши, затем выберите "Run Statement" в контекстном меню.
+
+[start=5.]
+. Для проверки того, что новые таблицы добавлены к базе данных, перейдите к окну "Services", а затем к узлу подключения jdbc:mysql://localhost:3306/wishlist.
+
+[start=6.]
+. Нажмите правую кнопку мыши и выберите "Refresh". В дереве появятся узлы "wishers" и "wishes".
 
 Примечание. Набор команд SQL для создания базы данных wishlist MySQL можно загрузить link:https://netbeans.org/projects/www/downloads/download/php%252FSQL-files-for-MySQL.zip[+здесь+].
 
@@ -202,23 +214,25 @@
 1. В узле подключения jdbc:mysql://localhost:3306/wishlist щелкните правой кнопкой мыши и выберите "Execute Command". Откроется пустое окно "SQL Command".
 2. Для добавления данных пользователя введите следующие команды:
 
-[source,java]
+[source,sql]
 ----
 
 INSERT INTO wishers (name, password) VALUES ('Tom', 'tomcat');
 ----
 Щелкните запрос правой кнопкой мыши и выберите из контекстного меню "Run Statement".
-*Примечание: *. Оператор не содержит значения для поля  ``идентификатора`` . Значения вводятся автоматически, поскольку указан тип поля  ``AUTO_INCREMENT`` .
+NOTE: . Оператор не содержит значения для поля  ``идентификатора`` . Значения вводятся автоматически, поскольку указан тип поля  ``AUTO_INCREMENT`` .
 Введите данные другого тестового пользователя:
 
-[source,java]
+[source,sql]
 ----
 
 INSERT INTO wishers (name, password) VALUES ('Jerry', 'jerrymouse');
 ----
-3. Для добавления пожеланий ("wishes") введите следующие команды:
 
-[source,java]
+[start=3.]
+. Для добавления пожеланий ("wishes") введите следующие команды:
+
+[source,sql]
 ----
 
 INSERT INTO wishes (wisher_id, description, due_date) VALUES (1, 'Sausage', 080401);INSERT INTO wishes (wisher_id, description) VALUES (1, 'Icecream');INSERT INTO wishes (wisher_id, description, due_date) VALUES (2, 'Cheese', 080501);INSERT INTO wishes (wisher_id, description)VALUES (2, 'Candle');
@@ -226,9 +240,12 @@
 
 Выберите запросы, щелкните каждый правой кнопкой мыши по каждому из них и выберите "Run Selection" в контекстном меню.
 
-*Примечание.* Также можно выполнять запросы один за другим, как описано в пункте 2.
+NOTE:  Также можно выполнять запросы один за другим, как описано в пункте 2.
 
-4. Для просмотра тестовых данных щелкните соответствующую таблицу правой кнопкой мыши и выберите из контекстного меню "View Data". 
+
+[start=4.]
+. Для просмотра тестовых данных щелкните соответствующую таблицу правой кнопкой мыши и выберите из контекстного меню "View Data". 
+
 image::images/view-test-data.png[]
 
 Ознакомиться с общими принципами организации баз данных и их моделями можно с помощью следующего обучающего руководства: link:http://www.tekstenuitleg.net/en/articles/database_design_tutorial/1[+http://www.tekstenuitleg.net/en/articles/database_design_tutorial/1+].
diff --git a/netbeans.apache.org/src/content/kb/docs/php/wish-list-lesson1_zh_CN.asciidoc b/netbeans.apache.org/src/content/kb/docs/php/wish-list-lesson1_zh_CN.asciidoc
index 66779d0..31548d2 100644
--- a/netbeans.apache.org/src/content/kb/docs/php/wish-list-lesson1_zh_CN.asciidoc
+++ b/netbeans.apache.org/src/content/kb/docs/php/wish-list-lesson1_zh_CN.asciidoc
@@ -29,38 +29,6 @@
 :description: 使用 PHP 创建数据库驱动的应用程序 - Apache NetBeans
 :keywords: Apache NetBeans, Tutorials, 使用 PHP 创建数据库驱动的应用程序
 
-= 第 1a 课:创建 MySQL 数据库
-:jbake-type: tutorial
-:jbake-tags: tutorials 
-:jbake-status: published
-:icons: font
-:syntax: true
-:source-highlighter: pygments
-:toc: left
-:toc-title:
-:description: 第 1a 课:创建 MySQL 数据库 - Apache NetBeans
-:keywords: Apache NetBeans, Tutorials, 第 1a 课:创建 MySQL 数据库
-
-
-
-1. link:wish-list-tutorial-main-page.html[+使用 PHP 创建 CRUD 应用程序 - 主页+]
-2. 
-创建数据库
-
-1. *=> 创建 MySQL 数据库*
-
-2. link:wish-list-oracle-lesson1.html[+创建 Oracle 数据库表+]
-3. link:wish-list-lesson2.html[+设计应用程序。从数据库读取数据+]
-4. link:wish-list-lesson3.html[+创建新的应用程序用户+]
-5. link:wish-list-lesson4.html[+优化代码+]
-6. link:wish-list-lesson5.html[+添加安全功能。实现应用程序用户登录+]
-7. link:wish-list-lesson6.html[+在数据库中添加新的愿望+]
-8. link:wish-list-lesson7.html[+更新和删除数据库中的条目+]
-9. link:wish-list-lesson8.html[+使用 CSS 技术改进应用程序的外观+]
-10. link:wish-list-lesson9.html[+将应用程序部署到远程 Web 服务器+]
-
-image::images/netbeans-stamp-80-74-73.png[title="此页上的内容适用于 NetBeans IDE 7.2、7.3、7.4 和 8.0"]
-
 本课程介绍在开发愿望列表应用程序时的最后一个预备步骤,即,使用测试数据创建样例数据库。要完成本教程中的步骤,您需要创建一个数据库以存储许愿者的数据。使用 NetBeans IDE,您可以通过 IDE 界面执行所有这些活动。
 开始之前,请参见link:wish-list-tutorial-main-page.html[+使用 PHP 创建 CRUD 应用程序 - 主页+]中介绍的教程要求。
 
@@ -84,21 +52,34 @@
 
 1. 启动 IDE,切换至 "Services"(服务)窗口(Ctrl-5 组合键),然后展开 "Databases"(数据库)节点。
 2. 要连接到 MySQL 数据库服务器,请导航至  ``MySQL Server`` (MySQL 服务器)节点,然后从上下文菜单中选择 "Connect"(连接)。
+
 image::images/mysql-ctxmenu-connect.png[]
-3. NetBeans IDE 将连接到 MySQL 服务器,检查通过该服务器提供的数据库,检测系统  ``mysql``  数据库,然后将相应的新节点  ``mysql``  添加到 "Databases"(数据库)树中。 
+
+
+[start=3.]
+. NetBeans IDE 将连接到 MySQL 服务器,检查通过该服务器提供的数据库,检测系统  ``mysql``  数据库,然后将相应的新节点  ``mysql``  添加到 "Databases"(数据库)树中。 
+
 image::images/mysql_node_added.png[]
-4. 要执行 SQL 命令,您需要连接到一个数据库。由于仅提供了 MySQL 系统,因此,您需要连接到该系统。
+
+
+[start=4.]
+. 要执行 SQL 命令,您需要连接到一个数据库。由于仅提供了 MySQL 系统,因此,您需要连接到该系统。
 要连接到系统数据库,请导航至  ``mysql``  节点,然后从上下文菜单中选择 "Connect"(连接)。如果尚未建立连接,则会显示 "New Database Connection"(新建数据库连接)对话框。默认情况下,在 "User Name"(用户名)字段中填写 root。在 "Password"(口令)字段中,输入 root 用户的口令。
 
-*注:*如果您以前已连接到 `mysql` 数据库,则此对话框将不显示。而新的连接节点将简单显示在树中。
+NOTE: 如果您以前已连接到 `mysql` 数据库,则此对话框将不显示。而新的连接节点将简单显示在树中。
 
 image::images/create-new-database-connection.png[] 
+
 "New Database Connection"(新建数据库连接)对话框显示“已建立连接”消息。单击 "OK"(确定)。此时将在 "Databases"(数据库)树中添加一个名为  ``jdbc:mysql://localhost:3306/mysql``  的新节点。
-5. 导航至  ``jdbc:mysql://localhost:3306/mysql``  节点,然后从上下文菜单中选择 "Execute Command"(执行命令)。
+
+[start=5.]
+. 导航至  ``jdbc:mysql://localhost:3306/mysql``  节点,然后从上下文菜单中选择 "Execute Command"(执行命令)。
+
 image::images/execute-command.png[] 
+
 此时将打开一个 "SQL Command"(SQL 命令)窗口。在 "SQL Command"(SQL 命令)窗口中,使用类似于以下语句的语法:
 
-[source,java]
+[source,sql]
 ----
 
 CREATE USER 'phpuser'@'localhost' IDENTIFIED BY 'phpuserpw'
@@ -113,6 +94,7 @@
 1. 导航至位于  ``localhost:3306 上的 MySQL 服务器`` 节点,然后从上下文菜单中选择 "Create Database"(创建数据库)。此时将显示 "Create MySQL Database"(创建 MySQL 数据库)对话框。填写以下字段:
 * 在 "Database Name"(数据库名称)字段中,输入 wishlist。
 * 选中 "Grant full access to user"(为用户授予完全访问权限)复选框,并从下拉列表中选择  ``phpuser@localhost`` ,然后单击 "OK"(确定)。
+
 image::images/create-user.png[]
 
 "Grant full access to user"(为用户授予完全访问权限)功能并非始终正常工作。如果该功能无法正常工作,请以 root 用户身份<<EstablishConnection,连接到数据库>>,然后发送 SQL 查询 [examplecode]# ``GRANT ALL ON wishlist.* TO phpuser@localhost`` #。
@@ -125,11 +107,23 @@
 在前一部分结束时,您创建了与 `root` 用户连接的 `wishlist` 数据库。现在,您将为 `phpuser` 用户创建一个新连接。
 
 1. 在 "Services"(服务)窗口中,右键单击 "Databases"(数据库)节点,然后选择 "New Connection"(新建连接)。此时将打开 "New Connection Wizard"(新建连接向导)。
+
 image::images/databases-ctxmenu-newconnection.png[]
-2. 在 "New Connection Wizard"(新建连接向导)的 "Locate Driver"(查找驱动程序)面板中,选择 `MySQL (Connector/J Driver)`(MySQL(Connector/J 驱动程序)),然后单击 "Next"(下一步)。此时将打开 "Customize Connection"(定制连接)面板。
+
+
+[start=2.]
+. 在 "New Connection Wizard"(新建连接向导)的 "Locate Driver"(查找驱动程序)面板中,选择 `MySQL (Connector/J Driver)`(MySQL(Connector/J 驱动程序)),然后单击 "Next"(下一步)。此时将打开 "Customize Connection"(定制连接)面板。
+
 image::images/locate-driver.png[]
-3. 在 "Database"(数据库)字段中,键入 `wishlist`。
-4. 在 "User Name"(用户名)和 "Password"(口令)编辑框中,输入在<<CreateUser,创建数据库所有者(用户)>>部分指定的名称和口令(在我们的示例中,分别是  ``phpuser``  和  ``phpuserpw`` )。单击 "Remember Password"(记住口令)。单击 "Test Connection"(测试连接),如果连接成功,则单击 "OK"(确定)。
+
+
+[start=3.]
+. 在 "Database"(数据库)字段中,键入 `wishlist`。
+
+
+[start=4.]
+. 在 "User Name"(用户名)和 "Password"(口令)编辑框中,输入在<<CreateUser,创建数据库所有者(用户)>>部分指定的名称和口令(在我们的示例中,分别是  ``phpuser``  和  ``phpuserpw`` )。单击 "Remember Password"(记住口令)。单击 "Test Connection"(测试连接),如果连接成功,则单击 "OK"(确定)。
+
 image::images/phpuser-connection.png[]
 
 此时将在 "Databases"(数据库)树中显示相应的新连接节点。现在,您可以删除 `root` 用户与 `wishlist` 数据库的连接。单击  ``jdbc:mysql://localhost:3306/wishlist [root on Default schema]``  连接并选择 "Delete"(删除)。
@@ -145,6 +139,7 @@
 * 一个是 wishes 表,用于存储愿望说明
 
 image::images/wishlist-db.png[]
+
 wishers 表包含三个字段:
 
 1. id - 许愿者的唯一 ID。该字段用作主键
@@ -164,32 +159,50 @@
 == 创建表
 
 1. 要连接到数据库,请在  ``jdbc:mysql://localhost:3306/wishlist``  连接上单击鼠标右键,然后从上下文菜单中选择 "Connect"(连接)。
-*注:*如果禁用了该菜单项,则说明您已建立了连接。继续执行步骤 2。
-2. 从上述上下文菜单中选择 "Execute Command"(执行命令)。此时将打开一个空的 "SQL Command"(SQL 命令)窗口。
-3. 创建 wishers 表:
-1. 键入以下 SQL 查询(请注意,您需要将字符集明确设置为 UTF-8 以实现国际化):
+NOTE: 如果禁用了该菜单项,则说明您已建立了连接。继续执行步骤 2。
 
-[source,java]
+[start=2.]
+. 从上述上下文菜单中选择 "Execute Command"(执行命令)。此时将打开一个空的 "SQL Command"(SQL 命令)窗口。
+
+[start=3.]
+. 创建 wishers 表:
+
+[start=1.]
+. 键入以下 SQL 查询(请注意,您需要将字符集明确设置为 UTF-8 以实现国际化):
+
+[source,sql]
 ----
 
 CREATE TABLE wishers(id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, name CHAR(50) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL UNIQUE,password CHAR(50) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL)
 ----
-*注:*可通过为某个字段指定 AUTO_INCREMENT 属性,从 MySQL 中获取自动生成的唯一数字。MySQL 会通过增加表的最后一个数字来生成一个唯一数字,并自动将其添加到自动递增的字段中。在我们的示例中,"ID" 字段是自动递增的。
-2. 在查询上单击鼠标右键,然后从上下文菜单中选择 "Run Statement"(运行语句)。
+NOTE: 可通过为某个字段指定 AUTO_INCREMENT 属性,从 MySQL 中获取自动生成的唯一数字。MySQL 会通过增加表的最后一个数字来生成一个唯一数字,并自动将其添加到自动递增的字段中。在我们的示例中,"ID" 字段是自动递增的。
 
-*注:*MySQL 的默认存储引擎是 MyISAM,它不支持外键。如果要使用外键,请考虑将 InnoDB 用作存储引擎。
+[start=2.]
+. 在查询上单击鼠标右键,然后从上下文菜单中选择 "Run Statement"(运行语句)。
 
-4. 创建 wishes 表:
-1. 键入以下 SQL 查询:
+NOTE: MySQL 的默认存储引擎是 MyISAM,它不支持外键。如果要使用外键,请考虑将 InnoDB 用作存储引擎。
 
-[source,java]
+
+[start=4.]
+. 创建 wishes 表:
+
+[start=1.]
+. 键入以下 SQL 查询:
+
+[source,sql]
 ----
 
 CREATE TABLE wishes(id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,wisher_id INT NOT NULL,description CHAR(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,due_date DATE,FOREIGN KEY (wisher_id) REFERENCES wishers(id))
 ----
-2. 在查询上单击鼠标右键,然后从上下文菜单中选择 "Run Statement"(运行语句)。
-5. 要验证新表是否添加到数据库中,请切换至 "Services"(服务)窗口,然后导航至 jdbc:mysql://localhost:3306/wishlist 连接节点。
-6. 单击鼠标右键,然后选择 "Refresh"(刷新)。此时将在树中显示 wishers 和 wishes 节点。
+
+[start=2.]
+. 在查询上单击鼠标右键,然后从上下文菜单中选择 "Run Statement"(运行语句)。
+
+[start=5.]
+. 要验证新表是否添加到数据库中,请切换至 "Services"(服务)窗口,然后导航至 jdbc:mysql://localhost:3306/wishlist 连接节点。
+
+[start=6.]
+. 单击鼠标右键,然后选择 "Refresh"(刷新)。此时将在树中显示 wishers 和 wishes 节点。
 
 注:您可以在link:https://netbeans.org/projects/www/downloads/download/php%252FSQL-files-for-MySQL.zip[+此处+]下载一组 SQL 命令以创建 MySQL wishlist 数据库。
 
@@ -198,26 +211,32 @@
 
 要测试应用程序,您需要使用数据库中的某些数据。下面的示例说明了如何添加两个许愿者和四个愿望。
 
-1. 在 jdbc:mysql://localhost:3306/wishlist 连接上单击鼠标右键,然后选择 "Execute Command"(执行命令)。此时将打开一个空的 "SQL Command"(SQL 命令)窗口。
-2. 要添加许愿者,请使用类似下面示例的语法:
 
-[source,java]
+[start=1.]
+. 在 jdbc:mysql://localhost:3306/wishlist 连接上单击鼠标右键,然后选择 "Execute Command"(执行命令)。此时将打开一个空的 "SQL Command"(SQL 命令)窗口。
+
+[start=2.]
+. 要添加许愿者,请使用类似下面示例的语法:
+
+[source,sql]
 ----
 
 INSERT INTO wishers (name, password) VALUES ('Tom', 'tomcat');
 ----
 在查询上单击鼠标右键,然后从上下文菜单中选择 "Run Statement"(运行语句)。
-*注:*语句不包含  ``id``  字段的值。此时将会自动输入值,因为字段类型已指定为  ``AUTO_INCREMENT`` 。
+NOTE: 语句不包含  ``id``  字段的值。此时将会自动输入值,因为字段类型已指定为  ``AUTO_INCREMENT`` 。
 输入另一个测试许愿者:
 
-[source,java]
+[source,sql]
 ----
 
 INSERT INTO wishers (name, password) VALUES ('Jerry', 'jerrymouse');
 ----
-3. 要添加愿望,请使用类似下面示例的语法:
 
-[source,java]
+[start=3.]
+. 要添加愿望,请使用类似下面示例的语法:
+
+[source,sql]
 ----
 
 INSERT INTO wishes (wisher_id, description, due_date) VALUES (1, 'Sausage', 080401);INSERT INTO wishes (wisher_id, description) VALUES (1, 'Icecream');INSERT INTO wishes (wisher_id, description, due_date) VALUES (2, 'Cheese', 080501);INSERT INTO wishes (wisher_id, description)VALUES (2, 'Candle');
@@ -225,9 +244,12 @@
 
 选择查询,在每个查询上单击鼠标右键,然后从上下文菜单中选择 "Run Selection"(运行选择)。
 
-*注:*您还可以依次执行查询,如第 2 项所述。
+NOTE: 您还可以依次执行查询,如第 2 项所述。
 
-4. 要查看测试数据,请在相关表上单击鼠标右键,然后从上下文菜单中选择 "View Data"(查看数据)。 
+
+[start=4.]
+. 要查看测试数据,请在相关表上单击鼠标右键,然后从上下文菜单中选择 "View Data"(查看数据)。 
+
 image::images/view-test-data.png[]
 
 要大致了解数据库原理和设计模式,请查阅以下教程:link:http://www.tekstenuitleg.net/en/articles/database_design_tutorial/1[+http://www.tekstenuitleg.net/en/articles/database_design_tutorial/1+]。
diff --git a/netbeans.apache.org/src/content/kb/docs/php/wish-list-lesson2.asciidoc b/netbeans.apache.org/src/content/kb/docs/php/wish-list-lesson2.asciidoc
index c2b3dfc..a79086b 100644
--- a/netbeans.apache.org/src/content/kb/docs/php/wish-list-lesson2.asciidoc
+++ b/netbeans.apache.org/src/content/kb/docs/php/wish-list-lesson2.asciidoc
@@ -17,17 +17,6 @@
 //     under the License.
 //
 
-:jbake-type: tutorial
-:jbake-tags: tutorials 
-:jbake-status: published
-:syntax: true
-:icons: font
-:source-highlighter: pygments
-:toc: left
-:toc-title:
-:description: Creating a Database Driven Application With PHP - Apache NetBeans
-:keywords: Apache NetBeans, Tutorials, Creating a Database Driven Application With PHP
-
 = Lesson 2: Designing the Application. Reading from the Database
 :jbake-type: tutorial
 :jbake-tags: tutorials 
@@ -38,49 +27,18 @@
 :toc: left
 :toc-title:
 :description: Lesson 2: Designing the Application. Reading from the Database - Apache NetBeans
-:keywords: Apache NetBeans, Tutorials, Lesson 2: Designing the Application. Reading from the Database
-
-
-Tutorial contents:
-
-1. link:wish-list-tutorial-main-page.html[+Creating a Database Driven Application With PHP - Main page+]
-2. 
-Creating the Database
-
-1. link:wish-list-lesson1.html[+Creating a MySQL Database+]
-2. link:wish-list-oracle-lesson1.html[+Creating Oracle Database Tables+]
-3. 
-*=> Designing the Application. Reading from the Database*
-
-* <<createProject,Creating a PHP Project>>
-* <<pageFlowDiagram,Defining a Page Flow Diagram>>
-* <<transferDataFromIndexToWishlist,Adding a Form To index.php>>
-* <<createNewFile,Creating wishlist.php and Testing the Application>>
-* <<receiveAndProcessDaaInWishlist,Establishing a Connection and Getting the Wisher ID>>
-* <<wish-table,Displaying a Table of Wishes>>
-* <<lessonResultSourceCode,Application Source Code After the Current Lesson Is Completed>>
-4. link:wish-list-lesson3.html[+Creating a New Application User+]
-5. link:wish-list-lesson4.html[+Optimizing the Code+]
-6. link:wish-list-lesson5.html[+Adding Security. Implementing Application User Logon+]
-7. link:wish-list-lesson6.html[+Adding a New Wish to the Database+]
-8. link:wish-list-lesson7.html[+Updating and Deleting Entries in the Database+]
-9. link:wish-list-lesson8.html[+Making the Application Look Better Using the CSS Technology+]
-10. link:wish-list-lesson9.html[+Deploying the Application on a Remote Web Server+]
+:keywords: Apache NetBeans, Tutorials, Creating a Database Driven Application With PHP
 
 In this lesson you create and configure the PHP project to develop your application, create a list of pages in the application, and define the relations between them. You also develop basic application functionality and test it against the data you entered in the sample database in lesson 1.
 
 The PHP code you write in this lesson performs the following functions:
 
 1. Gets the name of a person that the user types in.
-
 2. Checks whether that person is really in the database. Exits with an error message if the person is not in the database.
-
 3. Displays a table of that person's wishes.
 
 The current document is a part of the Creating a Database-Driven Application in the NetBeans IDE for PHP tutorial.
 
-
-
 == Creating a PHP Project
 
 Select File > New Project (Ctrl-Shift-N on Windows and Linux, ⌘-Shift-N on MacOS). Create a new PHP project named "wishlist". When you create a PHP project, it contains the index file  ``index.php``  by default. For information on creating and configuring a PHP project, see link:project-setup.html[+Setting Up a PHP Project+].
@@ -126,37 +84,69 @@
 
 1. Switch to the Projects window, expand your project node and the Source Files node, and double click the  ``index.php``  file. The  ``index.php``  file opens in the main IDE editor area. The file contains a template for entering HTML and PHP code.
 
-*Note: *You can ignore warnings from the HTML validator.
+NOTE: You can ignore warnings from the HTML validator.
 
-.
-2. Remove the PHP block. The index.php file will not contain any PHP code.
+
+[start=2.]
+. Remove the PHP block. The index.php file will not contain any PHP code.
+
 image::images/remove-php-block.png[]
-3. Open the Palette from the Window menu or by pressing Ctrl-Shift-8.
-4. From the Palette's* HTML Forms* section, drag and drop a Form into the <body> section of  ``index.php`` . 
+
+
+[start=3.]
+. Open the Palette from the Window menu or by pressing Ctrl-Shift-8.
+
+[start=4.]
+. From the Palette's* HTML Forms* section, drag and drop a Form into the <body> section of  ``index.php`` . 
+
 image::images/form-dnd.png[]
-5. The Insert Form dialog opens. In the Action field, type the path to the file to which the form will transfer data. In this case, type in  ``wishlist.php`` . (You will create this file in the same location as  ``index.php`` . See <<createNewFile,Creating wishlist.php and Testing the Application>>.) Select the GET method for transferring data. Give the form an arbitrary name, such as  ``wishList`` . Click OK when you are done.
+
+
+[start=5.]
+. The Insert Form dialog opens. In the Action field, type the path to the file to which the form will transfer data. In this case, type in  ``wishlist.php`` . (You will create this file in the same location as  ``index.php`` . See <<createNewFile,Creating wishlist.php and Testing the Application>>.) Select the GET method for transferring data. Give the form an arbitrary name, such as  ``wishList`` . Click OK when you are done.
+
 image::images/insert-form-dialog.png[]
 
 The file now looks like this:
 
 image::images/blank-form.png[]
-6. Between the opening and closing tags of the form, type the text "Show wish list of: ".
-7. Drag a Text Input component from the *HTML Forms* section of the Palette to the space after the text "Show wish list of: ". The Insert Text Input dialog opens.
-8. Name the input  ``user`` . Select input type  ``text`` . Leave all other fields empty and click OK.
+
+
+[start=6.]
+. Between the opening and closing tags of the form, type the text "Show wish list of: ".
+
+[start=7.]
+. Drag a Text Input component from the *HTML Forms* section of the Palette to the space after the text "Show wish list of: ". The Insert Text Input dialog opens.
+
+[start=8.]
+. Name the input  ``user`` . Select input type  ``text`` . Leave all other fields empty and click OK.
+
 image::images/insert-text-input.png[]
 
 The file now looks like this:
 
 image::images/form-with-text-input.png[]
-9. Add a blank line above the </form> tag. Into this blank line, drag and drop a Button component from the* HTML Forms* section of the Palette.
-10. The Insert Button dialog opens. Type  ``Go``  into the Label field and click OK.
+
+
+[start=9.]
+. Add a blank line above the </form> tag. Into this blank line, drag and drop a Button component from the* HTML Forms* section of the Palette.
+
+[start=10.]
+. The Insert Button dialog opens. Type  ``Go``  into the Label field and click OK.
+
 image::images/insert-button-dialog.png[]
-11. The form now looks like the code below, with one difference. In the code below, the  ``method``  attribute is explicit in the <form> tag. NetBeans IDE did not add a method attribute to your form because GET is the default value of this attribute. However, you might understand the code more easily if the  ``method``  attribute is explicit.
 
-[source,xml]
+
+[start=11.]
+. The form now looks like the code below, with one difference. In the code below, the  ``method``  attribute is explicit in the `<form>` tag. NetBeans IDE did not add a method attribute to your form because GET is the default value of this attribute. However, you might understand the code more easily if the  ``method``  attribute is explicit.
+
+[source,html]
 ----
-
-<form action="wishlist.php" method="GET" name="wishList">Show wish list of: <input type="text" name="user" value=""/><input type="submit" value="Go" /></form>
+<form action="wishlist.php" method="GET" name="wishList">
+    Show wish list of: 
+    <input type="text" name="user" value=""/>
+    <input type="submit" value="Go" />
+</form>
 ----
 
 Note the following elements of the form:
@@ -175,9 +165,13 @@
 
 1. Inside the "wishlist" project you created, click the right mouse button on the Source files node and from the context menu choose New > PHP Web Page. The New PHP Web Page wizard opens.
 2. Type  ``wishlist``  in the File Name field and press Finish.
-3. Click the right mouse button on the Sources node and choose Run Project from the context menu or click the Run Main Project icon image::images/run-main-project-button.png[]on the toolbar if you have set your project as Main. 
+3. Click the right mouse button on the Sources node and choose Run Project from the context menu or click the Run Main Project icon image:images/run-main-project-button.png[]on the toolbar if you have set your project as Main. 
+
 image::images/index-php-works.png[]
-4. In the Show wish list of: edit box, enter Tom and click Go. An empty page with the following URL appears: http://localhost:90/Lesson2/wishlist.php?user=tom. This URL indicates that your main page works properly.
+
+
+[start=4.]
+. In the Show wish list of: edit box, enter Tom and click Go. An empty page with the following URL appears: http://localhost:90/Lesson2/wishlist.php?user=tom. This URL indicates that your main page works properly.
 
 
 == Establishing the Connection and Getting the Wisher ID
@@ -188,14 +182,25 @@
 
 [source,php]
 ----
-
-<!DOCTYPE html><html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title></title></head><body><?php// put your code here?></body></html>
-----
-2. To display the title, enter the following code block immediately after the opening <body> tag, before the generated <?php tag:
-
-[source,php]
+<!DOCTYPE html>
+<html>
+    <head>
+        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+        <title></title>
+    </head>
+    <body>
+        <?php
+            // put your code here
+        ?>
+    </body>
+</html>
 ----
 
+[start=2.]
+. To display the title, enter the following code block immediately after the opening <body> tag, before the generated <?php tag:
+
+[source,html]
+----
  Wish List of <?php echo htmlentities($_GET["user"])."<br/>";?>
 ----
 
@@ -204,31 +209,41 @@
 
 [source,php]
 ----
-
-<body>Wish List of <?php echo htmlentities($_GET["user"])."<br/>";?><?php// put your code here</body>
+<body>
+    Wish List of <?php echo htmlentities($_GET["user"])."<br/>"; ?>
+    <?php
+        // put your code here
+    ?>
+</body>
 
 ----
 
 The PHP code block displays the data that is received through the method GET in the field "user". This data is transferred from  ``index.php``  where the name of the wish list owner Tom was entered in the text field "user". Repeat the steps from <<createNewFile,Testing index.php>> to see that wishlist.php works properly. 
+
 image::images/wishlist-php-title-works.png[]
 
-3. Delete the commented section in the template PHP block. In its place, type or paste in the following code. This code opens the connection to the database.
+
+[start=3.]
+. Delete the commented section in the template PHP block. In its place, type or paste in the following code. This code opens the connection to the database.
 
 *For the MySQL database:*
 
 
-[source,java]
+[source,php]
 ----
-
-$con = mysqli_connect("localhost", "phpuser", "phpuserpw");if (!$con) {exit('Connect Error (' . mysqli_connect_errno() . ') '. mysqli_connect_error());}//set the default client character set mysqli_set_charset($con, 'utf-8');
+$con = mysqli_connect("localhost", "phpuser", "phpuserpw");
+if (!$con) {
+    exit('Connect Error (' . mysqli_connect_errno() . ') '. mysqli_connect_error());
+}
+//set the default client character 
+set mysqli_set_charset($con, 'utf-8');
 ----
 
 *For the Oracle database:*
 
 
-[source,java]
+[source,php]
 ----
-
 $con = oci_connect("phpuser", "phpuserpw", "localhost/XE", "AL32UTF8");
 if (!$con) {
     $m = oci_error();
@@ -238,31 +253,38 @@
 
 The code attempts to open a connection to the database and gives an error message if there is a failure.
 
-*Note for Oracle Database users:* You may need to alter the database connection in the  ``oci_connect``  command. The standard syntax is "hostname/service name". The connection to an Oracle XE database in this snippet is "localhost/XE" to follow that syntax.
+NOTE:  You may need to alter the database connection in the  ``oci_connect``  command. The standard syntax is "hostname/service name". The connection to an Oracle XE database in this snippet is "localhost/XE" to follow that syntax.
 
 NOTE: You can use NetBeans IDE's code completion for either mysqli or OCI8 functions.
 
 image::images/codecompletion.png[]image::images/codecompletion-oci.png[]
-4. 
-Beneath the code to open the connection to the database, in the same PHP block, type or paste the following code. This code retrieves the ID of the wisher whose wish list was requested. If the wisher is not in the database, the code kills/exits the process and displays an error message.
+
+
+[start=4.]
+.  Beneath the code to open the connection to the database, in the same PHP block, type or paste the following code. This code retrieves the ID of the wisher whose wish list was requested. If the wisher is not in the database, the code kills/exits the process and displays an error message.
 
 *For the MySQL database:*
 
 
-[source,java]
+[source,php]
 ----
 
-mysqli_select_db($con, "wishlist");$user = mysqli_real_escape_string($con, htmlentities($_GET["user"]));$wisher = mysqli_query($con, "SELECT id FROM wishers WHERE name='" . $user . "'");if (mysqli_num_rows($wisher) < 1) {
+mysqli_select_db($con, "wishlist");
+$user = mysqli_real_escape_string($con, htmlentities($_GET["user"]));
+$wisher = mysqli_query($con, "SELECT id FROM wishers WHERE name='" . $user . "'");
+if (mysqli_num_rows($wisher) < 1) {
     exit("The person " . htmlentities($_GET["user"]) . " is not found. Please check the spelling and try again");
-}$row = mysqli_fetch_row($wisher);$wisherID = $row[0];mysqli_free_result($wisher);
+}
+$row = mysqli_fetch_row($wisher);
+$wisherID = $row[0];
+mysqli_free_result($wisher);
 ----
 
 *For the Oracle database:* (Note that oci8 does not have an equivalent to  ``mysqli_num_rows`` )
 
 
-[source,java]
+[source,php]
 ----
-
 $query = "SELECT id FROM wishers WHERE NAME = :user_bv";
 $stid = oci_parse($con, $query);
 $user = $_GET['user'];
@@ -291,7 +313,7 @@
 
 Lastly, you free the mysqli result or OCI8 statement. You need to free all resources that use a connection before the connection will physically be closed. Otherwise PHP's internal refcounting system will keep the underlying DB connection open even if  ``$con``  is not usable following a  ``mysqli_close()``  or  ``oci_close()``  call.
 
-*Security Note:* For MySQL, the  ``htmlentities($_GET["user"])``  parameter is escaped in order to prevent SQL injection attacks. See link:http://en.wikipedia.org/wiki/SQL_injection[+Wikipedia on SQL injections+] and the link:http://us3.php.net/mysql_real_escape_string[+mysql_real_escape_string documentation+]. Although in the context of this tutorial you are not at risk of harmful SQL injections, it is best practice to escape strings in MySQL queries that would be at risk of such an attack. OCI8 avoids this through bind variables.
+WARNING: Security Note: For MySQL, the  ``htmlentities($_GET["user"])``  parameter is escaped in order to prevent SQL injection attacks. See link:http://en.wikipedia.org/wiki/SQL_injection[+Wikipedia on SQL injections+] and the link:http://us3.php.net/mysql_real_escape_string[+mysql_real_escape_string documentation+]. Although in the context of this tutorial you are not at risk of harmful SQL injections, it is best practice to escape strings in MySQL queries that would be at risk of such an attack. OCI8 avoids this through bind variables.
 
 This PHP block is now complete. If you are using a MySQL database, the  ``wishlist.php``  file now looks like this:
 
@@ -301,8 +323,7 @@
 
 Wish List of <?php echo htmlentities($_GET["user"]) . "<br/>"; ?><?php$con = mysqli_connect("localhost", "phpuser", "phpuserpw");
   if (!$con) {
-     exit('Connect Error (' . mysqli_connect_errno() . ') '
-            . mysqli_connect_error());
+     exit('Connect Error (' . mysqli_connect_errno() . ') ' . mysqli_connect_error());
   }//set the default client character set 
   mysqli_set_charset($con, 'utf-8');
   mysqli_select_db($con, "wishlist");
@@ -322,7 +343,6 @@
 
 [source,php]
 ----
-
 Wish List of <?php echo htmlentities($_GET["user"]) . "<br/>"; ?>
   <?php
   $con = oci_connect("phpuser", "phpuserpw", "localhost/XE", "AL32UTF8");
@@ -356,9 +376,8 @@
 
 1. Beneath the PHP block, type or paste the following HTML code block. This code opens a table, specifies the color of its borders (black), and "draws" the table header with the columns "Item" and "Due Date."
 
-[source,xml]
+[source,html]
 ----
-
 <table border="black">
     <tr>
         <th>Item</th>
@@ -367,38 +386,55 @@
 </table>
 ----
 The </table> tag closes the table.
-2. 
-Enter the following PHP code block above the closing </table> tag.
+
+[start=2.]
+. Enter the following PHP code block above the closing </table> tag.
 
 *For the MySQL database:*
 
-
 [source,php]
 ----
-
-<?php$result = mysqli_query($con, "SELECT description, due_date FROM wishes WHERE wisher_id=" . $wisherID);while ($row = mysqli_fetch_array($result)) {echo "<tr><td>" . htmlentities($row["description"]) . "</td>";echo "<td>" . htmlentities($row["due_date"]) . "</td></tr>\n";}mysqli_free_result($result);mysqli_close($con);?>
+<?php
+    $result = mysqli_query($con, "SELECT description, due_date FROM wishes WHERE wisher_id=" . $wisherID);
+    while ($row = mysqli_fetch_array($result)) {
+        echo "<tr><td>" . htmlentities($row["description"]) . "</td>";
+        echo "<td>" . htmlentities($row["due_date"]) . "</td></tr>\n";
+    }
+    mysqli_free_result($result);mysqli_close($con);
+?>
 ----
 
 *For the Oracle database:*
 
-
 [source,php]
 ----
-
-<?php$query = "SELECT description, due_date FROM wishes WHERE wisher_id = :id_bv";$stid = oci_parse($con, $query);oci_bind_by_name($stid, ":id_bv", $wisherID);oci_execute($stid);while ($row = oci_fetch_array($stid)) {echo "<tr><td>" . htmlentities($row["DESCRIPTION"]) . "</td>";echo "<td>" . htmlentities($row["DUE_DATE"]) . "</td></tr>\n";}oci_free_statement($stid);oci_close($con);?>
+<?php
+    $query = "SELECT description, due_date FROM wishes WHERE wisher_id = :id_bv";
+    $stid = oci_parse($con, $query);
+    oci_bind_by_name($stid, ":id_bv", $wisherID);
+    oci_execute($stid);
+	while ($row = oci_fetch_array($stid)) {
+        echo "<tr><td>" . htmlentities($row["DESCRIPTION"]) . "</td>";
+	    echo "<td>" . htmlentities($row["DUE_DATE"]) . "</td></tr>\n";
+	}
+    oci_free_statement($stid);
+	oci_close($con);
+?>
 ----
 
 Within the code:
 
 * The SELECT query retrieves the wishes with their due dates for the specified wisher by his ID, which was retrieved in step 4, and stores the wishes and due dates in an array $result.
 * A loop displays the items of the $result array as rows in the table while the array is not empty.
-* The <tr></tr> tags form rows, the <td></td> tags form cells within rows, and \n starts a new line.
+* The `<tr></tr>` tags form rows, the `<td></td>` tags form cells within rows, and `\n` starts a new line.
 * The  ``htmlentities``  function converts all characters that have HTML entity equivalents into HTML entities. This helps to prevent link:http://en.wikipedia.org/wiki/Cross-site_scripting[+cross-site scripting+].
 * Functions at the end free all resources (mysqli results and OCI8 statements) and close the database connection. Note you need to free all resources that use a connection before the connection can physically be closed. Otherwise PHP's internal refcounting system keeps the underlying DB connection open even if the connection is not usable following an  ``oci_close()``  or  ``mysqli_close()``  call.
 
-*Caution: *Make sure you type the names of database fields exactly as they are specified during the database table creation. For Oracle, column names are returned as uppercase by default.
+WARNING: Make sure you type the names of database fields exactly as they are specified during the database table creation. For Oracle, column names are returned as uppercase by default.
 
-3. To test the application, run the project as described in the section <<createNewFile,Testing index.php>>.
+[start=3.]
+. To test the application, run the project as described in the section <<createNewFile,Testing index.php>>.
+
 image::images/wishlist-php-works.png[]
 
 
diff --git a/netbeans.apache.org/src/content/kb/docs/php/wish-list-lesson2_ja.asciidoc b/netbeans.apache.org/src/content/kb/docs/php/wish-list-lesson2_ja.asciidoc
index e077131..6b5e7fa 100644
--- a/netbeans.apache.org/src/content/kb/docs/php/wish-list-lesson2_ja.asciidoc
+++ b/netbeans.apache.org/src/content/kb/docs/php/wish-list-lesson2_ja.asciidoc
@@ -17,18 +17,6 @@
 //     under the License.
 //
 
-= PHPを使用するデータベース駆動型アプリケーションの作成
-:jbake-type: tutorial
-:jbake-tags: tutorials 
-:jbake-status: published
-:icons: font
-:syntax: true
-:source-highlighter: pygments
-:toc: left
-:toc-title:
-:description: PHPを使用するデータベース駆動型アプリケーションの作成 - Apache NetBeans
-:keywords: Apache NetBeans, Tutorials, PHPを使用するデータベース駆動型アプリケーションの作成
-
 = レッスン2: アプリケーションの設計。データベースからの読取り
 :jbake-type: tutorial
 :jbake-tags: tutorials 
@@ -42,40 +30,17 @@
 :keywords: Apache NetBeans, Tutorials, レッスン2: アプリケーションの設計。データベースからの読取り
 
 
-
-1. link:wish-list-tutorial-main-page.html[+PHPを使用するデータベース駆動型アプリケーションの作成 - メイン・ページ+]
-2. 
-データベースの作成
-
-1. link:wish-list-lesson1.html[+MySQLデータベースの作成+]
-2. link:wish-list-oracle-lesson1.html[+Oracleデータベース表の作成+]
-3. 
-*=> アプリケーションの設計。データベースからの読取り*
-
-4. link:wish-list-lesson3.html[+新規アプリケーション・ユーザーの作成+]
-5. link:wish-list-lesson4.html[+コードの最適化+]
-6. link:wish-list-lesson5.html[+セキュリティの追加。アプリケーション・ユーザー・ログオンの実装+]
-7. link:wish-list-lesson6.html[+データベースへの新しいウィッシュの追加+]
-8. link:wish-list-lesson7.html[+データベース内のエントリの更新および削除+]
-9. link:wish-list-lesson8.html[+CSSテクノロジを使用したアプリケーションの外観の改良+]
-10. link:wish-list-lesson9.html[+リモートWebサーバーへのアプリケーションのデプロイ+]
-
-image::images/netbeans-stamp-80-74-73.png[title="このページの内容は、NetBeans IDE 7.2、7.3、7.4および8.0に適用されます"]
-
 このレッスンでは、アプリケーションを開発するためにPHPプロジェクトを作成および構成し、アプリケーション内のページのリストを作成して、それらの関係を定義します。また、基本的なアプリケーションの機能を開発し、レッスン1のサンプル・データベースに入力したデータに対してテストします。
 
 このレッスンで記述するPHPコードは次の機能を実行します。
 
 1. ユーザーが入力した個人の名前を取得します。
-
 2. その個人が実際にデータベース内に存在するかどうかを確認します。個人がデータベースに存在しない場合はエラー・メッセージを表示して終了します。
-
 3. その個人のウィッシュ表を表示します。
 
 現在のドキュメントは、PHP向けのNetBeans IDEでのデータベース駆動型アプリケーションの作成というチュートリアルの一部です。
 
 
-
 == PHPプロジェクトの作成
 
 「ファイル」>「新規プロジェクト」(WindowsおよびLinuxでは[Ctrl]-[Shift]-[N]、MacOSでは[⌘]-[Shift]-[N])を選択します。「wishlist」という名前の新しいPHPプロジェクトを作成します。PHPプロジェクトを作成すると、PHPプロジェクトにはデフォルトでインデックス・ファイル ``index.php`` が含まれます。PHPプロジェクトの作成と構成については、link:project-setup.html[+PHPプロジェクトの設定+]を参照してください。
@@ -121,37 +86,69 @@
 
 1. 「プロジェクト」ウィンドウに切り替え、プロジェクト・ノードおよび「ソース・ファイル」ノードを展開し、 ``index.php`` ファイルをダブルクリックします。 ``index.php`` ファイルがメインのIDEエディタ領域で開きます。ファイルには、HTMLおよびPHPコードを入力するためのテンプレートが含まれています。
 
-*注意: *HTMLバリデータからの警告は無視できます。
+NOTE: HTMLバリデータからの警告は無視できます。
 
-.
-2. PHPブロックを除去します。index.phpファイルにはPHPコードは含まれません。
+
+[start=2]
+. PHPブロックを除去します。index.phpファイルにはPHPコードは含まれません。
+
 image::images/remove-php-block.png[]
-3. 「ウィンドウ」メニューから、または[Ctrl]-[Shift]-[8]を押して「パレット」を開きます。
-4. パレットの「*HTMLフォーム*」セクションで、「フォーム」を ``index.php`` の<body>セクションにドラッグ・アンド・ドロップします。
+
+
+[start=3]
+. 「ウィンドウ」メニューから、または[Ctrl]-[Shift]-[8]を押して「パレット」を開きます。
+
+[start=4]
+. パレットの「*HTMLフォーム*」セクションで、「フォーム」を ``index.php`` の<body>セクションにドラッグ・アンド・ドロップします。
+
 image::images/form-dnd.png[]
-5. 「挿入フォーム」ダイアログが開きます。「アクション」フィールドで、フォームによるデータの転送先のファイルへのパスを入力します。このケースでは、「 ``wishlist.php`` 」と入力します。(このファイルは ``index.php`` と同じ場所に作成します。<<createNewFile,wishlist.phpの作成とアプリケーションのテスト>>を参照。)データを転送するためのGETメソッドを選択します。フォームに対して ``wishList`` などの任意の名前を付けます。完了したら、「OK」をクリックします。
+
+
+[start=5]
+. 「挿入フォーム」ダイアログが開きます。「アクション」フィールドで、フォームによるデータの転送先のファイルへのパスを入力します。このケースでは、「 ``wishlist.php`` 」と入力します。(このファイルは ``index.php`` と同じ場所に作成します。<<createNewFile,wishlist.phpの作成とアプリケーションのテスト>>を参照。)データを転送するためのGETメソッドを選択します。フォームに対して ``wishList`` などの任意の名前を付けます。完了したら、「OK」をクリックします。
+
 image::images/insert-form-dialog.png[]
 
 ファイルは次のようになっています。
 
 image::images/blank-form.png[]
-6. フォームの開始タグと終了タグの間に、「Show wish list of: 」というテキストを入力します。
-7. パレットの「*HTMLフォーム*」セクションから、「テキスト入力」コンポーネントを「Show wish list of: 」の後のスペースにドラッグします。「挿入テキスト入力」ダイアログが開きます。
-8. 入力に ``user`` という名前を付けます。入力タイプは「 ``テキスト`` 」を選択します。その他のすべてのフィールドを空白のままにし、「OK」をクリックします。
+
+
+[start=6]
+. フォームの開始タグと終了タグの間に、「Show wish list of: 」というテキストを入力します。
+
+[start=7]
+. パレットの「*HTMLフォーム*」セクションから、「テキスト入力」コンポーネントを「Show wish list of: 」の後のスペースにドラッグします。「挿入テキスト入力」ダイアログが開きます。
+
+[start=8]
+. 入力に ``user`` という名前を付けます。入力タイプは「 ``テキスト`` 」を選択します。その他のすべてのフィールドを空白のままにし、「OK」をクリックします。
+
 image::images/insert-text-input.png[]
 
 ファイルは次のようになっています。
 
 image::images/form-with-text-input.png[]
-9. </form> タグの上に空白行を追加します。この空白行に、パレットの「*HTMLフォーム*」セクションから「ボタン」コンポーネントをドラッグ・アンド・ドロップします。
-10. 「挿入ボタン」ダイアログが開きます。「ラベル」フィールドに「 ``Go`` 」と入力して「OK」をクリックします。
+
+
+[start=9]
+. </form> タグの上に空白行を追加します。この空白行に、パレットの「*HTMLフォーム*」セクションから「ボタン」コンポーネントをドラッグ・アンド・ドロップします。
+
+[start=10]
+. 「挿入ボタン」ダイアログが開きます。「ラベル」フィールドに「 ``Go`` 」と入力して「OK」をクリックします。
+
 image::images/insert-button-dialog.png[]
-11. フォームは次のようなコードになり、違いは1つです。次のコードでは、<form>タグ内の ``method`` 属性が明示的になっています。NetBeans IDEはメソッド属性をフォームに追加しませんでしたが、この理由はGETがこの属性のデフォルト値であるためです。ただし、 ``method`` 属性が明示的であれば、コードが理解しやすくなる場合があります。
 
-[source,xml]
+
+[start=11]
+. フォームは次のようなコードになり、違いは1つです。次のコードでは、<form>タグ内の ``method`` 属性が明示的になっています。NetBeans IDEはメソッド属性をフォームに追加しませんでしたが、この理由はGETがこの属性のデフォルト値であるためです。ただし、 ``method`` 属性が明示的であれば、コードが理解しやすくなる場合があります。
+
+[source,html]
 ----
-
-<form action="wishlist.php" method="GET" name="wishList">Show wish list of: <input type="text" name="user" value=""/><input type="submit" value="Go" /></form>
+<form action="wishlist.php" method="GET" name="wishList">
+    Show wish list of: 
+    <input type="text" name="user" value=""/>
+    <input type="submit" value="Go" />
+</form>
 ----
 
 フォームの次の要素に注意してください。
@@ -171,8 +168,12 @@
 1. 作成した「wishlist」プロジェクト内の「ソース・ファイル」ノードでマウスの右ボタンをクリックし、コンテキスト・メニューから「新規」>「PHPのWebページ」を選択します。新規PHPのWebページ・ウィザードが開きます。
 2. 「ファイル名」フィールドに「 ``wishlist`` 」と入力し、「終了」をクリックします。
 3. 「ソース」ノードでマウスの右ボタンをクリックしてコンテキスト・メニューから「プロジェクトの実行」をするか、または、プロジェクトをメインとして設定している場合は、ツールバーの「メイン・プロジェクトの実行」アイコンimage::images/run-main-project-button.png[]をクリックします。
+
 image::images/index-php-works.png[]
-4. 「Show wish list of:」編集ボックスに「Tom」と入力し、「Go」をクリックします。URLがhttp://localhost:90/Lesson2/wishlist.php?user=tomの空のページが表示されます。このURLは、メイン・ページが正しく動作していることを示します。
+
+
+[start=4]
+. 「Show wish list of:」編集ボックスに「Tom」と入力し、「Go」をクリックします。URLがhttp://localhost:90/Lesson2/wishlist.php?user=tomの空のページが表示されます。このURLは、メイン・ページが正しく動作していることを示します。
 
 
 == 接続の確立とウィッシャIDの取得
@@ -183,14 +184,26 @@
 
 [source,php]
 ----
-
-<!DOCTYPE html><html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title></title></head><body><?php// put your code here?></body></html>
+<!DOCTYPE html>
+<html>
+    <head>
+        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+        <title></title>
+    </head>
+    <body>
+        <?php
+            // put your code here
+        ?>
+    </body>
+</html>
 ----
-2. タイトルを表示するには、開始の<body>タグの直後で、生成された<?phpタグの前に次のコード・ブロックを入力します。
+
+
+[start=2]
+. タイトルを表示するには、開始の<body>タグの直後で、生成された<?phpタグの前に次のコード・ブロックを入力します。
 
 [source,php]
 ----
-
  Wish List of <?php echo htmlentities($_GET["user"])."<br/>";?>
 ----
 
@@ -199,31 +212,40 @@
 
 [source,php]
 ----
-
-<body>Wish List of <?php echo htmlentities($_GET["user"])."<br/>";?><?php// put your code here</body>
-
+<body>
+    Wish List of <?php echo htmlentities($_GET["user"])."<br/>"; ?>
+    <?php
+        // put your code here
+    ?>
+</body>
 ----
 
 PHPコード・ブロックは、「user」フィールドの取得メソッド(GET)を介して受け取ったデータを表示します。このデータは、テキスト・フィールド「user」に、ウィッシュ・リストの所有者であるTomの名前が入力されている ``index.php`` から転送されます。wishlist.phpが正しく動作していることを確認するために、<<createNewFile,index.phpのテスト>>の手順を繰り返します。
+
 image::images/wishlist-php-title-works.png[]
 
-3. テンプレートPHPブロックのコメント付きセクションを削除します。その場所に、次のコードを入力するか、または貼り付けます。このコードはデータベースへの接続を開きます。
+
+[start=3]
+. テンプレートPHPブロックのコメント付きセクションを削除します。その場所に、次のコードを入力するか、または貼り付けます。このコードはデータベースへの接続を開きます。
 
 *MySQLデータベースの場合:*
 
 
-[source,java]
+[source,php]
 ----
-
-$con = mysqli_connect("localhost", "phpuser", "phpuserpw");if (!$con) {exit('Connect Error (' . mysqli_connect_errno() . ') '. mysqli_connect_error());}//set the default client character set mysqli_set_charset($con, 'utf-8');
+$con = mysqli_connect("localhost", "phpuser", "phpuserpw");
+if (!$con) {
+    exit('Connect Error (' . mysqli_connect_errno() . ') '. mysqli_connect_error());
+}
+//set the default client character 
+set mysqli_set_charset($con, 'utf-8');
 ----
 
 *Oracleデータベースの場合:*
 
 
-[source,java]
+[source,php]
 ----
-
 $con = oci_connect("phpuser", "phpuserpw", "localhost/XE", "AL32UTF8");
 if (!$con) {
     $m = oci_error();
@@ -233,29 +255,36 @@
 
 これはデータベースへの接続を開くためのコードで、エラーが発生した場合はエラー・メッセージが表示されます。
 
-*Oracleデータベース・ユーザーへの注意:*  ``oci_connect`` コマンド内のデータベース接続を変更することが必要になる場合があります。標準の構文は「ホスト名/サービス名」です。このスニペット内でのOracle XEデータベースへの接続は、この構文に従って「localhost/XE」です。
+NOTE: ``oci_connect`` コマンド内のデータベース接続を変更することが必要になる場合があります。標準の構文は「ホスト名/サービス名」です。このスニペット内でのOracle XEデータベースへの接続は、この構文に従って「localhost/XE」です。
 
-*注意:* mysqli関数またはOCI8関数のいずれかについて、NetBeans IDEのコード補完を使用できます。
+NOTE:  mysqli関数またはOCI8関数のいずれかについて、NetBeans IDEのコード補完を使用できます。
 
 image::images/codecompletion.png[]image::images/codecompletion-oci.png[]
-4. 
-コードの下にデータベースへの接続が開き、同じPHPブロックに次のコードを入力するか、または貼り付けます。このコードは、ウィッシュ・リストがリクエストされたウィッシャのIDを取得します。ウィッシャがデータベースに存在しない場合、コードはプロセスを終了し、エラー・メッセージを表示します。
+
+
+[start=4]
+.  コードの下にデータベースへの接続が開き、同じPHPブロックに次のコードを入力するか、または貼り付けます。このコードは、ウィッシュ・リストがリクエストされたウィッシャのIDを取得します。ウィッシャがデータベースに存在しない場合、コードはプロセスを終了し、エラー・メッセージを表示します。
 
 *MySQLデータベースの場合:*
 
 
-[source,java]
+[source,php]
 ----
-
-mysqli_select_db($con, "wishlist");$user = mysqli_real_escape_string($con, htmlentities($_GET["user"]));$wisher = mysqli_query($con, "SELECT id FROM wishers WHERE name='" . $user . "'");if (mysqli_num_rows($wisher) < 1) {
+mysqli_select_db($con, "wishlist");
+$user = mysqli_real_escape_string($con, htmlentities($_GET["user"]));
+$wisher = mysqli_query($con, "SELECT id FROM wishers WHERE name='" . $user . "'");
+if (mysqli_num_rows($wisher) < 1) {
     exit("The person " . htmlentities($_GET["user"]) . " is not found. Please check the spelling and try again");
-}$row = mysqli_fetch_row($wisher);$wisherID = $row[0];mysqli_free_result($wisher);
+}
+$row = mysqli_fetch_row($wisher);
+$wisherID = $row[0];
+mysqli_free_result($wisher);
 ----
 
 *Oracleデータベースの場合:* (oci8には ``mysqli_num_rows`` と同等のものが存在しません)
 
 
-[source,java]
+[source,php]
 ----
 
 $query = "SELECT id FROM wishers WHERE NAME = :user_bv";
@@ -351,7 +380,7 @@
 
 1. PHPブロックの下に、次のHTMLコード・ブロックを入力するか、または貼り付けます。このコードは、表を開き、境界線の色を指定し(黒)、「Item」列および「Due Date」列を持つ表ヘッダーを「描画」します。
 
-[source,xml]
+[source,html]
 ----
 
 <table border="black">
@@ -362,16 +391,23 @@
 </table>
 ----
 </table>タグが表を閉じます。
-2. 
-次のPHPコード・ブロックを、終了</table>タグの前に入力します。
+
+[start=2]
+. 次のPHPコード・ブロックを、終了</table>タグの前に入力します。
 
 *MySQLデータベースの場合:*
 
 
 [source,php]
 ----
-
-<?php$result = mysqli_query($con, "SELECT description, due_date FROM wishes WHERE wisher_id=" . $wisherID);while ($row = mysqli_fetch_array($result)) {echo "<tr><td>" . htmlentities($row["description"]) . "</td>";echo "<td>" . htmlentities($row["due_date"]) . "</td></tr>\n";}mysqli_free_result($result);mysqli_close($con);?>
+<?php
+    $result = mysqli_query($con, "SELECT description, due_date FROM wishes WHERE wisher_id=" . $wisherID);
+    while ($row = mysqli_fetch_array($result)) {
+        echo "<tr><td>" . htmlentities($row["description"]) . "</td>";
+        echo "<td>" . htmlentities($row["due_date"]) . "</td></tr>\n";
+    }
+    mysqli_free_result($result);mysqli_close($con);
+?>
 ----
 
 *Oracleデータベースの場合:*
@@ -379,8 +415,18 @@
 
 [source,php]
 ----
-
-<?php$query = "SELECT description, due_date FROM wishes WHERE wisher_id = :id_bv";$stid = oci_parse($con, $query);oci_bind_by_name($stid, ":id_bv", $wisherID);oci_execute($stid);while ($row = oci_fetch_array($stid)) {echo "<tr><td>" . htmlentities($row["DESCRIPTION"]) . "</td>";echo "<td>" . htmlentities($row["DUE_DATE"]) . "</td></tr>\n";}oci_free_statement($stid);oci_close($con);?>
+<?php
+    $query = "SELECT description, due_date FROM wishes WHERE wisher_id = :id_bv";
+    $stid = oci_parse($con, $query);
+    oci_bind_by_name($stid, ":id_bv", $wisherID);
+    oci_execute($stid);
+	while ($row = oci_fetch_array($stid)) {
+        echo "<tr><td>" . htmlentities($row["DESCRIPTION"]) . "</td>";
+	    echo "<td>" . htmlentities($row["DUE_DATE"]) . "</td></tr>\n";
+	}
+    oci_free_statement($stid);
+	oci_close($con);
+?>
 ----
 
 コード内は次のようになっています。
@@ -391,9 +437,12 @@
 *  ``htmlentities`` 関数は、HTMLエンティティと等価な意味を持つすべての文字を、HTMLエンティティに変換します。これは、link:http://en.wikipedia.org/wiki/Cross-site_scripting[+クロスサイト・スクリプティング+]の防止に役立ちます。
 * 最後の関数はすべてのリソース(mysqli結果およびOCI8文)を解放し、データベース接続を切断します。接続が物理的に切断できるようになる前に、接続を使用するすべてのリソースを解放する必要があります。そうしないと、 ``oci_close()`` コールまたは ``mysqli_close()`` コールの後に接続が使用できない場合でも、PHPの内部参照カウント・システムは、ベースとなるDB接続を開き続けます。
 
-*注意: *データベース表の作成時に指定したとおりに、データベース・フィールドの名前を入力していることを確認してください。Oracleの場合、列名はデフォルトで大文字で返されます。
+NOTE: データベース表の作成時に指定したとおりに、データベース・フィールドの名前を入力していることを確認してください。Oracleの場合、列名はデフォルトで大文字で返されます。
 
-3. アプリケーションをテストするには、<<createNewFile,index.phpのテスト>>の項の説明に従ってプロジェクトを実行します。
+
+[start=3]
+. アプリケーションをテストするには、<<createNewFile,index.phpのテスト>>の項の説明に従ってプロジェクトを実行します。
+
 image::images/wishlist-php-works.png[]
 
 
@@ -413,26 +462,4 @@
 link:wish-list-tutorial-main-page.html[+チュートリアルのメイン・ページに戻る+]
 
 
-== 便利なリンク
-
-HTML、PHP、およびMySQLやOracleデータベースの使用については、次を参照してください。
-
-* link:http://www.w3schools.com/html/[+HTML Tutorial +]
-* link:http://www.htmlcodetutorial.com/[+HTML Code Tutorial - Free Reference Guide for Help with HTML Tags+]
-* link:http://www.w3schools.com/php/default.asp[+PHP Tutorial+]
-* link:http://www.tizag.com/phpT/[+PHP Tutorial - Learn PHP+]
-* link:http://www.killerphp.com/[+PHP Video Tutorials+]
-* link:http://dev.mysql.com/tech-resources/articles/mysql_intro.html[+Getting Started with MySQL+]
-* link:http://www.killerphp.com/[+PHP / MySQL Tutorial+]
-* link:http://www.php-mysql-tutorial.com/[+PHP MySQL Tutorial+]
-* link:http://php.net/manual/en/book.oci8.php[+The Oracle OCI8 Manual+]
-* link:http://blogs.oracle.com/opal/[+Christopher JonesのOCI8ブログ+]
-
-
-link:/about/contact_form.html?to=3&subject=Feedback:%20PHP%20Wish%20List%20CRUD%202:%20Designing%20the%20Application[+このチュートリアルに関するご意見をお寄せください+]
-
-
-link:../../../community/lists/top.html[+users@php.netbeans.orgメーリング・リストに登録する+]ことによって、NetBeans IDE PHP開発機能に関するご意見やご提案を送信したり、サポートを受けたり、最新の開発情報を入手したりできます。
-
-link:../../trails/php.html[+PHPの学習に戻る+]
 
diff --git a/netbeans.apache.org/src/content/kb/docs/php/wish-list-lesson2_pt_BR.asciidoc b/netbeans.apache.org/src/content/kb/docs/php/wish-list-lesson2_pt_BR.asciidoc
index baae77f..00fb129 100644
--- a/netbeans.apache.org/src/content/kb/docs/php/wish-list-lesson2_pt_BR.asciidoc
+++ b/netbeans.apache.org/src/content/kb/docs/php/wish-list-lesson2_pt_BR.asciidoc
@@ -17,18 +17,6 @@
 //     under the License.
 //
 
-= Criando uma Aplicação Orientada pelo Banco de Dados com o PHP
-:jbake-type: tutorial
-:jbake-tags: tutorials 
-:jbake-status: published
-:icons: font
-:syntax: true
-:source-highlighter: pygments
-:toc: left
-:toc-title:
-:description: Criando uma Aplicação Orientada pelo Banco de Dados com o PHP - Apache NetBeans
-:keywords: Apache NetBeans, Tutorials, Criando uma Aplicação Orientada pelo Banco de Dados com o PHP
-
 = Lição 2: Projetando a Aplicação. Lendo o Banco de Dados
 :jbake-type: tutorial
 :jbake-tags: tutorials 
@@ -42,40 +30,16 @@
 :keywords: Apache NetBeans, Tutorials, Lição 2: Projetando a Aplicação. Lendo o Banco de Dados
 
 
-
-1. link:wish-list-tutorial-main-page.html[+Criando uma Aplicação Orientada pelo Banco de Dados com o PHP - Página Principal+]
-2. 
-Criando o Banco de Dados
-
-1. link:wish-list-lesson1.html[+Criando um Banco de Dados MySQL+]
-2. link:wish-list-oracle-lesson1.html[+Criando Tabelas do Banco de Dados Oracle+]
-3. 
-*=> Projetando a Aplicação. Lendo o Banco de Dados*
-
-4. link:wish-list-lesson3.html[+Criando um Novo Usuário da Aplicação+]
-5. link:wish-list-lesson4.html[+Otimizando o Código+]
-6. link:wish-list-lesson5.html[+Adicionando Segurança. Implementando o Log-in de Usuário da Aplicação+]
-7. link:wish-list-lesson6.html[+Adicionando um Novo Desejo ao Banco de Dados+]
-8. link:wish-list-lesson7.html[+Atualizando e Deletando Entradas no Banco de Dados+]
-9. link:wish-list-lesson8.html[+Melhorando a Aparência da Aplicação Usando a Tecnologia CSS+]
-10. link:wish-list-lesson9.html[+Implantando a Aplicação em um Servidor Web Remoto+]
-
-image::images/netbeans-stamp-80-74-73.png[title="O conteúdo desta página se aplica ao NetBeans IDE 7.2, 7.3, 7.4 e 8.0"]
-
 Nesta lição, você cria e configura o projeto PHP para desenvolver sua aplicação, cria uma lista de páginas na aplicação e define as relações entre eles. Também desenvolve a funcionalidade básica da aplicação e a testa contra os dados inseridos no banco de dados de amostra na lição 1.
 
 O código PHP escrito nessa lição executa as seguintes funções:
 
 1. Obtém o nome de uma pessoa que o usuário digita.
-
 2. Verifica se a pessoa realmente está no banco de dados. Fecha com uma mensagem de erro caso a pessoa não esteja no banco de dados.
-
 3. Exibe uma tabela dos desejos dessa pessoa.
 
 O documento atual é uma parte do tutorial Criando uma Aplicação Orientada pelo Banco de Dados no NetBeans IDE para PHP.
 
-
-
 == Criando um Projeto PHP
 
 Selecione Arquivo > Novo Projeto (Ctrl-Shift-N no Linux e Windows, ⌘-Shift-N no MacOS). Crie um novo projeto PHP chamado “wishlist” (lista de desejos). Quando você cria um projeto PHP, ele contém o arquivo index  ``index.php``  por default. Para obter informações sobre como criar e configurar um projeto PHP, consulte link:project-setup.html[+Configurando um Projeto PHP+].
@@ -121,37 +85,69 @@
 
 1. Alterne para a janela Projetos, expanda o nó do seu projeto e o nó de Arquivos de Código-fonte e clique duas vezes no arquivo  ``index.php`` . O arquivo  ``index.php``  se abre na área do editor principal do IDE. O arquivo contém um modelo para a inserção dos códigos HTML e PHP.
 
-*Observação: *você pode ignorar as advertências do validador HTML.
+NOTE: você pode ignorar as advertências do validador HTML.
 
-.
-2. Remova o bloco PHP. O arquivo index.php não conterá códigos PHP.
+
+[start=2]
+. Remova o bloco PHP. O arquivo index.php não conterá códigos PHP.
+
 image::images/remove-php-block.png[]
-3. Abra a Paleta no menu Janela ou pressione Ctrl-Shift-8.
-4. Na seção *Forms HTML* da Paleta, arraste e solte um Form na seção <body> do  ``index.php`` . 
+
+
+[start=3]
+. Abra a Paleta no menu Janela ou pressione Ctrl-Shift-8.
+
+[start=4]
+. Na seção *Forms HTML* da Paleta, arraste e solte um Form na seção <body> do  ``index.php`` . 
+
 image::images/form-dnd.png[]
-5. A Caixa de Diálogo Inserir Form abre. No campo Ação, digite o caminho até o arquivo para o qual o form transferirá dados. Nesse caso, digite  ``wishlist.php`` . (Você criará esse arquivo no mesmo local que o  ``index.php`` . Consulte <<createNewFile,Criando wishlist.php e Testando a Aplicação>>.) Selecione o método GET para a transferência de dados. Dê um nome arbitrário ao form, como  ``wishList`` . Clique em OK quando acabar.
+
+
+[start=5]
+. A Caixa de Diálogo Inserir Form abre. No campo Ação, digite o caminho até o arquivo para o qual o form transferirá dados. Nesse caso, digite  ``wishlist.php`` . (Você criará esse arquivo no mesmo local que o  ``index.php`` . Consulte <<createNewFile,Criando wishlist.php e Testando a Aplicação>>.) Selecione o método GET para a transferência de dados. Dê um nome arbitrário ao form, como  ``wishList`` . Clique em OK quando acabar.
+
 image::images/insert-form-dialog.png[]
 
 O arquivo agora tem a seguinte aparência:
 
 image::images/blank-form.png[]
-6. Entre os identificadores de abertura e fechamento do form, digite o texto “Show wish list of: ”.
-7. Arraste um componente de Entrada de Texto da seção *Forms HTML* da Paleta até o espaço após o texto “Show wish list of: ”. A caixa de diálogo Inserir Texto abre.
-8. Nomeie a entrada como  ``user`` . Selecione o tipo de entrada  ``text`` . Deixe todos os outros campos vazios e clique em OK.
+
+
+[start=6]
+. Entre os identificadores de abertura e fechamento do form, digite o texto “Show wish list of: ”.
+
+[start=7]
+. Arraste um componente de Entrada de Texto da seção *Forms HTML* da Paleta até o espaço após o texto “Show wish list of: ”. A caixa de diálogo Inserir Texto abre.
+
+[start=8]
+. Nomeie a entrada como  ``user`` . Selecione o tipo de entrada  ``text`` . Deixe todos os outros campos vazios e clique em OK.
+
 image::images/insert-text-input.png[]
 
 O arquivo agora tem a seguinte aparência:
 
 image::images/form-with-text-input.png[]
-9. Adicione uma linha em branco acima da tag </form>. Nessa linha em branco, arraste e solte um componente Botão da seção *Forms HTML* da Paleta.
-10. A caixa de diálogo Inserir Botão abre. Digite  ``Go``  no campo Label e clique em OK.
+
+
+[start=9]
+. Adicione uma linha em branco acima da tag </form>. Nessa linha em branco, arraste e solte um componente Botão da seção *Forms HTML* da Paleta.
+
+[start=10]
+. A caixa de diálogo Inserir Botão abre. Digite  ``Go``  no campo Label e clique em OK.
+
 image::images/insert-button-dialog.png[]
-11. Agora, o form se parece com o código abaixo, com uma única diferença. No código abaixo, o atributo  ``method``  está explícito na tag <form>. O NetBeans IDE não adicionou o atributo method ao seu form, pois o GET é o valor default desse atributo. Entretanto, você pode entender o código com mais facilidade se o atributo  ``method``  estiver explícito.
+
+
+[start=11]
+. Agora, o form se parece com o código abaixo, com uma única diferença. No código abaixo, o atributo  ``method``  está explícito na tag <form>. O NetBeans IDE não adicionou o atributo method ao seu form, pois o GET é o valor default desse atributo. Entretanto, você pode entender o código com mais facilidade se o atributo  ``method``  estiver explícito.
 
 [source,xml]
 ----
-
-<form action="wishlist.php" method="GET" name="wishList">Show wish list of: <input type="text" name="user" value=""/><input type="submit" value="Go" /></form>
+<form action="wishlist.php" method="GET" name="wishList">
+    Show wish list of: 
+    <input type="text" name="user" value=""/>
+    <input type="submit" value="Go" />
+</form>
 ----
 
 Observe os seguintes elementos do form:
@@ -170,9 +166,13 @@
 
 1. Dentro do projeto “lista de desejos” que você criou, clique com o botão direito do mouse no nó dos arquivos de código-fonte e, no menu de contexto, selecione Novo > Página Web PHP. O assistente Nova Página Web de PHP é aberto.
 2. Digite  ``wishlist``  no campo Nome do Arquivo e pressione Finalizar.
-3. Clique com o botão direito do mouse no nó Código-fonte e selecione Executar Projeto no menu de contexto ou clique no ícone Executar Projeto Principal image::images/run-main-project-button.png[]na barra de ferramentas, caso você tenha definido o seu projeto como Principal. 
+3. Clique com o botão direito do mouse no nó Código-fonte e selecione Executar Projeto no menu de contexto ou clique no ícone Executar Projeto Principal image:images/run-main-project-button.png[]na barra de ferramentas, caso você tenha definido o seu projeto como Principal. 
+
 image::images/index-php-works.png[]
-4. Na lista de desejos Mostrar : caixa de edição, digite Tom e clique em Ir. Uma página vazia com a seguinte URL aparecerá: http://localhost:90/Lesson2/wishlist.php?user=tom. Esse URL indica que a sua página principal funciona corretamente.
+
+
+[start=4]
+. Na lista de desejos Mostrar : caixa de edição, digite Tom e clique em Ir. Uma página vazia com a seguinte URL aparecerá: http://localhost:90/Lesson2/wishlist.php?user=tom. Esse URL indica que a sua página principal funciona corretamente.
 
 
 == Estabelecendo a Conexão e Obtendo o Wisher ID
@@ -183,10 +183,23 @@
 
 [source,php]
 ----
+<!DOCTYPE html>
+<html>
+    <head>
+        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+        <title></title>
+    </head>
+    <body>
+        <?php
+            // put your code here
+        ?>
+    </body>
+</html>
 
-<!DOCTYPE html><html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title></title></head><body><?php// put your code here?></body></html>
 ----
-2. Para exibir o título, digite o seguinte bloco de código imediatamente depois da tag de abertura <body>, antes da tag <?php gerada:
+
+[start=2]
+. Para exibir o título, digite o seguinte bloco de código imediatamente depois da tag de abertura <body>, antes da tag <?php gerada:
 
 [source,php]
 ----
@@ -205,25 +218,32 @@
 ----
 
 O bloco de código PHP exibe os dados recebidos usando o método GET no campo "user". Esses dados são transferidos do  ``index.php``  onde o nome do proprietário da lista de desejos Tom foi inserido no campo de texto "user". Repita as etapas de <<createNewFile,Testando index.php>> para ver se o wishlist.php funciona corretamente. 
+
 image::images/wishlist-php-title-works.png[]
 
-3. Delete a seção comentada no bloco PHP do modelo. Em seu lugar, digite ou cole no código a seguir. Esse código abre a conexão ao banco de dados.
+
+[start=3]
+. Delete a seção comentada no bloco PHP do modelo. Em seu lugar, digite ou cole no código a seguir. Esse código abre a conexão ao banco de dados.
 
 *Para o banco de dados MySQL:*
 
 
-[source,java]
+[source,php]
 ----
+$con = mysqli_connect("localhost", "phpuser", "phpuserpw");
+if (!$con) {
+    exit('Connect Error (' . mysqli_connect_errno() . ') '. mysqli_connect_error());
+}
+//set the default client character 
+set mysqli_set_charset($con, 'utf-8');
 
-$con = mysqli_connect("localhost", "phpuser", "phpuserpw");if (!$con) {exit('Connect Error (' . mysqli_connect_errno() . ') '. mysqli_connect_error());}//set the default client character set mysqli_set_charset($con, 'utf-8');
 ----
 
 *Para o banco de dados Oracle:*
 
 
-[source,java]
+[source,php]
 ----
-
 $con = oci_connect("phpuser", "phpuserpw", "localhost/XE", "AL32UTF8");
 if (!$con) {
     $m = oci_error();
@@ -235,29 +255,35 @@
 
 *Observação para os usuários do banco de dados Oracle:* Pode ser preciso alterar a conexão ao banco de dados no comando  ``oci_connect`` . A sintaxe padrão é “nome do host/nome do serviço". A conexão ao banco de dados Oracle XE nesse snippet de código é “localhost/XE” para seguir essa sintaxe.
 
-*Observação:* É possível usar a funcionalidade autocompletar código do NetBeans IDE para as funções mysqli ou OCI8.
+NOTE:  É possível usar a funcionalidade autocompletar código do NetBeans IDE para as funções mysqli ou OCI8.
 
 image::images/codecompletion.png[]image::images/codecompletion-oci.png[]
-4. 
-Abaixo do código para abrir a conexão ao banco de dados, no mesmo bloco PHP, digite ou cole o código a seguir. Esse código recupera o wisher ID cuja lista tenha sido solicitada. Se o wisher não estiver no banco de dados, o código terminará o processo, ou sairá dele, e exibirá uma mensagem de erro.
+
+
+[start=4]
+. Abaixo do código para abrir a conexão ao banco de dados, no mesmo bloco PHP, digite ou cole o código a seguir. Esse código recupera o wisher ID cuja lista tenha sido solicitada. Se o wisher não estiver no banco de dados, o código terminará o processo, ou sairá dele, e exibirá uma mensagem de erro.
 
 *Para o banco de dados MySQL:*
 
 
-[source,java]
+[source,php]
 ----
-
-mysqli_select_db($con, "wishlist");$user = mysqli_real_escape_string($con, htmlentities($_GET["user"]));$wisher = mysqli_query($con, "SELECT id FROM wishers WHERE name='" . $user . "'");if (mysqli_num_rows($wisher) < 1) {
+mysqli_select_db($con, "wishlist");
+$user = mysqli_real_escape_string($con, htmlentities($_GET["user"]));
+$wisher = mysqli_query($con, "SELECT id FROM wishers WHERE name='" . $user . "'");
+if (mysqli_num_rows($wisher) < 1) {
     exit("The person " . htmlentities($_GET["user"]) . " is not found. Please check the spelling and try again");
-}$row = mysqli_fetch_row($wisher);$wisherID = $row[0];mysqli_free_result($wisher);
+}
+$row = mysqli_fetch_row($wisher);
+$wisherID = $row[0];
+mysqli_free_result($wisher);
 ----
 
 *Para o banco de dados Oracle:* (Observe que o oci8 não tem um equivalente para  ``mysqli_num_rows`` )
 
 
-[source,java]
+[source,php]
 ----
-
 $query = "SELECT id FROM wishers WHERE NAME = :user_bv";
 $stid = oci_parse($con, $query);
 $user = $_GET['user'];
@@ -272,6 +298,7 @@
 }
 $wisherID = $row['ID'];
 oci_free_statement($stid);
+
 ----
 
 Os dados são selecionados no banco de dados  ``wishlist``  usando a conexão $con. O critério de seleção é o nome recebido do index.php como "user".
@@ -362,8 +389,9 @@
 </table>
 ----
 A tag </table> fecha a tabela.
-2. 
-Insira o seguinte bloco de código PHP acima da tag de fechamento </table>.
+
+[start=2]
+. Insira o seguinte bloco de código PHP acima da tag de fechamento </table>.
 
 *Para o banco de dados MySQL:*
 
@@ -393,7 +421,10 @@
 
 *Cuidado: *Certifique-se de digitar os nomes dos campos de banco de dados exatamente como eles foram especificados durante a criação da tabela do banco de dados. Para Oracle, os nomes das colunas são retornados com letras maiúsculas por default.
 
-3. Para testar a aplicação, execute o projeto como descrito na seção <<createNewFile,Testando index.php>>.
+
+[start=3]
+. Para testar a aplicação, execute o projeto como descrito na seção <<createNewFile,Testando index.php>>.
+
 image::images/wishlist-php-works.png[]
 
 
@@ -413,26 +444,4 @@
 link:wish-list-tutorial-main-page.html[+Voltar à Página Principal do Tutorial+]
 
 
-== Links Úteis
-
-Encontre mais informações sobre o uso de HTML, PHP e MySQL ou Oracle Database aqui:
-
-* link:http://www.w3schools.com/html/[+Tutorial de HTML +]
-* link:http://www.htmlcodetutorial.com/[+Tutorial do Código HTML - Guia de Referência Grátis para obter Ajuda Com Tags HTML+]
-* link:http://www.w3schools.com/php/default.asp[+Tutorial de PHP+]
-* link:http://www.tizag.com/phpT/[+Tutorial de PHP - Aprenda PHP+]
-* link:http://www.killerphp.com/[+Tutoriais de Vídeo de PHP+]
-* link:http://dev.mysql.com/tech-resources/articles/mysql_intro.html[+Iniciando o MySQL+]
-* link:http://www.killerphp.com/[+Tutorial de PHP / MySQL+]
-* link:http://www.php-mysql-tutorial.com/[+Tutorial de PHP MySQL+]
-* link:http://php.net/manual/en/book.oci8.php[+O Manual do OCI8 da Oracle+]
-* link:http://blogs.oracle.com/opal/[+Blog OCI8 do Christopher Jones+]
-
-
-link:/about/contact_form.html?to=3&subject=Feedback:%20PHP%20Wish%20List%20CRUD%202:%20Designing%20the%20Application[+Enviar Feedback neste Tutorial+]
-
-
-Para enviar comentários e sugestões, obter suporte e manter-se informado sobre os desenvolvimentos mais recentes das funcionalidades de desenvolvimento PHP do NetBeans IDE, link:../../../community/lists/top.html[+junte-se à lista de correspondência users@php.netbeans.org+].
-
-link:../../trails/php.html[+Voltar à Trilha de Aprendizado PHP+]
 
diff --git a/netbeans.apache.org/src/content/kb/docs/php/wish-list-lesson2_ru.asciidoc b/netbeans.apache.org/src/content/kb/docs/php/wish-list-lesson2_ru.asciidoc
index c862754..c019579 100644
--- a/netbeans.apache.org/src/content/kb/docs/php/wish-list-lesson2_ru.asciidoc
+++ b/netbeans.apache.org/src/content/kb/docs/php/wish-list-lesson2_ru.asciidoc
@@ -17,18 +17,6 @@
 //     under the License.
 //
 
-= Создание приложения на основе базы данных на языке PHP
-:jbake-type: tutorial
-:jbake-tags: tutorials 
-:jbake-status: published
-:icons: font
-:syntax: true
-:source-highlighter: pygments
-:toc: left
-:toc-title:
-:description: Создание приложения на основе базы данных на языке PHP - Apache NetBeans
-:keywords: Apache NetBeans, Tutorials, Создание приложения на основе базы данных на языке PHP
-
 = Урок 2. Проектирование приложения. Чтение из базы данных
 :jbake-type: tutorial
 :jbake-tags: tutorials 
@@ -41,36 +29,13 @@
 :description: Урок 2. Проектирование приложения. Чтение из базы данных - Apache NetBeans
 :keywords: Apache NetBeans, Tutorials, Урок 2. Проектирование приложения. Чтение из базы данных
 
-
-
-1. link:wish-list-tutorial-main-page.html[+Создание приложения на основе базы данных с помощью языка PHP – главная страница+]
-2. 
-Создание базы данных
-
-1. link:wish-list-lesson1.html[+Создание базы данных MySQL+]
-2. link:wish-list-oracle-lesson1.html[+Создание таблиц базы данных Oracle+]
-3. 
-*=> Проектирование приложения. Чтение из базы данных*
-
-4. link:wish-list-lesson3.html[+Создание нового пользователя приложения+]
-5. link:wish-list-lesson4.html[+Усовершенствование кода+]
-6. link:wish-list-lesson5.html[+Добавление функций безопасности. Реализация входа пользователя в приложение+]
-7. link:wish-list-lesson6.html[+Добавление к базе данных новых желаний+]
-8. link:wish-list-lesson7.html[+Обновление и удаление записей в базе данных+]
-9. link:wish-list-lesson8.html[+Усовершенствование внешнего вида приложения с использованием технологии CSS+]
-10. link:wish-list-lesson9.html[+Развертывание приложения на удаленном веб-сервере+]
-
-image::images/netbeans-stamp-80-74-73.png[title="Содержимое этой страницы применимо к IDE NetBeans 7.2, 7.3, 7.4 и 8.0"]
-
 В этом уроке рассматривается создание и настройка проекта PHP для разработки приложения, создание списка страниц в приложении и определение отношений между ними. Кроме того, основная функциональность разрабатывается и тестируется на данных, введенных в пример базы данных в уроке 1.
 
 Создаваемый в этом уроке код PHP выполняет следующие функции.
 
-1 Получает имя лица, введенного пользователем.
-
+1. Получает имя лица, введенного пользователем.
 2. Проверяет наличие этого лица в базе данных. Если лицо отсутствует в базе данных, выполняется выход с сообщением об ошибке.
-
-3 Отображение таблицы пожеланий этого лица.
+3. Отображение таблицы пожеланий этого лица.
 
 Текущий документ является частью краткого учебного курса "Создание приложения, управляемого базой данных, в IDE NetBeans для PHP".
 
@@ -121,37 +86,68 @@
 
 1. Перейдите к окну "Проекты", разверните узел проекта и узел "Файлы исходного кода", затем дважды щелкните файл  ``index.php`` . Файл  ``index.php``  откроется в основной области редактора IDE. Файл содержит шаблон для ввода кодов PHP и HTML.
 
-*Примечание. *Можно пропустить предупреждения от средства проверки HTML.
+NOTE: Можно пропустить предупреждения от средства проверки HTML.
 
-.
-2. Удалите блок PHP. Файл index.php не содержит код PHP.
+[start=2]
+. Удалите блок PHP. Файл index.php не содержит код PHP.
+
 image::images/remove-php-block.png[]
-3. Откройте "Палитру" из меню "Окно" или нажав Ctrl-Shift-8.
-4. Из раздела *Формы HTML* палитры перетащите форму в раздел <body> файла  ``index.php`` . 
+
+
+[start=3]
+. Откройте "Палитру" из меню "Окно" или нажав Ctrl-Shift-8.
+
+[start=4]
+. Из раздела *Формы HTML* палитры перетащите форму в раздел <body> файла  ``index.php`` . 
+
 image::images/form-dnd.png[]
-5. Откроется диалоговое окно "Вставить форму". В поле "Действие" введите путь к файлу, в которой форма будет передавать данные. В данном случае введите  ``wishlist.php`` . (Этот файл будет создан в том же местоположении, что и файл  ``index.php`` . См. <<createNewFile,Создание wishlist.php и тестирование приложения>>.) Выберите метод GET для передачи данных. Присвойте форме произвольное имя, например,  ``wishList`` . Нажмите кнопку "ОК" после выполнения действия.
+
+
+[start=5]
+. Откроется диалоговое окно "Вставить форму". В поле "Действие" введите путь к файлу, в которой форма будет передавать данные. В данном случае введите  ``wishlist.php`` . (Этот файл будет создан в том же местоположении, что и файл  ``index.php`` . См. <<createNewFile,Создание wishlist.php и тестирование приложения>>.) Выберите метод GET для передачи данных. Присвойте форме произвольное имя, например,  ``wishList`` . Нажмите кнопку "ОК" после выполнения действия.
+
 image::images/insert-form-dialog.png[]
 
 Теперь файл выглядит следующим образом:
 
 image::images/blank-form.png[]
-6. Между открывающим и закрывающим тегами формы введите текст "Показать список пожеланий: ".
-7. Перетащите компонент "Ввод текста" из раздела *Формы HTML* палитры в пространство после текста "Показать список пожеланий: ". Откроется диалоговое окно "Вставка ввода текста".
-8. Присвойте вводу название  ``user`` . Выберите тип ввода  ``text`` . Оставьте все поля пустыми и нажмите кнопку "ОК".
+
+
+[start=6]
+. Между открывающим и закрывающим тегами формы введите текст "Показать список пожеланий: ".
+
+[start=7]
+. Перетащите компонент "Ввод текста" из раздела *Формы HTML* палитры в пространство после текста "Показать список пожеланий: ". Откроется диалоговое окно "Вставка ввода текста".
+
+[start=8]
+. Присвойте вводу название  ``user`` . Выберите тип ввода  ``text`` . Оставьте все поля пустыми и нажмите кнопку "ОК".
+
 image::images/insert-text-input.png[]
 
 Теперь файл выглядит следующим образом:
 
 image::images/form-with-text-input.png[]
-9. Добавьте пустую сроку над тегом </form>. В эту пустую строку перетащите компонент "Кнопка" из раздела * Формы HTML* палитры.
-10. Откроется диалоговое окно "Вставить кнопку". Введите  ``Go``  в поле "Метка" и нажмите кнопку "ОК".
+
+
+[start=9]
+. Добавьте пустую сроку над тегом </form>. В эту пустую строку перетащите компонент "Кнопка" из раздела * Формы HTML* палитры.
+
+[start=10]
+. Откроется диалоговое окно "Вставить кнопку". Введите  ``Go``  в поле "Метка" и нажмите кнопку "ОК".
+
 image::images/insert-button-dialog.png[]
-11. Теперь форма выглядит так, как показанный ниже код, с одним отличием. В коде ниже атрибут  ``method``  явно указан в теге <form>. IDE NetBeans не добавил атрибут метода к используемой форме, поскольку значением по умолчанию этого атрибута является GET. Однако явное указание атрибута  ``method``  упрощает понимание кода.
+
+
+[start=11]
+. Теперь форма выглядит так, как показанный ниже код, с одним отличием. В коде ниже атрибут  ``method``  явно указан в теге <form>. IDE NetBeans не добавил атрибут метода к используемой форме, поскольку значением по умолчанию этого атрибута является GET. Однако явное указание атрибута  ``method``  упрощает понимание кода.
 
 [source,xml]
 ----
-
-<form action="wishlist.php" method="GET" name="wishList">Show wish list of: <input type="text" name="user" value=""/><input type="submit" value="Go" /></form>
+<form action="wishlist.php" method="GET" name="wishList">
+    Show wish list of: 
+    <input type="text" name="user" value=""/>
+    <input type="submit" value="Go" />
+</form>
 ----
 
 Обратите внимание на следующие элементы формы.
@@ -170,9 +166,13 @@
 
 1. В созданном проекте 'wishlist' щелкните правой кнопкой мыши узел 'Исходные файлы' и выберите 'Создать > Файл PHP' в контекстном меню. Откроется мастер создания веб-страниц PHP.
 2. Введите  ``wishlist``  в поле "Имя файла" и нажмите кнопку "Готово".
-3. Щелкните правой кнопкой мыши узел 'Источники' и выберите 'Выполнить проект' в контекстном меню или щелкните значок 'Выполнить главный проект' image::images/run-main-project-button.png[]на панели инструментов, если проект задан как главный. 
+3. Щелкните правой кнопкой мыши узел 'Источники' и выберите 'Выполнить проект' в контекстном меню или щелкните значок 'Выполнить главный проект' image:images/run-main-project-button.png[]на панели инструментов, если проект задан как главный. 
+
 image::images/index-php-works.png[]
-4. В поле "Show wish list of" введите "Tom" и нажмите "Go". Появится пустая страница со следующим URL-адресом: http://localhost:90/Lesson2/wishlist.php?user=tom. Наличие этого URL-адреса означает, что главная страница функционирует правильно.
+
+
+[start=4]
+. В поле "Show wish list of" введите "Tom" и нажмите "Go". Появится пустая страница со следующим URL-адресом: http://localhost:90/Lesson2/wishlist.php?user=tom. Наличие этого URL-адреса означает, что главная страница функционирует правильно.
 
 
 == Установка подключения и получение идентификатора автора пожеланий
@@ -183,10 +183,22 @@
 
 [source,php]
 ----
-
-<!DOCTYPE html><html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title></title></head><body><?php// put your code here?></body></html>
+<!DOCTYPE html>
+<html>
+    <head>
+        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+        <title></title>
+    </head>
+    <body>
+        <?php
+            // put your code here
+        ?>
+    </body>
+</html>
 ----
-2. Для отображения заголовка после тега открытия <body> и перед генерируемым тегом <?php введите следующий блок кода:
+
+[start=2]
+. Для отображения заголовка после тега открытия <body> и перед генерируемым тегом <?php введите следующий блок кода:
 
 [source,php]
 ----
@@ -199,31 +211,40 @@
 
 [source,php]
 ----
-
-<body>Wish List of <?php echo htmlentities($_GET["user"])."<br/>";?><?php// put your code here</body>
-
+<body>
+    Wish List of <?php echo htmlentities($_GET["user"])."<br/>"; ?>
+    <?php
+        // put your code here
+    ?>
+</body>
 ----
 
 Блок кода PHP выводит на экран данные, которые поступают посредством метода GET в поле "user". Это данные передаются со страницы  ``index.php`` , где имя владельца списка "Wish list" – "Tom" – было введено в текстовом поле "user". Повторите действия, указанные на странице <<createNewFile,Testing index.php>>, для проверки того, что wishlist.php функционирует правильно. 
+
 image::images/wishlist-php-title-works.png[]
 
-3. Удалите раздел в шаблоне блока PHP с комментарием. В этом месте введите или вставьте следующий код. Этот код открывает подключение к базе данных.
+
+[start=3]
+. Удалите раздел в шаблоне блока PHP с комментарием. В этом месте введите или вставьте следующий код. Этот код открывает подключение к базе данных.
 
 *Для базы данных MySQL*
 
 
-[source,java]
+[source,php]
 ----
-
-$con = mysqli_connect("localhost", "phpuser", "phpuserpw");if (!$con) {exit('Connect Error (' . mysqli_connect_errno() . ') '. mysqli_connect_error());}//set the default client character set mysqli_set_charset($con, 'utf-8');
+$con = mysqli_connect("localhost", "phpuser", "phpuserpw");
+if (!$con) {
+    exit('Connect Error (' . mysqli_connect_errno() . ') '. mysqli_connect_error());
+}
+//set the default client character 
+set mysqli_set_charset($con, 'utf-8');
 ----
 
 *Для базы данных Oracle*
 
 
-[source,java]
+[source,php]
 ----
-
 $con = oci_connect("phpuser", "phpuserpw", "localhost/XE", "AL32UTF8");
 if (!$con) {
     $m = oci_error();
@@ -233,29 +254,37 @@
 
 В соответствии с кодом производится попытка подключения к базе данных и выдается сообщение об ошибке в случае неудачи.
 
-*Примечание для пользователей базы данных Oracle.* Может потребоваться изменить подключение к базе данных в команде  ``oci_connect`` . Стандартный синтаксис — "hostname/service name". Подключение к базе данных Oracle XE в этом фрагменте — "localhost/XE" в соответствии с этим синтаксисом.
+NOTE:  Может потребоваться изменить подключение к базе данных в команде  ``oci_connect`` . Стандартный синтаксис — "hostname/service name". Подключение к базе данных Oracle XE в этом фрагменте — "localhost/XE" в соответствии с этим синтаксисом.
 
-*Примечание* Автозавершение кода IDE NetBeans можно использовать для функций mysqli или OCI8.
+NOTE:  Автозавершение кода IDE NetBeans можно использовать для функций mysqli или OCI8.
 
 image::images/codecompletion.png[]image::images/codecompletion-oci.png[]
-4. 
+
+
+[start=4]
+. 
 Под фрагментом кода, описывающим подключение к базе данных, в том же блоке PHP укажите следующий код. Этот код получает идентификатор автора пожеланий, чей список был запрошен. Если автор пожеланий отсутствует в базе данных, код уничтожает/завершает процесс и отображает сообщение об ошибке.
 
 *Для базы данных MySQL*
 
 
-[source,java]
+[source,php]
 ----
-
-mysqli_select_db($con, "wishlist");$user = mysqli_real_escape_string($con, htmlentities($_GET["user"]));$wisher = mysqli_query($con, "SELECT id FROM wishers WHERE name='" . $user . "'");if (mysqli_num_rows($wisher) < 1) {
+mysqli_select_db($con, "wishlist");
+$user = mysqli_real_escape_string($con, htmlentities($_GET["user"]));
+$wisher = mysqli_query($con, "SELECT id FROM wishers WHERE name='" . $user . "'");
+if (mysqli_num_rows($wisher) < 1) {
     exit("The person " . htmlentities($_GET["user"]) . " is not found. Please check the spelling and try again");
-}$row = mysqli_fetch_row($wisher);$wisherID = $row[0];mysqli_free_result($wisher);
+}
+$row = mysqli_fetch_row($wisher);
+$wisherID = $row[0];
+mysqli_free_result($wisher);
 ----
 
 *Для базы данных Oracle.* (Имейте в виду, что oci8 не имеет эквиваленту  ``mysqli_num_rows`` )
 
 
-[source,java]
+[source,php]
 ----
 
 $query = "SELECT id FROM wishers WHERE NAME = :user_bv";
@@ -286,7 +315,7 @@
 
 Наконец, освобождается результат mysqli или оператор OCI8. Для физического закрытия подключения необходимо освободить все ресурсы, использующие подключение. В противном случае внутренняя система подсчета ссылок PHP сохранит нижележащее подключение к базе данным открытым, даже если  ``$con``  неприменимо после вызова  ``mysqli_close()``  или  ``oci_close()`` .
 
-*Примечание по безопасности.* Для MySQL параметр  ``htmlentities($_GET["user"])``  используется с с escape-символом для предотвращения SQL-инъекций. См. link:http://en.wikipedia.org/wiki/SQL_injection[+статью энциклопедии Wikipedia о введении SQL +] и link:http://us3.php.net/mysql_real_escape_string[+документацию mysql_real_escape_string+]. Несмотря на то, что в контексте этого руководства риск возникновения опасных атак внедрения SQL маловероятен, рекомендуется исключить из участия в запросах MySQL такие строки, которые могли бы быть подвержены подобной атаке. OCI8 позволяет избежать этого благодаря переменным привязки.
+NOTE:  Для MySQL параметр  ``htmlentities($_GET["user"])``  используется с с escape-символом для предотвращения SQL-инъекций. См. link:http://en.wikipedia.org/wiki/SQL_injection[+статью энциклопедии Wikipedia о введении SQL +] и link:http://us3.php.net/mysql_real_escape_string[+документацию mysql_real_escape_string+]. Несмотря на то, что в контексте этого руководства риск возникновения опасных атак внедрения SQL маловероятен, рекомендуется исключить из участия в запросах MySQL такие строки, которые могли бы быть подвержены подобной атаке. OCI8 позволяет избежать этого благодаря переменным привязки.
 
 На данный момент блок PHP готов. При использовании базы данных MySQL файл  ``wishlist.php``  теперь выглядит следующим образом.
 
@@ -362,16 +391,23 @@
 </table>
 ----
 Тег </table> закрывает таблицу.
-2. 
-Введите следующий код блока PHP над закрывающим тегом </table>.
+
+[start=2]
+. Введите следующий код блока PHP над закрывающим тегом </table>.
 
 *Для базы данных MySQL*
 
 
 [source,php]
 ----
-
-<?php$result = mysqli_query($con, "SELECT description, due_date FROM wishes WHERE wisher_id=" . $wisherID);while ($row = mysqli_fetch_array($result)) {echo "<tr><td>" . htmlentities($row["description"]) . "</td>";echo "<td>" . htmlentities($row["due_date"]) . "</td></tr>\n";}mysqli_free_result($result);mysqli_close($con);?>
+<?php
+    $result = mysqli_query($con, "SELECT description, due_date FROM wishes WHERE wisher_id=" . $wisherID);
+    while ($row = mysqli_fetch_array($result)) {
+        echo "<tr><td>" . htmlentities($row["description"]) . "</td>";
+        echo "<td>" . htmlentities($row["due_date"]) . "</td></tr>\n";
+    }
+    mysqli_free_result($result);mysqli_close($con);
+?>
 ----
 
 *Для базы данных Oracle*
@@ -379,8 +415,18 @@
 
 [source,php]
 ----
-
-<?php$query = "SELECT description, due_date FROM wishes WHERE wisher_id = :id_bv";$stid = oci_parse($con, $query);oci_bind_by_name($stid, ":id_bv", $wisherID);oci_execute($stid);while ($row = oci_fetch_array($stid)) {echo "<tr><td>" . htmlentities($row["DESCRIPTION"]) . "</td>";echo "<td>" . htmlentities($row["DUE_DATE"]) . "</td></tr>\n";}oci_free_statement($stid);oci_close($con);?>
+<?php
+    $query = "SELECT description, due_date FROM wishes WHERE wisher_id = :id_bv";
+    $stid = oci_parse($con, $query);
+    oci_bind_by_name($stid, ":id_bv", $wisherID);
+    oci_execute($stid);
+	while ($row = oci_fetch_array($stid)) {
+        echo "<tr><td>" . htmlentities($row["DESCRIPTION"]) . "</td>";
+	    echo "<td>" . htmlentities($row["DUE_DATE"]) . "</td></tr>\n";
+	}
+    oci_free_statement($stid);
+	oci_close($con);
+?>
 ----
 
 Внутри кода:
@@ -393,7 +439,10 @@
 
 *Предостережение. *Убедитесь, что названия полей базы данных введены точно так, как они указаны при создании таблицы базы данных. Для Oracle по умолчанию названия столбцов возвращаются в верхнем регистре.
 
-3. Для тестирования приложения выполните проект, как описано в разделе <<createNewFile,Тестирование index.php>>.
+
+[start=3]
+. Для тестирования приложения выполните проект, как описано в разделе <<createNewFile,Тестирование index.php>>.
+
 image::images/wishlist-php-works.png[]
 
 
@@ -413,26 +462,3 @@
 link:wish-list-tutorial-main-page.html[+Назад на главную страницу учебного курса+]
 
 
-== Полезные ссылки
-
-Дополнительные сведения об использовании HTML, PHP и MySQL или базы данных Oracle доступны в следующих материалах.
-
-* link:http://www.w3schools.com/html/[+Учебный курс по HTML+]
-* link:http://www.htmlcodetutorial.com/[+Учебный курс по коду HTML – справочное руководство с описанием тегов HTML+]
-* link:http://www.w3schools.com/php/default.asp[+Учебный курс по PHP+]
-* link:http://www.tizag.com/phpT/[+Учебный курс по PHP – изучение PHP+]
-* link:http://www.killerphp.com/[+Учебные видеокурсы по PHP+]
-* link:http://dev.mysql.com/tech-resources/articles/mysql_intro.html[+Начало работы с MySQL+]
-* link:http://www.killerphp.com/[+Учебный курс по PHP / MySQL+]
-* link:http://www.php-mysql-tutorial.com/[+Учебный курс по PHP / MySQL+]
-* link:http://php.net/manual/en/book.oci8.php[+Руководство по Oracle OCI8+]
-* link:http://blogs.oracle.com/opal/[+Блог по OCI8 Кристофера Джонса+]
-
-
-link:/about/contact_form.html?to=3&subject=Feedback:%20PHP%20Wish%20List%20CRUD%202:%20Designing%20the%20Application[+Отправить отзыв по этому учебному курсу+]
-
-
-Для отправки комментариев и предложений, получения поддержки и новостей о последних разработках, связанных с PHP IDE NetBeans link:../../../community/lists/top.html[+присоединяйтесь к списку рассылки users@php.netbeans.org+].
-
-link:../../trails/php.html[+Возврат к учебной карте PHP+]
-
diff --git a/netbeans.apache.org/src/content/kb/docs/php/wish-list-lesson2_zh_CN.asciidoc b/netbeans.apache.org/src/content/kb/docs/php/wish-list-lesson2_zh_CN.asciidoc
index e0a8a92..2e54de3 100644
--- a/netbeans.apache.org/src/content/kb/docs/php/wish-list-lesson2_zh_CN.asciidoc
+++ b/netbeans.apache.org/src/content/kb/docs/php/wish-list-lesson2_zh_CN.asciidoc
@@ -17,18 +17,6 @@
 //     under the License.
 //
 
-= 使用 PHP 创建数据库驱动的应用程序
-:jbake-type: tutorial
-:jbake-tags: tutorials 
-:jbake-status: published
-:icons: font
-:syntax: true
-:source-highlighter: pygments
-:toc: left
-:toc-title:
-:description: 使用 PHP 创建数据库驱动的应用程序 - Apache NetBeans
-:keywords: Apache NetBeans, Tutorials, 使用 PHP 创建数据库驱动的应用程序
-
 = 第 2 课:设计应用程序。从数据库读取数据
 :jbake-type: tutorial
 :jbake-tags: tutorials 
@@ -41,35 +29,12 @@
 :description: 第 2 课:设计应用程序。从数据库读取数据 - Apache NetBeans
 :keywords: Apache NetBeans, Tutorials, 第 2 课:设计应用程序。从数据库读取数据
 
-
-
-1. link:wish-list-tutorial-main-page.html[+使用 PHP 创建数据库驱动的应用程序 - 主页+]
-2. 
-创建数据库
-
-1. link:wish-list-lesson1.html[+创建 MySQL 数据库+]
-2. link:wish-list-oracle-lesson1.html[+创建 Oracle 数据库表+]
-3. 
-*=> 设计应用程序。从数据库读取数据*
-
-4. link:wish-list-lesson3.html[+创建新的应用程序用户+]
-5. link:wish-list-lesson4.html[+优化代码+]
-6. link:wish-list-lesson5.html[+添加安全功能。实现应用程序用户登录+]
-7. link:wish-list-lesson6.html[+在数据库中添加新的愿望+]
-8. link:wish-list-lesson7.html[+更新和删除数据库中的条目+]
-9. link:wish-list-lesson8.html[+使用 CSS 技术改进应用程序的外观+]
-10. link:wish-list-lesson9.html[+将应用程序部署到远程 Web 服务器+]
-
-image::images/netbeans-stamp-80-74-73.png[title="此页上的内容适用于 NetBeans IDE 7.2、7.3、7.4 和 8.0"]
-
 在本课中,将创建和配置 PHP 项目以开发应用程序,在应用程序中创建一组页面,然后定义它们之间的关系。您还会开发基本应用程序功能,并针对在第 1 课的样例数据库中输入的数据测试该功能。
 
 本课中编写的 PHP 代码执行以下功能:
 
 1. 获取用户所键入的个人名字。
-
 2. 检查此人是否确实在数据库中。如果此人不在数据库中,则会退出并显示错误消息。
-
 3. 显示此人的愿望表。
 
 当前文档是“在适用于 PHP 的 NetBeans IDE 中创建数据库驱动的应用程序”教程的一部分。
@@ -121,37 +86,69 @@
 
 1. 切换到 "Projects"(项目)窗口,展开项目节点和 "Source Files"(源文件)节点,然后双击  ``index.php``  文件。将在主 IDE 编辑器区域中打开  ``index.php``  文件。该文件包含一个用于输入 HTML 和 PHP 代码的模板。
 
-*注:*您可以忽略来自 HTML 验证器的警告。
+NOTE: 您可以忽略来自 HTML 验证器的警告。
 
-.
-2. 删除 PHP 块。index.php 文件将不包含任何 PHP 代码。
+
+[start=2]
+. 删除 PHP 块。index.php 文件将不包含任何 PHP 代码。
+
 image::images/remove-php-block.png[]
-3. 从 "Window"(窗口)菜单中打开 "Palette"(组件面板),也可以按 Ctrl-Shift-8 组合键打开。
-4. 从 "Palette"(组件面板)的 *HTML Forms*(HTML 窗体)部分中,将一个窗体拖放至  ``index.php``  的 <body> 部分中。 
+
+
+[start=3]
+. 从 "Window"(窗口)菜单中打开 "Palette"(组件面板),也可以按 Ctrl-Shift-8 组合键打开。
+
+[start=4]
+. 从 "Palette"(组件面板)的 *HTML Forms*(HTML 窗体)部分中,将一个窗体拖放至  ``index.php``  的 <body> 部分中。 
+
 image::images/form-dnd.png[]
-5. "Insert Form"(插入窗体)对话框即打开。在 "Action"(操作)字段中,键入窗体将数据传输到的文件的路径。在本示例中,键入  ``wishlist.php`` 。(将在与  ``index.php``  相同的位置中创建该文件。请参见<<createNewFile,创建 wishlist.php 和测试应用程序>>。)选择 "GET" 方法以传输数据。为窗体指定任意名称,例如  ``wishList`` 。完成后单击 "OK"(确定)。
+
+
+[start=5]
+. "Insert Form"(插入窗体)对话框即打开。在 "Action"(操作)字段中,键入窗体将数据传输到的文件的路径。在本示例中,键入  ``wishlist.php`` 。(将在与  ``index.php``  相同的位置中创建该文件。请参见<<createNewFile,创建 wishlist.php 和测试应用程序>>。)选择 "GET" 方法以传输数据。为窗体指定任意名称,例如  ``wishList`` 。完成后单击 "OK"(确定)。
+
 image::images/insert-form-dialog.png[]
 
 现在,该文件如下所示:
 
 image::images/blank-form.png[]
-6. 在窗体的开头和结尾标记之间,键入 "Show wish list of: " 文本。
-7. 从 "Palette"(组件面板)的 *HTML Forms*(HTML 窗体)部分中,将一个文本输入组件拖放至 "Show wish list of: " 文本后面的空白区域中。"Insert Text Input"(插入文本输入)对话框打开。
-8. 将输入命名为  ``user`` 。选择输入类型  ``text`` (文本)。将所有其他字段保留空白,然后单击 "OK"(确定)。
+
+
+[start=6]
+. 在窗体的开头和结尾标记之间,键入 "Show wish list of: " 文本。
+
+[start=7]
+. 从 "Palette"(组件面板)的 *HTML Forms*(HTML 窗体)部分中,将一个文本输入组件拖放至 "Show wish list of: " 文本后面的空白区域中。"Insert Text Input"(插入文本输入)对话框打开。
+
+[start=8]
+. 将输入命名为  ``user`` 。选择输入类型  ``text`` (文本)。将所有其他字段保留空白,然后单击 "OK"(确定)。
+
 image::images/insert-text-input.png[]
 
 现在,该文件如下所示:
 
 image::images/form-with-text-input.png[]
-9. 在 </form> 标记上面添加一个空行。从 "Palette"(组件面板)的 *HTML Forms*(HTML 窗体)部分中,将一个 "Button"(按钮)组件拖放至该空行中。
-10. "Insert Button"(插入按钮)对话框打开。在 "Label"(标签)字段中键入  ``Go`` ,然后单击 "OK"(确定)。
+
+
+[start=9]
+. 在 </form> 标记上面添加一个空行。从 "Palette"(组件面板)的 *HTML Forms*(HTML 窗体)部分中,将一个 "Button"(按钮)组件拖放至该空行中。
+
+[start=10]
+. "Insert Button"(插入按钮)对话框打开。在 "Label"(标签)字段中键入  ``Go`` ,然后单击 "OK"(确定)。
+
 image::images/insert-button-dialog.png[]
-11. 现在,该窗体类似于下面的代码,但有一点不同。在下面的代码中,<form> 标记中的  ``method``  属性是显式的。NetBeans IDE 没有在窗体中添加 method 属性,因为 GET 是该属性的默认值。不过,如果  ``method``  属性是显式的,您可以更轻松地理解代码。
+
+
+[start=11]
+. 现在,该窗体类似于下面的代码,但有一点不同。在下面的代码中,<form> 标记中的  ``method``  属性是显式的。NetBeans IDE 没有在窗体中添加 method 属性,因为 GET 是该属性的默认值。不过,如果  ``method``  属性是显式的,您可以更轻松地理解代码。
 
 [source,xml]
 ----
-
-<form action="wishlist.php" method="GET" name="wishList">Show wish list of: <input type="text" name="user" value=""/><input type="submit" value="Go" /></form>
+<form action="wishlist.php" method="GET" name="wishList">
+    Show wish list of: 
+    <input type="text" name="user" value=""/>
+    <input type="submit" value="Go" />
+</form>
 ----
 
 请注意以下窗体元素:
@@ -170,9 +167,13 @@
 
 1. 在创建的 "wishlist" 项目中,在 "Source Files"(源文件)节点上单击鼠标右键,然后从上下文菜单中选择 "New"(新建)> "PHP Web Page"(PHP Web 页)。此时将打开 "New PHP Web Page"(新建 PHP Web 页)向导。
 2. 在 "File Name"(文件名)字段中键入  ``wishlist`` ,然后按 "Finish"(完成)。
-3. 在 "Sources"(源)节点上单击鼠标右键并从上下文菜单中选择 "Run Project"(运行项目),或者单击工具栏上的 "Run Main Project"(运行主项目)图标 image::images/run-main-project-button.png[](如果您将项目设置为了“主项目”)。
+3. 在 "Sources"(源)节点上单击鼠标右键并从上下文菜单中选择 "Run Project"(运行项目),或者单击工具栏上的 "Run Main Project"(运行主项目)图标 image:images/run-main-project-button.png[](如果您将项目设置为了“主项目”)。
+
 image::images/index-php-works.png[]
-4. 在 "Show wish list of:" 编辑框中,输入 Tom,然后单击 "Go"。将显示一个具有以下 URL 的空白页:http://localhost:90/Lesson2/wishlist.php?user=tom。该 URL 表示主页正常工作。
+
+
+[start=4]
+. 在 "Show wish list of:" 编辑框中,输入 Tom,然后单击 "Go"。将显示一个具有以下 URL 的空白页:http://localhost:90/Lesson2/wishlist.php?user=tom。该 URL 表示主页正常工作。
 
 
 == 建立连接和获取许愿者 ID
@@ -183,10 +184,22 @@
 
 [source,php]
 ----
-
-<!DOCTYPE html><html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title></title></head><body><?php// put your code here?></body></html>
+<!DOCTYPE html>
+<html>
+    <head>
+        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+        <title></title>
+    </head>
+    <body>
+        <?php
+            // put your code here
+        ?>
+    </body>
+</html>
 ----
-2. 要显示标题,请在紧靠起始 <body> 标记后面以及生成的 <?php 标记前面的位置输入以下代码块:
+
+[start=2]
+. 要显示标题,请在紧靠起始 <body> 标记后面以及生成的 <?php 标记前面的位置输入以下代码块:
 
 [source,php]
 ----
@@ -199,31 +212,41 @@
 
 [source,php]
 ----
-
-<body>Wish List of <?php echo htmlentities($_GET["user"])."<br/>";?><?php// put your code here</body>
+<body>
+    Wish List of <?php echo htmlentities($_GET["user"])."<br/>"; ?>
+    <?php
+        // put your code here
+    ?>
+</body>
 
 ----
 
 PHP 代码块显示通过 "user" 字段中的 GET 方法接收的数据。在 "user" 文本字段中输入愿望列表所有者 Tom 的名字时,将从  ``index.php``  中传输该数据。重复<<createNewFile,测试 index.php>> 中的步骤,以查看 wishlist.php 是否正常工作。 
+
 image::images/wishlist-php-title-works.png[]
 
-3. 在模板 PHP 块中删除注释部分。在该位置键入或粘贴以下代码。该代码打开数据库连接。
+
+[start=3]
+. 在模板 PHP 块中删除注释部分。在该位置键入或粘贴以下代码。该代码打开数据库连接。
 
 *对于 MySQL 数据库:*
 
 
-[source,java]
+[source,php]
 ----
-
-$con = mysqli_connect("localhost", "phpuser", "phpuserpw");if (!$con) {exit('Connect Error (' . mysqli_connect_errno() . ') '. mysqli_connect_error());}//set the default client character set mysqli_set_charset($con, 'utf-8');
+$con = mysqli_connect("localhost", "phpuser", "phpuserpw");
+if (!$con) {
+    exit('Connect Error (' . mysqli_connect_errno() . ') '. mysqli_connect_error());
+}
+//set the default client character 
+set mysqli_set_charset($con, 'utf-8');
 ----
 
 *对于 Oracle 数据库:*
 
 
-[source,java]
+[source,php]
 ----
-
 $con = oci_connect("phpuser", "phpuserpw", "localhost/XE", "AL32UTF8");
 if (!$con) {
     $m = oci_error();
@@ -235,27 +258,34 @@
 
 *Oracle 数据库用户注意事项:*您可能需要在  ``oci_connect``  命令中修改数据库连接。标准语法为 "hostname/service name"。按照该语法,此代码片段中的 Oracle XE 数据库连接是 "localhost/XE"。
 
-*注:*您可以使用 NetBeans IDE 的代码完成功能完成 mysqli 或 OCI8 函数。
+NOTE: 您可以使用 NetBeans IDE 的代码完成功能完成 mysqli 或 OCI8 函数。
 
 image::images/codecompletion.png[]image::images/codecompletion-oci.png[]
-4. 
-在打开数据库连接的代码下面,在同一 PHP 块中键入或粘贴以下代码。该代码检索请求其愿望列表的许愿者的 ID。如果许愿者不在数据库中,代码将终止/退出该进程,然后显示一条错误消息。
+
+
+[start=4]
+.  在打开数据库连接的代码下面,在同一 PHP 块中键入或粘贴以下代码。该代码检索请求其愿望列表的许愿者的 ID。如果许愿者不在数据库中,代码将终止/退出该进程,然后显示一条错误消息。
 
 *对于 MySQL 数据库:*
 
 
-[source,java]
+[source,php]
 ----
-
-mysqli_select_db($con, "wishlist");$user = mysqli_real_escape_string($con, htmlentities($_GET["user"]));$wisher = mysqli_query($con, "SELECT id FROM wishers WHERE name='" . $user . "'");if (mysqli_num_rows($wisher) < 1) {
+mysqli_select_db($con, "wishlist");
+$user = mysqli_real_escape_string($con, htmlentities($_GET["user"]));
+$wisher = mysqli_query($con, "SELECT id FROM wishers WHERE name='" . $user . "'");
+if (mysqli_num_rows($wisher) < 1) {
     exit("The person " . htmlentities($_GET["user"]) . " is not found. Please check the spelling and try again");
-}$row = mysqli_fetch_row($wisher);$wisherID = $row[0];mysqli_free_result($wisher);
+}
+$row = mysqli_fetch_row($wisher);
+$wisherID = $row[0];
+mysqli_free_result($wisher);
 ----
 
 *对于 Oracle 数据库:*(请注意,oci8 没有等效的  ``mysqli_num_rows`` )
 
 
-[source,java]
+[source,php]
 ----
 
 $query = "SELECT id FROM wishers WHERE NAME = :user_bv";
@@ -361,17 +391,24 @@
     </tr>
 </table>
 ----
-</table> 标记用于结束表。
-2. 
-在结束 </table> 标记上面,输入以下 PHP 代码块。
+`</table>` 标记用于结束表。
+
+[start=2]
+.  在结束 </table> 标记上面,输入以下 PHP 代码块。
 
 *对于 MySQL 数据库:*
 
 
 [source,php]
 ----
-
-<?php$result = mysqli_query($con, "SELECT description, due_date FROM wishes WHERE wisher_id=" . $wisherID);while ($row = mysqli_fetch_array($result)) {echo "<tr><td>" . htmlentities($row["description"]) . "</td>";echo "<td>" . htmlentities($row["due_date"]) . "</td></tr>\n";}mysqli_free_result($result);mysqli_close($con);?>
+<?php
+    $result = mysqli_query($con, "SELECT description, due_date FROM wishes WHERE wisher_id=" . $wisherID);
+    while ($row = mysqli_fetch_array($result)) {
+        echo "<tr><td>" . htmlentities($row["description"]) . "</td>";
+        echo "<td>" . htmlentities($row["due_date"]) . "</td></tr>\n";
+    }
+    mysqli_free_result($result);mysqli_close($con);
+?>
 ----
 
 *对于 Oracle 数据库:*
@@ -379,8 +416,18 @@
 
 [source,php]
 ----
-
-<?php$query = "SELECT description, due_date FROM wishes WHERE wisher_id = :id_bv";$stid = oci_parse($con, $query);oci_bind_by_name($stid, ":id_bv", $wisherID);oci_execute($stid);while ($row = oci_fetch_array($stid)) {echo "<tr><td>" . htmlentities($row["DESCRIPTION"]) . "</td>";echo "<td>" . htmlentities($row["DUE_DATE"]) . "</td></tr>\n";}oci_free_statement($stid);oci_close($con);?>
+<?php
+    $query = "SELECT description, due_date FROM wishes WHERE wisher_id = :id_bv";
+    $stid = oci_parse($con, $query);
+    oci_bind_by_name($stid, ":id_bv", $wisherID);
+    oci_execute($stid);
+	while ($row = oci_fetch_array($stid)) {
+        echo "<tr><td>" . htmlentities($row["DESCRIPTION"]) . "</td>";
+	    echo "<td>" . htmlentities($row["DUE_DATE"]) . "</td></tr>\n";
+	}
+    oci_free_statement($stid);
+	oci_close($con);
+?>
 ----
 
 在代码中:
@@ -393,7 +440,10 @@
 
 *警告:*确保键入的数据库字段名称与创建数据库表期间指定的名称完全相同。对于 Oracle,默认返回大写的列名。
 
-3. 要测试应用程序,请按<<createNewFile,测试 index.php>> 部分所述运行项目。
+
+[start=3]
+. 要测试应用程序,请按<<createNewFile,测试 index.php>> 部分所述运行项目。
+
 image::images/wishlist-php-works.png[]
 
 
@@ -413,26 +463,3 @@
 link:wish-list-tutorial-main-page.html[+返回到教程主页+]
 
 
-== 有用链接
-
-可以在下面找到有关使用 HTML、PHP 和 MySQL 或 Oracle 数据库的详细信息:
-
-* link:http://www.w3schools.com/html/[+HTML 教程+]
-* link:http://www.htmlcodetutorial.com/[+HTML 代码教程 - 提供 HTML 标记帮助的免费参考指南+]
-* link:http://www.w3schools.com/php/default.asp[+PHP 教程+]
-* link:http://www.tizag.com/phpT/[+PHP 教程 - 了解 PHP+]
-* link:http://www.killerphp.com/[+PHP 视频教程+]
-* link:http://dev.mysql.com/tech-resources/articles/mysql_intro.html[+MySQL 入门指南+]
-* link:http://www.killerphp.com/[+PHP/MySQL 教程+]
-* link:http://www.php-mysql-tutorial.com/[+PHP MySQL 教程+]
-* link:http://php.net/manual/en/book.oci8.php[+Oracle OCI8 手册+]
-* link:http://blogs.oracle.com/opal/[+Christopher Jones 的 OCI8 博客+]
-
-
-link:/about/contact_form.html?to=3&subject=Feedback:%20PHP%20Wish%20List%20CRUD%202:%20Designing%20the%20Application[+发送有关此教程的反馈意见+]
-
-
-要发送意见和建议、获得支持以及随时了解 NetBeans IDE PHP 开发功能的最新开发情况,请link:../../../community/lists/top.html[+加入 users@php.netbeans.org 邮件列表+]。
-
-link:../../trails/php.html[+返回至 PHP 学习资源+]
-
diff --git a/netbeans.apache.org/src/content/kb/docs/php/wish-list-lesson3.asciidoc b/netbeans.apache.org/src/content/kb/docs/php/wish-list-lesson3.asciidoc
index 7c1f19c..4290245 100644
--- a/netbeans.apache.org/src/content/kb/docs/php/wish-list-lesson3.asciidoc
+++ b/netbeans.apache.org/src/content/kb/docs/php/wish-list-lesson3.asciidoc
@@ -17,18 +17,6 @@
 //     under the License.
 //
 
-= Creating a Database Driven Application With PHP
-:jbake-type: tutorial
-:jbake-tags: tutorials 
-:jbake-status: published
-:syntax: true
-:icons: font
-:source-highlighter: pygments
-:toc: left
-:toc-title:
-:description: Creating a Database Driven Application With PHP - Apache NetBeans
-:keywords: Apache NetBeans, Tutorials, Creating a Database Driven Application With PHP
-
 = Lesson 3: Creating a New Application User
 :jbake-type: tutorial
 :jbake-tags: tutorials 
@@ -42,54 +30,20 @@
 :keywords: Apache NetBeans, Tutorials, Lesson 3: Creating a New Application User
 
 
-Tutorial contents:
-
-1. link:wish-list-tutorial-main-page.html[+Creating a Database Driven Application With PHP - Main page+]
-2. 
-Creating the Database
-
-1. link:wish-list-lesson1.html[+Creating a MySQL Database+]
-2. link:wish-list-oracle-lesson1.html[+Creating Oracle Database Tables+]
-3. 
-link:wish-list-lesson2.html[+Designing the Application. Reading from the Database+]
-
-4. *=> Creating a New Application User*
-
-* <<previousLessonSourceCode,Application Source Code from the Previous Lesson>>
-* <<addLinkNewWisher,Adding a Link to Start Creating a New Wisher>>
-* <<implementCreateNewWisher,Creating New PHP Web Pages>>
-* <<inputFormNewWisher,Adding an HTML Form for Entering the Data of a New Wisher>>
-* <<validatinDataBeforeAddingToDatabase,Validating Data and Adding It to the Database>>
-* <<errorMessagesInInputForm,Displaying Error Messages in the Input Form>>
-* <<testCreateNewWisherFunctionality,Testing the Create New Wisher Functionality>>
-* <<lessonResultSourceCode,Application Source Code after the Current Lesson Is Completed>>
-5. link:wish-list-lesson4.html[+Optimizing the Code+]
-6. link:wish-list-lesson5.html[+Adding Security. Implementing Application User Logon+]
-7. link:wish-list-lesson6.html[+Adding a New Wish to the Database+]
-8. link:wish-list-lesson7.html[+Updating and Deleting Entries in the Database+]
-9. link:wish-list-lesson8.html[+Making the Application Look Better Using the CSS Technology+]
-10. link:wish-list-lesson9.html[+Deploying the Application on a Remote Web Server+]
-
-image::images/netbeans-stamp-80-74-73.png[title="Content on this page applies to the NetBeans IDE 7.2, 7.3, 7.4 and 8.0"]
-
 In this lesson you expand the application with the Create a New Wisher functionality.
 
-The implementation will affect the index.php file and two new files will be created named  ``createNewWisher.php``  and  ``editWishList.php`` .
+The implementation will affect the index.php file and two new files will be created named  `createNewWisher.php`  and  `editWishList.php` .
 
 The Create a New Wisher use case consists of three steps:
 
 1. <<addLinkNewWisher,The user opens the front page index.php and clicks the link to register>>.
-
 2. <<implementCreateNewWisher,The user switches to the createNewWisher.php page for creating a new wisher>>.
-
 3. After creating a new wisher, the user switches to editWishList.php, where he creates a wish list for the user.
 
 image::images/page-flow-diagram-l3.png[]
 
 The current document is a part of the Creating a Database Application in the NetBeans IDE for PHP tutorial.
 
-
-
 == Application Source Code from the Previous Lesson
 
 MySQL users: Click link:https://netbeans.org/files/documents/4/1928/lesson2.zip[+here+] to download the source code that reflects the project state after the previous lesson is completed.
@@ -99,10 +53,10 @@
 
 == Adding a Link to Start Creating a New Wisher
 
-Open  ``index.php`` . Add a blank line below the closing </form> tag. In that blank line, enter the following code block:
+Open  `index.php` . Add a blank line below the closing </form> tag. In that blank line, enter the following code block:
 
 
-[source,xml]
+[source,html]
 ----
 
  <br>Still don't have a wish list?! <a href="createNewWisher.php">Create now</a>
@@ -110,27 +64,27 @@
 
 Where:
 
-*  ``Still don't have a wish list?! ``  is the text that will be displayed on the page next to the link.
-*  ``<a href="createNewWisher.php"></a>``  is the code that implements a link that opens the createNewWisher.php page.
-*  ``Create now``  is the text that will be displayed as a link.
+*  `Still don't have a wish list?! `  is the text that will be displayed on the page next to the link.
+*  `<a href="createNewWisher.php"></a>`  is the code that implements a link that opens the createNewWisher.php page.
+*  `Create now`  is the text that will be displayed as a link.
 
 
 == Creating New PHP Web Pages
 
 Create two new PHP web pages in your project's Source Files, as link:wish-list-lesson2.html#createNewFile[+described+] in Lesson 2.
 
-*  ``createNewWisher.php`` 
-*  ``editWishList.php`` 
+*  `createNewWisher.php` 
+*  `editWishList.php` 
 
-In  ``editWishList.php`` , add the text "Hello!" to the HTML body and otherwise leave it with its default content. You will modify this file in later lessons, but you need it to exist now because  ``createNewWisher.php``  references it. For the remainder of this lesson, you modify  ``createNewWisher.php`` .
+In  `editWishList.php` , add the text "Hello!" to the HTML body and otherwise leave it with its default content. You will modify this file in later lessons, but you need it to exist now because  `createNewWisher.php`  references it. For the remainder of this lesson, you modify  `createNewWisher.php` .
 
 
 == Adding an HTML Form for Entering the Data of a New Wisher
 
-Type or paste the following HTML block into  ``createNewWisher.php`` , beneath the PHP block:
+Type or paste the following HTML block into  `createNewWisher.php` , beneath the PHP block:
 
 
-[source,xml]
+[source,html]
 ----
 
 <html>
@@ -142,24 +96,28 @@
 </html>
 ----
 
-NOTE: The  ``password``  type is a special type of a text field where characters are replaced with asterisks. The code presents an link:wish-list-lesson3.html#htmlForm[+HTML form+] for a user to enter the name and password of the new wisher in the text fields. When the user clicks the "Register" button, the entered data is transferred for validation to the same page,  ``createNewWisher.php`` .
+NOTE: The  `password`  type is a special type of a text field where characters are replaced with asterisks. The code presents an link:wish-list-lesson3.html#htmlForm[+HTML form+] for a user to enter the name and password of the new wisher in the text fields. When the user clicks the "Register" button, the entered data is transferred for validation to the same page,  `createNewWisher.php` .
 
-*Note: *You can ignore warnings from the HTML validator.
+NOTE: You can ignore warnings from the HTML validator.
 
 
 === Validating Data and Adding It to the Database
 
-In this section you add PHP code to  ``createNewWisher.php`` . Add this code to the PHP block at the top of the file. The PHP block must be above *all* HTML code, empty lines, or whitespace. The position of the PHP code block is important to enable correct functioning of the redirection statement. Within the PHP block, type or paste the code blocks described below in this section, in the order they are written.
+In this section you add PHP code to  `createNewWisher.php` . Add this code to the PHP block at the top of the file. The PHP block must be above *all* HTML code, empty lines, or whitespace. The position of the PHP code block is important to enable correct functioning of the redirection statement. Within the PHP block, type or paste the code blocks described below in this section, in the order they are written.
 
 *Add the following code to validate data:*
 
 1. Initialize variables. The first variables pass database credentials and the others are the variables that will be used in the PHP operations.
 
-[source,java]
+[source,php]
 ----
 
-/** database connection credentials */$dbHost="localhost"; //on MySql
-$dbXeHost="localhost/XE"; $dbUsername="phpuser";$dbPassword="phpuserpw";
+/** database connection credentials */
+$dbHost="localhost"; 
+//on MySql
+$dbXeHost="localhost/XE"; 
+$dbUsername="phpuser";
+$dbPassword="phpuserpw";
 
 /** other variables */
 $userNameIsUnique = true;
@@ -170,9 +128,11 @@
 
 			
 ----
-2. Below the variables, add an  ``if `` clause. The parameter of the  ``if``  clause checks that the page was requested from itself via the POST method. If not, the further validations are not performed and the page is shown with empty fields as described above.
 
-[source,java]
+[start=2]
+. Below the variables, add an  `if ` clause. The parameter of the  `if`  clause checks that the page was requested from itself via the POST method. If not, the further validations are not performed and the page is shown with empty fields as described above.
+
+[source,php]
 ----
 
 /** Check that the page was requested from itself via the POST method. */
@@ -180,9 +140,11 @@
 
 }
 ----
-3. Within the curly braces of the  ``if ``  clause, add another  ``if ``  clause that checks whether the user has filled in the wisher's name. If the text field "user" is empty, the value of  ``$userIsEmpty``  is changed to true.
 
-[source,java]
+[start=3]
+. Within the curly braces of the  `if `  clause, add another  `if `  clause that checks whether the user has filled in the wisher's name. If the text field "user" is empty, the value of  `$userIsEmpty`  is changed to true.
+
+[source,php]
 ----
 
 /** Check that the page was requested from itself via the POST method. */
@@ -194,13 +156,14 @@
     }*
 }
 ----
-4. 
-Add code that establishes a database connection. If the connection cannot be established, the MySQL or Oracle OCI8 error is sent to the output.
+
+[start=4]
+. Add code that establishes a database connection. If the connection cannot be established, the MySQL or Oracle OCI8 error is sent to the output.
 
 *For the MySQL database:*
 
 
-[source,java]
+[source,php]
 ----
 
 /** Check that the page was requested from itself via the POST method. */
@@ -224,7 +187,7 @@
 *For the Oracle database:*
 
 
-[source,java]
+[source,php]
 ----
 
 /** Check that the page was requested from itself via the POST method. */
@@ -243,12 +206,14 @@
     }*
 }
 ----
-5. Add code that checks whether a user whose name matches the "user" field already exists. The code does this by trying to find a wisher ID number for a name matching the name in the "user" field. If such an ID number exists, the value of  ``$userNameIsUnique``  is changed to "false."
+
+[start=5]
+. Add code that checks whether a user whose name matches the "user" field already exists. The code does this by trying to find a wisher ID number for a name matching the name in the "user" field. If such an ID number exists, the value of  `$userNameIsUnique`  is changed to "false."
 
 *For the MySQL database:*
 
 
-[source,java]
+[source,php]
 ----
 
 /** Check that the page was requested from itself via the POST method. */
@@ -273,7 +238,7 @@
 *For the Oracle database:*
 
 
-[source,java]
+[source,php]
 ----
 
 /** Check that the page was requested from itself via the POST method. */
@@ -304,9 +269,11 @@
     }*
 }
 ----
-6. After the code that checks if the user is unique, add a series of  ``if `` clauses that check whether the user entered and confirmed a password correctly. The code checks that the Password ("password") and Confirm Password ('password2) fields are not empty in the form and that they are identical. Otherwise the values of the corresponding boolean variables are changed accordingly.
 
-[source,java]
+[start=6]
+. After the code that checks if the user is unique, add a series of  `if ` clauses that check whether the user entered and confirmed a password correctly. The code checks that the Password ("password") and Confirm Password ('password2) fields are not empty in the form and that they are identical. Otherwise the values of the corresponding boolean variables are changed accordingly.
+
+[source,php]
 ----
 
 if ($_POST["password"]=="") {$passwordIsEmpty = true;
@@ -314,13 +281,14 @@
 }if ($_POST["password"]!=$_POST["password2"]) {$passwordIsValid = false;
 } 
 ----
-7. 
-Complete the  ``if ($_SERVER['REQUEST_METHOD'] == "POST")``  clause by adding code that inserts a new entry into the "wishers" database. The code checks that the name of the wisher is specified uniquely and that the password is entered and confirmed validly. If the conditions are met, the code takes the "user" and "password" values from the HTML form and inserts them into the Name and Password columns, respectively, of a new row in the wishers database. After creating the row, the code closes the database connection and redirects the application to the page  ``editWishList.php`` .
+
+[start=7]
+.  Complete the  `if ($_SERVER['REQUEST_METHOD'] == "POST")`  clause by adding code that inserts a new entry into the "wishers" database. The code checks that the name of the wisher is specified uniquely and that the password is entered and confirmed validly. If the conditions are met, the code takes the "user" and "password" values from the HTML form and inserts them into the Name and Password columns, respectively, of a new row in the wishers database. After creating the row, the code closes the database connection and redirects the application to the page  `editWishList.php` .
 
 *For the MySQL database:*
 
 
-[source,java]
+[source,php]
 ----
 
 /** Check that the page was requested from itself via the POST method. */
@@ -378,7 +346,7 @@
 *For the Oracle database:*
 
 
-[source,java]
+[source,php]
 ----
 
 /** Check that the page was requested from itself via the POST method. */
@@ -465,7 +433,9 @@
     }
     ?> *
 ----
-2. Enter the following PHP code block inside the HTML input form below the code for the password input:
+
+[start=2]
+. Enter the following PHP code block inside the HTML input form below the code for the password input:
 
 [source,php]
 ----
@@ -478,7 +448,9 @@
  }                
  ?>*
 ----
-3. Enter the following PHP code blocks inside the HTML input form below the code for password confirmation:
+
+[start=3]
+. Enter the following PHP code blocks inside the HTML input form below the code for password confirmation:
 
 [source,php]
 ----
@@ -502,16 +474,37 @@
 === Testing the Create New Wisher Functionality
 
 1. Run the application. The index page opens.
+
 image::images/index-php-3.png[]
-2. On the index page, click the link next to the text Still don't have a wish list? The following form opens:
+
+
+[start=2]
+. On the index page, click the link next to the text Still don't have a wish list? The following form opens:
+
 image::images/create-new-wisher-empty-form.png[]
-3. Leave the fields empty and click Register. An error message displays.
+
+
+[start=3]
+. Leave the fields empty and click Register. An error message displays.
+
 image::images/create-new-wisher-name-empty.png[]
-4. Enter the name of a registered wisher, for example, Tom in the Your name field, fill in the other fields correctly, and click Register. An error message displays.
-5. Fill in the Password and Please confirm your password fields with different values and click Register. An error message displays.
-6. Enter Bob in the Your name field, specify the same password in both password fields and click Register. The page that opens is empty but the redirection passed correctly as the URL ends with editWishList.php:
+
+
+[start=4]
+. Enter the name of a registered wisher, for example, Tom in the Your name field, fill in the other fields correctly, and click Register. An error message displays.
+
+[start=5]
+. Fill in the Password and Please confirm your password fields with different values and click Register. An error message displays.
+
+[start=6]
+. Enter Bob in the Your name field, specify the same password in both password fields and click Register. The page that opens is empty but the redirection passed correctly as the URL ends with editWishList.php:
+
 image::images/edit-wish-list-empty.png[]
-7. To check that the data is stored in the database, navigate to wishers on the Services window below the wislist1 node and from the context menu choose View Data 
+
+
+[start=7]
+. To check that the data is stored in the database, navigate to wishers on the Services window below the wislist1 node and from the context menu choose View Data 
+
 image::images/wishers.png[]
 
 
diff --git a/netbeans.apache.org/src/content/kb/docs/php/wish-list-lesson3_ja.asciidoc b/netbeans.apache.org/src/content/kb/docs/php/wish-list-lesson3_ja.asciidoc
index 747986c..86594d4 100644
--- a/netbeans.apache.org/src/content/kb/docs/php/wish-list-lesson3_ja.asciidoc
+++ b/netbeans.apache.org/src/content/kb/docs/php/wish-list-lesson3_ja.asciidoc
@@ -17,18 +17,6 @@
 //     under the License.
 //
 
-= PHPを使用するデータベース駆動型アプリケーションの作成
-:jbake-type: tutorial
-:jbake-tags: tutorials 
-:jbake-status: published
-:icons: font
-:syntax: true
-:source-highlighter: pygments
-:toc: left
-:toc-title:
-:description: PHPを使用するデータベース駆動型アプリケーションの作成 - Apache NetBeans
-:keywords: Apache NetBeans, Tutorials, PHPを使用するデータベース駆動型アプリケーションの作成
-
 = レッスン3: 新規アプリケーション・ユーザーの作成
 :jbake-type: tutorial
 :jbake-tags: tutorials 
@@ -42,27 +30,6 @@
 :keywords: Apache NetBeans, Tutorials, レッスン3: 新規アプリケーション・ユーザーの作成
 
 
-
-1. link:wish-list-tutorial-main-page.html[+PHPを使用するデータベース駆動型アプリケーションの作成 - メイン・ページ+]
-2. 
-データベースの作成
-
-1. link:wish-list-lesson1.html[+MySQLデータベースの作成+]
-2. link:wish-list-oracle-lesson1.html[+Oracleデータベース表の作成+]
-3. 
-link:wish-list-lesson2.html[+アプリケーションの設計。データベースからの読取り+]
-
-4. *=> 新規アプリケーション・ユーザーの作成*
-
-5. link:wish-list-lesson4.html[+コードの最適化+]
-6. link:wish-list-lesson5.html[+セキュリティの追加。アプリケーション・ユーザー・ログオンの実装+]
-7. link:wish-list-lesson6.html[+データベースへの新しいウィッシュの追加+]
-8. link:wish-list-lesson7.html[+データベース内のエントリの更新および削除+]
-9. link:wish-list-lesson8.html[+CSSテクノロジを使用したアプリケーションの外観の改良+]
-10. link:wish-list-lesson9.html[+リモートWebサーバーへのアプリケーションのデプロイ+]
-
-image::images/netbeans-stamp-80-74-73.png[title="このページの内容は、NetBeans IDE 7.2、7.3、7.4および8.0に適用されます"]
-
 このレッスンでは、新規ウィッシャの作成機能を使用してアプリケーションを拡張します。
 
 この実装はindex.phpファイルに影響し、 ``createNewWisher.php`` および ``editWishList.php`` という名前の2つの新しいファイルが作成されます。
@@ -70,9 +37,7 @@
 新規ウィッシャの作成のユース・ケースは、3つのステップで構成されます。
 
 1. <<addLinkNewWisher,ユーザーが最初のページindex.phpを開き、リンクをクリックして登録する>>。
-
 2. <<implementCreateNewWisher,ユーザーが、新しいウィッシャを作成するためにcreateNewWisher.phpページに切り替える>>。
-
 3. 新しいウィッシャを作成した後、ユーザーはeditWishList.phpに切り替え、ユーザーのウィッシュ・リストを作成する。
 
 image::images/page-flow-diagram-l3.png[]
@@ -93,7 +58,7 @@
  ``index.php`` を開きます。終了の</form>タグの下に空白行を追加します。その空白行に、次のコード・ブロックを入力します。
 
 
-[source,xml]
+[source,html]
 ----
 
  <br>Still don't have a wish list?! <a href="createNewWisher.php">Create now</a>
@@ -121,7 +86,7 @@
 次のHTMLブロックを、 ``createNewWisher.php`` のPHPブロックの下に入力するか、または貼り付けます。
 
 
-[source,xml]
+[source,html]
 ----
 
 <html>
@@ -133,9 +98,9 @@
 </html>
 ----
 
-*注意:*  ``password`` 型は、文字がアスタリスクに置き換えられる、特殊なテキスト・フィールドの型です。コードは、ユーザーが新しいウィッシャの名前とパスワードをテキスト・フィールドに入力するためのlink:wish-list-lesson3.html#htmlForm[+HTMLフォーム+]を示します。ユーザーが「Register」ボタンをクリックすると、入力したデータが、検証のために同じページ ``createNewWisher.php`` に転送されます。
+NOTE:   ``password`` 型は、文字がアスタリスクに置き換えられる、特殊なテキスト・フィールドの型です。コードは、ユーザーが新しいウィッシャの名前とパスワードをテキスト・フィールドに入力するためのlink:wish-list-lesson3.html#htmlForm[+HTMLフォーム+]を示します。ユーザーが「Register」ボタンをクリックすると、入力したデータが、検証のために同じページ ``createNewWisher.php`` に転送されます。
 
-*注意: *HTMLバリデータからの警告は無視できます。
+NOTE: HTMLバリデータからの警告は無視できます。
 
 
 === データの検証とデータベースへの追加
@@ -146,7 +111,7 @@
 
 1. 変数を初期化します。最初の変数はデータベースの証明書を渡し、その他はPHP操作で使用される変数です。
 
-[source,java]
+[source,php]
 ----
 
 /** database connection credentials */$dbHost="localhost"; //on MySql
@@ -161,9 +126,11 @@
 
 			
 ----
-2. 変数の下に ``if`` 節を追加します。 ``if`` 節のパラメータは、ページがPOSTメソッド経由で同じページからリクエストされたことを確認します。そうでない場合、それ以上の検証は実行されず、ページは前述のように空のフィールドで表示されます。
 
-[source,java]
+[start=2]
+. 変数の下に ``if`` 節を追加します。 ``if`` 節のパラメータは、ページがPOSTメソッド経由で同じページからリクエストされたことを確認します。そうでない場合、それ以上の検証は実行されず、ページは前述のように空のフィールドで表示されます。
+
+[source,php]
 ----
 
 /** Check that the page was requested from itself via the POST method. */
@@ -171,9 +138,11 @@
 
 }
 ----
-3.  ``if`` 節の中括弧内に、ユーザーがウィッシャの名前を入力したかどうかを確認するための別の ``if`` 節を追加します。テキスト・フィールド「user」が空の場合は、 ``$userIsEmpty`` の値がtrueに変わります。
 
-[source,java]
+[start=3]
+.  ``if`` 節の中括弧内に、ユーザーがウィッシャの名前を入力したかどうかを確認するための別の ``if`` 節を追加します。テキスト・フィールド「user」が空の場合は、 ``$userIsEmpty`` の値がtrueに変わります。
+
+[source,php]
 ----
 
 /** Check that the page was requested from itself via the POST method. */
@@ -185,13 +154,14 @@
     }*
 }
 ----
-4. 
-データベース接続を確立するコードを追加します。接続が確立できない場合、MySQLまたはOracle OCI8エラーが出力に送信されます。
+
+[start=4]
+. データベース接続を確立するコードを追加します。接続が確立できない場合、MySQLまたはOracle OCI8エラーが出力に送信されます。
 
 *MySQLデータベースの場合:*
 
 
-[source,java]
+[source,php]
 ----
 
 /** Check that the page was requested from itself via the POST method. */
@@ -215,7 +185,7 @@
 *Oracleデータベースの場合:*
 
 
-[source,java]
+[source,php]
 ----
 
 /** Check that the page was requested from itself via the POST method. */
@@ -234,12 +204,14 @@
     }*
 }
 ----
-5. 「user」フィールドと名前が一致するユーザーが、すでに存在するかどうかを確認するコードを追加します。このコードは、「user」フィールド内の名前と一致する名前のウィッシャID番号の検索することによって、これを実行します。そのようなID番号が存在する場合、 ``$userNameIsUnique`` の値は「false」に変更されます。
+
+[start=5]
+. 「user」フィールドと名前が一致するユーザーが、すでに存在するかどうかを確認するコードを追加します。このコードは、「user」フィールド内の名前と一致する名前のウィッシャID番号の検索することによって、これを実行します。そのようなID番号が存在する場合、 ``$userNameIsUnique`` の値は「false」に変更されます。
 
 *MySQLデータベースの場合:*
 
 
-[source,java]
+[source,php]
 ----
 
 /** Check that the page was requested from itself via the POST method. */
@@ -264,7 +236,7 @@
 *Oracleデータベースの場合:*
 
 
-[source,java]
+[source,php]
 ----
 
 /** Check that the page was requested from itself via the POST method. */
@@ -295,9 +267,11 @@
     }*
 }
 ----
-6. ユーザーが一意かどうかを確認するコードの後に、ユーザーがパスワードを正しく入力して確認入力したかどうかを確認する一連の ``if`` 節を追加します。コードは、フォーム内の「Password」("password")および「Confirm Password」('password2)の各フィールドが空でなく、同一であることを確認します。そうでない場合は、それに応じて対応するブール型変数の値が変わります。
 
-[source,java]
+[start=6]
+. ユーザーが一意かどうかを確認するコードの後に、ユーザーがパスワードを正しく入力して確認入力したかどうかを確認する一連の ``if`` 節を追加します。コードは、フォーム内の「Password」("password")および「Confirm Password」('password2)の各フィールドが空でなく、同一であることを確認します。そうでない場合は、それに応じて対応するブール型変数の値が変わります。
+
+[source,php]
 ----
 
 if ($_POST["password"]=="") {$passwordIsEmpty = true;
@@ -305,13 +279,14 @@
 }if ($_POST["password"]!=$_POST["password2"]) {$passwordIsValid = false;
 } 
 ----
-7. 
-「wishers」データベースに新しいエントリを挿入するコードを追加して、 ``if ($_SERVER['REQUEST_METHOD']=="POST")`` 節を完成させます。コードは、ウィッシャの名前が一意に指定されていること、およびパスワードが有効に入力および確認されていることを確認します。条件を満たす場合、コードはHTMLフォームから「user」と「password」の値を取り、wishersデータベース内の新しい行のName列とPassword列にそれぞれ挿入します。行を作成した後、コードはデータベース接続を切断し、アプリケーションをページ ``editWishList.php`` にリダイレクトします。
+
+[start=7]
+. 「wishers」データベースに新しいエントリを挿入するコードを追加して、 ``if ($_SERVER['REQUEST_METHOD']=="POST")`` 節を完成させます。コードは、ウィッシャの名前が一意に指定されていること、およびパスワードが有効に入力および確認されていることを確認します。条件を満たす場合、コードはHTMLフォームから「user」と「password」の値を取り、wishersデータベース内の新しい行のName列とPassword列にそれぞれ挿入します。行を作成した後、コードはデータベース接続を切断し、アプリケーションをページ ``editWishList.php`` にリダイレクトします。
 
 *MySQLデータベースの場合:*
 
 
-[source,java]
+[source,php]
 ----
 
 /** Check that the page was requested from itself via the POST method. */
@@ -369,7 +344,7 @@
 *Oracleデータベースの場合:*
 
 
-[source,java]
+[source,php]
 ----
 
 /** Check that the page was requested from itself via the POST method. */
@@ -456,7 +431,9 @@
     }
     ?> *
 ----
-2. 次のPHPコード・ブロックを、HTML入力フォーム内の、パスワード入力のコードの下に入力します。
+
+[start=2]
+. 次のPHPコード・ブロックを、HTML入力フォーム内の、パスワード入力のコードの下に入力します。
 
 [source,php]
 ----
@@ -469,7 +446,9 @@
  }                
  ?>*
 ----
-3. 次のPHPコード・ブロックを、HTML入力フォーム内の、パスワード確認のコードの下に入力します。
+
+[start=3]
+. 次のPHPコード・ブロックを、HTML入力フォーム内の、パスワード確認のコードの下に入力します。
 
 [source,php]
 ----
@@ -492,17 +471,40 @@
 
 === 新規ウィッシャの作成機能のテスト
 
-1. アプリケーションを実行します。indexページが開きます。
+
+[start=1]
+. アプリケーションを実行します。indexページが開きます。
+
 image::images/index-php-3.png[]
-2. indexページで、テキスト「Still don't have a wish list?」の横にあるリンクをクリックします。次のフォームが開きます。
+
+
+[start=2]
+. indexページで、テキスト「Still don't have a wish list?」の横にあるリンクをクリックします。次のフォームが開きます。
+
 image::images/create-new-wisher-empty-form.png[]
-3. フィールドを空白のままにし、「Register」をクリックします。エラー・メッセージが表示されます。
+
+
+[start=3]
+. フィールドを空白のままにし、「Register」をクリックします。エラー・メッセージが表示されます。
+
 image::images/create-new-wisher-name-empty.png[]
-4. 登録済のウィッシャの名前を入力し(たとえば、「Your name」フィールドに「Tom」と入力)、その他のフィールドを正しく入力して、「Register」をクリックします。エラー・メッセージが表示されます。
-5. 「Password」フィールドと「Please confirm your password」フィールドに異なる値を入力し、「Register」をクリックします。エラー・メッセージが表示されます。
-6. 「Your name」フィールドに「Bob」と入力し、両方のパスワード・フィールドに同じパスワードを指定して「Register」をクリックします。表示されるページは空ですが、次のようにURLがeditWishList.phpで終わっているため、リダイレクションは正しく渡されています。
+
+
+[start=4]
+. 登録済のウィッシャの名前を入力し(たとえば、「Your name」フィールドに「Tom」と入力)、その他のフィールドを正しく入力して、「Register」をクリックします。エラー・メッセージが表示されます。
+
+[start=5]
+. 「Password」フィールドと「Please confirm your password」フィールドに異なる値を入力し、「Register」をクリックします。エラー・メッセージが表示されます。
+
+[start=6]
+. 「Your name」フィールドに「Bob」と入力し、両方のパスワード・フィールドに同じパスワードを指定して「Register」をクリックします。表示されるページは空ですが、次のようにURLがeditWishList.phpで終わっているため、リダイレクションは正しく渡されています。
+
 image::images/edit-wish-list-empty.png[]
-7. データがデータベースに格納されたことを確認するには、「サービス」ウィンドウのwislist1ノードの下にあるwishersに移動し、コンテキスト・メニューから「データを表示」を選択します。
+
+
+[start=7]
+. データがデータベースに格納されたことを確認するには、「サービス」ウィンドウのwislist1ノードの下にあるwishersに移動し、コンテキスト・メニューから「データを表示」を選択します。
+
 image::images/wishers.png[]
 
 
diff --git a/netbeans.apache.org/src/content/kb/docs/php/wish-list-lesson3_pt_BR.asciidoc b/netbeans.apache.org/src/content/kb/docs/php/wish-list-lesson3_pt_BR.asciidoc
index cbec6ce..47a310f 100644
--- a/netbeans.apache.org/src/content/kb/docs/php/wish-list-lesson3_pt_BR.asciidoc
+++ b/netbeans.apache.org/src/content/kb/docs/php/wish-list-lesson3_pt_BR.asciidoc
@@ -17,18 +17,6 @@
 //     under the License.
 //
 
-= Criando uma Aplicação Orientada pelo Banco de Dados com o PHP
-:jbake-type: tutorial
-:jbake-tags: tutorials 
-:jbake-status: published
-:icons: font
-:syntax: true
-:source-highlighter: pygments
-:toc: left
-:toc-title:
-:description: Criando uma Aplicação Orientada pelo Banco de Dados com o PHP - Apache NetBeans
-:keywords: Apache NetBeans, Tutorials, Criando uma Aplicação Orientada pelo Banco de Dados com o PHP
-
 = Lição 3: Criando um Novo Usuário de Aplicação
 :jbake-type: tutorial
 :jbake-tags: tutorials 
@@ -41,28 +29,6 @@
 :description: Lição 3: Criando um Novo Usuário de Aplicação - Apache NetBeans
 :keywords: Apache NetBeans, Tutorials, Lição 3: Criando um Novo Usuário de Aplicação
 
-
-
-1. link:wish-list-tutorial-main-page.html[+Criando uma Aplicação Orientada pelo Banco de Dados com o PHP - Página Principal+]
-2. 
-Criando o Banco de Dados
-
-1. link:wish-list-lesson1.html[+Criando um Banco de Dados MySQL+]
-2. link:wish-list-oracle-lesson1.html[+Criando Tabelas do Banco de Dados Oracle+]
-3. 
-link:wish-list-lesson2.html[+Projetando a Aplicação. Lendo o Banco de Dados+]
-
-4. *=> Criando um Novo Usuário de Aplicação*
-
-5. link:wish-list-lesson4.html[+Otimizando o Código+]
-6. link:wish-list-lesson5.html[+Adicionando Segurança. Implementando o Log-in de Usuário da Aplicação+]
-7. link:wish-list-lesson6.html[+Adicionando um Novo Desejo ao Banco de Dados+]
-8. link:wish-list-lesson7.html[+Atualizando e Deletando Entradas no Banco de Dados+]
-9. link:wish-list-lesson8.html[+Melhorando a Aparência da Aplicação Usando a Tecnologia CSS+]
-10. link:wish-list-lesson9.html[+Implantando a Aplicação em um Servidor Web Remoto+]
-
-image::images/netbeans-stamp-80-74-73.png[title="O conteúdo desta página se aplica ao NetBeans IDE 7.2, 7.3, 7.4 e 8.0"]
-
 Nesta lição, você expande a aplicação com a funcionalidade Criar um Novo Wisher.
 
 A implementação afetará o arquivo index.php e os dois novos arquivos criados se chamarão  ``createNewWisher.php``  e  ``editWishList.php`` .
@@ -70,9 +36,7 @@
 O caso de uso Criar um Novo Wisher consiste em três etapas:
 
 1. <<addLinkNewWisher,O usuário abre a página inicial index.php e clica no link para registrar>>.
-
 2. <<implementCreateNewWisher,O usuário alterna para a página createNewWisher.php para criar um novo wisher>>.
-
 3. Após criar um novo wisher, o usuário alterna para editWishList.php, onde ele criará uma lista de desejos para o usuário.
 
 image::images/page-flow-diagram-l3.png[]
@@ -93,7 +57,7 @@
 Abra o  ``index.php`` . Adicione uma linha em branco abaixo da tag de fechamento </form>. Na linha em branco, insira o seguinte bloco de código:
 
 
-[source,xml]
+[source,html]
 ----
 
  <br>Still don't have a wish list?! <a href="createNewWisher.php">Create now</a>
@@ -121,7 +85,7 @@
 Digite ou cole o seguinte bloco HTML no  ``createNewWisher.php`` , abaixo do bloco PHP:
 
 
-[source,xml]
+[source,html]
 ----
 
 <html>
@@ -133,9 +97,9 @@
 </html>
 ----
 
-*Observação:* O tipo  ``senha``  é um tipo especial de um campo de texto onde os caracteres são substituídos por asteriscos. O código apresenta um link:wish-list-lesson3.html#htmlForm[+form HTML+] para um usuário inserir o nome e a senha do novo wisher nos campos de texto. Quando o usuário clica no botão "Registrar", os dados inseridos são transferidos para validação na mesma página,  ``createNewWisher.php`` .
+NOTE:  O tipo  ``senha``  é um tipo especial de um campo de texto onde os caracteres são substituídos por asteriscos. O código apresenta um link:wish-list-lesson3.html#htmlForm[+form HTML+] para um usuário inserir o nome e a senha do novo wisher nos campos de texto. Quando o usuário clica no botão "Registrar", os dados inseridos são transferidos para validação na mesma página,  ``createNewWisher.php`` .
 
-*Observação: *você pode ignorar as advertências do validador HTML.
+NOTE: você pode ignorar as advertências do validador HTML.
 
 
 === Validando Dados e Adicionando-os ao Banco de Dados
@@ -146,7 +110,7 @@
 
 1. Inicialize as variáveis. As primeiras variáveis passam as credenciais do banco de dados e as outras serão usadas nas operações PHP.
 
-[source,java]
+[source,php]
 ----
 
 /** database connection credentials */$dbHost="localhost"; //on MySql
@@ -161,9 +125,11 @@
 
 			
 ----
-2. Abaixo das variáveis, adicione uma cláusula  ``se `` . O parâmetro da cláusula  ``se``  verifica se a página foi solicitada a partir dela mesma usando o método POST. Caso contrário, as validações posteriores não são realizadas e a página é mostrada com campos vazios, como descrito acima.
 
-[source,java]
+[start=2]
+. Abaixo das variáveis, adicione uma cláusula  ``se `` . O parâmetro da cláusula  ``se``  verifica se a página foi solicitada a partir dela mesma usando o método POST. Caso contrário, as validações posteriores não são realizadas e a página é mostrada com campos vazios, como descrito acima.
+
+[source,php]
 ----
 
 /** Check that the page was requested from itself via the POST method. */
@@ -171,9 +137,11 @@
 
 }
 ----
-3. Dentro das chaves da cláusula  ``se `` , adicione outra cláusula  ``se ``  que verifica se o usuário preencheu o nome do wisher. Se o campo de texto "user" estiver vazio, o valor de  ``$userIsEmpty``  será alterado para verdadeiro.
 
-[source,java]
+[start=3]
+. Dentro das chaves da cláusula  ``se `` , adicione outra cláusula  ``se ``  que verifica se o usuário preencheu o nome do wisher. Se o campo de texto "user" estiver vazio, o valor de  ``$userIsEmpty``  será alterado para verdadeiro.
+
+[source,php]
 ----
 
 /** Check that the page was requested from itself via the POST method. */
@@ -185,13 +153,14 @@
     }*
 }
 ----
-4. 
-Adicione o código que estabelece uma conexão de banco de dados. Se não for possível estabelecer a conexão, o erro de MySQL ou Oracle OCI8 é enviado para a saída.
+
+[start=4]
+. Adicione o código que estabelece uma conexão de banco de dados. Se não for possível estabelecer a conexão, o erro de MySQL ou Oracle OCI8 é enviado para a saída.
 
 *Para o banco de dados MySQL:*
 
 
-[source,java]
+[source,php]
 ----
 
 /** Check that the page was requested from itself via the POST method. */
@@ -215,7 +184,7 @@
 *Para o banco de dados Oracle:*
 
 
-[source,java]
+[source,php]
 ----
 
 /** Check that the page was requested from itself via the POST method. */
@@ -234,12 +203,14 @@
     }*
 }
 ----
-5. Adicione o código que verifica se um usuário cujo nome corresponde ao campo "user" já existe. O código faz isso, tentando localizar o número do wisher ID para um nome correspondente ao nome no campo "user". Se houver tal número de ID, o valor de  ``$userNameIsUnique``  é alterado para "false".
+
+[start=5]
+. Adicione o código que verifica se um usuário cujo nome corresponde ao campo "user" já existe. O código faz isso, tentando localizar o número do wisher ID para um nome correspondente ao nome no campo "user". Se houver tal número de ID, o valor de  ``$userNameIsUnique``  é alterado para "false".
 
 *Para o banco de dados MySQL:*
 
 
-[source,java]
+[source,php]
 ----
 
 /** Check that the page was requested from itself via the POST method. */
@@ -264,7 +235,7 @@
 *Para o banco de dados Oracle:*
 
 
-[source,java]
+[source,php]
 ----
 
 /** Check that the page was requested from itself via the POST method. */
@@ -295,9 +266,11 @@
     }*
 }
 ----
-6. Com do código que verifica se o usuário sendo único, adicione uma série de cláusulas ``se ``  para verificar se o usuário inseriu e confirmou a senha corretamente. O código verifica se os campos Senha ("password") e Confirmar senha ('password2) não estão vazios no form e não são idênticos. Caso contrário, os valores das variáveis boolianas correspondentes são alterados de acordo.
 
-[source,java]
+[start=6]
+. Com do código que verifica se o usuário sendo único, adicione uma série de cláusulas ``se ``  para verificar se o usuário inseriu e confirmou a senha corretamente. O código verifica se os campos Senha ("password") e Confirmar senha ('password2) não estão vazios no form e não são idênticos. Caso contrário, os valores das variáveis boolianas correspondentes são alterados de acordo.
+
+[source,php]
 ----
 
 if ($_POST["password"]=="") {$passwordIsEmpty = true;
@@ -305,13 +278,14 @@
 }if ($_POST["password"]!=$_POST["password2"]) {$passwordIsValid = false;
 } 
 ----
-7. 
-Complete a cláusula  ``se ($_SERVER['REQUEST_METHOD'] == "POST")``  adicionando o código que insere uma nova entrada no banco de dados "wishers". O código verifica se o nome do wisher é especificado exclusivamente e se a senha é indicada e confirmada validamente. Se as condições forem atendidas, o código pegará os valores "user" e "password" do form HTML e os inserirá nas colunas Nome e Senha, respectivamente, de uma nova linha no banco de dados wishers. Depois de criar a linha, o código fecha a conexão do banco de dados e redireciona a aplicação para a página  ``editWishList.php`` .
+
+[start=7]
+. Complete a cláusula  ``se ($_SERVER['REQUEST_METHOD'] == "POST")``  adicionando o código que insere uma nova entrada no banco de dados "wishers". O código verifica se o nome do wisher é especificado exclusivamente e se a senha é indicada e confirmada validamente. Se as condições forem atendidas, o código pegará os valores "user" e "password" do form HTML e os inserirá nas colunas Nome e Senha, respectivamente, de uma nova linha no banco de dados wishers. Depois de criar a linha, o código fecha a conexão do banco de dados e redireciona a aplicação para a página  ``editWishList.php`` .
 
 *Para o banco de dados MySQL:*
 
 
-[source,java]
+[source,php]
 ----
 
 /** Check that the page was requested from itself via the POST method. */
@@ -369,7 +343,7 @@
 *Para o banco de dados Oracle:*
 
 
-[source,java]
+[source,php]
 ----
 
 /** Check that the page was requested from itself via the POST method. */
@@ -456,7 +430,9 @@
     }
     ?> *
 ----
-2. Insira o seguinte bloco de código PHP dentro do form de entrada HTML abaixo do código da entrada de senha:
+
+[start=2]
+. Insira o seguinte bloco de código PHP dentro do form de entrada HTML abaixo do código da entrada de senha:
 
 [source,php]
 ----
@@ -469,7 +445,9 @@
  }                
  ?>*
 ----
-3. Insira os seguintes blocos de código PHP dentro do form de entrada HTML abaixo do código de confirmação de senha:
+
+[start=3]
+. Insira os seguintes blocos de código PHP dentro do form de entrada HTML abaixo do código de confirmação de senha:
 
 [source,php]
 ----
@@ -492,17 +470,40 @@
 
 === Testando a Funcionalidade da Criação do Novo Wisher
 
-1. Execute a aplicação. A página de índice abre.
+
+[start=1]
+. Execute a aplicação. A página de índice abre.
+
 image::images/index-php-3.png[]
-2. Na página de índice, clique no link ao lado do texto Ainda não possui uma lista de desejos? O seguinte form abre:
+
+
+[start=2]
+. Na página de índice, clique no link ao lado do texto Ainda não possui uma lista de desejos? O seguinte form abre:
+
 image::images/create-new-wisher-empty-form.png[]
-3. Deixe estes campos em branco e clique em Registrar. Uma mensagem de erro é exibida
+
+
+[start=3]
+. Deixe estes campos em branco e clique em Registrar. Uma mensagem de erro é exibida
+
 image::images/create-new-wisher-name-empty.png[]
-4. Insira o nome de um wisher registrado, por exemplo, Tom no campo Seu nome, preencha os outros campos corretamente e clique em Registrar. Uma mensagem de erro é exibida.
-5. Preencha os campos Senha e Confirme sua senha com valores diferentes e clique em Registrar. Uma mensagem de erro é exibida.
-6. Insira Bob no campo Seu nome, especifique a mesma senha em ambos os campos de senha e clique em Registrar. A página exibida está vazia, mas o redirecionamento foi passado corretamente já que o URL termina com editWishList.php:
+
+
+[start=4]
+. Insira o nome de um wisher registrado, por exemplo, Tom no campo Seu nome, preencha os outros campos corretamente e clique em Registrar. Uma mensagem de erro é exibida.
+
+[start=5]
+. Preencha os campos Senha e Confirme sua senha com valores diferentes e clique em Registrar. Uma mensagem de erro é exibida.
+
+[start=6]
+. Insira Bob no campo Seu nome, especifique a mesma senha em ambos os campos de senha e clique em Registrar. A página exibida está vazia, mas o redirecionamento foi passado corretamente já que o URL termina com editWishList.php:
+
 image::images/edit-wish-list-empty.png[]
-7. Para verificar se os dados estão armazenados no banco de dados, vá para wishers na janela Serviços abaixo do nó wislist1 e no menu de contexto, selecione Visualizar Dados 
+
+
+[start=7]
+. Para verificar se os dados estão armazenados no banco de dados, vá para wishers na janela Serviços abaixo do nó wislist1 e no menu de contexto, selecione Visualizar Dados 
+
 image::images/wishers.png[]
 
 
diff --git a/netbeans.apache.org/src/content/kb/docs/php/wish-list-lesson3_ru.asciidoc b/netbeans.apache.org/src/content/kb/docs/php/wish-list-lesson3_ru.asciidoc
index c7dd65d..0fedc32 100644
--- a/netbeans.apache.org/src/content/kb/docs/php/wish-list-lesson3_ru.asciidoc
+++ b/netbeans.apache.org/src/content/kb/docs/php/wish-list-lesson3_ru.asciidoc
@@ -17,18 +17,6 @@
 //     under the License.
 //
 
-= Создание приложения на основе базы данных на языке PHP
-:jbake-type: tutorial
-:jbake-tags: tutorials 
-:jbake-status: published
-:icons: font
-:syntax: true
-:source-highlighter: pygments
-:toc: left
-:toc-title:
-:description: Создание приложения на основе базы данных на языке PHP - Apache NetBeans
-:keywords: Apache NetBeans, Tutorials, Создание приложения на основе базы данных на языке PHP
-
 = Урок 3: Создание нового пользователя приложения
 :jbake-type: tutorial
 :jbake-tags: tutorials 
@@ -41,28 +29,6 @@
 :description: Урок 3: Создание нового пользователя приложения - Apache NetBeans
 :keywords: Apache NetBeans, Tutorials, Урок 3: Создание нового пользователя приложения
 
-
-
-1. link:wish-list-tutorial-main-page.html[+Создание приложения на основе базы данных с помощью языка PHP – главная страница+]
-2. 
-Создание базы данных
-
-1. link:wish-list-lesson1.html[+Создание базы данных MySQL+]
-2. link:wish-list-oracle-lesson1.html[+Создание таблиц базы данных Oracle+]
-3. 
-link:wish-list-lesson2.html[+Проектирование приложения. Чтение из базы данных+]
-
-4. *=> Создание нового пользователя приложения*
-
-5. link:wish-list-lesson4.html[+Усовершенствование кода+]
-6. link:wish-list-lesson5.html[+Добавление функций безопасности. Реализация входа пользователя в приложение+]
-7. link:wish-list-lesson6.html[+Добавление к базе данных новых желаний+]
-8. link:wish-list-lesson7.html[+Обновление и удаление записей в базе данных+]
-9. link:wish-list-lesson8.html[+Усовершенствование внешнего вида приложения с использованием технологии CSS+]
-10. link:wish-list-lesson9.html[+Развертывание приложения на удаленном веб-сервере+]
-
-image::images/netbeans-stamp-80-74-73.png[title="Содержимое этой страницы применимо к IDE NetBeans 7.2, 7.3, 7.4 и 8.0"]
-
 В этом уроке рассматривается расширение приложения добавлением функции "Create a New Wisher".
 
 Реализация затрагивает файл index.php, и при этом будут созданы два новых файла с именами  ``createNewWisher.php``  и  ``editWishList.php`` .
@@ -70,9 +36,7 @@
 Данный пример использования Create a New Wisher ("Создание нового пользователя") состоит из трех действий:
 
 1. <<addLinkNewWisher,Пользователь открывает файл index.php титульной страницы и щелкает ссылку для регистрации>>.
-
 2. <<implementCreateNewWisher,Пользователь переходит на страницу createNewWisher.php для создания нового автора пожелания>>.
-
 3. После создания нового автора пожелания пользователь переключается на editWishList.php, где для него можно создать список желаний.
 
 image::images/page-flow-diagram-l3.png[]
@@ -93,7 +57,7 @@
 Откройте  ``index.php`` . Добавьте пустую строку под закрывающим тегом </form>. Введите в эту пустую строку следующий блок кода:
 
 
-[source,xml]
+[source,html]
 ----
 
  <br>Still don't have a wish list?! <a href="createNewWisher.php">Create now</a>
@@ -121,7 +85,7 @@
 Введите или вставьте следующий блок HTML в строку  ``createNewWisher.php``  под блоком PHP:
 
 
-[source,xml]
+[source,html]
 ----
 
 <html>
@@ -133,9 +97,9 @@
 </html>
 ----
 
-*Примечание.* Тип  ``password``  это специальный тип текстового поля, в котором символы заменяются звездочками. Код представляет собой link:wish-list-lesson3.html#htmlForm[+форму HTML+], позволяющую ввести имя и пароль нового автора пожелания в текстовые поля. При нажатии кнопки "Register" введенные данные передаются для проверки допустимости на ту же страницу –  ``createNewWisher.php`` .
+NOTE:  Тип  ``password``  это специальный тип текстового поля, в котором символы заменяются звездочками. Код представляет собой link:wish-list-lesson3.html#htmlForm[+форму HTML+], позволяющую ввести имя и пароль нового автора пожелания в текстовые поля. При нажатии кнопки "Register" введенные данные передаются для проверки допустимости на ту же страницу –  ``createNewWisher.php`` .
 
-*Примечание. *Предупреждения от средства проверки HTML можно проигнорировать.
+NOTE: Предупреждения от средства проверки HTML можно проигнорировать.
 
 
 === Проверка допустимости данных и добавление их в базу данных
@@ -146,7 +110,7 @@
 
 1. Необходимо инициализировать переменные. Первая группа переменных осуществляет передачу параметров доступа к базе данных, а другая группа переменных используется в работе кода PHP.
 
-[source,java]
+[source,php]
 ----
 
 /** database connection credentials */$dbHost="localhost"; //on MySql
@@ -161,9 +125,11 @@
 
 			
 ----
-2. Под переменными следует добавить блок  ``if `` . Параметр блока  ``if``  выполняет проверку того, что страница была запрошена из нее самой посредством метода POST. Если это не так, дальнейшие проверки допустимости не выполняются, и на экран выводится страница с пустыми полями, как описано выше.
 
-[source,java]
+[start=2]
+. Под переменными следует добавить блок  ``if `` . Параметр блока  ``if``  выполняет проверку того, что страница была запрошена из нее самой посредством метода POST. Если это не так, дальнейшие проверки допустимости не выполняются, и на экран выводится страница с пустыми полями, как описано выше.
+
+[source,php]
 ----
 
 /** Check that the page was requested from itself via the POST method. */
@@ -171,9 +137,11 @@
 
 }
 ----
-3. Внутри фигурных скобок блока  ``if ``  добавьте другой блок  ``if `` , позволяющий проверить, ввел ли пользователь имя автора пожелания в поле. Если текстовое поле "user" является пустым, значение  ``$userIsEmpty``  меняется на "true".
 
-[source,java]
+[start=3]
+. Внутри фигурных скобок блока  ``if ``  добавьте другой блок  ``if `` , позволяющий проверить, ввел ли пользователь имя автора пожелания в поле. Если текстовое поле "user" является пустым, значение  ``$userIsEmpty``  меняется на "true".
+
+[source,php]
 ----
 
 /** Check that the page was requested from itself via the POST method. */
@@ -185,13 +153,14 @@
     }*
 }
 ----
-4. 
-Добавьте код, устанавливающий подключение к базе данных. Если установить подключение невозможно, то выводится ошибка MySQL или Oracle OCI8.
+
+[start=4]
+.  Добавьте код, устанавливающий подключение к базе данных. Если установить подключение невозможно, то выводится ошибка MySQL или Oracle OCI8.
 
 *Для базы данных MySQL*
 
 
-[source,java]
+[source,php]
 ----
 
 /** Check that the page was requested from itself via the POST method. */
@@ -215,7 +184,7 @@
 *Для базы данных Oracle*
 
 
-[source,java]
+[source,php]
 ----
 
 /** Check that the page was requested from itself via the POST method. */
@@ -234,12 +203,14 @@
     }*
 }
 ----
-5. Добавьте код, позволяющий проверить, существует ли пользователь, имя которого соответствует указанному в поле "user". Эта задача выполняется путем поиска идентификационного номера автора пожелания в соответствии с именем, указанным в поле "user". Если такой номер существует, значение  ``$userNameIsUnique``  меняется на "false".
+
+[start=5]
+. Добавьте код, позволяющий проверить, существует ли пользователь, имя которого соответствует указанному в поле "user". Эта задача выполняется путем поиска идентификационного номера автора пожелания в соответствии с именем, указанным в поле "user". Если такой номер существует, значение  ``$userNameIsUnique``  меняется на "false".
 
 *Для базы данных MySQL*
 
 
-[source,java]
+[source,php]
 ----
 
 /** Check that the page was requested from itself via the POST method. */
@@ -264,7 +235,7 @@
 *Для базы данных Oracle*
 
 
-[source,java]
+[source,php]
 ----
 
 /** Check that the page was requested from itself via the POST method. */
@@ -295,9 +266,11 @@
     }*
 }
 ----
-6. После кода, проверяющего уникальность пользователя, добавьте серию блоков  ``if `` , проверяющих, правильно ли пользователь ввел и подтвердил пароль. Код выполняет проверку того, что поля "Password" ("password") и "Confirm Password" ("password2") заполнены и идентичны друг другу. В противном случае значения соответствующих логических переменных также изменяются.
 
-[source,java]
+[start=6]
+. После кода, проверяющего уникальность пользователя, добавьте серию блоков  ``if `` , проверяющих, правильно ли пользователь ввел и подтвердил пароль. Код выполняет проверку того, что поля "Password" ("password") и "Confirm Password" ("password2") заполнены и идентичны друг другу. В противном случае значения соответствующих логических переменных также изменяются.
+
+[source,php]
 ----
 
 if ($_POST["password"]=="") {$passwordIsEmpty = true;
@@ -305,13 +278,14 @@
 }if ($_POST["password"]!=$_POST["password2"]) {$passwordIsValid = false;
 } 
 ----
-7. 
-Завершите блок  ``if ($_SERVER['REQUEST_METHOD'] == "POST")`` , добавив код, вставляющий новую запись в базу данных "Wishers". В соответствии с кодом выполняется проверка того, что имя пользователя указано однозначно и что пароль введен и подтвержден правильно. Если эти условия выполнены, код извлекает значения "user" и "password" из формы HTML и вставляет их соответственно в столбцы "Name" и "Password", относящиеся к новой строке в базе данных "Wishers". После создания строки код закрывает подключение к базе данных и переадресует приложение на страницу  ``editWishList.php`` .
+
+[start=7]
+.  Завершите блок  ``if ($_SERVER['REQUEST_METHOD'] == "POST")`` , добавив код, вставляющий новую запись в базу данных "Wishers". В соответствии с кодом выполняется проверка того, что имя пользователя указано однозначно и что пароль введен и подтвержден правильно. Если эти условия выполнены, код извлекает значения "user" и "password" из формы HTML и вставляет их соответственно в столбцы "Name" и "Password", относящиеся к новой строке в базе данных "Wishers". После создания строки код закрывает подключение к базе данных и переадресует приложение на страницу  ``editWishList.php`` .
 
 *Для базы данных MySQL*
 
 
-[source,java]
+[source,php]
 ----
 
 /** Check that the page was requested from itself via the POST method. */
@@ -369,7 +343,7 @@
 *Для базы данных Oracle*
 
 
-[source,java]
+[source,php]
 ----
 
 /** Check that the page was requested from itself via the POST method. */
@@ -456,7 +430,9 @@
     }
     ?> *
 ----
-2. Введите следующий блок кода PHP в форме ввода HTML под кодом для ввода пароля:
+
+[start=2]
+. Введите следующий блок кода PHP в форме ввода HTML под кодом для ввода пароля:
 
 [source,php]
 ----
@@ -469,7 +445,9 @@
  }                
  ?>*
 ----
-3. Введите следующий блок кода PHP в форме ввода HTML под кодом для подтверждения пароля:
+
+[start=3]
+. Введите следующий блок кода PHP в форме ввода HTML под кодом для подтверждения пароля:
 
 [source,php]
 ----
@@ -493,16 +471,33 @@
 === Тестирование функциональных возможностей по созданию нового пользователя "Create New Wisher"
 
 1. Запустите приложение. Откроется страница-указатель.
+
 image::images/index-php-3.png[]
-2. На странице-указателе щелкните ссылку рядом с текстом "Still don't have a wish list?" Откроется следующая форма:
+
+[start=2]
+. На странице-указателе щелкните ссылку рядом с текстом "Still don't have a wish list?" Откроется следующая форма:
+
 image::images/create-new-wisher-empty-form.png[]
-3. Оставьте поля пустыми и нажмите кнопку Register ("Зарегистрировать"). На экране появится сообщение об ошибке.
+
+[start=3]
+. Оставьте поля пустыми и нажмите кнопку Register ("Зарегистрировать"). На экране появится сообщение об ошибке.
+
 image::images/create-new-wisher-name-empty.png[]
-4. Введите имя зарегистрированного пользователя, например, "Tom" в поле "Your name", внимательно заполните другие поля и нажмите кнопку "Register". На экране появится сообщение об ошибке.
-5. Заполните поля "Password" и "Please confirm your password" различными значениями и нажмите кнопку "Register". На экране появится сообщение об ошибке.
-6. Введите "Bob" в поле "Your name", укажите в полях пароля один и тот же пароль и нажмите кнопку "Register". Откроется пустая страница, однако переадресация осуществляется правильно, поскольку URL-адрес заканчивается текстом "editWishList.php":
+
+[start=4]
+. Введите имя зарегистрированного пользователя, например, "Tom" в поле "Your name", внимательно заполните другие поля и нажмите кнопку "Register". На экране появится сообщение об ошибке.
+
+[start=5]
+. Заполните поля "Password" и "Please confirm your password" различными значениями и нажмите кнопку "Register". На экране появится сообщение об ошибке.
+
+[start=6]
+. Введите "Bob" в поле "Your name", укажите в полях пароля один и тот же пароль и нажмите кнопку "Register". Откроется пустая страница, однако переадресация осуществляется правильно, поскольку URL-адрес заканчивается текстом "editWishList.php":
+
 image::images/edit-wish-list-empty.png[]
-7. Проверьте, что данные сохранены в базе данных, путем перехода к разделу "Wishers" в окне "Services", расположенном под узлом "wislist1", и выбора "View Data" в контекстном меню 
+
+[start=7]
+. Проверьте, что данные сохранены в базе данных, путем перехода к разделу "Wishers" в окне "Services", расположенном под узлом "wislist1", и выбора "View Data" в контекстном меню 
+
 image::images/wishers.png[]
 
 
diff --git a/netbeans.apache.org/src/content/kb/docs/php/wish-list-lesson3_zh_CN.asciidoc b/netbeans.apache.org/src/content/kb/docs/php/wish-list-lesson3_zh_CN.asciidoc
index 9d9a68a..89c8662 100644
--- a/netbeans.apache.org/src/content/kb/docs/php/wish-list-lesson3_zh_CN.asciidoc
+++ b/netbeans.apache.org/src/content/kb/docs/php/wish-list-lesson3_zh_CN.asciidoc
@@ -17,18 +17,6 @@
 //     under the License.
 //
 
-= 使用 PHP 创建数据库驱动的应用程序
-:jbake-type: tutorial
-:jbake-tags: tutorials 
-:jbake-status: published
-:icons: font
-:syntax: true
-:source-highlighter: pygments
-:toc: left
-:toc-title:
-:description: 使用 PHP 创建数据库驱动的应用程序 - Apache NetBeans
-:keywords: Apache NetBeans, Tutorials, 使用 PHP 创建数据库驱动的应用程序
-
 = 第 3 课:创建新的应用程序用户
 :jbake-type: tutorial
 :jbake-tags: tutorials 
@@ -41,28 +29,6 @@
 :description: 第 3 课:创建新的应用程序用户 - Apache NetBeans
 :keywords: Apache NetBeans, Tutorials, 第 3 课:创建新的应用程序用户
 
-
-
-1. link:wish-list-tutorial-main-page.html[+使用 PHP 创建数据库驱动的应用程序 - 主页+]
-2. 
-创建数据库
-
-1. link:wish-list-lesson1.html[+创建 MySQL 数据库+]
-2. link:wish-list-oracle-lesson1.html[+创建 Oracle 数据库表+]
-3. 
-link:wish-list-lesson2.html[+设计应用程序。从数据库读取数据+]
-
-4. *=> 创建新的应用程序用户*
-
-5. link:wish-list-lesson4.html[+优化代码+]
-6. link:wish-list-lesson5.html[+添加安全功能。实现应用程序用户登录+]
-7. link:wish-list-lesson6.html[+在数据库中添加新的愿望+]
-8. link:wish-list-lesson7.html[+更新和删除数据库中的条目+]
-9. link:wish-list-lesson8.html[+使用 CSS 技术改进应用程序的外观+]
-10. link:wish-list-lesson9.html[+将应用程序部署到远程 Web 服务器+]
-
-image::images/netbeans-stamp-80-74-73.png[title="此页上的内容适用于 NetBeans IDE 7.2、7.3、7.4 和 8.0"]
-
 在本课中,将使用“创建新的许愿者”功能扩展应用程序。
 
 该实现将影响 index.php 文件,并将创建名为  ``createNewWisher.php``  和  ``editWishList.php``  的两个新文件。
@@ -70,9 +36,7 @@
 “创建新的许愿者”用例包含三个步骤:
 
 1. <<addLinkNewWisher,用户打开主页 index.php,然后单击链接进行注册>>。
-
 2. <<implementCreateNewWisher,用户切换到 createNewWisher.php 页以创建新的许愿者>>。
-
 3. 在创建新的许愿者后,用户将切换到 editWishList.php,以便在其中为该用户创建愿望列表。
 
 image::images/page-flow-diagram-l3.png[]
@@ -93,7 +57,7 @@
 打开  ``index.php`` 。在结束 </form> 标记下面添加一个空行。在该空行中,输入以下代码块:
 
 
-[source,xml]
+[source,html]
 ----
 
  <br>Still don't have a wish list?! <a href="createNewWisher.php">Create now</a>
@@ -121,7 +85,7 @@
 在  ``createNewWisher.php``  的 PHP 块下面键入或粘贴以下 HTML 块:
 
 
-[source,xml]
+[source,html]
 ----
 
 <html>
@@ -133,9 +97,9 @@
 </html>
 ----
 
-*注:* ``password``  类型是一种特殊的文本字段类型,其中将字符替换为星号。该代码显示一个 link:wish-list-lesson3.html#htmlForm[+HTML 窗体+],以使用户在文本字段中输入新许愿者的名字和口令。在用户单击 "Register" 按钮时,输入的数据将传输到相同页 ( ``createNewWisher.php`` ) 进行验证。
+NOTE:  ``password``  类型是一种特殊的文本字段类型,其中将字符替换为星号。该代码显示一个 link:wish-list-lesson3.html#htmlForm[+HTML 窗体+],以使用户在文本字段中输入新许愿者的名字和口令。在用户单击 "Register" 按钮时,输入的数据将传输到相同页 ( ``createNewWisher.php`` ) 进行验证。
 
-*注:*您可以忽略来自 HTML 验证器的警告。
+NOTE: 您可以忽略来自 HTML 验证器的警告。
 
 
 === 验证数据并将其添加到数据库中
@@ -146,7 +110,7 @@
 
 1. 初始化变量。前几个变量用于传送数据库凭证,其他变量在 PHP 操作中使用。
 
-[source,java]
+[source,php]
 ----
 
 /** database connection credentials */$dbHost="localhost"; //on MySql
@@ -161,9 +125,11 @@
 
 			
 ----
-2. 在这些变量下面,添加一个  ``if `` 子句。 ``if``  子句的参数检查是否通过 POST 方法从自身请求页面。如果不是,将不执行进一步验证,并且页面显示上述空字段。
 
-[source,java]
+[start=2]
+. 在这些变量下面,添加一个  ``if `` 子句。 ``if``  子句的参数检查是否通过 POST 方法从自身请求页面。如果不是,将不执行进一步验证,并且页面显示上述空字段。
+
+[source,php]
 ----
 
 /** Check that the page was requested from itself via the POST method. */
@@ -171,9 +137,11 @@
 
 }
 ----
-3. 在  ``if``  子句的花括号中,添加另一个  ``if``  子句,用于检查用户是否填写了许愿者的名字。如果文本字段 "user" 为空,则将  ``$userIsEmpty``  值更改为 true。
 
-[source,java]
+[start=3]
+. 在  ``if``  子句的花括号中,添加另一个  ``if``  子句,用于检查用户是否填写了许愿者的名字。如果文本字段 "user" 为空,则将  ``$userIsEmpty``  值更改为 true。
+
+[source,php]
 ----
 
 /** Check that the page was requested from itself via the POST method. */
@@ -185,13 +153,14 @@
     }*
 }
 ----
-4. 
-添加代码以建立数据库连接。如果无法建立连接,则将 MySQL 或 Oracle OCI8 错误发送到输出。
+
+[start=4]
+. 添加代码以建立数据库连接。如果无法建立连接,则将 MySQL 或 Oracle OCI8 错误发送到输出。
 
 *对于 MySQL 数据库:*
 
 
-[source,java]
+[source,php]
 ----
 
 /** Check that the page was requested from itself via the POST method. */
@@ -215,7 +184,7 @@
 *对于 Oracle 数据库:*
 
 
-[source,java]
+[source,php]
 ----
 
 /** Check that the page was requested from itself via the POST method. */
@@ -234,12 +203,14 @@
     }*
 }
 ----
-5. 添加代码以检查名字与 "user" 字段匹配的用户是否已存在。该代码的工作方式是,尝试查找名字与 "user" 字段中的名字匹配的许愿者 ID 号。如果此类 ID 号存在,则将  ``$userNameIsUnique``  的值更改为 "false"。
+
+[start=5]
+. 添加代码以检查名字与 "user" 字段匹配的用户是否已存在。该代码的工作方式是,尝试查找名字与 "user" 字段中的名字匹配的许愿者 ID 号。如果此类 ID 号存在,则将  ``$userNameIsUnique``  的值更改为 "false"。
 
 *对于 MySQL 数据库:*
 
 
-[source,java]
+[source,php]
 ----
 
 /** Check that the page was requested from itself via the POST method. */
@@ -264,7 +235,7 @@
 *对于 Oracle 数据库:*
 
 
-[source,java]
+[source,php]
 ----
 
 /** Check that the page was requested from itself via the POST method. */
@@ -295,9 +266,11 @@
     }*
 }
 ----
-6. 在检查用户是否唯一的代码后面,添加一系列  ``if``  子句,以便检查用户是否正确输入并确认了口令。该代码检查窗体中的 Password ("password") 和 Confirm Password ('password2) 字段是否不为空以及是否相同。如果为空或不相同,则会更改相应的布尔型变量的值。
 
-[source,java]
+[start=6]
+. 在检查用户是否唯一的代码后面,添加一系列  ``if``  子句,以便检查用户是否正确输入并确认了口令。该代码检查窗体中的 Password ("password") 和 Confirm Password ('password2) 字段是否不为空以及是否相同。如果为空或不相同,则会更改相应的布尔型变量的值。
+
+[source,php]
 ----
 
 if ($_POST["password"]=="") {$passwordIsEmpty = true;
@@ -305,13 +278,14 @@
 }if ($_POST["password"]!=$_POST["password2"]) {$passwordIsValid = false;
 } 
 ----
-7. 
-通过添加在 "wishers" 数据库中插入新条目的代码,完成  ``if ($_SERVER['REQUEST_METHOD'] == "POST")``  子句。该代码检查是否唯一地指定了许愿者名字,以及是否有效地输入并确认了口令。如果符合这些条件,该代码将从 HTML 窗体中提取 "user" 和 "password" 值,然后将其分别插入到 wishers 数据库新行中的 Name 和 Password 列。在创建该行后,该代码将关闭数据库连接并将应用程序重定向到  ``editWishList.php``  页。
+
+[start=7]
+. 通过添加在 "wishers" 数据库中插入新条目的代码,完成  ``if ($_SERVER['REQUEST_METHOD'] == "POST")``  子句。该代码检查是否唯一地指定了许愿者名字,以及是否有效地输入并确认了口令。如果符合这些条件,该代码将从 HTML 窗体中提取 "user" 和 "password" 值,然后将其分别插入到 wishers 数据库新行中的 Name 和 Password 列。在创建该行后,该代码将关闭数据库连接并将应用程序重定向到  ``editWishList.php``  页。
 
 *对于 MySQL 数据库:*
 
 
-[source,java]
+[source,php]
 ----
 
 /** Check that the page was requested from itself via the POST method. */
@@ -369,7 +343,7 @@
 *对于 Oracle 数据库:*
 
 
-[source,java]
+[source,php]
 ----
 
 /** Check that the page was requested from itself via the POST method. */
@@ -456,7 +430,9 @@
     }
     ?> *
 ----
-2. 在 HTML 输入窗体中,在口令输入代码下输入以下 PHP 代码块:
+
+[start=2]
+. 在 HTML 输入窗体中,在口令输入代码下输入以下 PHP 代码块:
 
 [source,php]
 ----
@@ -469,7 +445,9 @@
  }                
  ?>*
 ----
-3. 在 HTML 输入窗体中,在口令确认代码下面输入以下 PHP 代码块:
+
+[start=3]
+. 在 HTML 输入窗体中,在口令确认代码下面输入以下 PHP 代码块:
 
 [source,php]
 ----
@@ -493,16 +471,33 @@
 === 测试“创建新的许愿者”功能
 
 1. 运行应用程序。索引页打开。
+
 image::images/index-php-3.png[]
-2. 在索引页中,单击 "Still don't have a wish list?" 文本旁边的链接。以下窗体打开:
+
+[start=2]
+. 在索引页中,单击 "Still don't have a wish list?" 文本旁边的链接。以下窗体打开:
+
 image::images/create-new-wisher-empty-form.png[]
-3. 将这些字段保留空白,然后单击 "Register"。此时将显示一条错误消息。
+
+[start=3]
+. 将这些字段保留空白,然后单击 "Register"。此时将显示一条错误消息。
+
 image::images/create-new-wisher-name-empty.png[]
-4. 在 "Your name" 字段中输入注册的许愿者名字(如 Tom),正确填写其他字段,然后单击 "Register"。此时将显示一条错误消息。
-5. 使用不同的值填写 "Password" 和 "Please confirm your password" 字段,然后单击 "Register"。此时将显示一条错误消息。
-6. 在 "Your name" 字段中输入 Bob,在两个口令字段中指定相同的口令,然后单击 "Register"。打开的页为空页,但正确传送了重定向,因为 URL 以 editWishList.php 结尾:
+
+[start=4]
+. 在 "Your name" 字段中输入注册的许愿者名字(如 Tom),正确填写其他字段,然后单击 "Register"。此时将显示一条错误消息。
+
+[start=5]
+. 使用不同的值填写 "Password" 和 "Please confirm your password" 字段,然后单击 "Register"。此时将显示一条错误消息。
+
+[start=6]
+. 在 "Your name" 字段中输入 Bob,在两个口令字段中指定相同的口令,然后单击 "Register"。打开的页为空页,但正确传送了重定向,因为 URL 以 editWishList.php 结尾:
+
 image::images/edit-wish-list-empty.png[]
-7. 要检查数据是否存储在数据库中,请导航到 "Services"(服务)窗口中的 wislist1 节点下面的 wishers,然后从上下文菜单中选择 "View Data"(查看数据) 
+
+[start=7]
+. 要检查数据是否存储在数据库中,请导航到 "Services"(服务)窗口中的 wislist1 节点下面的 wishers,然后从上下文菜单中选择 "View Data"(查看数据) 
+
 image::images/wishers.png[]