###############################################################################
# Copyright (c) 2004, 2010 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
###############################################################################
providerName=Eclipse Web Tools Platform
pluginName=SSE CSS Source Editor
CSS_Source_Page_Editor.name=CSS Editor
CSS_Files.name=CSS Files
CSS_Source.name=Editor
CSS_Content_Assist.name=Content Assist
CSS_Styles.name=Styles
CSS_Templates.name=Templates
CSS_Syntax_Coloring=Syntax Coloring
WebContentSettings.name=Web Content Settings
###############################################################################
# The following property keys maybe unused. Commented out on 12/7/2004. Uncomment if needed.
#CSS_Annotations.name=CSS Annotations


#org.eclipse.ui.newWizards extension point
_UI_WIZARD_NAME = CSS File
_UI_WIZARD_CREATE_NEW_FILE = Create a new CSS file
##
AddTask.label=Add &Task...
AddTask.tooltip=Add Task...
AddBookmark.label=Add Boo&kmark...
AddBookmark.tooltip=Add Bookmark...
SelectRuler.label=Select Ruler
##
CleanupDocument_label=Cleanup Document...
CleanupDocument_tooltip=Cleanup Document
StructureSelectEnclosing_label=Enclosing Element
StructureSelectEnclosing_tooltip=Expand selection to include enclosing element
StructureSelectNext_label=Next Element
StructureSelectNext_tooltip=Expand selection to include next sibling
StructureSelectPrevious_label=Previous Element
StructureSelectPrevious_tooltip=Expand selection to include previous sibling
StructureSelectHistory_label=Restore Last Selection
StructureSelectHistory_tooltip=Restore last selection
##
All_CSS_context_type_Extension_Element.name=All CSS
CSS_New_context_type_Extension_Element.name=New CSS
##
preferenceKeywords.files=editor css creating saving files suffix specified encoding iana
preferenceKeywords.source=editor css source formatting line width insert break properties wrapping style attribute html indent tabs spaces size capitalization identifier property name value uppercase lowercase
preferenceKeywords.contentassist=editor css content code assist complete completion insert overwrite single proposal common prefix automatically import fill argument name guess alphabetical hide auto activation trigger category categories separate specific
preferenceKeywords.templates=editor css templates snippet macros
preferenceKeywords.styles=editor css style customize syntax highlighting type text content foreground background bold color
preferenceKeywords.webcontent=editor css web content settings profile style

scope.structured.text.editor.css.name=Editing CSS Source
scope.structured.text.editor.css.description=Editing CSS Source

Colors.atmarkRule=At Mark Rule
Colors.selector=Selector
Colors.media=Media
Colors.comment=Comment
Colors.propertyName=Property Name
Colors.propertyValue=Property Value
Colors.uri=URI
Colors.string=String
Colors.error=Error
Colors.combinator=Combinator
Colors.pseudo=Pseudo-class
Colors.attrValue=Attribute Value
Colors.attrOp=Attribute Operator
Colors.attrName=Attribute Name
Colors.attrDelim=Attribute Delimiter
Colors.universal=Universal Selector
Colors.class=Class selector
Colors.id=ID Selector

proposalCategory.css=CSS Proposals
proposalCategory.cssTemplates=CSS Template Proposals

proposalInfo.name=Additional Proposal Information
