###############################################################################
# Copyright (c) 2004 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
###############################################################################
Templates.jspscriptlet.name=JSP scriptlet
Templates.jspscriptlet.desc=JSP scriptlet <%..%>
Templates.jspscriptlet.content=<% ${cursor} %>
Templates.jsphiddencomment.name=JSP \uc228\uaca8\uc9c4 \uc8fc\uc11d
Templates.jsphiddencomment.desc=JSP \uc228\uaca8\uc9c4 \uc8fc\uc11d <%-- --%>
Templates.jsphiddencomment.content=<%-- ${cursor} --%>
Templates.jspdeclaration.name=JSP \uc120\uc5b8
Templates.jspdeclaration.desc=JSP \uc120\uc5b8 <%!..%>
Templates.jspdeclaration.content=<%! ${cursor} %>
Templates.jspexpression.name=JSP \ud45c\ud604\uc2dd
Templates.jspexpression.desc=JSP \ud45c\ud604\uc2dd <%=..%>
Templates.jspexpression.content=<%= ${cursor} %>
Templates.jspincludedirective.name=JSP include \uc9c0\uc2dc\ubb38
Templates.jspincludedirective.desc=JSP include \uc9c0\uc2dc\ubb38
Templates.jspincludedirective.content=<%@ include file="${cursor}" %>
Templates.jsppagedirective.name=JSP page \uc9c0\uc2dc\ubb38
Templates.jsppagedirective.desc=JSP page \uc9c0\uc2dc\ubb38
Templates.jsppagedirective.content=<%@ page contentType="text/html; charset=${encoding}" ${cursor}%>
Templates.jsptaglibdirective.name=JSP taglib \uc9c0\uc2dc\ubb38
Templates.jsptaglibdirective.desc=JSP taglib \uc9c0\uc2dc\ubb38
Templates.jsptaglibdirective.content=<%@ taglib uri="" prefix="${cursor}" %>
Templates.jspcomment.name=JSP \uc8fc\uc11d
Templates.jspcomment.desc=JSP \uc8fc\uc11d <!-- -->
Templates.jspcomment.content=<!-- ${cursor} -->
