###############################################################################
# Copyright (c) 2001, 2007 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
#     Jens Lukowski/Innoopract - initial renaming/restructuring
#
###############################################################################
Error_opening_file_UI_=Error opening file
_UI_File_is_read_only=File {0} is read-only.
_32concat_EXC_=Editor could not be open on {0}
Multiple_errors=Multiple annotations found at this line:
_Undo_Text_Change__Ctrl_Z_UI_=&Undo Text Change @Ctrl+Z
Undo_Text_Change__UI_=Undo Text Change.
_Undo__0___Ctrl_Z_UI_=&Undo {0} @Ctrl+Z
Undo___0___UI_=Undo: {0}.
_Redo_Text_Change__Ctrl_Y_UI_=&Redo Text Change @Ctrl+Y
Redo_Text_Change__UI_=Redo Text Change.
_Redo__0___Ctrl_Y_UI_=&Redo {0} @Ctrl+Y
Redo___0___UI_=Redo: {0}.
Format_Document_UI_=Format
Format_Active_Elements_UI_=Format Active Elements
Text_Cut_UI_=Text Cut
Text_Paste_UI_=Text Paste
###############################################################################
Cleanup_Document_UI_=Cleanup Document

Editor_Cut_label=Cu&t@Ctrl+X
Editor_Cut_tooltip=Cut
Editor_Cut_image=
Editor_Cut_description=Cut

Editor_Copy_label=&Copy@Ctrl+C
Editor_Copy_tooltip=Copy
Editor_Copy_image=
Editor_Copy_description=Copy

Editor_Paste_label=&Paste@Ctrl+V
Editor_Paste_tooltip=Paste
Editor_Paste_image=
Editor_Paste_description=Paste

Editor_Delete_label=&Delete@Delete
Editor_Delete_tooltip=Delete
Editor_Delete_image=
Editor_Delete_description=Delete

ContentAssistProposals_label=Con&tent Assist
ContentAssistProposals_tooltip=Content Assist
ContentAssistProposals_description=Content Assist

QuickFix_label=&Quick Fix
QuickFix_tooltip=Quick Fix
QuickFix_image=
QuickFix_description=Quick Fix

ToggleComment_label=Togg&le Comment
ToggleComment_tooltip=Toggle Comment
ToggleComment_image=
ToggleComment_description=Toggle Comment
AddBlockComment_label=Add &Block Comment
AddBlockComment_tooltip=Add Block Comment
AddBlockComment_image=
AddBlockComment_description=Add Block Comment
RemoveBlockComment_label=Remove Bloc&k Comment
RemoveBlockComment_tooltip=Remove Block Comment
RemoveBlockComment_image=
RemoveBlockComment_description=Remove Block Comment
CleanupDocument_label=C&leanup Document...
CleanupDocument_tooltip=Cleanup Document
CleanupDocument_image=
CleanupDocument_description=Cleanup Document
FormatDocument_label=&Format
FormatDocument_tooltip=Format
FormatDocument_image=
FormatDocument_description=Format
FormatActiveElements_label=Format Act&ive Elements
FormatActiveElements_tooltip=Format Active Elements
FormatActiveElements_image=
FormatActiveElements_description=Format Active Elements
OpenFileFromSource_label=Op&en Selection
OpenFileFromSource_tooltip=Open an editor on the selected link
OpenFileFromSource_image=
OpenFileFromSource_description=Open an editor on the selected link
ShowTooltipDesc_label=Show &Tooltip Description
ShowTooltipDesc_tooltip=Displays the hover help for the selected element
ShowTooltipDesc_image=
ShowTooltipDesc_description=Displays the hover help for the selected element
StructureSelectEnclosing_label=&Enclosing Element
StructureSelectEnclosing_tooltip=Expand selection to include enclosing element
StructureSelectEnclosing_description=Expand selection to include enclosing element
StructureSelectNext_label=&Next Element
StructureSelectNext_tooltip=Expand selection to include next sibling
StructureSelectNext_description=Expand selection to include next sibling
StructureSelectPrevious_label=&Previous Element
StructureSelectPrevious_tooltip=Expand selection to include previous sibling
StructureSelectPrevious_description=Expand selection to include previous sibling
StructureSelectHistory_label=&Restore Last Selection
StructureSelectHistory_tooltip=Restore last selection
StructureSelectHistory_description=Restore last selection
Text_Shift_Right_UI_=Text Shift Right
Text_Shift_Left_UI_=Text Shift Left

_4concat=''{0}'' is not a valid input
## The following strings are for "XML->XML Source->XML Style" Preferences, "Web Tools->Source->HTML Style" Preferences, and "Web Tools->Source->JavaScript Style" Preferences
Content_type__UI_=Co&ntent type:
Foreground_UI_=&Foreground:
Background_UI_=&Background:
Bold_UI_=B&old
Italics_UI=Italics
Restore_Default_UI_=&Restore Default
Sample_text__UI_=&Sample text:
##
AddBreakpoint_label=Add &Breakpoint
AddBreakpoint_tooltip=Add Breakpoint
AddBreakpoint_description=Add Breakpoint
AddBreakpoint_error_dialog_title=Add Breakpoint
AddBreakpoint_error_dialog_message=Cannot add breakpoint
##
ToggleBreakpoint_label=Toggle Breakpoint
ToggleBreakpoint_tooltip=Toggle Breakpoint
ToggleBreakpoint_description=Toggle Breakpoint
##
EnableBreakpoint_label=Enable Breakpoint
EnableBreakpoint_tooltip=Enable Breakpoint
EnableBreakpoint_description=Enable Breakpoint
##
DisableBreakpoint_label=Disable Breakpoint
DisableBreakpoint_tooltip=Disable Breakpoint
DisableBreakpoint_description=Disable Breakpoint
##
ManageBreakpoints_add_label=Add &Breakpoint
ManageBreakpoints_remove_label=Remove Breakpoint
ManageBreakpoints_tooltip=Add/Remove Breakpoint
ManageBreakpoints_error_adding_title1=Add Breakpoint
ManageBreakpoints_error_adding_message1=Cannot add breakpoint

AbstractColorPageDescription=Customize the syntax highlighting by selecting the type of text whose style you want to customize from either the combo box or the sample text area
##
EditorModelUtil_0=model in invalid state
EditorModelUtil_1=There was a problem adding adapter factories

# web content settings
UI_Default_HTML_DOCTYPE_ID___1=&Document type:
UI_CSS_profile___2=&CSS profile:
UI_Target_Device___3=&Target device:

Editor_ToggleInsertMode_label=Sma&rt Insert Mode

##########################################################################
# These strings are used in Workbench menu bar
##########################################################################
ExpandSelectionToMenu_label=E&xpand Selection To
SourceMenu_label=&Source
#
FindOccurrencesActionProvider_0=Current selection does not resolve to a searchable element
RemoveAction_0=Remove Property
ShowPropertiesAction_0=P&roperties
ContentOutlineConfiguration_0=Collapse All
ContentOutlineConfiguration_1=Link with Editor
AbstractOpenOn_0=Current text selection does not resolve to a file
FormatActionDelegate_jobName=Formatting...
FormatActionDelegate_errorStatusMessage=Exceptions occurred while formatting documents
FormatActionDelegate_3=Formatting {0}
FormatActionDelegate_4=Exception occurred while formatting document {0}
FormatActionDelegate_5=MalformedInputException occurred while formatting document {0}
TranslucencyPreferenceTab_0=Read-Only text style
TranslucencyPreferenceTab_1=Read-Only contrast percentage:
StructuredTextEditorPreferencePage_2=Matching brackets highlight
StructuredTextEditorPreferencePage_6=The following preferences apply to the HTML, JSP, XML, and other source editors.
StructuredTextEditorPreferencePage_20=Highlight &matching brackets
StructuredTextEditorPreferencePage_23=Appearance co&lor options:
StructuredTextEditorPreferencePage_24=C&olor:
StructuredTextEditorPreferencePage_30=&Report problems as you type
StructuredTextEditorPreferencePage_37=Empty input
StructuredTextEditorPreferencePage_38=is not a valid input.
StructuredTextEditorPreferencePage_39=Inform when unsupported content type is in editor
StructuredTextEditorPreferencePage_40=Also see the <a>''{0}''</a> preferences.
StructuredTextEditorPreferencePage_41=Completion proposal background
StructuredTextEditorPreferencePage_42=Completion proposal foreground
StructuredTextEditorPreferencePage_43=Parameter hints background
StructuredTextEditorPreferencePage_44=Parameter hints foreground
TaskTagPreferenceTab_0=Low
TaskTagPreferenceTab_1=Normal
TaskTagPreferenceTab_2=High
TaskTagPreferenceTab_3=N/A
TaskTagPreferenceTab_5=Task Tag
TaskTagPreferenceTab_6=Tag:
TaskTagPreferenceTab_7=Priority:
TaskTagPreferenceTab_12=Tag
TaskTagPreferenceTab_13=Priority
TaskTagPreferenceTab_14=New...
TaskTagPreferenceTab_15=Edit...
TaskTagPreferenceTab_16=Remove
TaskTagPreferenceTab_17=Select All
TaskTagPreferenceTab_18=Deselect All
TaskTagPreferenceTab_19=Note: tags are case insensitive
TaskTagPreferenceTab_20=Task Tags
TaskTagPreferenceTab_22=Task Tags Settings Changed
TaskTagPreferenceTab_23=The task tags settings have changed.  Make these changes effective now?
TaskTagPreferenceTab_24=Yes
TaskTagPreferenceTab_25=No
TaskTagPreferenceTab_26=Cancel
TaskTagPreferenceTab_27=Scanning files for tasks
TaskTagPreferenceTab_28=detection aborted
TaskTagPreferenceTab_29=detection completed
TaskTagPreferenceTab_30=detection encountered errors
TaskTagPreferenceTab_31=Enable searching for Task Tags
TaskTagPreferencePage_32=Clean and redetect Tasks
TaskTagPreferenceTab_33=Tags in comments indicating Tasks:
TaskTagExclusionTab_01=Filters
TaskTagExclusionTab_02=Scan the selected Content Types:
TaskTagExclusionTab_03=Affected Content Types:

PropertyPreferencePage_01=Project Specific Configuration
PropertyPreferencePage_02=Select the project to configure:

FilePreferencePage_0=Expand the tree to edit preferences for a specific content type.
NoModificationCompletionProposal_0=No corrections available
ToggleBreakpointAction_0=Toggle &Breakpoints
ManageBreakpointAction_0=&Enable Breakpoints
ManageBreakpointAction_1=&Disable Breakpoints
EditBreakpointAction_0=Breakpoint &Properties...
## Used in Structured Text Editor Preference Page / Hovers Tab
TextHoverPreferenceTab_title=Hovers
TextHoverPreferenceTab_hoverPreferences=Text &Hover key modifier preferences:
TextHoverPreferenceTab_keyModifier=Pressed key &modifier while hovering:
TextHoverPreferenceTab_description=Description:
TextHoverPreferenceTab_modifierIsNotValid=Modifier ''{0}'' is not valid.
TextHoverPreferenceTab_modifierIsNotValidForHover=Modifier ''{0}'' for ''{1}'' hover is not valid.
TextHoverPreferenceTab_duplicateModifier=''{0}'' hover uses the same modifier as ''{1}'' hover.
TextHoverPreferenceTab_nameColumnTitle=Text Hover Name
TextHoverPreferenceTab_modifierColumnTitle=Pressed Key Modifier While Hovering
TextHoverPreferenceTab_delimiter=+
TextHoverPreferenceTab_insertDelimiterAndModifierAndDelimiter=\ + {0} +
TextHoverPreferenceTab_insertModifierAndDelimiter=\ {0} +
TextHoverPreferenceTab_insertDelimiterAndModifier=\ + {0}
combinationHover_label=Combined Hover
combinationHover_desc=Tries the hovers in the sequence listed in the table below this one and uses the one which fits best for the selected element and the current context.
problemHover_label=Problem Description
problemHover_desc=Shows the description of the selected problem.
documentationHover_label=Documentation Description
documentationHover_desc=Shows the documentation of the selected element.
annotationHover_label=Annotation Description
annotationHover_desc=Shows the description of the selected annotation.
EditStructuredTextEditorPreferencesAction_0=Editor Preferences
StructuredTextEditorPreferencePage_0=Appearance
PreferenceManager_0=Original Error:

OccurrencesSearchQuery_0={0} - {1} Occurrences in {2}
OccurrencesSearchQuery_2=file
ShowView_errorTitle=Problems Showing View
proc_dirty_regions_0 = Processing Dirty Regions

textHoverMakeStickyHint=Press ''{0}'' for focus.

## Encoding
EncodingPreferencePage_0=Encoding settings for Web and XML files:
EncodingPreferencePage_1=Use 3 byte BOM (Byte Order Mark) when saving UTF-8 encoded files
busy=busy
caret_update=caret update
EmptyFilePreferencePage_0=Expand the tree to edit preferences for a specific content type.
OffsetStatusLineContributionItem_0=Selection Information:
OffsetStatusLineContributionItem_2=Partitions
OffsetStatusLineContributionItem_3=ITextRegions
OffsetStatusLineContributionItem_4=Structured Model Content-Type: 
OffsetStatusLineContributionItem_5=Model Handler: 
OffsetStatusLineContributionItem_6=Document Class: 
OffsetStatusLineContributionItem_7=Document Provider Class: 
OffsetStatusLineContributionItem_8=Partitionings:
OffsetStatusLineContributionItem_9=Start
OffsetStatusLineContributionItem_10=Length
OffsetStatusLineContributionItem_11=Type
OffsetStatusLineContributionItem_12=Input Type: 
OffsetStatusLineContributionItem_13=Partitioner: 
OffsetStatusLineContributionItem_14=Structured Selection
OffsetStatusLineContributionItem_15=Start
OffsetStatusLineContributionItem_16=Length
OffsetStatusLineContributionItem_17=Text Length
OffsetStatusLineContributionItem_18=Context
OffsetStatusLineContributionItem_19=Workbench Selection
OffsetStatusLineContributionItem_20=Indexed Regions

StructuredTextEditor_0=Unsupported content type warning
UnknownContentTypeDialog_0=Unsupported Content Type
UnknownContentTypeDialog_1=Do not show this message again
UnknownContentTypeDialog_2=Unsupported content type in editor.\nTo associate file extension with a supported content type,\nplease see <a>Content Types Preference Page</a>

################################################################################
## Below are possibly unused strings that may be removed
################################################################################
Save_label=&Save
An_error_has_occurred_when_ERROR_=An error has occurred when retrieving resources for the source editor. The Eclipse Workbench installation may have been corrupted.
## save as problems (next two) should match what is in workbench
Problems_During_Save_As_UI_=Problems During Save As...
Save_could_not_be_complete_UI_=Save could not be completed.
ManageBreakpoints_error_removing_title1=Remove Breakpoint
ManageBreakpoints_error_removing_message1=Cannot remove breakpoint
ManageBreakpoints_error_retrieving_message=Retrieving markers failed:
JSPSourcePreferencePageDescription=Embedded content type\'s source preferences will be used. Select the file type for customization
# The following lines copied from org\eclipse\ui\editors\text\TextEditorMessages.properties in org.eclipse.ui plugin
Editor_error_save_message=Save could not be completed. {0}
Editor_error_save_title=Problems During Save As...
Editor_warning_save_delete=The original file ''{0}'' has been deleted.

# actions
Previous_annotation=Previous Annotation
Next_annotation=Next Annotation
# Annotation Types
AnnotationTypes_Errors=Errors
AnnotationTypes_Warnings=Warnings
AnnotationTypes_Tasks=Tasks
AnnotationTypes_SearchResults=Search Results
AnnotationTypes_Bookmarks=Bookmarks
AnnotationTypes_Others=Others

Editor_ConvertToWindows_label=&Windows
Editor_ConvertToWindows_tooltip=Converts line delimiters to Windows
Editor_ConvertToWindows_image=
Editor_ConvertToWindows_description=Converts line delimiters to Windows

Editor_ConvertToUNIX_label=&UNIX
Editor_ConvertToUNIX_tooltip=Converts line delimiters to UNIX
Editor_ConvertToUNIX_image=
Editor_ConvertToUNIX_description=Converts line delimiters to UNIX

Editor_ConvertToMac_label=&Mac
Editor_ConvertToMac_tooltip=Converts line delimiters to Mac
Editor_ConvertToMac_image=
Editor_ConvertToMac_description=Converts line delimiters to Mac
ConvertLineDelimitersMenu_label=Co&nvert Line Delimiters to
FindOccurrences_label=O&ccurrences in File

ConvertLineDelimitersToCRLFActionDelegate_jobName=Converting line delimiters
ConvertLineDelimitersToCRLFActionDelegate_errorStatusMessage=Exceptions occurred while converting line delimiters
ConvertLineDelimitersToCRLFActionDelegate_3=Converting line delimiters for {0}
ConvertLineDelimitersToCRLFActionDelegate_4=Exception occurred while converting line delimiters for document {0}
TextHoverPreferenceTab_annotationRollover=&Enable annotation roll-over (on new editors)
TextHoverPreferenceTab_showAffordance=&Show affordance in hover on how to make it sticky
TextHoverPreferenceTab_enabled=&Enabled

BasicFindOccurrencesAction_0=region match:
BasicSearchLabelProvider_0=line
NavigationPreferenceTab_0=Modifier ''{0}'' is not valid.
OccurrencesSearchQuery_1={0} - 1 Occurrence in {1}
FileModelProvider_0=Error reloading {0}
JFaceNodeAdapter_0=Update Outline

ConfigureProjectSettings=Configure Project Specific Settings...
ConfigureWorkspaceSettings=Configure Workspace Settings...
EnableProjectSettings=Enable project specific settings

LoadingReferencedGrammars=Loading referenced grammars

## Folding
Folding=Folding
StructuredTextEditorPreferencePage_3=Enable &folding
Projection_Toggle_label= &Enable Folding
Projection_Toggle_tooltip= Toggles Folding
Projection_Toggle_description= Toggles folding for the current editor
Projection_Toggle_image=
Projection_ExpandAll_label= Expand &All
Projection_ExpandAll_tooltip= Expands All Collapsed Regions
Projection_ExpandAll_description= Expands any collapsed regions in the current editor
Projection_ExpandAll_image=
Projection_CollapseAll_label= Collapse A&ll
Projection_CollapseAll_tooltip= Collapses All Expanded Regions
Projection_CollapseAll_description= Collapse any expanded regions in the current editor
Projection_CollapseAll_image=

## These are copied from org.eclipse.ui.texteditor.EditorMessages.properties
## They are needed temporarily until CMVC defect 203158 / Bugzilla defect 20054 is fixed
Editor_ManageBookmarks_tooltip=Adds and Removes Bookmarks
Editor_ManageBookmarks_image=
Editor_ManageBookmarks_description=Adds and removes Bookmarks
Editor_ManageBookmarks_add_label=Add Boo&kmark...
Editor_ManageBookmarks_remove_label=Remove Boo&kmark
Editor_ManageBookmarks_add_dialog_title=Add Bookmark
Editor_ManageBookmarks_add_dialog_message=Enter Bookmark name
Editor_ManageBookmarks_error_dialog_title=Managing Bookmarks
Editor_ManageBookmarks_error_dialog_message=Problems managing bookmarks

Editor_ManageTasks_tooltip=Adds and Removes Tasks
Editor_ManageTasks_image=
Editor_ManageTasks_description=Adds and removes Tasks
Editor_ManageTasks_add_label=Add &Task...
Editor_ManageTasks_remove_label=Remove &Task
Editor_ManageTasks_add_dialog_title=Add Task
Editor_ManageTasks_add_dialog_message=Enter Task description
Editor_ManageTasks_error_dialog_title=Managing Tasks
Editor_ManageTasks_error_dialog_message=Problems managing tasks
################################################################################
## Above are possibly unused strings that may be removed
###############################################################################
StyledTextColorPicker_0=Pick a color
SyntaxColoring_Link=Default colors and font can be configured on the <a href=\"org.eclipse.ui.preferencePages.GeneralTextEditor\">Text Editors</a> and on the <a href=\"org.eclipse.ui.preferencePages.ColorsAndFonts\">Colors and Fonts</a> preference page.
SyntaxColoring_Description=Customize the syntax highlighting by selecting the type of text whose style you want to customize from either the list or the example text area.
