#########################################
# (c) Copyright IBM Corp. 2000, 2009.
# All Rights Reserved.
#########################################

Bundle-Vendor.0 = Eclipse Web Tools Platform
Bundle-Name.0 = Eclipse Web Developer Tools


StaticWebProject.name=Static Web Project
StaticWebProject.description=Create a Web project for static content (HTML files) only

StaticWebSettings=Simple Web
WebProjectFeatures.name=Web Project Features
web.category_ui_=Web
StaticWebModule.name=Simple Web Module
perspective.name = Web
webActionSet.label = Web Project Wizards Action Set
action.label.CSS = CSS
action.tooltip.CSS = Create a new Cascading Style Sheet
action.label.JS = JavaScript
action.tooltip.JS = Create a new JavaScript file
action.label.HTML = HTML
action.tooltip.HTML = Create a new HTML page