<?xml version="1.0" encoding="UTF-8"?>
<?NLS type="org.eclipse.help.contexts"?>
<!-- /*******************************************************************************
 * Copyright (c) 2000, 2005 IBM Corporation and others.
 * All rights reserved. This program and the accompanying materials
 * are made available under the terms of the Eclipse Public License v1.0
 * which accompanies this distribution, and is available at
 * http://www.eclipse.org/legal/epl-v10.html
 * 
 * Contributors:
 *     IBM Corporation - initial API and implementation
 *******************************************************************************/ -->
<contexts>
<context id="jspf1000">
<description>Select values for the following properties from the drop-down lists:
-  <b>Character code:</b> Specifies the page directive's pageEncoding value and contentType charset. In HTML documents, this value is also used for the &lt;META&gt; tag's charset property.
-  <b>Language:</b> Specifies the page directive's programming language.
-  <b>Content Type:</b> Specifies the contentType's TYPE value for the page directive. In HTML documents, this value is also used for the &lt;META&gt; tag's content property.
</description>
<topic label="Structured text editors for markup languages" href="../org.eclipse.wst.sse.doc.user/topics/csrcedt004.html"/>
<topic label="Editing text coded in markup languages - overview" href="../org.eclipse.wst.sse.doc.user/topics/tsrcedt000.html"/>
</context>

<context id="jspr0010">
<description>Select this option to open the <b>Rename Resource</b> dialog, if applicable, which lets you rename the currently selected Java element and references to that element.
</description>
<topic label="Source editors for markup languages" href="../org.eclipse.wst.sse.doc.user/topics/csrcedt004.html"/>
<topic label="Editing source code - overview" href="../org.eclipse.wst.sse.doc.user/topics/tsrcedt000.html"/>
</context>
<context id="jspr0020">
<description>Select this option to open the <b>Move</b> dialog, if applicable, which lets you move the currently selected Java element. For example, you can move a method from one class to another.
</description>
<topic label="Source editors for markup languages" href="../org.eclipse.wst.sse.doc.user/topics/csrcedt004.html"/>
<topic label="Editing source code - overview" href="../org.eclipse.wst.sse.doc.user/topics/tsrcedt000.html"/>
</context>

<context id="webx0050">
<description>This page lets you specify the line delimiter and the text encoding that will be used when you create or save a JavaServer Pages (JSP) file.

Various development platforms use different line delimiters to indicate the start of a new line. Select the operating system that corresponds to your development or deployment platform.
<b>Note:</b> This delimiter will not automatically be added to any documents that currently exist. It will be added only to documents that you create after you select the line delimiter type and click <b>Apply</b>, or to existing files that you open and then resave after you select the line delimiter type and click <b>Apply</b>.

The encoding attribute is used to specify the default character encoding set that is used when creating JSP files.  Changing the encoding causes any new JSP files that are created from scratch to use the selected encoding.
</description>
<topic label="Setting preferences for structured text editors" href="../org.eclipse.wst.sse.doc.user/topics/tsrcedt025.html"/>
</context>

<context id="webx0051">
<description>This page lets you customize the syntax highlighting that the JavaServer Pages (JSP) editor does when you are editing a file."

The <b>Content type</b> field contains a list of all the source types that you can select a highlighting style for. You can either select the content type that you want to work with from the drop-down list, or click text in the text sample window that corresponds to the content type for which you want to change the text highlighting.

The <b>Foreground</b> and <b>Background</b> push buttons open <b>Color</b> dialog boxes that let you specify text foreground and background colors, respectively. Select the <b>Bold</b> check box to make the specified content type appear in bold.

Click the <b>Restore Default</b> push button to set the highlighting styles back to their default values.
</description>
<topic label="Setting preferences for structured text editors" href="../org.eclipse.wst.sse.doc.user/topics/tsrcedt025.html"/>
</context>

<context id="webx0052">
<description>This page lets you create new and edit existing templates that will be used when you edit a JSP file.
</description>
<topic label="Adding and removing JSP templates" href="../org.eclipse.wst.sse.doc.user/topics/tsrcedt028.html"/>
<topic label="Setting preferences for structured text editors" href="../org.eclipse.wst.sse.doc.user/topics/tsrcedt025.html"/>
</context>

<context id="xmlm1050">
<description>Select this option to open the <b>Cleanup</b> dialog, which contains settings to update a document so that it is well-formed and formatted. Cleanup includes such activities as inserting missing tags, adding quotation marks around attribute values, node capitalization, and formatting a document.
</description>
<topic label="Structured text editors for markup languages" href="../org.eclipse.wst.sse.doc.user/topics/csrcedt004.html"/>
<topic label="Editing text coded in markup languages - overview" href="../org.eclipse.wst.sse.doc.user/topics/tsrcedt000.html"/>
</context>

</contexts>
