###############################################################################
# Copyright (c) 2000, 2004 IBM Corporation and others.
# All rights reserved. This program and the accompanying materials 
# are made available under the terms of the Common Public License v1.0
# which accompanies this distribution, and is available at
# http://www.eclipse.org/legal/cpl-v10.html
# 
# Contributors:
#     IBM Corporation - initial API and implementation
###############################################################################

# package: org.eclipse.ui.ide

IDE.noFileEditorFound = No editor found to edit the file resource.

QuickStartAction.errorDialogTitle = Quick Start Error
QuickStartAction.infoReadError = Could not read feature about information.

SystemSummary.configuration= Configuration={0}
SystemSummary.isCurrentConfiguration= Is current configuration={0}

SystemSummary.date= Date={0}
SystemSummary.target= Activities={0}
SystemSummary.status= Status={0}
SystemSummary.action= Action={0}

SystemSummary.activity.enabled= Enabled
SystemSummary.activity.disabled= Disabled
SystemSummary.activity.revert= Revert
SystemSummary.activity.reconcile= Reconcile
SystemSummary.activity.preserved= Preserved
SystemSummary.activity.unknown= Unknown
SystemSummary.activity.featureInstalled= Feature installed
SystemSummary.activity.featureRemoved= Feature removed
SystemSummary.activity.siteInstalled= Site installed
SystemSummary.activity.siteRemoved= Site removed

SystemSummary.activity.status.unknown= Unknown
SystemSummary.activity.status.success= Success
SystemSummary.activity.status.failure= Failure

ErrorClosing = An error has occurred when closing the workbench. See error log for more details.


############################################################
############################################################
# Copies from org.eclipse.ui.workbench
############################################################
showAdvanced = &Advanced >>
hideAdvanced = << &Advanced

# ==============================================================================
# Workbench Actions
# ==============================================================================

# --- File Menu ---
Workbench.file = &File
Workbench.new = &New
OpenWorkspaceAction.text = Switch &Workspace...
OpenWorkspaceAction.toolTip = Open Workspace
OpenWorkspaceAction.errorTitle = Missing System Property
OpenWorkspaceAction.errorMessage = Unable to relaunch the platform because the {0} property has not been set.
CreateProjectAction.text = Configurable &Project...
CreateProjectAction.toolTip = Open New Configurable Project Wizard
NewProjectAction.text = P&roject...
NewProjectAction.toolTip = New Project
NewExampleAction.text = E&xample...
NewExampleAction.toolTip = New Example
SaveAsDialog.title = Save As
SaveAsDialog.message = Save file to another location.
SaveAsDialog.text = Save As
SaveAsDialog.fileLabel = &File name:
SaveAsDialog.file = file
SaveAsDialog.overwriteQuestion = The file ''{0}'' already exists. Do you want to replace the existing file?
Workbench.projectProperties = &Properties
Workbench.projectPropertiesToolTip = Properties


# --- Edit Menu ---
Workbench.edit = &Edit
Workbench.addBookmark = Add Bookmar&k...
Workbench.addBookmarkToolTip = Add Bookmark
Workbench.addTask = Add Ta&sk...
Workbench.addTaskToolTip = Add Task


# --- Navigate Menu ---
Workbench.navigate = &Navigate
Workbench.goTo = &Go To

OpenWorkspaceFileAction.errorTitle=Open Resource
OpenWorkspaceFileAction.errorMessage=An exception occurred while opening the resource.

Workbench.showIn = Sho&w In

# --- Project Menu ---
Workbench.project = &Project

Workbench.openProject = &Open Project
Workbench.openProjectToolTip = Open Project
Workbench.closeProject = &Close Project
Workbench.closeProjectToolTip = Close Project

Workbench.buildProject = &Build Project
Workbench.buildProjectToolTip = Build Project
Workbench.rebuildProject = &Rebuild Project
Workbench.rebuildProjectToolTip = Rebuild Project
Workbench.buildClean = Clea&n...
Workbench.buildSet = Build &Working Set
Workbench.buildAutomatically = Build Auto&matically

GlobalBuildAction.text = Build &All
GlobalBuildAction.toolTip = Build All
GlobalBuildAction.rebuildText = Rebuild A&ll
GlobalBuildAction.rebuildToolTip = Rebuild All
GlobalBuildAction.buildProblems = Build problems
GlobalBuildAction.internalError = Internal error: {0}
GlobalBuildAction.buildOperationTitle = Building all...
GlobalBuildAction.rebuildAllOperationTitle = Rebuilding all...
GlobalBuildAction.jobTitle = Building Workspace


# --- Window Menu ---
Workbench.window = &Window
Workbench.openPerspective = &Open Perspective
Workbench.showView = Show &View

PromptOnExitDialog.shellTitle = Confirm Exit
PromptOnExitDialog.message0 = Exit application?
PromptOnExitDialog.message1 = Exit {0}?
PromptOnExitDialog.choice = &Always exit without prompt

Workbench.shortcuts = Navi&gation
Workbench.openNewWindow = &New Window


# --- Help Menu ---
Workbench.help = &Help
QuickStart.text = &Welcome...
QuickStart.toolTip = Open a Welcome Editor
QuickStartMessageDialog.title = Welcome
QuickStartMessageDialog.message = No features with quick start information are available
WelcomePageSelectionDialog.title = Welcome
WelcomePageSelectionDialog.message = &Show welcome page for:
TipsAndTricks.text = &Tips and Tricks...
TipsAndTricks.toolTip =Tips and Tricks
TipsAndTricksMessageDialog.title = Tips and Tricks
TipsAndTricksMessageDialog.message = No features with tips and tricks information are available
TipsAndTricksPageSelectionDialog.title = Tips and Tricks
TipsAndTricksPageSelectionDialog.message = &Show tips and tricks page for:
TipsAndTricksErrorDialog.title = Problem
TipsAndTricksErrorDialog.noHref = No tips and tricks information available
TipsAndTricksErrorDialog.noFeatures = No features with tips and tricks information available

# ==============================================================================
# Navigator Actions
# ==============================================================================
OpenWithMenu.dialogTitle = Problems Opening Editor

CopyProjectAction.title = &Copy
CopyProjectAction.toolTip = Copy Project
CopyProjectAction.progressTitle = Copying
CopyProjectAction.copyTitle = Copy Project
CopyProjectAction.copyNameOneArg = Copy of {0}
CopyProjectAction.copyNameTwoArgs = Copy ({0}) of {1}
CopyProjectAction.alreadyExists = Project ''{0}'' already exists.
CopyProjectAction.copyFailedTitle = Copy Problems
CopyProjectAction.internalError = Internal error: {0}

CopyResourceAction.title = &Copy
CopyResourceAction.toolTip = Copy Resource
CopyResourceAction.selectDestination = Select the &destination:

MoveProjectAction.text = Mo&ve...
MoveProjectAction.toolTip = Move Project
MoveProjectAction.moveTitle = Move Project
MoveProjectAction.progressMessage = Moving
MoveProjectAction.dialogTitle = Move Problems
MoveProjectAction.internalError = Internal error: {0}

MoveResourceAction.text = Mo&ve...
MoveResourceAction.toolTip = Move Resource
MoveResourceAction.title = Check Move
MoveResourceAction.checkMoveMessage = ''{0}'' is read only. Do you still wish to move it?

ReadOnlyCheck.problems = Read Only Checking Problems

RenameResourceAction.text = Rena&me
RenameResourceAction.toolTip = Rename Resource
RenameResourceAction.inputDialogTitle = Rename Resource
RenameResourceAction.inputDialogMessage = Enter the new resource name:
RenameResourceAction.checkTitle = Check Rename
RenameResourceAction.readOnlyCheck = ''{0}'' is read only. Do you still wish to rename it?
RenameResourceAction.resourceExists = Resource Exists
RenameResourceAction.nameExists = A resource with that name already exists
RenameResourceAction.overwriteQuestion = ''{0}'' exists. Do you wish to overwrite?
RenameResourceAction.progressMessage = Renaming...
RenameResourceAction.problemTitle = Rename Problems
RenameResourceAction.progress = Renaming:
RenameResourceAction.nameMustBeDifferent = You must use a different name
RenameResourceAction.problemMessage = Problems occurred renaming the selected resource.

DeleteResourceAction.text = &Delete
DeleteResourceAction.toolTip = Delete
DeleteResourceAction.title1 = Confirm Resource Delete
DeleteResourceAction.titleN = Confirm Multiple Resource Delete
DeleteResourceAction.confirm1 = Are you sure you want to delete ''{0}''?
DeleteResourceAction.confirmN = Are you sure you want to delete these {0} resources?
DeleteResourceAction.titleProject1 = Confirm Project Delete
DeleteResourceAction.titleProjectN = Confirm Multiple Project Delete
DeleteResourceAction.confirmProject1 = Are you sure you want to delete project ''{0}''?
DeleteResourceAction.confirmProjectN = Are you sure you want to delete these {0} projects?
DeleteResourceAction.deleteContents1 = &Also delete contents under ''{0}''
DeleteResourceAction.deleteContentsN = &Also delete contents in the file system
DeleteResourceAction.doNotDeleteContents = &Do not delete contents
DeleteResourceAction.confirmLinkedResource1 = Are you sure you want to delete linked resource ''{0}''?\nOnly the workspace link will be deleted. Link target will remain unchanged.
DeleteResourceAction.confirmLinkedResourceN = Are you sure you want to delete these {0} resources?\n\nSelection contains linked resources.\nOnly the workspace links will be deleted. Link targets will remain unchanged.
DeleteResourceAction.readOnlyQuestion = ''{0}'' is read only. Do you still wish to delete it?
DeleteResourceAction.errorTitle = Delete Problems
DeleteResourceAction.messageTitle = Problems deleting
DeleteResourceAction.internalError = Internal error: {0}
DeleteResourceAction.outOfSyncError = Resource is out of sync with the file system. Refresh and try again.
DeleteResourceAction.outOfSyncQuestion = Resource ''{0}'' is out of sync with the file system. Do you want to delete it anyway?
DeleteResourceAction.deletionExceptionMessage=Multiple problems occurred while deleting resources.

AddBookmarkLabel = Add Boo&kmark...
AddBookmarkToolTip = Add Bookmark
AddBookmarkDialog.title = Add Bookmark
AddBookmarkDialog.message = Enter bookmark name:

AddTaskLabel = Add &Task
AddTaskToolTip = Add Task

OpenFileAction.text = Op&en
OpenFileAction.toolTip = Edit File
OpenFileAction.openFileShellTitle = Problems Opening Editor

OpenResourceAction.text = Op&en Project
OpenResourceAction.toolTip = Open Project
OpenResourceAction.dialogTitle = Open Problems
OpenResourceAction.problemMessage = Problems occurred opening the selected resources.

CloseResourceAction.text = Clo&se Project
CloseResourceAction.toolTip = Close Project
CloseResourceAction.title = Close Problems
CloseResourceAction.problemMessage = Problems occurred closing the selected resources.

BuildAction.text = &Build Project
BuildAction.toolTip = Incremental Build Of Selected Projects
BuildAction.problemMessage = Problems occurred building the selected resources.
BuildAction.problemTitle = Build Problems
BuildAction.operationMessage = Building project...

RebuildAction.text = Rebuild Pro&ject
RebuildAction.tooltip = Full Build Of Selected Projects

RefreshAction.text = Re&fresh
RefreshAction.toolTip = Refresh
RefreshAction.progressMessage = Refreshing...
RefreshAction.problemTitle = Refresh Problems
RefreshAction.problemMessage = Problems occurred refreshing the selected resources.
RefreshAction.locationDeletedMessage = The location for project ''{0}'' ({1}) has been deleted.\n Delete ''{0}'' from the workspace?
RefreshAction.dialogTitle = Project location has been deleted

SelectWorkingSetAction.text= Select &Working Set...

# --- Operations ---
CopyProjectOperation.progressTitle = Copying:
CopyProjectOperation.copyFailedMessage = Problems occurred copying the project.
CopyProjectOperation.copyFailedTitle = Copy Problems
CopyProjectOperation.internalError = Internal error: {0}
CopyProjectOperation.copyProject = Copy Project

CopyFilesAndFoldersOperation.copyFailedTitle = Copy Problems
CopyFilesAndFoldersOperation.problemMessage = Problems occurred copying the selected resources.
CopyFilesAndFoldersOperation.operationTitle = Copying...
CopyFilesAndFoldersOperation.nameCollision = A resource name collision was detected.
CopyFilesAndFoldersOperation.internalError = Internal error: {0}
CopyFilesAndFoldersOperation.resourceExists = Resource Exists
CopyFilesAndFoldersOperation.overwriteQuestion = {0} exists. Do you wish to overwrite?
CopyFilesAndFoldersOperation.overwriteMergeQuestion = ''{0}'' exists. Do you wish to overwrite?\nFolder contents will be merged, existing files will be overwritten.
CopyFilesAndFoldersOperation.overwriteNoMergeLinkQuestion = ''{0}'' exists and is a linked folder. Do you wish to delete the linked folder and replace with the unlinked folder?\nFolder contents will not be merged!
CopyFilesAndFoldersOperation.overwriteNoMergeNoLinkQuestion = ''{0}'' exists and is not a linked folder. Do you wish to delete the folder and replace with the linked folder?\nFolder contents will not be merged!
CopyFilesAndFoldersOperation.deepCopyQuestion = Do you wish to perform a deep copy of linked resource ''{0}''?
CopyFilesAndFoldersOperation.deepMoveQuestion = Do you wish to perform a deep move of linked resource ''{0}''?
CopyFilesAndFoldersOperation.copyNameTwoArgs = Copy ({0}) of {1}
CopyFilesAndFoldersOperation.copyNameOneArg = Copy of {0}
CopyFilesAndFoldersOperation.destinationAccessError = Destination folder must be accessible.
CopyFilesAndFoldersOperation.destinationDescendentError = Destination cannot be a descendent of the source.
CopyFilesAndFoldersOperation.overwriteProblem = The folder ''{0}'' already exists and cannot be overwritten since it contains ''{1}''.
CopyFilesAndFoldersOperation.overwriteProblemTitle = Overwrite Problem
CopyFilesAndFoldersOperation.question = Question
CopyFilesAndFoldersOperation.importErrorDialogTitle = Import Problems
CopyFilesAndFoldersOperation.inputDialogTitle = Name Conflict
CopyFilesAndFoldersOperation.inputDialogMessage = Enter a new name for ''{0}''
CopyFilesAndFoldersOperation.nameExists = A resource with that name already exists
CopyFilesAndFoldersOperation.nameMustBeDifferent = You must use a different name
CopyFilesAndFoldersOperation.sameSourceAndDest = Cannot copy ''{0}''. The source and destination are the same.
CopyFilesAndFoldersOperation.importSameSourceAndDest = Cannot import ''{0}''. The source and destination are the same.
CopyFilesAndFoldersOperation.resourceDeleted = The resource ''{0}'' does not exist on the file system.
CopyFilesAndFoldersOperation.missingPathVariable = The resource ''{0}'' is linked using a missing path variable.
CopyFilesAndFoldersOperation.missingLinkTarget = The link target for linked resource ''{0}'' does not exist.
CopyFilesAndFoldersOperation.parentNotEqual = The resources must have the same parent.

MoveFilesAndFoldersOperation.sameSourceAndDest = Cannot move ''{0}''. The source and destination are the same.
MoveFilesAndFoldersOperation.moveFailedTitle = Move Problems
MoveFilesAndFoldersOperation.problemMessage = Problems occurred moving the selected resources.
MoveFilesAndFoldersOperation.operationTitle = Moving...


# ==============================================================================
# Capability selection group
# ==============================================================================
ProjectCapabilitySelectionGroup.categories = Ca&tegories:
ProjectCapabilitySelectionGroup.capabilities = &Capabilities:
ProjectCapabilitySelectionGroup.description = &Description:
ProjectCapabilitySelectionGroup.grayItems = Note that some checked capabilities appear grayed out because they are\nrequired by other checked capabilities.
ProjectCapabilitySelectionGroup.disabledLabel = Disabled: {0}
ProjectCapabilitySelectionGroup.errorTitle = Capability Problem
ProjectCapabilitySelectionGroup.disabledCapability = The disabled capability cannot be added to the project.
ProjectCapabilitySelectionGroup.invalidCapability = The missing capability cannot be added to the project.
ProjectCapabilitySelectionGroup.missingPrereqs = The {0} capability requires a capability that is disabled or missing ({1}).\n\nThe {0} capability cannot be checked.
ProjectCapabilitySelectionGroup.requiredPrereq = The {0} capability is required by the {1} capability, which is checked.\n\nThe {0} capability must remain checked.
ProjectCapabilitySelectionGroup.requiredPrereqs = The {0} capability is required by the following checked capabilities: {1}\n\nThe {0} capability must remain checked.
ProjectCapabilitySelectionGroup.membershipConflict = The project cannot have both the {0} and {1} capabilities at the same time. Uncheck the {1} capability first.
ProjectCapabilitySelectionGroup.membershipPrereqConflict = The {0} capability requires the {1} capability. However the project cannot have both the {1} and {2} capabilities at the same time. Uncheck the {2} capability first.

Capability.nameMissing = Missing ({0})

ICategory.other = Other

# ==============================================================================
# Wizards
# ==============================================================================
NewWizardShortcutAction.errorTitle = Problem Opening Wizard
NewWizardShortcutAction.errorMessage = The selected wizard could not be started.

WizardDataTransfer.existsQuestion = ''{0}'' already exists.  Would you like to overwrite it?
WizardDataTransfer.overwriteNameAndPathQuestion = Overwrite ''{0}'' in folder ''{1}''?
WizardDataTransfer.exceptionMessage =  Error occurred during operation: {0}
WizardTransferPage.selectTypes = Select &Types...
WizardTransferPage.selectAll = &Select All
WizardTransferPage.deselectAll = &Deselect All

NewProjectWizard.windowTitle = New Configurable Project
NewProjectWizard.title = Project
NewProjectWizard.errorTitle = New Project Problems
NewProjectWizard.invalidCapabilities = The requested group of capabilities is invalid.
NewProjectWizard.noWizard = The current step, {0}, could not be started. This wizard will be closed.\n\nThe project will not be configured correctly. Open the project''s properties to add missing capabilities.

CreateProjectWizard.errorTitle = Creation Problems
CreateProjectWizard.internalError = Internal error: {0}
CreateProjectWizard.caseVariantExistsError = The project contents directory specified is being used by another project. Please enter a new project contents directory.

RemoveCapabilityWizard.errorMessage = Remove Capability Problem
RemoveCapabilityWizard.internalError = Internal error: {0}

WizardNewProjectCapabilityPage.description = Choose project's capabilities
WizardNewProjectCapabilityPage.noCapabilities = There are no capabilities available to choose from.
WizardProjectReviewPage.description = Review project
WizardProjectConfigurePage.description = Configure project's capability

UpdateProjectCapabilityWizard.windowTitle = Update Project
UpdateProjectCapabilityWizard.title = Project
UpdateProjectCapabilityWizard.errorTitle = Update Project Problems
UpdateProjectCapabilityWizard.noWizard = The current step, {0}, could not be started. This wizard will be closed.\n\nThe project will not be configured correctly.

WizardStepGroup.stepsLabel = &Steps:
MultiStepReviewWizardPage.detailsLabel = &Details:
MultiStepReviewWizardPage.instructionNextLabel = Review steps and press Next button when ready to continue.
MultiStepReviewWizardPage.instructionFinishLabel = Review steps and press Finish button when ready to continue.

MultiStepWizard.finishLabel = &Finish Step

CreateProjectStep.label = Create Project
CreateProjectStep.details = This step will create a new project resource named ''{0}''.

InstallCapabilityStep.label = Add {0}

RemoveCapabilityStep.label = Remove {0}
RemoveCapabilityStep.defaultDescription0 = Removes the {0} capability from the project.
RemoveCapabilityStep.defaultDescription1 = Removes the {0} capability from the project, along with the {1} capability.
RemoveCapabilityStep.defaultDescription2 = Removes the {0} capability from the project, along with the following capabilities: {1}.

ProjectCapabilitySimpleSelectionPage.description = Choose a capability
ProjectCapabilitySimpleSelectionPage.title = Select
ProjectCapabilitySimpleSelectionPage.windowTitle = Add Capability
ProjectCapabilitySimpleSelectionPage.capabilityExist = The project already has the chosen capability.
ProjectCapabilitySimpleSelectionPage.capabilityRequired = The chosen capability requires the {0} capability to be added first.
ProjectCapabilitySimpleSelectionPage.capabilityMissing = The chosen capability requires a missing capability ({0}).
ProjectCapabilitySimpleSelectionPage.capabilitySet = The chosen capability cannot be added until the {0} capability is removed.

# --- Import ---
WizardImportPage.specifyFolder = Please specify folder
WizardImportPage.folderMustExist = Folder must be accessible.
WizardImportPage.errorDialogTitle = Import Problems
WizardImportPage.folder = Into fo&lder:
WizardImportPage.browseLabel = Browse...
WizardImportPage.browse2 = Bro&wse...
WizardImportPage.selectFolderLabel = Select a folder to import into.
WizardImportPage.selectFolderTitle = Import Into Folder
WizardImportPage.destinationLabel = Select the destination for imported resources:
WizardImportPage.options = Options:
WizardImportPage.projectNotExist = Destination project does not exist.
WizardImportPage.importOnReceiver = Source is in the hierarchy of the destination.
WizardImportPage.noOpenProjects = Cannot import into a workspace with no open projects. Please create a project before importing.
WizardImportPage.undefinedPathVariable = Destination folder location is based on an undefined path variable.
WizardImportPage.containerNotExist = Destination folder does not exist.

# --- Export ---
WizardExportPage.errorDialogTitle = Export Problems
WizardExportPage.mustExistMessage = Resource must exist.
WizardExportPage.mustBeAccessibleMessage = Resource must be accessible.
WizardExportPage.detailsMessage = All file resources matching this criteria
WizardExportPage.whatLabel = Select the resources to &export:
WizardExportPage.whereLabel = Select the export destination:
WizardExportPage.options = Options:
WizardExportPage.selectionDialogMessage = Select the resource types to export.
WizardExportPage.resourceTypeDialog = Resource Type Selection
WizardExportPage.folder = Fo&lder:
WizardExportPage.browse = Browse...
WizardExportPage.allTypes = All types
WizardExportPage.specificTypes = Specific types:
WizardExportPage.edit = Edit...
WizardExportPage.details = Details...
WizardExportPage.selectResourcesTitle = Select the resources to export.
WizardExportPage.oneResourceSelected = 1 resource selected
WizardExportPage.selectResourcesToExport = Select the resource to export.
WizardExportPage.internalErrorTitle = Internal error
WizardExportPage.resourceCountMessage = {0} resources selected

ZipExport.problemEncountered = Problems were encountered during export:
ZipExport.progress = Exporting:
ZipExport.unableToOpen = Unable to open destination file: {0}
ZipExport.unableToClose = Unable to close destination file: {0}
ZipExport.errorOnResource = Error exporting {0}

# --- New Example ---
NewExample.title = New Example

# --- New Project ---
WizardNewProjectCreationPage.description = Create a new project
WizardNewProjectCreationPage.locationError = Invalid project contents directory
WizardNewProjectCreationPage.defaultLocationError = Project contents cannot be inside workspace directory
WizardNewProjectCreationPage.projectNameEmpty = Project name must be specified
WizardNewProjectCreationPage.projectLocationEmpty = Project contents directory must be specified
WizardNewProjectCreationPage.projectExistsMessage = A project with that name already exists in the workspace.
WizardNewProjectCreationPage.projectLocationExistsMessage = Another project exist at the specified content directory.
WizardNewProjectCreationPage.projectContentsLabel = Project contents:
WizardNewProjectCreationPage.projectContentsGroupLabel = Project contents
WizardNewProjectCreationPage.useDefaultLabel = Use &default
WizardNewProjectCreationPage.nameLabel = &Project name:
WizardNewProjectCreationPage.directoryLabel = Select the project contents directory.
WizardNewProjectCreationPage.locationLabel = Director&y:
WizardNewProjectCreationPage.browseLabel = B&rowse...
WizardNewProjectReferences.title = &Referenced projects:

# --- New Folder ---
WizardNewFolderMainPage.folderName = Folder &name:
WizardNewFolderMainPage.folderLabel = folder
WizardNewFolderMainPage.description = Create a new folder resource.
WizardNewFolderCreationPage.progress = Creating
WizardNewFolderCreationPage.errorTitle = Creation Problems
WizardNewFolderCreationPage.internalErrorTitle = Creation problems
WizardNewFolder.internalError = Internal error: {0}

# --- New File ---
WizardNewFileCreationPage.progress = Creating
WizardNewFileCreationPage.errorTitle = Creation Problems
WizardNewFileCreationPage.fileLabel = File na&me:
WizardNewFileCreationPage.file = file
WizardNewFileCreationPage.internalErrorTitle = Creation problems
WizardNewFileCreationPage.internalErrorMessage = Internal error: {0}

# --- Linked Resource ---
WizardNewLinkPage.linkFileButton = &Link to file on the file system
WizardNewLinkPage.linkFolderButton = &Link to folder on the file system
WizardNewLinkPage.browseButton = &Browse...
WizardNewLinkPage.variablesButton = &Variables...
WizardNewLinkPage.targetSelectionLabel = Select the link target.
WizardNewLinkPage.linkTargetEmpty = Link target must be specified
WizardNewLinkPage.linkTargetInvalid = Link target name is invalid
WizardNewLinkPage.linkTargetLocationInvalid = Link target location is invalid
WizardNewLinkPage.linkTargetNonExistent = Link target does not exist
WizardNewLinkPage.linkTargetNotFile = Link target must be a file
WizardNewLinkPage.linkTargetNotFolder = Link target must be a folder

# ==============================================================================
# Preference Pages
# ==============================================================================
Preference.note = Note:

# --- Workbench ---
WorkbenchPreference.autobuild = &Build automatically
WorkbenchPreference.autobuildToolTip = Build automatically on resource modification
WorkbenchPreference.savePriorToBuilding = Save auto&matically before build
WorkbenchPreference.savePriorToBuildingToolTip = Save modified resources automatically before manual build
WorkbenchPreference.RefreshButtonText=&Refresh workspace automatically
WorkbenchPreference.RefreshButtonToolTip=Automatically refresh external workspace changes
WorkbenchPreference.encoding = Text file encoding 
WorkbenchPreference.defaultEncoding = Defaul&t ({0})
WorkbenchPreference.otherEncoding = &Other:
WorkbenchPreference.unsupportedEncoding = The selected encoding is not supported.
WorkbenchPreference.numDefaultEncodings = 6
WorkbenchPreference.defaultEncoding1 = ISO-8859-1
WorkbenchPreference.defaultEncoding2 = UTF-8
WorkbenchPreference.defaultEncoding3 = UTF-16
WorkbenchPreference.defaultEncoding4 = UTF-16BE
WorkbenchPreference.defaultEncoding5 = UTF-16LE
WorkbenchPreference.defaultEncoding6 = US-ASCII

WorkbenchPreference.encoding.BOM_UTF_8 = UTF-8 (BOM)
WorkbenchPreference.encoding.BOM_UTF_16BE = UTF-16 Big-Endian (BOM)
WorkbenchPreference.encoding.BOM_UTF_16LE = UTF-16 Little-Endian (BOM)

# --- Linked Resources ---
LinkedResourcesPreference.explanation = Path variables specify locations in the file system. The locations of linked resources\nmay be specified relative to these path variables.
LinkedResourcesPreference.enableLinkedResources = &Enable linked resources
LinkedResourcesPreference.linkedResourcesWarningTitle = Enabled Linked Resources
LinkedResourcesPreference.linkedResourcesWarningMessage = You have enabled a feature which may give rise to incompatibilities if projects are shared by users of different versions of the workbench.  Please consult the documentation for further details.

# The following six keys are marked as unused by the NLS search, but they are indirectly used
# and should be removed.
PathVariableDialog.shellTitle.newVariable = New Variable
PathVariableDialog.shellTitle.existingVariable = Edit Variable
PathVariableDialog.dialogTitle.newVariable = Define a New Path Variable
PathVariableDialog.dialogTitle.existingVariable = Edit an Existing Path Variable
PathVariableDialog.message.newVariable = Enter a new variable name and its associated location.
PathVariableDialog.message.existingVariable = Edit variable's name and path value.

PathVariableDialog.variableName = &Name:
PathVariableDialog.variableValue = &Location:
PathVariableDialog.variableNameEmptyMessage = You must provide a variable name.
PathVariableDialog.variableValueEmptyMessage = You must provide a file or folder path as variable value.
PathVariableDialog.variableValueInvalidMessage = The provided value is not a valid path.
PathVariableDialog.file = &File...
PathVariableDialog.folder = F&older...
PathVariableDialog.selectFileTitle = File selection
PathVariableDialog.selectFolderTitle = Folder selection
PathVariableDialog.selectFolderMessage = &Specify folder to be represented by the variable.
PathVariableDialog.variableAlreadyExistsMessage = This variable name is already in use.
PathVariableDialog.pathIsRelativeMessage = Path must be absolute.
PathVariableDialog.pathDoesNotExistMessage = Path does not exist.

# --- Local History ---
FileHistory.longevity = Days to &keep files:
FileHistory.entries = &Entries per file:
FileHistory.diskSpace = &Maximum file size (MB):
FileHistory.mustBePositive = Values must be positive
FileHistory.invalid = Invalid value: {0} 
FileHistory.exceptionSaving = Internal error saving local history
FileHistory.aboveMaxEntries = Above maximum Entries per file: {0}
FileHistory.aboveMaxFileSize = Above maximum File size value: {0}
FileHistory.restartNote = The 'Entries per file' and 'Days to keep files' values are only applied on Workbench restart. 

# --- Perspectives ---
ProjectSwitchPerspectiveMode.optionsTitle = Switch to associated perspective when creating a new project
ProjectSwitchPerspectiveMode.always = Alwa&ys switch
ProjectSwitchPerspectiveMode.never = Ne&ver switch
ProjectSwitchPerspectiveMode.prompt = Promp&t

# --- Build Order --- 
BuildOrderPreference.up = &Up
BuildOrderPreference.down = Dow&n
BuildOrderPreference.add = Add &Project...
BuildOrderPreference.remove = &Remove Project
BuildOrderPreference.selectOtherProjects = Select &projects to add to build path:
BuildOrderPreference.useDefaults = Use d&efault build order
BuildOrderPreference.projectBuildOrder = Project build &order:
BuildOrderPreference.removeNote = A project removed from the list is still built but after those specified in the list.
BuildOrderPreference.maxIterationsLabel=&Max iterations when building with cycles:

# --- Startup preferences ---
StartupPreferencePage.refreshButton = &Refresh workspace on startup
StartupPreferencePage.launchPromptButton = Prompt for &workspace on startup
StartupPreferencePage.exitPromptButton = &Confirm exit when closing last window

# --- Info ---
ResourceInfo.readOnly = &Read only
ResourceInfo.derived = Deri&ved
ResourceInfo.type = Type:
ResourceInfo.location = Location:
ResourceInfo.resolvedLocation = Resolved location:
ResourceInfo.size = Size:
ResourceInfo.bytes = {0}  bytes
ResourceInfo.file = File
ResourceInfo.fileTypeFormat = File  ({0})
ResourceInfo.folder = Folder
ResourceInfo.project = Project
ResourceInfo.linkedFile = Linked File
ResourceInfo.linkedFolder = Linked Folder
ResourceInfo.unknown = Unknown
ResourceInfo.notLocal = <file contents not local>
ResourceInfo.undefinedPathVariable = <undefined path variable>
ResourceInfo.notExist = <resource does not exist>
ResourceInfo.fileNotExist = - (does not exist)
ResourceInfo.path = Path: 
ResourceInfo.lastModified = Last modified:
ResourceInfo.fileEncodingTitle = Default encoding for text files
ResourceInfo.fileContentEncodingFormat = Default (determined from content: {0})
ResourceInfo.fileContainerEncodingFormat = Default (inherited from container: {0})
ResourceInfo.containerEncodingFormat = Inherit from container ({0})

# --- Project References ---
ProjectReferencesPage.label = Projects may refer to other projects in the workspace.\nUse this page to specify what other projects are referenced by the project.\n\n&Project references for {0}:

# --- Project Capabilities ---
ProjectCapabilityPropertyPage.chooseCapabilities = Choose the capabilities for the project.
ProjectCapabilityPropertyPage.noCapabilities = There are no capabilities available to choose from.
ProjectCapabilityPropertyPage.errorTitle = Project Capability Problems
ProjectCapabilityPropertyPage.internalError = Internal error updating project''s capabilities.
ProjectCapabilityPropertyPage.invalidSelection = The requested project capability changes are invalid.

ProjectCapabilityEditingPropertyPage.add = &Add...
ProjectCapabilityEditingPropertyPage.remove = &Remove
ProjectCapabilityPropertyPage.capabilityRequired = The chosen capability is required by the {0} capability and cannot be removed.

# ==============================================================================
# Editors
# ==============================================================================
DefaultEditorDescription.name = &Default Editor

WelcomeEditor.accessException = An exception occurred when trying to access the welcome page
WelcomeEditor.readFileError = Error in WelcomeEditor.readFile
WelcomeEditor.title = Welcome
WelcomeEditor.toolTip = Welcome to {0}
WelcomeEditor.copy.text=&Copy

WelcomeItem.unableToLoadClass = Unable to load class 
WelcomeParser.parseError = Error in WelcomeParser.parse
WelcomeParser.parseException = An exception occurred when parsing the welcome page
Workbench.openEditorErrorDialogTitle = Problem
Workbench.openEditorErrorDialogMessage = Unable to open editor
QuickStartAction.openEditorException = An exception occurred when opening the editor

# ==============================================================================
# Dialogs
# ==============================================================================
Question = Question

ContainerSelectionDialog.title = Folder Selection
ContainerSelectionDialog.message = Enter or select the parent folder:

ContainerGroup.message = &Enter or select the parent folder:
ContainerGroup.selectFolder = Select the folder:

ContainerGenerator.progressMessage = Generate Folder

ResourceGroup.resource = resource
ResourceGroup.nameExists = The same name already exists.
ResourceGroup.folderEmpty = The folder is empty.
ResourceGroup.noProject = The specified project does not exist.
ResourceGroup.emptyName = The ''{0}'' name is empty.
ResourceGroup.invalidFilename = ''{0}'' is not a valid file name.

FileSelectionDialog.title = File Selection
FileSelectionDialog.message = Select the files:

ProjectLocationSelectionDialog.nameLabel = &Project name:
ProjectLocationSelectionDialog.locationLabel = &Location:
ProjectLocationSelectionDialog.browseLabel = &Browse...
ProjectLocationSelectionDialog.directoryLabel = Select the location directory.
ProjectLocationSelectionDialog.locationError = Invalid location path
ProjectLocationSelectionDialog.selectionTitle = Project
ProjectLocationSelectionDialog.useDefaultLabel = Use &default location

ProjectPerspectiveChoiceDialog.title = Choose Perspective
ProjectPerspectiveChoiceDialog.choosePerspective = Show project in &perspective:
ProjectPerspectiveChoiceDialog.options = Options
ProjectPerspectiveChoiceDialog.newWindow = &New window
ProjectPerspectiveChoiceDialog.sameWindow = &Same window
ProjectPerspectiveChoiceDialog.errorTitle = Show Perspective Problem
ProjectPerspectiveChoiceDialog.errorMessage = Unable to show the chosen perspective.

ResourceSelectionDialog.title = Resource Selection
ResourceSelectionDialog.message = Select the resources:

MarkerResolutionSelectionDialog.title = Quick Fix
MarkerResolutionSelectionDialog.messageLabel = &Available fixes:

ResourceSelectionDialog.label = Choose a resource:
ResourceSelectionDialog.pattern = &Pattern (? = any character, * = any string):
ResourceSelectionDialog.matching = &Matching Resources:
ResourceSelectionDialog.folders = In &Folders:

OpenResourceDialog.title = Open Resource

NewFolderDialog.title = New Folder
NewFolderDialog.nameLabel = &Folder name:
NewFolderDialog.alreadyExists = The folder ''{0}'' already exists.
NewFolderDialog.folderNameEmpty = Folder name must be specified
NewFolderDialog.progress = Creating new folder
NewFolderDialog.errorTitle = Creation Problems
NewFolderDialog.internalError = Internal error: {0}

CreateLinkedResourceGroup.linkFileButton = &Link to file in the file system
CreateLinkedResourceGroup.linkFolderButton = &Link to folder in the file system
CreateLinkedResourceGroup.browseButton = Bro&wse...
CreateLinkedResourceGroup.variablesButton = &Variables...
CreateLinkedResourceGroup.resolvedPathLabel = Resolved location:
CreateLinkedResourceGroup.targetSelectionLabel = Select the link target.
CreateLinkedResourceGroup.linkTargetNotFile = Link target must be a file
CreateLinkedResourceGroup.linkTargetNotFolder = Link target must be a folder
CreateLinkedResourceGroup.linkTargetNonExistent = Link target does not exist

PathVariablesBlock.variablesLabel = &Defined path variables:
PathVariablesBlock.addVariableButton = &New...
PathVariablesBlock.editVariableButton = Edi&t...
PathVariablesBlock.removeVariableButton = &Remove

PathVariableSelectionDialog.title = Select Path Variable
PathVariableSelectionDialog.extendButton = &Extend...
PathVariableSelectionDialog.ExtensionDialog.title = Variable Extension
PathVariableSelectionDialog.ExtensionDialog.description = Choose extension to {0}

# ==============================================================================
# Editor Framework
# ==============================================================================
EditorManager.saveResourcesMessage = Select the &resources to save:
EditorManager.saveResourcesTitle = Save Resources

OpenSystemEditorAction.dialogTitle = Problems Opening System Editor
OpenSystemEditorAction.text = &System Editor
OpenSystemEditorAction.toolTip = Edit File With System Editor

# ==============================================================================
# Workspace
# ==============================================================================
WorkspaceAction.problemsTitle = Problems
WorkspaceAction.logTitle = Exception in {0}. run: {1}
WorkbenchAction.problemsMessage = The following problems occurred.
WorkbenchAction.internalError = Internal error.
Workspace = Workspace


# ==============================================================================
# Workbench
# ==============================================================================
WorkbenchWindow.shellTitle = {0} - {1}

Internal_error = Internal error
InternalError = Internal Error
InternalErrorNoArg = An internal error has occurred.\nSee the .log file for more details.\n\nDo you want to exit the workbench?
InternalErrorOneArg = An internal error has occurred.\n{0}\nSee the .log file for more details.\n\nDo you want to exit the workbench?

FatalError_RecursiveError = A internal error occurred while showing an internal error.
FatalError_OutOfMemoryError = An out of memory error has occurred. You can prevent these errors in the future by increasing your heap size before you start the workbench using the -vmargs -Xmx command line option.
FatalError_StackOverflowError = A stack overflow error has occurred.
FatalError_VirtualMachineError = A virtual machine error has occurred.
FatalError_SWTError = An SWT error has occurred.
FatalError = {0}\nYou are recommended to exit the workbench.\nSubsequent errors may happen and may terminate the workbench without warning.\nSee the .log file for more details.\n\nDo you want to exit the workbench?

ProblemSavingWorkbench = Problems occurred while trying to save the state of the workbench.
ProblemsSavingWorkspace = Problems saving workspace

Problems_Opening_Page = Problems Opening Page

Workspace.problemMessage = Problems occurred refreshing workspace.
Workspace.problemsTitle = Problems


# ==============================================================================
# Keys with references but don't show in the UI
# ==============================================================================
CreateFileAction.text = New &File
CreateFileAction.toolTip = Create New File
CreateFileAction.title = New

CreateFolderAction.text = New F&older
CreateFolderAction.toolTip = Create New Folder
CreateFolderAction.title = New

NewWizardDropDown.text = &New Wizards
ScrubLocalAction.problemsMessage = Problems occurred removing the local contents of the selected resources.
ScrubLocalAction.text = Discard &Local Copy
ScrubLocalAction.toolTip = Discard Local Contents
ScrubLocalAction.problemsTitle = Content Removal Problems
ScrubLocalAction.progress = Discarding content...

TextAction.selectAll = Select All
Cut = Cut
Copy = Copy
Paste = Paste
Delete = Delete
 
# ==============================================================================
# Keys used in the reuse editor which is released as experimental.
# ==============================================================================
WorkbenchPreference.saveInterval=&Workspace save interval (in minutes):
WorkbenchPreference.saveIntervalError=The workspace save interval should be between 1 and {0}.

# ==============================================================================
# Working Set Framework.
# ==============================================================================
ResourceWorkingSetPage.title=Resource Working Set
ResourceWorkingSetPage.description=Enter a working set name and select the working set resources.
ResourceWorkingSetPage.message=&Working set name:
ResourceWorkingSetPage.label.tree=Working set &contents:
ResourceWorkingSetPage.warning.nameMustNotBeEmpty= The name must not be empty.
ResourceWorkingSetPage.warning.nameWhitespace= The name must not have leading or trailing whitespace.
ResourceWorkingSetPage.warning.workingSetExists= A working set with the same name already exists.
ResourceWorkingSetPage.warning.resourceMustBeChecked= At least one resource must be checked.
ResourceWorkingSetPage.error= Error
ResourceWorkingSetPage.error.updateCheckedState= Error during update of checked state

ChooseWorkspaceDialog.dialogName=Workspace Launcher
ChooseWorkspaceDialog.dialogTitle=Select a workspace
ChooseWorkspaceDialog.dialogMessage= \
	{0} stores your projects in a directory called a workspace.\n\
	Select the workspace directory to use for this session.
ChooseWorkspaceDialog.defaultProductName = The product
ChooseWorkspaceDialog.workspaceEntryLabel=&Workspace:
ChooseWorkspaceDialog.browseLabel=&Browse...
ChooseWorkspaceDialog.directoryBrowserTitle=Select Workspace Directory
ChooseWorkspaceDialog.directoryBrowserMessage=Select the workspace directory to use.
ChooseWorkspaceDialog.useDefaultMessage=&Use this as the default and do not ask again
IDEApplication.workspaceMandatoryTitle=Workspace is Mandatory
IDEApplication.workspaceMandatoryMessage=IDEs need a valid workspace; restart without the @none option.
IDEApplication.workspaceInUseTitle=Workspace in Use
IDEApplication.workspaceInUseMessage=Workspace in use, choose a different one.
IDEApplication.workspaceInvalidTitle=Invalid Workspace
IDEApplication.workspaceInvalidMessage=Selected workspace is not valid; choose a different one.
IDEApplication.workspaceCannotBeSetTitle=Workspace Cannot be Set
IDEApplication.workspaceCannotBeSetMessage=Error in runtime; workspace cannot be set.  Exiting.
IDEApplication.workspaceCannotLockTitle=Workspace Cannot be Locked
IDEApplication.workspaceCannotLockMessage=Could not launch the product because the associated workspace is currently in use.
IDEApplication.versionTitle = Different Workspace Version
IDEApplication.versionMessage = \
	This workspace was written with a different version of the product and needs to be updated.\n\n\
	{0}\n\n\
	Updating the workspace may make it incompatible with other versions of the product.\n\
	Press OK to update the workspace and open it.  Press Cancel to select a different workspace.
IDEApplication.incompatibleJVMTitle = Incompatible JVM
IDEApplication.incompatibleJVMMessage = This version of the JVM is not suitable for this product.  Version {0} or greater is required.
GlobalBuildAction.BuildRunningTitle=Build Is Running
GlobalBuildAction.BuildRunningMessage=A build is currently running. Do you wish to cancel it?
CleanDialog.buildCleanAuto=Clean will discard all build problems and built states.  The projects will be rebuilt from scratch.
CleanDialog.buildCleanManual=Clean will discard all build problems and built states.  The next time a build occurs the projects will be rebuilt from scratch.
CleanDialog.title=Clean?
CleanDialog.cleanAllButton=Clean &all projects
CleanDialog.cleanSelectedButton=Clean &selected projects:
CleanDialog.buildNowButton=Start a &build immediately
CleanDialog.browse = Bro&wse...
CleanDialog.noSelection = <No projects selected>
CleanDialog.taskName=Cleaning selected projects
