###############################################################################
# Copyright (c) 2000, 2012 IBM Corporation and others.
#
# This program and the accompanying materials
# are made available under the terms of the Eclipse Public License 2.0
# which accompanies this distribution, and is available at
# https://www.eclipse.org/legal/epl-2.0/
#
# SPDX-License-Identifier: EPL-2.0
#
# Contributors:
#     IBM Corporation - initial API and implementation
#     Trevor S. Kaufman - <endante@gmail.com> - bug 156152
###############################################################################
###############################################
# Message catalog for org.eclipse.team.ui
###############################################

information=Information messages were reported during this operation

ConfigureProjectAction_configureProject=Configure Project
ConfigureProjectWizard_configureProject=Share Project
ConfigureSynchronizeScheduleComposite_0=Pin {0} Synchronization?
ConfigureSynchronizeScheduleComposite_1=This {0} synchronization is not pinned which means it may be removed the next time a synchronize of the same type is performed. Do you want to pin it to prevent it from being replaced by a future synchronize?
ConfigureProjectWizard_description=Select the repository plug-in that will be used to share the selected project.
ConfigureProjectWizard_title=Share Project
ConfigureProjectWizardMainPage_selectRepository=Select a repository type:


IgnorePreferencePage_description=Use this page to specify a list of resource name patterns to exclude from version control.
IgnorePreferencePage_add=Add &Pattern...
IgnorePreferencePage_enterPatternLong=Enter a name or path pattern (* = any string, ? = any character):
IgnorePreferencePage_enterPatternShort=Add Ignore Pattern
IgnorePreferencePage_ignorePatterns=&Ignore Patterns:
IgnorePreferencePage_patternExistsLong=The entered pattern already exists.
IgnorePreferencePage_patternExistsShort=Pattern Already Exists
IgnorePreferencePage_remove=&Remove


simpleInternal=Internal error
exception=An exception occurred




SyncInfoCompareInput_localLabel=Local File
SyncInfoCompareInput_localLabelExists=Local File {0}
SyncInfoCompareInput_localLabelAuthorExists=Local File {0} ({1})
SyncInfoCompareInput_remoteLabel=Remote File
SyncInfoCompareInput_baseLabel=Common Ancestor
SyncInfoCompareInput_remoteLabelExists=Remote File {0}
SyncInfoCompareInput_remoteLabelAuthorExists=Remote File {0} ({1})
SyncInfoCompareInput_baseLabelExists=Common Ancestor {0}
SyncInfoCompareInput_baseLabelAuthorExists=Common Ancestor {0} ({1})
SyncInfoCompareInput_title={0}
SyncInfoCompareInput_0=File Changed
SyncInfoCompareInput_1=File has changed outside of this compare editor. What do you want to do?
SyncInfoCompareInput_2=Save
SyncInfoCompareInput_3=Opening Compare Editor
SyncInfoCompareInput_tooltip={0}: {1}

TeamAction_internal=Internal error occurred.

TextPreferencePage_add=Add &Extension...
TextPreferencePage_0=Add &Name...
TextPreferencePage_2=The extension cannot contain any wildcards
TextPreferencePage_3=The extension cannot contain the . character.
TextPreferencePage_5=The file name cannot contain *
TextPreferencePage_6=New File Type
TextPreferencePage_7=Enter a file name:
TextPreferencePage_1=Note that some of these entries are built in and can only be changed, but not removed.
TextPreferencePage_change=&Change
TextPreferencePage_enterExtensionLong=Please enter a file extension:
TextPreferencePage_enterExtensionShort=Enter File Extension
TextPreferencePage_extensionExistsLong=The entered extension already exists.
TextPreferencePage_extensionExistsShort=Extension Already Exists
TextPreferencePage_ExtensionNotCompleted=The extension pattern is not completed
TextPreferencePage_remove=&Remove


SynchronizationViewPreference_defaultPerspectiveNone=None
SynchronizationViewPreference_defaultPerspectiveDescription=This setting controls which perspective to open when resources are synchronized.\nTo indicate that a perspective should not be opened select 'None'.
SynchronizationViewPreference_defaultPerspectiveLabel=&Perspective:


ExportProjectSetMainPage_Select_the_projects_to_include_in_the_project_set__2=&Select the projects to include in the Team Project Set:
ExportProjectSetMainPage_Project_Set_File_Name__3=Select the export destination:
ExportProjectSetMainPage_WorkspaceDialogMessage=Export Team Project Set to Workspace
ExportProjectSetMainPage_WorkspaceDialogFilename=&Filename
ExportProjectSetMainPage_Browse_4=B&rowse...
ExportProjectSetMainPage_SelectAll=S&elect All
ExportProjectSetMainPage_SelectButton=Select the &working sets to include in the Team Project Set:
ExportProjectSetMainPage_Browse=Bro&wse ...
ExportProjectSetMainPage_You_have_specified_a_folder_5=You have specified a folder
ExportProjectSetMainPage_A_project_must_be_selected=A project must be selected.
ExportProjectSetMainPage_A_working_set_must_be_selected=A working set must be selected.
ExportProjectSetMainPage_None_of_the_selected_working_sets_have_an_available_project_to_export=None of the selected working sets have an available project to export.
ExportProjectSetMainPage_WorkspaceDialogTitleMessage=Select a folder in the workspace and enter a filename.
ExportProjectSetMainPage_WorkspaceDialogErrorNoFilename=Enter a filename.
ExportProjectSetMainPage_WorkspaceDialogErrorFilenameSegments=Filename cannot contain any segments.
ExportProjectSetMainPage_Project_Set_Files_3=Team Project Set Files (*.psf)
ExportProjectSetMainPage_WorkspaceDialogTitle=Team Project Set Save Location
ExportProjectSetMainPage_default=projectSet.psf
ExportProjectSetMainPage__File_name__1=&File name:
ExportProjectSetMainPage_WorkspaceButton=W&orkspace
ExportProjectSetMainPage_ExportWorkingSets=E&xport working sets
ExportProjectSetMainPage_Initial_description=Define which projects or working sets should be exported into the team project file.
ExportProjectSetMainPage_specifyFile=Please specify the destination file.

ImportProjectSetMainPage_Project_Set_File=F&ile
ImportProjectSetMainPage_Project_Set_Url=&URL
ImportProjectSetMainPage_Browse_3=B&rowse...
ImportProjectSetMainPage_Browse=Br&owse...
ImportProjectSetMainPage_The_given_URL_cannot_be_loaded=File from given URL cannot be loaded
ImportProjectSetMainPage_The_specified_file_does_not_exist_4=The specified file does not exist
ImportProjectSetMainPage_You_have_specified_a_folder_5=You have specified a folder
ImportProjectSetMainPage_workingSetNameEmpty=The working set name must not be empty
ImportProjectSetMainPage_createWorkingSetLabel=&Create a working set containing the imported projects
ImportProjectSetMainPage_workingSetLabel=&Working Set Name:
ImportProjectSetMainPage_AddToWorkingSet=&Add the imported team project set to a working set
ImportProjectSetMainPage_runInBackground=Run the import in the bac&kground
ImportProjectSetMainPage_jobName=Importing project set...
ImportProjectSetMainPage_specifyFile=Please specify a file to import.
ImportProjectSetMainPage_specifyURL=Please specify an URL to import.
ImportProjectSetMainPage_selectWorkingSet=Select a working set.
ImportProjectSetMainPage_projectSetFileInvalid=The specified file is not a valid Team Project Set file.
ImportProjectSetDialog_duplicatedWorkingSet_title=Working Set Exists
ImportProjectSetDialog_duplicatedWorkingSet_message=Working Set ''{0}'' already exists. What would you like to do?
ImportProjectSetDialog_duplicatedWorkingSet_replace=&Replace
ImportProjectSetDialog_duplicatedWorkingSet_merge=&Merge
ImportProjectSetDialog_duplicatedWorkingSet_skip=&Skip
ImportProjectSetDialog_duplicatedWorkingSet_applyToAll=&Apply to all working sets in this import
ImportProjectSetDialog_malformed_url=Malformed URL

ProjectSetContentHandler_Element_provider_must_be_contained_in_element_psf_4=Element provider must be contained in element psf
ProjectSetContentHandler_Element_project_must_be_contained_in_element_provider_7=Element project must be contained in element provider

ProjectSetExportWizard_Project_Set_1=Team Project Set
ProjectSetExportWizard_Export_a_Project_Set_3=Export a Team Project Set
ProjectSetExportWizard_Question_4=Question
ProjectSetExportWizard_Target_directory_does_not_exist__Would_you_like_to_create_it__5=Target directory does not exist. Would you like to create it?
ProjectSetExportWizard_Export_Problems_6=Export Problems
ProjectSetExportWizard_An_error_occurred_creating_the_target_directory_7=An error occurred creating the target directory
ProjectSetExportWizard_Question_8=Question
ProjectSetExportWizard_Target_already_exists__Would_you_like_to_overwrite_it__9=Target already exists. Would you like to overwrite it?
ProjectSetImportWizard_Project_Set_1=Team Project Set
ProjectSetImportWizard_0=Projects for repository type {0} could not be loaded as the type could not be found.
ProjectSetImportWizard_2=An error occurred while parsing the project set file: {0}
ProjectSetImportWizard_1=The following errors occurred while importing projects. Some projects may not be loaded.
ProjectSetImportWizard_3=An error occurred while performing the project set import: {0}
ProjectSelectionPage_0={0} does not directly support multiple project sharing. Select a project and click Share Project to share each project individually
ProjectSelectionPage_1={0} Project Selection Page
ProjectSelectionPage_2=&Share Project...
ProjectSetImportWizard_Import_a_Project_Set_3=Import a Team Project Set
ProjectSetImportWizard_workingSetExistsTitle=Working Set Exists
ProjectSetImportWizard_workingSetExistsMessage=Working set ''{0}'' already exists. Overwrite?

ImportProjectSetMainPage_allFiles=All Files (*.*)
ImportProjectSetAction_0=An error occurred importing this project set.
ImportProjectSetMainPage_Project_Set_Files_2=Team Project Set Files (*.psf)

SyncViewPreferencePage_lastRefreshRunNever=Never

###############################################
# Misc
###############################################

SynchronizeView_13=\ items selected
SynchronizeView_14=Error opening perspective
SynchronizeView_16=Error opening view
SynchronizeView_statusLine={0} [{1}]
SynchronizeView_linkWithEditor=Lin&k with Editor
SynchronizeView_linkWithEditorDescription=Link with active editor
SynchronizeView_linkWithEditorTooltip=Link with Editor and Selection
SynchronizeView_fileMustNotBeNull=File must not be null
SynchronizeView_noActiveWorkbenchPage=No active workbench page

StatisticsPanel_outgoing=Outgoing
StatisticsPanel_conflicting=Conflicting
StatisticsPanel_incoming=Incoming
StartupPreferencePage_0=Startup
StartupPreferencePage_1=Preferences that determine what happens after a Platform startup
StartupPreferencePage_2=How should this synchronization be initialized after a restart
StartupPreferencePage_3=Automatically populate this synchronization
StartupPreferencePage_4=Automatically synchronize this synchronization
StartupPreferencePage_5=Do nothing until population is manually requested
StatisticsPanel_noWorkingSet=<No Working Set>
StatisticsPanel_numbersTooltip=The number of ''{0}'' changes in the entire workspace.
StatisticsPanel_numberTotalSingular={0} change
StatisticsPanel_numberTotalPlural={0} changes

SyncViewerPreferencePage_0=Choose the presentation to be used when displaying workspace projects
SyncViewerPreferencePage_1=&Flat
SyncViewerPreferencePage_2=T&ree
SyncViewerPreferencePage_3=&Compressed Folders
SyncViewerPreferencePage_6=&Team
SyncViewerPreferencePage_7=General Version Control Preferences:
SyncViewerPreferencePage_13=Open the associated perspective when a synchronize operation completes
SyncViewerPreferencePage_14=Al&ways
SyncViewerPreferencePage_15=Perspectives
SyncViewerPreferencePage_16=Pro&mpt
SyncViewerPreferencePage_19=&Show all synchronization information in a resource\'s text label
SyncViewerPreferencePage_42=&Never
SyncViewerPreferencePage_43=Show the &file author in compare editors
SyncViewerPreferencePage_44=When &editing file in non-shared projects, automatically make files writable if prompting is not possible
SyncViewerPreferencePage_45=Re&use open compare editors when opening comparisons
SyncViewerPreferencePage_46=Run 'Project Set' import in the &background
SyncViewerPreferencePage_47=&Apply patch in 'Synchronize' view

PreferencePageContainerDialog_6=Synchronize Preferences

RefreshSubscriberJob_2a=No Changes
RefreshSubscriberJob_2b=Show ''{0}'' in Synchronize View
RefreshSubscriberJob_3=An error occurred while performing a scheduled synchronization

ReplaceLocalHistory_0=&Replace
ReplaceLocalHistory_1=Replace with Local History
SynchronizeManager_7=Error notifying of added/removal of synchronization
SynchronizeManager_8=Error initializing Synchronization
SynchronizeManager_9=Synchronization with id {0} is not in the registry
SynchronizeManager_10=Error saving synchronization
TeamSubscriberSyncPage_labelWithSyncKind={0} {1}
AbstractSynchronizeParticipant_4=Cannot initialize synchronization. Wrong descriptor type

SynchronizeManager_11=Error creating Synchronization {0}:
AbstractSynchronizeParticipant_5=Exception notifying participant listeners of changes.
AbstractSynchronizationLabelProvider_0={0} [{1}]

ChangesSection_filterHides=The current ''{0}'' mode is empty. {1}
ChangesSection_filterHidesSingular=However there is {0} change in the ''{1}'' mode.
ChangesSection_filterHidesPlural=However there are {0} changes in the ''{1}'' mode.
ChangesSection_filterChange=Change to ''{0}'' mode.
ChangesSection_noChanges=No changes in ''{0}''.
Utils_22=Incoming
Utils_23=Outgoing
Utils_24=Incoming/Outgoing
Utils_25=Conflicting
Utils_26=unknown mode
Utils_19=1 item
Utils_18={0} items
Utils_17=Could not open editor of type {0}
RefreshCompleteDialog_4=Synchronize Complete - {0}
RefreshCompleteDialog_4a=Scheduled Synchronize Complete - {0}
RefreshCompleteDialog_changesSingular={0}: {1} change found ({2}{3}{4}).
RefreshCompleteDialog_changesPlural={0}: {1} changes found ({2}{3}{4}).
RefreshCompleteDialog_newChangesSingular={0}: {1} new change found ({2}{3}{4}).
RefreshCompleteDialog_newChangesPlural={0}: {1} new changes found ({2}{3}{4}).
RefreshCompleteDialog_incomingChanges=incoming {0}
RefreshCompleteDialog_outgoingChanges=outgoing {0}
RefreshCompleteDialog_6={0}: No changes found.
ConfigureRefreshScheduleDialog_0=Configure Synchronize Schedule - {0}
ConfigureRefreshScheduleDialog_1=You can configure how to automatically synchronize ''{0}'' in the background on this dialog.
ConfigureRefreshScheduleDialog_2=The last synchronize started at: {0}
ConfigureRefreshScheduleDialog_3=&Synchronize automatically
ConfigureRefreshScheduleDialog_3a=Synchronize &at:
ConfigureRefreshScheduleDialog_4=&Repeat every:
ConfigureRefreshScheduleDialog_5=hour(s)
ConfigureRefreshScheduleDialog_6=minute(s)
ConfigureRefreshScheduleDialog_7=Number must be a positive number greater than 0
ConfigureMultipleProjectsWizard_0=Unshared Projects
ConfigureMultipleProjectsWizard_1=There are still projects that have not been shared. Finishing the wizard now will leave them in that state.
RefreshSchedule_changesSingular=\ ({0} change found)
RefreshSchedule_changesPlural=\ ({0} changes found)
RefreshSchedule_7=\ (No changes found)
RefreshSchedule_9=hours
RefreshSchedule_10=minutes
RefreshSchedule_11=hour
RefreshSchedule_12=minute
RefreshSchedule_13=Every {0} {1}
RefreshSchedule_14=Scheduled Synchronize
RefreshSchedule_15={0} {1}
RefreshSchedule_16=Run Once
ChangesSection_8=Show Errors
ChangesSection_9=Reset View
ChangesSection_10=Errors have occurred calculating the synchronization state for {0}
ChangesSection_11=Errors Populating View
ChangesSection_12=Multiple errors occurred while attempting to populate the view.

OpenComparedDialog_noChangeTitle=Operation Complete
OpenComparedDialog_noChangesMessage=No Changes Found.
GlobalRefreshAction_4=Synchronize...
GlobalRefreshAction_5=Synchronize {0}
ParticipantCompareDialog_1=&Remember this result by placing it in the Synchronize view
ParticipantCompareDialog_2=Confirm Save
ParticipantCompareDialog_3=Do you want to save changes?
SynchronizeManager_27=Confirm Open Perspective
SynchronizeManager_30=The Synchronize View is associated with the {0} perspective. Do you want to open that perspective now?
SynchronizeManager_31=&Remember my decision
SynchronizeManager_32 =The Synchronize View is associated with the {0} perspective.\n\n{1}\n\nDo you want to open this perspective now?
ParticipantPagePane_0=Error creating Synchronize Page
Participant_synchronizing=Synchronizing
ParticipantPageSaveablePart_0=Changes
Participant_synchronizingDetails=Synchronizing {0}
Participant_synchronizingMoreDetails=Synchronizing {0} ({1})
Participant_synchronizingResources=Synchronizing {0} ({1} items)
ParticipantPageCompareEditorInput_0=&Save
GlobalRefreshResourceSelectionPage_1=Synchronize
GlobalRefreshResourceSelectionPage_2=Select the resources to synchronize or select a scope to automatically select a group of resources.
GlobalRefreshResourceSelectionPage_3=Synchronize
GlobalRefreshResourceSelectionPage_5=Available resources to Synchronize:
GlobalRefreshResourceSelectionPage_6=Scope
GlobalRefreshResourceSelectionPage_7=W&orkspace
GlobalRefreshResourceSelectionPage_8=&Selected Resources
GlobalRefreshResourceSelectionPage_10=&Working Set:
GlobalRefreshResourceSelectionPage_11=&Choose...
GlobalRefreshResourceSelectionPage_12=Select &All
GlobalRefreshResourceSelectionPage_13=&Deselect All
GlobalRefreshParticipantSelectionPage_0=Synchronize
GlobalRefreshParticipantSelectionPage_1=Select the type of synchronization
GlobalRefreshParticipantSelectionPage_2=Synchronize
GlobalRefreshParticipantSelectionPage_3=Available synchronization types:

GlobalRefreshSubscriberPage_0=Synchronize
GlobalRefreshSubscriberPage_1=Synchronize {0}
GlobalRefreshSubscriberPage_2=Select the resources or working sets to be synchronized.

SynchronizeManager_18=Could not cast {0} as ISynchronizeView
GlobalSynchronizeWizard_11=Synchronize
SynchronizeManager_19=Could not create synchronization: {0}
SynchronizeModelProvider_0=Synchronize View: Processing label changes
SynchronizeModelUpdateHandler_0=Errors occurred while updating problem markers
SynchronizationLabelProvider_0={0} (Initializing)
SynchronizationCompareAdapter_0=Workspace
WorkspaceScope_0=Workspace
WorkingSetScope_0=Workspace
WorkingSetsDialog_Title=Select a Working Set
WorkingSetsDialog_Message=Select an existing working set or enter a new name to create a Resource Working Set
WorkingSetsDialog_Label=Working Set:
SubscriberParticipant_namePattern={0} ({1})
SubscriberParticipantWizard_0=There are no {0} resources to synchronize
SubscriberParticipantWizard_1=Before you can synchronize resources you will have to import resources into your workspace using the ''{0}'' wizard.

RemoveFromView_warningTitle=Confirm Remove
RemoveFromView_warningMessage=The selected resources will be removed from the view. A resource will reappear if it is modified or if its synchronization state changes.
RemoveFromView_warningDontShow=Don't show me this again
ResourceMappingSelectionArea_0=&Select All
ResourceMappingSelectionArea_1=&Deselect All
RevisionAnnotationController_0=Could not find an appropriate editor for showing the revision ruler
ResourceMarkAsMergedHandler_0=Marking 1 resource as merged.
ResourceMarkAsMergedHandler_1=Marking {0} resources as merged.
ResourceModelLabelProvider_0={0} - {1}
ResourceModelPreferencePage_0=Workspace Model Preferences
ResourceMappingOperation_0=Selection Adjustment Required
ResourceMergeHandler_0=Overwriting 1 resource.
ResourceMergeHandler_1=Overwriting {0} resources.
ResourceMergeHandler_2=Merging 1 resource.
ResourceMergeHandler_3=Merging {0} resources.
ResourceMergeHandler_4=Overwrite Local Changes?
ResourceMergeHandler_5=Do you want to overwrite local changes?
ResourceMergeHandler_6=No Changes
ResourceMergeHandler_7=There are no changes to merge.
ResourceMappingMergeOperation_0=No Incoming Changes
ResourceMappingMergeOperation_1=There are no incoming changes for the selected elements
ResourceMappingMergeOperation_2=&Done
ResourceMappingMergeOperation_3=Multiple potential side effects of this operation have been detected.
ResourceMappingMergeOperation_4=Preview the merge before it is performed

CompressedFoldersModelProvider_0=&Compressed Folders
HierarchicalModelProvider_0=&Tree
UIProjectSetSerializationContext_0=Project {0} exists in the workspace. Overwrite {0}?
UIProjectSetSerializationContext_1=Overwrite projects?
UIProjectSetSerializationContext_2=Project {0} exists in the file system. Overwrite {1}?
RemoveSynchronizeParticipantAction_0=Remove Pinned Synchronization?
RemoveSynchronizeParticipantAction_1=The current synchronization is pinned. Are you sure you want to remove it?
RemoveSynchronizeParticipantAction_2={0} contains unsaved changes. Would you like to save them?
RemoveSynchronizeParticipantAction_3=Save Changes
RemoveSynchronizeParticipantAction_4=There are unsaved changes.
RemoveSynchronizeParticipantAction_5=Save Changes

ConfigureProjectWizard_showAll=&Show All Wizards
ImportProjectSetMainPage_description=Import the team project file.
ExportProjectSetMainPage_description=Export selected resources into the team project file.
ExportProjectSetMainPage_warning=Some projects from the selected working sets cannot be exported.
ExportProjectSetMainPage_DeselectAll=&Deselect All
ExportProjectSetMainPage_FileButton=F&ile
ExportProjectSetMainPage_EditButton=Edit...

DefaultUIFileModificationValidator_0=Read-only Files Encountered
DefaultUIFileModificationValidator_1=Some of the files being modified by the current operation are read-only. Do you wish to make them writable?
DefaultUIFileModificationValidator_2=The following files are read-only:
DefaultUIFileModificationValidator_3=Read-only File Encountered
DefaultUIFileModificationValidator_4=File ''{0}'' is read-only. Do you wish to make it writable?


CopyToClipboardAction_1=&Copy
CopyToClipboardAction_2= Copy
CopyToClipboardAction_3=Problem Copying to Clipboard
CopyToClipboardAction_4=There was a problem when accessing the system clipboard. Retry?

PasteAction_1=&Paste Patch
PasteAction_2=Paste a Patch
PasteAction_3=Cannot paste the clipboard contents.
PasteAction_4=Clipboard does not contain a valid patch.

FlatModelProvider_6=Sort &Resources By
FlatModelProvider_7=&Name
FlatModelProvider_8=&Path
FlatModelProvider_9=&Parent Name
FlatModelProvider_0=Flat

ChangeLogModelProvider_0a=Sort Incoming &Change Sets By
ChangeLogModelProvider_1a=&Comment
ChangeLogModelProvider_2a=&Date
ChangeLogModelProvider_3a=&User
ChangeLogModelProvider_0=&New Change Set...
ChangeLogModelProvider_12=Reassign Changes &To
ChangeLogModelProvider_13=Assign Changes &To
ChangeLogModelProvider_5=Commit &Sets
ChangeLogModelProvider_6=Ed&it Change Set...
ChangeLogModelProvider_7=Make Changes Unassigned
ChangeLogModelProvider_9=Mark Change Set as De&fault
ChangeLogModelProvider_10=Don't Use a De&fault Change Set
ChangeLogModelManager_0=Show Change Sets
ChangeSetActionGroup_0=Confirm Remove
ChangeSetActionGroup_1=Are you sure you want to remove {0}?
ChangeSetActionGroup_2=No Set
CommitSetDiffNode_0={0} (default)
FileTypeTable_0=Binary
FileTypeTable_1=ASCII Text
FileTypeTable_2=Yes
FileTypeTable_3=No
FileTypeTable_4=Name/Extension
FileTypeTable_5=Content
FileTypeTable_6=Remember decision?
OpenWithActionGroup_0=Open Wit&h

nameAndRevision={0} {1}
internal=An internal error has occurred, consult the error log for details.
TeamCompareEditorInput_repository=Repository: {0} {1}
TeamCompareEditorInput_titleAncestor=Compare {0} {1}-{2} and {3}
TeamCompareEditorInput_titleNoAncestor=Compare {0} {1} and {2}
TeamCompareEditorInput_titleNoAncestorDifferent=Compare {0} {1} and {2} {3}

TeamCompareEditorInput_comparing=Comparing...
TeamCompareEditorInput_different=Cannot compare resources of different kind.
TeamCompareEditorInput_new=File is new
TeamCompareEditorInput_deleted=File has been deleted
TeamContentProviderDescriptor_1=Attribute {0} of extension point {1} missing for extension with identifier {2}
TeamContentProviderDescriptor_2=Wrong number of {0} elements for extension with identifier {1}.

TeamCompareEditorInput_fileProgress=Comparing file: {0}

GenericHistoryView_ShowCommentViewer=Show Comment Viewer
GenericHistoryView_PinCurrentHistory=Pin current history view
GenericHistoryTableProvider_Revision=Revision
GenericHistoryTableProvider_Comment=Comment
GenericHistoryView_GenericFileHistoryFetcher=Fetching File History
GenericHistoryView_Refresh=Refresh
GenericHistoryView_0=Pin this History View
GenericHistoryView_1=Show {0}
GenericHistoryView_2=Show Previous Histories
GenericHistoryView_GetPredecessor=Get Predecessor
GenericHistoryView_LinkWithEditor=Link with Editor
GenericHistoryView_RefreshTooltip=Refresh
GenericHistoryView_LinkWithTooltip=Link with Editor and Selection
GenericHistoryTableProvider_Author=Author
GenericHistoryView_ShowTagViewer=Show Tag Viewer
GenericHistoryView_GetDirectDescendents=Get Direct Descendents
GenericHistoryView_ErrorFetchingEntries=Error fetching entries for {0}
GenericHistoryTableProvider_RevisionTime=Revision Time
GenericHistoryView_WrapComments=Wrap Comments
OpenRevisionAction_DeletedRevisionTitle=Deleted Revision
OpenRevisionAction_DeletedRevisionMessage=This revision represents a deletion and cannot be opened.
MergeIncomingChangesAction_0=Merge Failures
AdditionalMappingsDialog_0=Additional elements must be included in the current operation due to the relationship between the selected elements and the files in which they are stored.
AdditionalMappingsDialog_1=These are the elements you &selected:
AdditionalMappingsDialog_2=These are the elements that will be included in the &operation:
LocalHistoryTableProvider_localRevision=<local revision>
LocalHistoryPage_openRevision=Open Revision
LocalHistoryPage_CompareAction=&Compare
LocalHistoryPage_OpenAction=&Open
LocalHistoryPage_OpenWithMenu=Open &With
LocalHistoryPage_OpenWithMenu_Other=Other...
LocalHistoryPage_OpenWithMenu_OtherDialogDescription=Choose the editor for opening {0}:
LocalHistoryPage_OpenWithMenu_DefaultEditorDescription=&Default Editor
LocalHistoryPage_OpenEditorError=A problem occurred while opening the editor
LocalHistoryPage_0=Local History ({0})
LocalHistoryPage_1=Workspace File
LocalHistoryPage_GetContents=Get Contents
LocalHistoryPage_fetchingLocalHistory=Fetching Local History
LocalHistoryPage_FetchLocalHistoryMessage=Fetching local history revisions
LocalHistoryPage_GroupRevisionsByDateAction=Group Revisions by Date
LocalHistoryPage_GroupRevisionsByDateTip=Group Revisions by Date
LocalHistoryPage_NoRevisionsFound=No revisions found
LocalHistoryPage_OverwriteMessage=Do you wish to overwrite the current revision with the selected revision?
LocalHistoryPage_CollapseAllAction=Collapse All
LocalHistoryPage_CollapseAllTip=Collapse All
LocalHistoryPage_CompareModeAction=Compare Mode
LocalHistoryPage_CompareModeTip=Compare Mode
LocalHistoryPage_OverwriteTitle=Overwrite Current Revision?

CompareFileRevisionEditorInput_compareResourceAndVersions=Compare {0} {1} and {2}
CompareFileRevisionEditorInput_repository={0} {1} ({2})
CompareFileRevisionEditorInput_repositoryWithoutAuthor={0} {1}
CompareFileRevisionEditorInput_workspace=Local: {0}
CompareFileRevisionEditorInput_workspace_authorExists=Local: {0} ({1})
CompareFileRevisionEditorInput_0=Local Revision
CompareFileRevisionEditorInput_1=Current Revision
CompareFileRevisionEditorInput_2=Current
CompareFileRevisionEditorInput_localRevision=Local history: {0} {1}
ShowLocalHistory_1=Problem showing Local History
ShowLocalHistory_0=No local history available for selected resource.
ShowLocalHistory_2=Show Local History
DiffTreeChangesSection_0=However {0} has changes in {1} mode.
DiffTreeChangesSection_1=There are no more {0} changes for {1}. {2}
DiffTreeChangesSection_10={0} All models contained in this synchronization are all disabled.
DiffTreeChangesSection_11={0} The models that contain the changes may be disabled.
DiffTreeChangesSection_12=Enable All Participating Models
DiffTreeChangesSection_13=Show All Models
DiffTreeChangesSection_14=Perform the chosen operation automatically on subsequent restarts
DiffTreeChangesSection_2=Change to {0}.
DiffTreeChangesSection_3=This view is not populated on startup. You can choose to populate {0} without contacting the server or to synchronize with the server.
DiffTreeChangesSection_4=Populate
DiffTreeChangesSection_5=Synchronize
DiffTreeChangesSection_6=Synchronizing {0}
DiffTreeChangesSection_7=Updating {0}
DiffTreeChangesSection_8=There is 1 hidden change.
DiffTreeChangesSection_9=There are {0} hidden changes.
ModelParticipantPageDialog_0=&Replace
ModelParticipantAction_0=Save Changes
ModelParticipantAction_1={0} has unsaved changes. Do you want to save them?
ModelCompareEditorInput_0=Mark &as Merged
ModelCompareEditorInput_1=&Merge
ModelCompareEditorInput_2=&Overwrite
ModelSelectionDropDownAction_0=All Models
ModelSelectionDropDownAction_1=Show {0}
ModelSelectionDropDownAction_2=Flat Presentation
ModelEnablementPreferencePage_0=Models
ModelEnablementPreferencePage_1=&Select the model types that should be available when synchronizing
ModelSynchronizeParticipant_0={0} failed to initialize due to missing data during restore.
ModelSynchronizeParticipant_1=Participant {0} is not capable of restoring its context
ModelElementSelectionPage_0=Synchronization Wizard
ModelElementSelectionPage_AllModelsDisabledTitle=Models Disabled
ModelElementSelectionPage_AllModelsDisabledMessage=All of the model types involved in this synchronization are disabled which means there are no elements to display. Would you like to enable them?
ModelMergeOperation_0=Confirm Merge
ModelMergeOperation_1=The following potential side effects have been identified. Would you like to continue with the merge?
ModelMergeOperation_2=Merges should only be attempted for operations that have a merge context
ModelMergeOperation_3=The &following items were selected
ShowModelProviderAction_0={0} for {1}
MergeAllActionHandler_0=Merging all changes in {0}
MergeAllActionHandler_1=Are you sure you want to merge {0} resources?
MergeAllActionHandler_2=Are you sure you want to merge {0} resource?
MergeAllActionHandler_3=Confirm Merge

HistoryPage_Today=Today
HistoryPage_Yesterday=Yesterday
HistoryPage_ThisMonth=This Month
HistoryPage_Previous=Older than This Month

OpenRevisionAction_DeletedRevTitle=Deleted Revision
OpenRevisionAction_ErrorTitle=Open Revision
OpenRevisionAction_ErrorMessage=An error occurred while trying to open the revision.
OpenRevisionAction_DeletedRevMessage=This revision represents a deletion and cannot be opened.

CompareRevisionAction_DeleteCompareMessage=One of the revisions represents a deletion and cannot be compared.
CompareRevisionAction_CompareWithCurrent=&Compare with Current Revision
CompareRevisionAction_CompareWithOther=&Compare with Each Other
CompareRevisionAction_Revision=Compare Current with {0}
CompareRevisionAction_Local=Compare Current with Local
CompareInputChangeNotifier_0=Updating Compare Editor
CompareInputChangeNotifier_1=Error updating compare editor
WorkingSetsDialog_TitleBar=Working Sets
WorkingSetsDialog_ErrorMessage=Please select or type in a working set
CompareLocalHistory_0=Compare with Local History
EditionHistoryPage_0=No differing versions of ''{0}'' were found in the local history
EditionHistoryPage_1=No differing versions of the element were found in the local history
EditionHistoryPage_2=Local History for ''{0}''
HistoryPageCompareEditorInput_0=&Replace
RegistryReader_0=Cannot create extension {0} {1}

TeamAction_errorTitle=Errors occurred
TeamAction_handlerNotEnabledTitle=Warning
TeamAction_handlerNotEnabledMessage=The action doesn't apply to the current selection.
SaveableCompareEditorInput_0=Show In

NotFound={0} not found
SaveablesCompareEditorInput_twoWayTitle=Compare (''{0}'' - ''{1}'')
SaveablesCompareEditorInput_twoWayTooltip=Two-way compare of ''{0}'' with ''{1}''
SaveablesCompareEditorInput_threeWayTitle=Compare (''{0}'' - ''{1}'' - ''{2}'')
SaveablesCompareEditorInput_threeWayTooltip=Three-way compare of ''{1}'' and ''{2}'' relative to common ancestor ''{0}''

SelectAncestorDialog_title=Select Common Ancestor
SelectAncestorDialog_message=Which resource would you like to use as the common ancestor in the three-way compare?
SelectAncestorDialog_option=''{0}''
#
# PatchParsedPage
#
PatchParsedPage_title=Patch Parsed
PatchParsedPage_description=The patch has been processed.
PatchParsedPage_clickFinishToGoToSynchronizeView=Click finish button to go to Synchronize view.
#
# PatchInaccessibleProjectsPage
#
PatchInaccessibleProjectsPage_title=Inaccessible Projects
PatchInaccessibleProjectsPage_message=Select projects to open before applying the patch. Inaccessible projects will not appear in the Synchronize view.
PatchInaccessibleProjectsPage_projectDoesNotExistInWorkspace={0} (Project does not exist in workspace)
PatchInaccessibleProjectsPage_selectExisting=Select Existing
PatchInaccessibleProjectsPage_deselectAll=Deselect All
PatchInaccessibleProjectsPage_openingProjects=Opening projects
#
# IgnoreLeadingPathSegmentsDialog
#
IgnoreLeadingPathSegmentsDialog_title=Ignore Leading Path Segments
IgnoreLeadingPathSegmentsDialog_message=Enter path segments to ignore (0..{0}):
IgnoreLeadingPathSegmentsDialog_notANumber=Not a number
IgnoreLeadingPathSegmentsDialog_numberOutOfRange=Number out of range
#
# FuzzFactorDialog
#
FuzzFactorDialog_title=Fuzz Factor
FuzzFactorDialog_message=Enter Fuzz Factor:
FuzzFactorDialog_guess=&Guess
FuzzFactorDialog_notANumber=Not a number
FuzzFactorDialog_numberOutOfRange=Number out of range
