<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<html lang="en">

<head>
<meta http-equiv="Content-Language" content="en-us">
<meta name="GENERATOR" content="Microsoft FrontPage 5.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Creating and editing code templates</title>
<link rel="stylesheet" type="text/css" href="../help.css">
</head>

<body>

<h1>Creating and editing code templates</h1>

<p>Code templates are stored in templates.xml in the org.eclipse.cdt.ui and 
org.eclipse.jdt.ui folders. </p>

<p>To create a code template:</p>

<ol>
  <li>Click <b>Window &gt; Preferences</b>.</li>
  <li>Expand <b>C/C++</b>, and click <b>Code Templates</b>.</li>
  <li>Click <b>New</b>.</li>
  <li><p>Do the following:</p>
	<ul>
  		<li>In the <b>Name</b> field, enter a template name.</li>
  		<li>Click the <b>Context</b> button and select a template type: <b>C</b> or <b>C++</b>.</li>
  		<li>In the <b>Description</b> field, enter a description for your new 
        code template.</li>
  		<li>In the <b>Pattern</b> field, enter the code for your template.</li>
  		<li>Click <b>Insert Variable</b> to add a variable from the list to the 
        code you have entered in the Pattern box.</li>
	</ul>
 </li>
 <li>Click <b>OK</b>.<br>
 The new code template is now displayed in the list.</li>
</ol>

<p>To edit a code template:</p>

<ol>
  <li>Click <b>Window &gt; Preferences</b>.</li>
  <li>Expand <b>C/C++</b>, and click <b>Code Templates</b>.</li>
  <li>Click <b>Edit</b>. The New Template dialog box opens.</li>
  <li><p>Do the following:</p>
	<ul>
  		<li>In the <b>Name</b> field, change the template name to create a new 
        template based on the current template. </li>
  		<li>Click the <b>Context</b> button and select a template type to change the nature of the template.</li>
  		<li>In the <b>Description</b> field, change the description of the code 
        template to reflect your changes.</li>
  		<li>In the <b>Pattern</b> field, edit the code.</li>
  		<li>Click <b>Insert Variable</b> to add a variable from the list to the 
        code you have edited in the Pattern box.</li>
	</ul>
 </li>
 <li>Click <b>OK</b>.</li>
</ol>

<p><img border="0" src="../images/ngconcepts.gif" ALT="Related concepts" width="143" height="21">
<br>
<a href="../concepts/cdt_c_content_assist.htm">Content Assist</a></p>
<p><img border="0" src="../images/ngtasks.gif" ALT="Related tasks" width="143" height="21">
<br>
<a href="cdt_t_contentassist.htm">Using Content Assist</a><br>
<a href="cdt_t_imp_code_temp.htm">Importing and exporting code templates</a></p>
<p><img border="0" src="../images/ngref.gif" ALT="Related reference" width="143" height="21"> <br>
<a href="../reference/cdt_u_code_temp.htm">Code Templates page, Preferences window</a><br>
<a href="../reference/cdt_u_code_temp.htm">Code Templates page</a></p>
<p>
<img src="../images/ng03_04.gif" ALT="IBM Copyright Statement" BORDER=0 width="324" height="14">

</body>

</html>