###############################################################################
# Copyright (c) 2000, 2018 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
###############################################################################

ConsolePreferencePage_Console_settings=Debug Console Settings.
ConsolePreferencePage_Show__Console_View_when_there_is_program_error_3=Show when &program writes to standard error
ConsolePreferencePage_Show__Console_View_when_there_is_program_output_3=&Show when program writes to standard out
ConsolePreferencePage_Show__Console_View_enable_auto_scroll_lock=Enable &auto scroll lock
ConsolePreferencePage_Standard_Error__3=Standard &Error text color:
ConsolePreferencePage_Standard_In__4=Standard &In text color:
ConsolePreferencePage_Standard_Out__2=Standard &Out text color:
ConsolePreferencePage_Wrap_text_1=Fixed &width console
ConsolePreferencePage_Console_width=&Maximum character width:
ConsolePreferencePage_Limit_console_output_1=&Limit console output
ConsolePreferencePage_Console_buffer_size__characters___2=Console &buffer size (characters):
ConsolePreferencePage_The_console_buffer_size_must_be_at_least_1000_characters__1=Buffer size must be between 1000 and {0} inclusive.
ConsolePreferencePage_console_width=Character width must be between 80 and 1000 inclusive.
ConsolePreferencePage_12=Displayed &tab width:
ConsolePreferencePage_13=Tab width must be between 1 and 100 inclusive.
ConsolePreferencePage_11=Back&ground color:

DebugPreferencePage_1=General Settings for Running and Debugging.
DebugPreferencePage_2=Re&use editor when displaying source code
DebugPreferencePage_3=Activate the workbenc&h when a breakpoint is hit
DebugPreferencePage_0=&Memory unbuffered color:
DebugPreferencePage_4=Changed &value color:
DebugPreferencePage_10=Si&ze of recently launched applications list:
DebugPreferencePage_11=The size of recently launched applications should be between {0} and {1}
DebugPreferencePage_21=Open the associated perspective when an application suspends
DebugPreferencePage_22=A&lways
DebugPreferencePage_23=&Never
DebugPreferencePage_24=&Prompt
DebugPreferencePage_25=Skip &breakpoints during a 'Run to Line' operation
DebugPreferencePage_26=A&ctivate the debug view when a breakpoint is hit
DebugPreferencePage_27=Memor&y buffered color:
DebugPreferencePage_28=Changed value bac&kground color:
DebugPreferencePage_29=&Prompt for confirmation when deleting all breakpoints
DebugPreferencePage_30=Prompt for confirmation when deleting breakpoint con&tainers
DebugPreferencePage_31=&Prompt for confirmation when removing all triggerpoints
DebugPreferencePage_5=Prompt for confirmation when deleting all e&xpressions

LaunchingPreferencePage_1=&Build (if required) before launching
LaunchingPreferencePage_2=Save required dirty editors before launching
LaunchingPreferencePage_3=Alwa&ys
LaunchingPreferencePage_4=&Never
LaunchingPreferencePage_5=&Prompt
LaunchingPreferencePage_6=Wait for ongoing build to complete before launching
LaunchingPreferencePage_7=A&lways
LaunchingPreferencePage_8=N&ever
LaunchingPreferencePage_9=Pro&mpt
LaunchingPreferencePage_0=Select the launch configurations to &migrate:
LaunchersPreferencePage_0=Currently there are no conflicting launchers.
LaunchingPreferencePage_10=Remove term&inated launches when a new launch is created
LaunchingPreferencePage_11=Open the associated perspective when launching
LaunchingPreferencePage_12=Al&ways
LaunchingPreferencePage_13=Ne&ver
LaunchingPreferencePage_14=Pr&ompt
LaunchingPreferencePage_15=Launch in debug mode when workspace contains breakpoints
LaunchingPreferencePage_16=Alway&s
LaunchingPreferencePage_17=Neve&r
LaunchingPreferencePage_18=Promp&t
LaunchingPreferencePage_21=Continue launch if project contains errors
LaunchingPreferencePage_22=Al&ways
LaunchingPreferencePage_23=Pr&ompt
LaunchingPreferencePage_26=Search for, select, and upgrade launch configurations to be compatible with current tooling.
LaunchingPreferencePage_27=Mi&grate...
LaunchingPreferencePage_28=Select Launch Configurations
LaunchingPreferencePage_29=No Candidates
LaunchingPreferencePage_30=None of the available launch configurations require migration.
LaunchingPreferencePage_31=Migrating launch configurations...
LaunchingPreferencePage_32=Launch Configuration Filters
LaunchingPreferencePage_33=&Filter configurations in closed projects
LaunchingPreferencePage_34=Filter configurations in dele&ted or missing projects
LaunchingPreferencePage_35=Migration
LaunchingPreferencePage_36=General Options
LaunchingPreferencePage_37=Always launch the previously launched appli&cation
LaunchingPreferencePage_38=Launch t&he selected resource or active editor. If not launchable:
LaunchingPreferencePage_39=Launch the associated pro&ject
LaunchingPreferencePage_40=Launch Operation
LaunchingPreferencePage_41=La&unch the previously launched application
LaunchingPreferencePage_confirm_0=Prompt for confirmation when removin&g a configuration from the launch history
LaunchingPreferencePage_42=Termin&ate and Relaunch while launching (Press 'Shift' to toggle during launch from menu and toolbar)

ProcessPropertyPage_Command_Line__1=Co&mmand Line:
ProcessPropertyPage_0=Run-&at time:
ProcessPropertyPage_1=&Path:
ProcessPropertyPage_2=Process properties
ProcessPropertyPage_3=No path information available
ProcessPropertyPage_4=No time information available
ProcessPropertyPage_5=No command line information provided
ProcessPropertyPage_6=&Working Directory:
ProcessPropertyPage_7=En&vironment:
ProcessPropertyPage_8=No environment information provided
ProcessPropertyPage_9=No working directory information provided

SimpleVariablePreferencePage_3=Variable
SimpleVariablePreferencePage_4=Value
SimpleVariablePreferencePage_5=Description
SimpleVariablePreferencePage_6=&Create and configure string substitution variables.
SimpleVariablePreferencePage_7=&New...
SimpleVariablePreferencePage_8=&Edit...
SimpleVariablePreferencePage_9=&Remove
SimpleVariablePreferencePage_10=&Name:
SimpleVariablePreferencePage_11=&Value:
SimpleVariablePreferencePage_12=&Description:
SimpleVariablePreferencePage_13=New String Substitution Variable
SimpleVariablePreferencePage_14=Edit Variable: {0}
SimpleVariablePreferencePage_15=Overwrite variable?
SimpleVariablePreferencePage_16=A variable named {0} already exists. Overwrite?
SimpleLaunchVariablePreferencePage_21=Remove Contributed Variables
SimpleLaunchVariablePreferencePage_22=The following variables were contributed by plug-ins. Removing them may cause unknown problems.\n{0}\nProceed?
SimpleLaunchVariablePreferencePage_23=\ [contributed]
StringVariablePreferencePage_24=Error
StringVariablePreferencePage_25=Unable to save changes
StringVariablePreferencePage_26=\ [read-only]
StringVariablePreferencePage_27=Contributed By
StringVariablePreferencePage_23=Cannot overwrite read-only variable
StringVariablePreferencePage_22=A read-only variable named {0} already exists.  Read-only variables can not be overwritten.
StringVariablePreferencePage_21=Problem creating variable
StringVariablePreferencePage_20=Variables cannot have an empty name.
ViewManagementPreferencePage_0=The Debug View can automatically open and close views based on selection. Choose in which perspectives this feature should be enabled:
ViewManagementPreferencePage_1=View Management
ViewManagementPreferencePage_2=&Perspectives:
ViewManagementPreferencePage_3=Do &not automatically open/close views which have been manually closed/opened.
ViewManagementPreferencePage_4=The list of views that have been manually opened/closed is persisted between sessions.
ViewManagementPreferencePage_5=&Reset
PerspectivePreferencePage_0=These settings control perspectives for running and debugging. A perspective can automatically open when launching or when an application suspends.
PerspectivePreferencePage_1=Appli&cation Types/Launchers:
PerspectivePreferencePage_2=Modes/Perspec&tives:
PerspectivePreferencePage_4=None
PerspectivePreferencePage_5=These settings assign perspectives to each application type or launcher and launch mode set. Select "None" to indicate that a perspective should not be opened.
LaunchConfigurationsPreferencePage_0=Filter checked launch configuration type&s:
LaunchConfigurationsPreferencePage_1=Launch Configurations
LaunchConfigurationsPreferencePage_2=Delete &configurations when associated resource is deleted
LaunchConfigurationsPreferencePage_3=Apply window &working set(s)
LaunchDelegatesPreferencePage_1=The settings on this page specify which launcher to use when multiple launchers are available for a configuration and launch mode.
LaunchDelegatesPreferencePage_2=Launch &Type/Mode:
LaunchDelegatesPreferencePage_3=P&referred Launcher:
LaunchDelegatesPreferencePage_0=Default Launcher
LaunchDelegatesPreferencePage_4=Launcher Description
LaunchPerspectivePreferencePage_0=There is no perspective information available to change.
LaunchPerspectivePreferencePage_1=The selected types/launchers do not have any common mode sets.
DefaultLaunchConfigurationsPropertiesPage_0=This page allows you to manage launch configurations associated with the currently selected resource.
DefaultLaunchConfigurationsPropertiesPage_1=Launch con&figurations for ''{0}'':
DefaultLaunchConfigurationsPropertiesPage_2=&New...
DefaultLaunchConfigurationsPropertiesPage_3=Create new launch configuration
DefaultLaunchConfigurationsPropertiesPage_4=Du&plicate
DefaultLaunchConfigurationsPropertiesPage_5=Duplicate selected launch configuration
DefaultLaunchConfigurationsPropertiesPage_6=&Edit...
DefaultLaunchConfigurationsPropertiesPage_7=Edit selected launch configuration
DefaultLaunchConfigurationsPropertiesPage_8=De&lete
DefaultLaunchConfigurationsPropertiesPage_9=Delete selected launch configuration
DefaultLaunchConfigurationsPropertiesPage_11=Select Configuration Type
DefaultLaunchConfigurationsPropertiesPage_12=&Select the type of configuration to create:
RunDebugPropertiesPage_0=There was a problem trying to edit {0}
