###############################################################################
# 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
#
# This is an implementation of an early-draft specification developed under the Java
# Community Process (JCP) and is made available for testing and evaluation purposes
# only. The code is not compatible with any specification of the JCP.
#
# Contributors:
#     IBM Corporation - initial API and implementation
#     John Kaplan, johnkaplantech@gmail.com - 108071 [code templates] template for body of newly created class
#     Sebastian Davids, sdavids@gmx.de - 187316 [preferences] Mark Occurrences Pref Page; Link to
#     Benjamin Muskalla <b.muskalla@gmx.net> - [preferences] Add preference for new compiler warning: MissingSynchronizedModifierInInheritedMethod - https://bugs.eclipse.org/bugs/show_bug.cgi?id=245240
#     Guven Demir <guven.internet+eclipse@gmail.com> - [package explorer] Alternative package name shortening: abbreviation - https://bugs.eclipse.org/bugs/show_bug.cgi?id=299514
#     Thomas Reinhardt <thomas@reinhardt.com> - [build path] user library dialog should allow to select JAR from workspace - http://bugs.eclipse.org/300542
#     Stephan Herrmann <stephan@cs.tu-berlin.de> - Contributions for
#					[compiler][null] inheritance of null annotations as an option - https://bugs.eclipse.org/388281
#     				Warning option for bug 410218 - https://bugs.eclipse.org/461999
#     Christian Georgi<christian.georgi@sap.com> - Use OS symbol for 'Ctrl' - https://bugs.eclipse.org/462770
#     Gabor Kovesdan - Contribution for Bug 350000 - [content assist] Include non-prefix matches in auto-complete suggestions
#     Jesper S Moeller - Contribution for bug 529432 - Allow JDT UI to target Java 10
###############################################################################

BuildPathsPropertyPage_error_message=An error occurred while setting the build path.
BuildPathsPropertyPage_error_title=Error Setting Build Path
BuildPathsPropertyPage_job_title=Setting build path
BuildPathsPropertyPage_no_java_project_message=Not a Java project.
BuildPathsPropertyPage_closed_project_message=Java information is not available for a closed project.

BuildPathsPropertyPage_unsavedchanges_title=Setting Java Build Path
BuildPathsPropertyPage_unsavedchanges_message=The Java Build Path property page contains unsaved modifications. Do you want to save changes so that other build path related property pages can be updated?
BuildPathsPropertyPage_unsavedchanges_button_save=Apply
BuildPathsPropertyPage_unsavedchanges_button_discard=Discard
BuildPathsPropertyPage_unsavedchanges_button_ignore=Apply Later

ClasspathVariablesPreferencePage_title=Classpath Variables
ClasspathVariablesPreferencePage_description=A classpath variable can be added to a project's class path. \
It can be used to define the location of a JAR file that isn't part of the workspace. \
Non modifiable classpath variables are set internally (for example, JRE_LIB, JRE_SRC, and JRE_SRCROOT depend on the JRE setting).

ClasspathVariablesPreferencePage_savechanges_title=Classpath Variables
ClasspathVariablesPreferencePage_savechanges_message=Do you want to apply the changes to the class path variables now? Your changes will be lost if another page modifies the classpath variables as well.

ImportOrganizePreferencePage_title=Organize Imports

ImportOrganizeConfigurationBlock_order_label=Define the sorting order of im&port statements. A package or type name prefix (e.g. 'org.eclipse') is a valid entry. An import is always added to the most specific group.
ImportOrganizeConfigurationBlock_other_static=* - all unmatched static imports
ImportOrganizeConfigurationBlock_other_normal=* - all unmatched type imports
ImportOrganizeConfigurationBlock_order_add_button=&New...
ImportOrganizeConfigurationBlock_order_edit_button=&Edit...
ImportOrganizeConfigurationBlock_order_up_button=&Up
ImportOrganizeConfigurationBlock_order_down_button=Do&wn
ImportOrganizeConfigurationBlock_order_remove_button=&Remove
ImportOrganizeConfigurationBlock_order_add_static_button=New Stati&c...
ImportOrganizeConfigurationBlock_order_load_button=I&mport...
ImportOrganizeConfigurationBlock_order_save_button=E&xport...
ImportOrganizeConfigurationBlock_ignoreLowerCase_label=Do not create imports for &types starting with a lowercase letter
ImportOrganizeConfigurationBlock_threshold_label=Number of &imports needed for .* (e.g. 'org.eclipse.*'):
ImportOrganizeConfigurationBlock_error_invalidthreshold=Invalid import number.
ImportOrganizeConfigurationBlock_loadDialog_title=Load Import Order from File
ImportOrganizeConfigurationBlock_loadDialog_error_title=Load Import Order
ImportOrganizeConfigurationBlock_loadDialog_error_message=Importing failed. Not a valid import order file.
ImportOrganizeConfigurationBlock_saveDialog_title=Save Import Order to File
ImportOrganizeConfigurationBlock_saveDialog_error_title=Save Import Order
ImportOrganizeConfigurationBlock_staticthreshold_label=Number of &static imports needed for .* (e.g. 'java.lang.Math.*'):
ImportOrganizeConfigurationBlock_saveDialog_error_message=Exporting import order file failed.
ImportOrganizeInputDialog_title=Import Group
ImportOrganizeInputDialog_browse_packages_button=&Packages...
ImportOrganizeInputDialog_browse_types_label=&Types...
ImportOrganizeInputDialog_title_static=Static Import Group
ImportOrganizeInputDialog_ChoosePackageDialog_title=Package Selection
ImportOrganizeInputDialog_ChoosePackageDialog_description=Choose package name or package prefix:
ImportOrganizeInputDialog_ChoosePackageDialog_empty=No packages available.
ImportOrganizeInputDialog_ChooseTypeDialog_title=Type Selection
ImportOrganizeInputDialog_ChooseTypeDialog_description=Choose type name:
ImportOrganizeInputDialog_ChooseTypeDialog_error_message=A problem occurred while collecting types. Check log for more details.

ImportOrganizeInputDialog_error_invalidName=Not a valid type or package name.
ImportOrganizeInputDialog_error_entryExists=Entry already exists in list.
ImportOrganizeInputDialog_name_group_label=&Enter a prefix (e.g. 'org.eclipse') or '*' to match all imports:
ImportOrganizeInputDialog_name_group_static_label=&Enter a prefix (e.g. 'org.eclipse') or '*' to match all imports:
JavaBasePreferencePage_rebuildingIndexJobName=Rebuilding Java index
JavaBasePreferencePage_rebuildIndexButtonName=Re&build Index
JavaBasePreferencePage_description=General settings for Java development:

JavaBasePreferencePage_doubleclick_action=Action on double click in the Package Explorer
JavaBasePreferencePage_doubleclick_gointo=&Go into the selected element
JavaBasePreferencePage_doubleclick_expand=E&xpand the selected element
JavaBasePreferencePage_do_not_hide_button=&Clear

JavaBasePreferencePage_refactoring_title= Refactoring Java code
JavaBasePreferencePage_refactoring_auto_save= &Save all modified resources automatically prior to refactoring
JavaBasePreferencePage_refactoring_lightweight=Rename in editor &without dialog
JavaBasePreferencePage_do_not_hide_description=Clear all 'do not show again' settings and show all hidden dialogs again
JavaBasePreferencePage_do_not_hide_dialog_title=Hidden Dialogs
JavaBasePreferencePage_do_not_hide_dialog_message=All 'do not ask again' settings for Java dialogs cleared. Hidden dialogs will be shown again.

JavaBasePreferencePage_search= Search
JavaBasePreferencePage_search_small_menu=Use &reduced search menu

NewJavaProjectPreferencePage_title=New Project
NewJavaProjectPreferencePage_description=Specify the build path entries used as default by the New Java Project creation wizard:

NewJavaProjectPreferencePage_sourcefolder_label=Source and output folder
NewJavaProjectPreferencePage_sourcefolder_project=&Project
NewJavaProjectPreferencePage_sourcefolder_folder=&Folders
NewJavaProjectPreferencePage_folders_src=&Source folder name:
NewJavaProjectPreferencePage_folders_bin=&Output folder name:

NewJavaProjectPreferencePage_jrelibrary_label=As &JRE library use:
NewJavaProjectPreferencePage_jre_variable_description=JRE_LIB variable (deprecated)
NewJavaProjectPreferencePage_jre_container_description=JRE container

NewJavaProjectPreferencePage_folders_error_namesempty=Enter folder names.
NewJavaProjectPreferencePage_folders_error_invalidsrcname=Invalid source folder name: {0}
NewJavaProjectPreferencePage_folders_error_invalidbinname=Invalid output folder name: {0}
NewJavaProjectPreferencePage_folders_error_invalidcp=Settings will result in an invalid build path. Check for nested folders.

NewJavaProjectPreferencePage_error_decode=Error while decoding JRE entry

JavaEditorPreferencePage_analyseAnnotationsWhileTyping= Report &problems as you type
JavaEditorPreferencePage_multiLineComment=Multi-line comment
JavaEditorPreferencePage_singleLineComment=Single-line comment
JavaEditorPreferencePage_returnKeyword= Keyword 'return'
JavaEditorPreferencePage_keywords=Keywords excluding 'return'
JavaEditorPreferencePage_varKeyword=Keyword 'var'
JavaEditorPreferencePage_strings=Strings
JavaEditorPreferencePage_others=Others
JavaEditorPreferencePage_operators=Operators
JavaEditorPreferencePage_brackets=Brackets
JavaEditorPreferencePage_javaCommentTaskTags=Task Tags
JavaEditorPreferencePage_javaDocKeywords=Tags
JavaEditorPreferencePage_javaDocHtmlTags=HTML markup
JavaEditorPreferencePage_javaDocLinks=Links
JavaEditorPreferencePage_javaDocOthers=Others
JavaEditorPreferencePage_systemDefault=&System Default
JavaEditorPreferencePage_color=C&olor:
JavaEditorPreferencePage_bold=&Bold
JavaEditorPreferencePage_italic=&Italic
JavaEditorPreferencePage_strikethrough=&Strikethrough
JavaEditorPreferencePage_underline=&Underline
JavaEditorPreferencePage_enable=Enab&le
JavaEditorPreferencePage_preview=Previe&w:
JavaEditorPreferencePage_highlightMatchingBracketAndCaretLocation=Ma&tching bracket and caret location
JavaEditorPreferencePage_highlightEnclosingBrackets=&Enclosing brackets
JavaEditorPreferencePage_highlightMatchingBracket=&Matching bracket
JavaEditorPreferencePage_bracketHighlighting=&Bracket highlighting
JavaEditorPreferencePage_insertSingleProposalsAutomatically=Insert single &proposals automatically
JavaEditorPreferencePage_showOnlyProposalsVisibleInTheInvocationContext=Hide proposals not visible in the in&vocation context
JavaEditorPreferencePage_presentProposalsInAlphabeticalOrder=&Sort proposals
JavaEditorPreferencePage_coloring_element=&Element:
JavaEditorPreferencePage_enableAutoActivation=&Enable auto activation
JavaEditorPreferencePage_automaticallyAddImportInsteadOfQualifiedName=Add import instead of qua&lified name
JavaEditorPreferencePage_suggestStaticImports=&Use <a>static imports</a> (only 1.5 or higher)
JavaEditorPreferencePage_completionInserts=Completion inser&ts
JavaEditorPreferencePage_completionOverwrites=Completion over&writes
JavaEditorPreferencePage_completionToggleHint=Press ''{0}'' to toggle while content assist is active
JavaEditorPreferencePage_fillArgumentsOnMethodCompletion=&Fill method arguments and show guessed arguments
JavaEditorPreferencePage_fillParameterNamesOnMethodCompletion=I&nsert parameter names 
JavaEditorPreferencePage_fillBestGuessedArgumentsOnMethodCompletion=Insert best &guessed arguments
JavaEditorPreferencePage_autoActivationDelay=Auto activation dela&y (ms):
JavaEditorPreferencePage_autoActivationTriggersForJava=Auto activation triggers for &Java:
JavaEditorPreferencePage_autoActivationTriggersForJavaDoc=Auto activation triggers for Javad&oc:
JavaEditorPreferencePage_completePrefixes= &Insert common prefixes automatically

JavaEditorPreferencePage_backgroundForMethodParameters= Parameter hints background
JavaEditorPreferencePage_foregroundForMethodParameters= Parameter hints foreground
JavaEditorPreferencePage_backgroundForCompletionReplacement= Completion overwrite background
JavaEditorPreferencePage_foregroundForCompletionReplacement= Completion overwrite foreground
JavaEditorPreferencePage_sourceHoverBackgroundColor= Source hover background

JavaEditorPreferencePage_general=Appeara&nce
JavaEditorPreferencePage_colors=Synta&x
JavaEditorPreferencePage_empty_input=Empty input
JavaEditorPreferencePage_invalid_input=''{0}'' is not a valid input.
JavaEditorPreferencePage_matchingBracketsHighlightColor2=Matching brackets highlight
JavaEditorPreferencePage_appearanceOptions=Appearance co&lor options:

JavaEditorPreferencePage_typing_tabTitle=T&yping
JavaEditorPreferencePage_closeStrings= "&Strings"
JavaEditorPreferencePage_closeBrackets= (Parentheses), [square] and <angle> brac&kets
JavaEditorPreferencePage_closeBraces= {B&races}
JavaEditorPreferencePage_closeJavaDocs= Ja&vadoc and comment regions
JavaEditorPreferencePage_wrapStrings= &Wrap automatically
JavaEditorPreferencePage_escapeStrings= Escape text w&hen pasting into a string literal
JavaEditorPreferencePage_escapeStringsNonAscii= Use Unicode escape synta&x for non-ASCII characters 
JavaEditorPreferencePage_addJavaDocTags= Add &Javadoc tags
JavaEditorPreferencePage_smartPaste= Adjust &indentation

# DO NOT TRANSLATE "org.eclipse.ui.preferencePages.GeneralTextEditor" and "org.eclipse.ui.preferencePages.ColorsAndFonts"
JavaEditorPreferencePage_link=Java editor preferences. See <a href=\"org.eclipse.ui.preferencePages.GeneralTextEditor\">'Text Editors'</a> for general text editor preferences and <a href=\"org.eclipse.ui.preferencePages.ColorsAndFonts\">'Colors and Fonts'</a> to configure the font.

JavaEditorPreferencePage_importsOnPaste=&Update imports
JavaEditorPreferencePage_subWordNavigation= Smart &caret positioning in Java names (overrides platform behavior)
JavaEditorPreferencePage_typing_smartSemicolon= Se&micolons
JavaEditorPreferencePage_typing_smartOpeningBrace= &Braces
JavaEditorPreferencePage_typing_smartTab= &Tab key adjusts the indentation of the current line
JavaEditorPreferencePage_smartInsertMode_message= The preferences on this page are only considered if 'Smart Insert Mode' is selected.
JavaEditorPreferencePage_smartAutoIndentAfterNewLine= E&nter key adjusts the indentation on the new line
JavaEditorPropertyPage_SaveActionLink_Text=The actions to execute when the Java Editor is saved can be configured on the <a>'Save Actions'</a> property page.

# DO NOT TRANSLATE "org.eclipse.ui.preferencePages.GeneralTextEditor" and "org.eclipse.ui.preferencePages.ColorsAndFonts" 
JavaEditorColoringConfigurationBlock_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.

JavaEditorPreferencePage_hoverTab_title= Ho&vers

JavaBasePreferencePage_openTypeHierarchy=When opening a Type Hierarchy
JavaBasePreferencePage_inView=Show the &Type Hierarchy View in the current perspective
JavaBasePreferencePage_dialogs=Java dialogs
JavaBasePreferencePage_EnableNewJavaIndex=Enable &new Java index
JavaBasePreferencePage_inPerspective=Open a new Type Hierarchy &Perspective

JavaEditorPreferencePage_quickassist_lightbulb=L&ight bulb for quick assists
JavaEditorPreferencePage_showJavaElementOnly= O&nly show the selected Java element

JavaEditorHoverConfigurationBlock_annotationRollover= &Expand vertical ruler icons upon hovering (does not affect open editors)
JavaEditorHoverConfigurationBlock_hoverPreferences= Text &Hover key modifier preferences:
JavaEditorHoverConfigurationBlock_keyModifier= Pressed key &modifier while hovering:
JavaEditorHoverConfigurationBlock_description= Descriptio&n:
JavaEditorHoverConfigurationBlock_modifierIsNotValid= Modifier ''{0}'' is not valid.
JavaEditorHoverConfigurationBlock_modifierIsNotValidForHover= Modifier ''{0}'' for ''{1}'' hover is not valid.
JavaEditorHoverConfigurationBlock_duplicateModifier= ''{0}'' hover uses the same modifier as ''{1}'' hover.
JavaEditorHoverConfigurationBlock_nameColumnTitle= Text Hover Name
JavaEditorHoverConfigurationBlock_modifierColumnTitle= Pressed Key Modifier While Hovering

JavaEditorHoverConfigurationBlock_delimiter= +
JavaEditorHoverConfigurationBlock_insertDelimiterAndModifierAndDelimiter= \ + {0} + 
JavaEditorHoverConfigurationBlock_insertModifierAndDelimiter= \ {0} + 
JavaEditorHoverConfigurationBlock_insertDelimiterAndModifier= \ + {0}

MarkOccurrencesConfigurationBlock_title= &Mark Occurrences

# DO NOT TRANSLATE "org.eclipse.ui.editors.preferencePages.Annotations"
MarkOccurrencesConfigurationBlock_link= The appearance can be configured on the <a href=\"org.eclipse.ui.editors.preferencePages.Annotations\">'Annotations'</a> preference page.

MarkOccurrencesConfigurationBlock_markOccurrences= Mark &occurrences of the selected element in the current file.
MarkOccurrencesConfigurationBlock_markTypeOccurrences= &Types
MarkOccurrencesConfigurationBlock_markMethodOccurrences= &Methods
MarkOccurrencesConfigurationBlock_markConstantOccurrences= &Constants
MarkOccurrencesConfigurationBlock_markFieldOccurrences= &Non-constant fields
MarkOccurrencesConfigurationBlock_markLocalVariableOccurrences= &Local variables
MarkOccurrencesConfigurationBlock_markExceptionOccurrences= E&xpressions throwing a declared exception
MarkOccurrencesConfigurationBlock_markMethodExitPoints= Method &exits
MarkOccurrencesConfigurationBlock_markImplementors= Methods implementing an &interface
MarkOccurrencesConfigurationBlock_markBreakContinueTargets= Targets of &break and continue statements
MarkOccurrencesConfigurationBlock_stickyOccurrences= &Keep marks when the selection changes

JavadocConfigurationPropertyPage_IsPackageFragmentRoot_description=Specify the location (URL) of the documentation generated by Javadoc. The Javadoc location will contain a file called 'package-list'.
JavadocConfigurationBlock_workspace_archive_selection_dialog_title=Javadoc Archive Selection Dialog
JavadocConfigurationBlock_workspace_archive_selection_dialog_description=&Choose the archive containing the documentation:
JavadocConfigurationPropertyPage_IsIncorrectElement_description=Javadoc location can only be attached to Java projects or archives and class folders in Java projects. Source folders use the location specified at their project.
JavadocConfigurationPropertyPage_IsJavaProject_description=Specify the location of the project\'s Javadoc documentation. This location is used by the Javadoc export wizard as the default value and by the \'Open Attached Javadoc\' action. For example: \'file:///c:/myworkspace/myproject/doc\'.
JavadocConfigurationPropertyPage_invalid_container=The current class path entry belongs to container ''{0}'' which can not be configured.
JavadocConfigurationPropertyPage_location_path=&Location path:
JavadocConfigurationPropertyPage_locationPath_none=(none)
JavadocConfigurationPropertyPage_not_supported=The current class path entry belongs to container ''{0}'' which does not support the attachment of Javadoc to its entries.

JavadocConfigurationBlock_browse_archive_button=&Browse...
JavadocConfigurationBlock_error_notafolder=Location does not exist.
JavadocConfigurationPropertyPage_read_only=The current class path entry belongs to container ''{0}'' which does not allow user modifications to Javadoc locations on its entries.
JavadocConfigurationBlock_javadocFolderDialog_label=Javadoc Location Selection
JavadocConfigurationBlock_javadocFolderDialog_message=Select Javadoc location:
JavadocConfigurationBlock_MalformedURL_error=Invalid URL
JavadocConfigurationBlock_validate_button=&Validate...
JavadocConfigurationBlock_workspace_radio=Wor&kspace file
JavadocConfigurationBlock_InvalidLocation_message=Location might be invalid. Files 'package-list' and 'index.html' that are typically available at the root of documentation created by the Javadoc tool have not been found.
JavadocConfigurationBlock_ValidLocation_message=Location is likely valid. Files 'package-list' and 'index.html' have been found.
JavadocConfigurationBlock_OK_label=OK
JavadocConfigurationBlock_Open_label=O&pen in Browser
JavadocConfigurationBlock_UnableToValidateLocation_message=Cannot validate Javadoc location.
JavadocConfigurationBlock_MessageDialog_title=Validating Javadoc Location
JavadocConfigurationBlock_location_type_path_label=Javadoc &URL (e.g. 'http://www.sample-url.org/doc/' or 'file:///c:/myworkspace/myproject/doc')
JavadocConfigurationBlock_location_type_jar_label=Javadoc in ar&chive
JavadocConfigurationBlock_location_path_label=&Javadoc location path:
JavadocConfigurationBlock_location_jar_label=Archive &path:
JavadocConfigurationBlock_jar_path_label=Path &within archive:
JavadocConfigurationBlock_zipImportSource_title=Javadoc Archive Selection
JavadocConfigurationBlock_location_in_jarorzip_message=&Select the folder that is the root of the Javadoc documentation:
JavadocConfigurationBlock_browse_jarorzip_path_title=Javadoc Root Location
JavadocConfigurationBlock_browse_archive_path_button=Br&owse...
JavadocConfigurationBlock_browse_folder_button=&Browse...
JavadocConfigurationBlock_error_notafile=Archive can not be found in file system
JavadocConfigurationBlock_external_radio=E&xternal file
JavadocConfigurationBlock_error_invalidarchivepath=Archive path is not a valid path.
JavadocConfigurationBlock_error_archivepathnotabsolute=Archive path must be an absolute path.
JavadocConfigurationBlock_error_archive_not_found_in_workspace=Archive can not be found in workspace
JavadocConfigurationBlock_error_dialog_title=Generate Javadoc 

SourceAttachmentPropertyPage_error_title=Error Attaching Source
SourceAttachmentPropertyPage_read_only=The current class path entry belongs to container ''{0}'' which does not allow user modifications to source attachments on its entries.
SourceAttachmentPropertyPage_error_message=An error occurred while associating the source.
SourceAttachmentPropertyPage_not_supported=The current class path entry belongs to container ''{0}'' which does not support the attachment of sources to its entries.
SourceAttachmentPropertyPage_noarchive_message=Source can only be attached to archive and class folders in Java projects.
SourceAttachmentPropertyPage_invalid_container=The current class path entry belongs to container ''{0}'' which can not be configured.
SourceAttachmentPropertyPage_location_path=&Location path:
SourceAttachmentPropertyPage_locationPath_none=(none)

NativeLibrariesPropertyPage_invalidElementSelection_desription=Native libraries can not be attached to the selected element.
NativeLibrariesPropertyPage_errorAttaching_message=An error occurred while associating the library.

AppearancePreferencePage_description= Appearance of Java elements in viewers:
AppearancePreferencePage_methodreturntype_label= Show &method return types
AppearancePreferencePage_methodtypeparams_label=Show method type pa&rameters
AppearancePreferencePage_showCategory_label=Sh&ow categories
AppearancePreferencePage_pkgNamePatternEnable_label= &Compress all package name segments, except the final segment
AppearancePreferencePage_pkgNamePattern_label= Com&pression pattern (e.g. given package name 'org.eclipse.jdt', pattern '.' will compress it to '..jdt', '0' to 'jdt', '1~.' to 'o~.e~.jdt'):
AppearancePreferencePage_pkgNamePatternAbbreviateEnable_label= A&bbreviate package names
AppearancePreferencePage_pkgNamePatternAbbreviate_label= &Newline separated 'package_name=abbreviation' style abbreviation rules (e.g. rule 'org.eclipse.jdt={JDT}' will abbreviate 'org.eclipse.jdt.ui' to '{JDT}.ui').\nUse '#' at beginning to disable a rule:
AppearancePreferencePage_showMembersInPackagesView=S&how members in Package Explorer
AppearancePreferencePage_decorateTestCodeContainerIcons=Use modified &icons for test source folders and test dependencies (requires restart)
AppearancePreferencePage_stackViewsVerticallyInTheJavaBrowsingPerspective=&Stack views vertically in the Java Browsing perspective
AppearancePreferencePage_note=Note:
AppearancePreferencePage_preferenceOnlyEffectiveForNewPerspectives=This preference will only take effect on new perspectives
AppearancePreferencePage_packageNameCompressionPattern_error_isEmpty=Enter a package name compression pattern
AppearancePreferencePage_packageNameAbbreviationPattern_error_isInvalid=Enter a valid package name abbreviation pattern
AppearancePreferencePage_foldEmptyPackages=&Fold empty packages in hierarchical layout in Package and Project Explorer
AppearancePreferencePage_sortLibraryEntries=Sort library entries &alphabetically in Package Explorer

CodeFormatterPreferencePage_title=Code Formatter

TodoTaskPreferencePage_title=Task Tags
TodoTaskPreferencePage_description=&Strings indicating tasks in Java comments. The entry marked as default will be used in the code templates.

TodoTaskConfigurationBlock_markers_tasks_high_priority=High
TodoTaskConfigurationBlock_markers_tasks_normal_priority=Normal
TodoTaskConfigurationBlock_markers_tasks_low_priority=Low
TodoTaskConfigurationBlock_markers_tasks_add_button=&New...
TodoTaskConfigurationBlock_markers_tasks_remove_button=&Remove
TodoTaskConfigurationBlock_markers_tasks_edit_button=&Edit...
TodoTaskConfigurationBlock_markers_tasks_name_column=Tag
TodoTaskConfigurationBlock_markers_tasks_priority_column=Priority
TodoTaskConfigurationBlock_markers_tasks_setdefault_button=Defa&ult
TodoTaskConfigurationBlock_casesensitive_label=&Case sensitive task tag names

TodoTaskConfigurationBlock_needsbuild_title=Task Tags Settings Changed
TodoTaskConfigurationBlock_tasks_default={0} (default)
TodoTaskConfigurationBlock_needsfullbuild_message=The task tags settings have changed. A full rebuild is required to for changes to take effect. Do the full build now?
TodoTaskConfigurationBlock_needsprojectbuild_message=The task tags settings have changed. A rebuild of the project is required for changes to take effect. Build the project now?

TodoTaskInputDialog_new_title=New Task Tag
TodoTaskInputDialog_edit_title=Edit Task Tag
TodoTaskInputDialog_name_label=T&ag:
TodoTaskInputDialog_priority_label=&Priority:
TodoTaskInputDialog_priority_high=High
TodoTaskInputDialog_priority_normal=Normal
TodoTaskInputDialog_priority_low=Low
TodoTaskInputDialog_error_enterName=Enter task tag name.
TodoTaskInputDialog_error_comma=Name cannot contain a comma.
TodoTaskInputDialog_error_entryExists=An entry with the same name already exists.
TodoTaskInputDialog_error_noSpace=Name cannot begin or end with a whitespace.

PropertyAndPreferencePage_useworkspacesettings_change=Configure Workspace Settings...
PropertyAndPreferencePage_showprojectspecificsettings_label=Configure Project Specific Settings...
PropertyAndPreferencePage_useprojectsettings_label=Enable pr&oject specific settings

JavaBuildPreferencePage_title=Builder

JavaBuildConfigurationBlock_section_general=&General
JavaBuildConfigurationBlock_section_output_folder=Out&put folder
JavaBuildConfigurationBlock_section_build_path_problems=&Build path problems


JavaBuildConfigurationBlock_error=Error
JavaBuildConfigurationBlock_warning=Warning
JavaBuildConfigurationBlock_info=Info
JavaBuildConfigurationBlock_ignore=Ignore

JavaBuildConfigurationBlock_needsbuild_title=Building Settings Changed
JavaBuildConfigurationBlock_needsfullbuild_message=The Building settings have changed. A full rebuild is required for changes to take effect. Do the full build now?
ProblemSeveritiesConfigurationBlock_adapt_null_pointer_access_settings_dialog_message=When annotation-based null analysis is enabled, the settings for \n'Null pointer access' and 'Potential null pointer access' \nshould not be less severe than the related annotation-based \n'Violation of null specification' and 'Conflict between null annotations and null inference' problems.\n\nDo you want to raise the severity of the 'Null pointer access' problems?
ProblemSeveritiesConfigurationBlock_adapt_null_pointer_access_settings_dialog_title=Adapt Settings
ProblemSeveritiesConfigurationBlock_include_assert_in_null_analysis= Include 'assert' in null analysis
ProblemSeveritiesConfigurationBlock_treat_optional_as_fatal=Treat above errors like &fatal compile errors (make compiled code not executable)
JavaBuildConfigurationBlock_needsprojectbuild_message=The Building settings have changed. A rebuild of the project is required for changes to take effect. Build the project now?

JavaBuildConfigurationBlock_resource_filter_description=Filtered resources are not copied to the output folder during a build. List is comma separated (e.g. '*.doc, plugin.xml, scripts/')
JavaBuildConfigurationBlock_resource_filter_label=Fi&ltered resources:
JavaBuildConfigurationBlock_build_invalid_classpath_label=Abo&rt build when build path errors occur
JavaBuildConfigurationBlock_build_recreate_modified=Rebuild class &files modified by others
JavaBuildConfigurationBlock_build_clean_outputfolder_label=Scrub output folders &when cleaning projects
JavaBuildConfigurationBlock_enable_exclusion_patterns_label=Enable use of e&xclusion patterns in source folders
JavaBuildConfigurationBlock_enable_multiple_outputlocations_label=Enable use of m&ultiple output locations for source folders

JavaBuildConfigurationBlock_pb_incomplete_build_path_label=I&ncomplete build path:
ProblemSeveritiesConfigurationBlock_pb_discourraged_reference_label=Di&scouraged reference (access rules):
JavaBuildConfigurationBlock_pb_build_path_cycles_label=Circular d&ependencies:
JavaBuildConfigurationBlock_pb_duplicate_resources_label=Duplica&ted resources:
ProblemSeveritiesConfigurationBlock_pb_forbidden_reference_label=&Forbidden reference (access rules):
JavaBuildConfigurationBlock_pb_max_per_unit_label=&Maximum number of problems reported per compilation unit:
JavaBuildConfigurationBlock_pb_check_prereq_binary_level_label=In&compatible required binaries:
JavaBuildConfigurationBlock_pb_output_overlapping_with_source_label=&Output location overlaps source location:
JavaBuildConfigurationBlock_pb_strictly_compatible_jre_not_available_label= No &strictly compatible JRE for execution environment available:
JavaBuildConfigurationBlock_pb_compiler_compliance_does_not_match_jre_label=Comp&iler Compliance does not match used JRE

JavaBuildConfigurationBlock_empty_input=Number of problems cannot be empty.
JavaBuildConfigurationBlock_invalid_input={0} is not a valid number of problems.
JavaBuildConfigurationBlock_filter_invalidsegment_error=Filter is invalid: {0}

ProblemSeveritiesPreferencePage_title=Problem Severities

ProblemSeveritiesConfigurationBlock_enable_annotation_null_analysis=Enable annotation-based null analysis
ProblemSeveritiesConfigurationBlock_error=Error
ProblemSeveritiesConfigurationBlock_warning=Warning
ProblemSeveritiesConfigurationBlock_info=Info
ProblemSeveritiesConfigurationBlock_ignore=Ignore

ProblemSeveritiesConfigurationBlock_section_potential_programming_problems=&Potential programming problems
ProblemSeveritiesConfigurationBlock_section_unnecessary_code=&Unnecessary code
ProblemSeveritiesConfigurationBlock_section_code_style=&Code style
ProblemSeveritiesConfigurationBlock_section_generics=&Generic types
ProblemSeveritiesConfigurationBlock_section_deprecations=D&eprecated and restricted API
ProblemSeveritiesConfigurationBlock_section_module=Modu&les
ProblemSeveritiesConfigurationBlock_section_name_shadowing=Na&me shadowing and conflicts
ProblemSeveritiesConfigurationBlock_section_annotations=Anno&tations
ProblemSeveritiesConfigurationBlock_section_null_analysis=&Null analysis
ProblemSeveritiesConfigurationBlock_needsbuild_title=Error/Warning Settings Changed
ProblemSeveritiesConfigurationBlock_needsfullbuild_message=The Error/Warning settings have changed. A full rebuild is required for changes to take effect. Do the full build now?
ProblemSeveritiesConfigurationBlock_needsprojectbuild_message=The Error/Warning settings have changed. A rebuild of the project is required for changes to take effect. Build the project now?
NullAnnotationsConfigurationDialog_nonnull_annotations_label='N&onNull' annotations:
NullAnnotationsConfigurationDialog_nonnull_annotations_description=Elements annotated with '@NonNull' must never be null.
ProblemSeveritiesConfigurationBlock_missing_nonnull_by_default_annotation=Missing '@NonNullByDefault' annotation on package:
NullAnnotationsConfigurationDialog_nonnullbydefault_annotation_error='NonNullByDefault' annotation must be a fully-qualified type name
NullAnnotationsConfigurationDialog_nonnullbydefault_annotations_label='NonN&ullByDefault' annotations:
NullAnnotationsConfigurationDialog_nonnullbydefault_annotations_description=The '@NonNullByDefault' annotation sets 'non-null' as default for all elements in a package, type, or method. \
When using Eclipse's default '@NonNullByDefault' annotation, an optional annotation argument is evaluated, allowing to cancel or fine-tune the 'non-null' default.
NullAnnotationsConfigurationDialog_nonnull_annotation_error='NonNull' annotation must be a fully-qualified type name
NullAnnotationsConfigurationDialog_null_annotations_description=Enter custom annotation names for null specifications.\n\
Primary annotations are for active use in source and class files, whereas secondary annotations are intended only for interpreting API of third-party libraries.
NullAnnotationsConfigurationDialog_nullable_annotation_error='Nullable' annotation must be a fully-qualified type name
NullAnnotationsConfigurationDialog_nullable_annotations_label='&Nullable' annotations:
NullAnnotationsConfigurationDialog_nullable_annotations_description=Elements annotated with the '@Nullable' annotation can be null.
NullAnnotationsConfigurationDialog_add_button=Add
NullAnnotationsConfigurationDialog_notFound_info=Annotation type {0} could not be found
NullAnnotationsConfigurationDialog_primary_label=Primary annotation:
NullAnnotationsConfigurationDialog_secondary_label=Secondary annotations:

ProblemSeveritiesConfigurationBlock_enable_syntactic_null_analysis_for_fields=Enable syntactic null analysis for fields
ProblemSeveritiesConfigurationBlock_inherit_null_annotations=Inherit null annotations

ProblemSeveritiesConfigurationBlock_common_description=&Select the severity level for the following optional problems:
ProblemSeveritiesConfigurationBlock_pb_unavoidable_generic_type_problems=Ignore unavoidable generic type problems due to raw APIs
ProblemSeveritiesConfigurationBlock_pb_unsafe_type_op_label=Unchecked generic type operation:
ProblemSeveritiesConfigurationBlock_pb_raw_type_reference=Usage of a raw type:
ProblemSeveritiesConfigurationBlock_pb_final_param_bound_label=Generic t&ype parameter declared with a final type bound:
ProblemSeveritiesConfigurationBlock_pb_inexact_vararg_label=Inexact type &match for vararg arguments:
ProblemSeveritiesConfigurationBlock_pb_unlikely_collection_method_argument_type_label=Unlikely argument type for collection methods using 'Object'
ProblemSeveritiesConfigurationBlock_pb_unlikely_collection_method_argument_type_strict_label=Perform strict analysis against the expected type
ProblemSeveritiesConfigurationBlock_pb_unlikely_equals_argument_type_label=Unlikely argument type for method equals()

ProblemSeveritiesConfigurationBlock_pb_accidential_assignement_label=Po&ssible accidental boolean assignment (e.g. 'if (a = b)'):
ProblemSeveritiesConfigurationBlock_pb_local_variable_hiding_label=Local &variable declaration hides another field or variable:
ProblemSeveritiesConfigurationBlock_pb_field_hiding_label=Field declaration &hides another field or variable:
ProblemSeveritiesConfigurationBlock_pb_special_param_hiding_label=Include constructor or setter method parameters
ProblemSeveritiesConfigurationBlock_pb_unqualified_field_access_label=Un&qualified access to instance field:
ProblemSeveritiesConfigurationBlock_pb_finally_block_not_completing_label='&finally' does not complete normally:
ProblemSeveritiesConfigurationBlock_pb_undocumented_empty_block_label=Undocumented empty &block:
ProblemSeveritiesConfigurationBlock_pb_unused_throwing_exception_label=Unnecessary declaration of thrown exception:
ProblemSeveritiesConfigurationBlock_pb_unhandled_surpresswarning_tokens=Unhandled token in '@SuppressWarnings':
ProblemSeveritiesConfigurationBlock_pb_unused_throwing_exception_when_overriding_label=Ignore in overriding and implementing methods
ProblemSeveritiesConfigurationBlock_pb_api_leak_label=AP&I leaks
ProblemSeveritiesConfigurationBlock_pb_unused_throwing_exception_ignore_unchecked_label=Ignore 'Exception' and 'Throwable'
ProblemSeveritiesConfigurationBlock_pb_missing_serial_version_label=Seriali&zable class without serialVersionUID:
ProblemSeveritiesConfigurationBlock_pb_missing_static_on_method_label=Method can be static:
ProblemSeveritiesConfigurationBlock_pb_missing_synchronized_on_inherited_method=Missing synchronized modifier on inherited method:
ProblemSeveritiesConfigurationBlock_pb_missing_hashcode_method=Class overrides 'equals()' but not 'hashCode()':

ProblemSeveritiesConfigurationBlock_pb_overriding_pkg_dflt_label=Method does not &override package visible method:
ProblemSeveritiesConfigurationBlock_pb_method_naming_label=&Method with a constructor name:
ProblemSeveritiesConfigurationBlock_pb_no_effect_assignment_label=Assignment has no effect (e.g. 'x = x'):
ProblemSeveritiesConfigurationBlock_pb_incompatible_interface_method_label=Interface method conflicts &with protected 'Object' method:
ProblemSeveritiesConfigurationBlock_pb_indirect_access_to_static_label=&Indirect access to static member:
ProblemSeveritiesConfigurationBlock_pb_hidden_catchblock_label=Hidden catch bloc&k:
ProblemSeveritiesConfigurationBlock_pb_static_access_receiver_label=Non-static access to static member:
ProblemSeveritiesConfigurationBlock_pb_unused_imports_label=Unused &import:
ProblemSeveritiesConfigurationBlock_pb_unused_local_label=&Value of local variable is not used:
ProblemSeveritiesConfigurationBlock_pb_unused_parameter_label=Value of method parameter is not used:
ProblemSeveritiesConfigurationBlock_pb_unused_exception_parameter_label=Value of exception parameter is not used:
ProblemSeveritiesConfigurationBlock_pb_unused_type_parameter=Unused type parameter:
ProblemSeveritiesConfigurationBlock_pb_signal_param_in_overriding_label=Ignore in overriding and implementing methods
ProblemSeveritiesConfigurationBlock_pb_suppress_optional_errors_label=Suppress optional errors with '@SuppressWarnings'
ProblemSeveritiesConfigurationBlock_pb_unused_private_label=Unused private member:
ProblemSeveritiesConfigurationBlock_pb_parameter_assignment=Parameter assignment:
ProblemSeveritiesConfigurationBlock_pb_redundant_null_annotation=Redundant null annotation:
ProblemSeveritiesConfigurationBlock_pb_nonnull_parameter_annotation_dropped='@NonNull' parameter not annotated in overriding method:
ProblemSeveritiesConfigurationBlock_pb_redundant_null_check=Redundant null check:
ProblemSeveritiesConfigurationBlock_pb_redundant_super_interface_label=Redundant super interface:
ProblemSeveritiesConfigurationBlock_pb_redundant_type_arguments_label=Redundant type arguments (1.7 or higher):
ProblemSeveritiesConfigurationBlock_pb_resource_leak_label=Resource leak:
ProblemSeveritiesConfigurationBlock_pb_resource_not_managed_via_twr_label=Resource not managed via try-with-resource (1.7 or higher):
ProblemSeveritiesConfigurationBlock_pb_non_externalized_strings_label=Non-externalized strings (missing/unused $NON-NLS$ tag):
ProblemSeveritiesConfigurationBlock_pb_dead_code=Dead code (e.g. 'if (false)'):
ProblemSeveritiesConfigurationBlock_pb_deprecation_label=Deprecated API:
ProblemSeveritiesConfigurationBlock_pb_terminal_deprecation_label=Deprecated API marked for removal:
ProblemSeveritiesConfigurationBlock_pb_deprecation_in_deprecation_label=Signal use of deprecated API inside deprecated code
ProblemSeveritiesConfigurationBlock_pb_deprecation_when_overriding_label=Signal overriding or implementing deprecated method
ProblemSeveritiesConfigurationBlock_pb_empty_statement_label=Empty statement:
ProblemSeveritiesConfigurationBlock_pb_unnecessary_type_check_label=Unnecessary cast or 'instanceof' operation:
ProblemSeveritiesConfigurationBlock_pb_incomplete_enum_switch_label=Incomplete 'switch' cases on enum:
ProblemSeveritiesConfigurationBlock_pb_switch_missing_default_case_label='switch' is missing 'default' case:
ProblemSeveritiesConfigurationBlock_pb_null_reference=Null pointer access:
ProblemSeveritiesConfigurationBlock_pb_null_spec_violation=Violation of null specification:
ProblemSeveritiesConfigurationBlock_pb_null_unchecked_conversion=Unchecked conversion from non-annotated type to @NonNull type:
ProblemSeveritiesConfigurationBlock_pb_pessimistic_analysis_for_free_type_variables=Problems detected by pessimistic analysis for free type variables:
ProblemSeveritiesConfigurationBlock_pb_nonnull_typevar_maybe_legacy=Unsafe '@Nonnull' interpretation of free type variable from library:
ProblemSeveritiesConfigurationBlock_pb_potential_null_reference=Potential null pointer access:
ProblemSeveritiesConfigurationBlock_pb_null_annotation_inference_conflict=Conflict between null annotations and null inference:
ProblemSeveritiesConfigurationBlock_pb_potential_resource_leak_label=Potential resource leak:
ProblemSeveritiesConfigurationBlock_pb_potentially_missing_static_on_method_label=Method can potentially be static:
ProblemSeveritiesConfigurationBlock_pb_fall_through_case='switch' case fall-through:
ProblemSeveritiesConfigurationBlock_pb_unnecessary_else_label=Unnecessary 'else' statement:
ProblemSeveritiesConfigurationBlock_pb_synth_access_emul_label=Access to a non-accessible member of an enclosing type:
ProblemSeveritiesConfigurationBlock_pb_autoboxing_problem_label=Boxing and unboxing conversions:
ProblemSeveritiesConfigurationBlock_pb_char_array_in_concat_label=Using a char array in string concatenation:
ProblemSeveritiesConfigurationBlock_pb_comparing_identical=Comparing identical values ('x == x'):
ProblemSeveritiesConfigurationBlock_pb_missing_override_annotation_for_interface_method_implementations_label=Include implementations of interface methods (1.6 or higher)
ProblemSeveritiesConfigurationBlock_pb_missing_override_annotation_label=Missing '@Override' annotation:
ProblemSeveritiesConfigurationBlock_pb_enable_surpresswarning_annotation=Enable '@SuppressWarnings' annotations
ProblemSeveritiesConfigurationBlock_pb_missing_deprecated_annotation_label=Missing '@Deprecated' annotation:
ProblemSeveritiesConfigurationBlock_pb_missing_enum_case_despite_default=Signal even if 'default' case exists
ProblemSeveritiesConfigurationBlock_pb_annotation_super_interface_label=Annotation is used as super interface:
ProblemSeveritiesConfigurationBlock_ignore_documented_unused_exceptions=Ignore exceptions documented with '@throws' or '@exception' tags
ProblemSeveritiesConfigurationBlock_ignore_documented_unused_parameters=Ignore unused parameters documented with '@param' tag
ProblemSeveritiesConfigurationBlock_pb_type_parameter_hiding_label=Type parameter hides another type:
ProblemSeveritiesConfigurationBlock_pb_unused_label_label=Unused 'break' or 'continue' label:
ProblemSeveritiesConfigurationBlock_pb_unused_object_allocation_label=Unused object allocation:
ProblemSeveritiesConfigurationBlock_unused_suppresswarnings_token=Unused '@SuppressWarnings' token:
JavadocProblemsPreferencePage_title=Javadoc Comments

JavadocProblemsConfigurationBlock_allStandardTags=Validate all standard tags
JavadocProblemsConfigurationBlock_public=Public
JavadocProblemsConfigurationBlock_protected=Protected
JavadocProblemsConfigurationBlock_default=Package
JavadocProblemsConfigurationBlock_private=Private

JavadocProblemsConfigurationBlock_error=Error
JavadocProblemsConfigurationBlock_warning=Warning
JavadocProblemsConfigurationBlock_info=Info
JavadocProblemsConfigurationBlock_ignore=Ignore

# The argument is replaced by the NLSed string for JavadocProblemsConfigurationBlock_note_title
JavadocProblemsConfigurationBlock_note_message={0} This also affects features like search, refactoring, content assist and missing/unused imports.
JavadocProblemsConfigurationBlock_note_title=Note:
JavadocProblemsConfigurationBlock_needsbuild_title=Javadoc Settings Changed
JavadocProblemsConfigurationBlock_needsfullbuild_message=The Javadoc settings have changed. A full rebuild is required for changes to take effect. Do the full build now?
JavadocProblemsConfigurationBlock_needsprojectbuild_message=The Javadoc settings have changed. A rebuild of the project is required for changes to take effect. Build the project now?

JavadocProblemsConfigurationBlock_javadoc_description=Severity levels for problems in Javadoc comments:

JavadocProblemsConfigurationBlock_pb_javadoc_support_label=Proc&ess Javadoc comments
JavadocProblemsConfigurationBlock_pb_invalid_javadoc_label=Mal&formed Javadoc comments:
JavadocProblemsConfigurationBlock_pb_invalid_javadoc_tags_label=Validate tag a&rguments (@param, @throws, @exception, @see, @link)
JavadocProblemsConfigurationBlock_pb_invalid_javadoc_tags_visibility_label=On&ly consider members as visible as:
JavadocProblemsConfigurationBlock_pb_invalid_javadoc_tags_not_visible_ref_label=Report non &visible references
JavadocProblemsConfigurationBlock_pb_invalid_javadoc_tags_deprecated_label=Report de&precated references
JavadocProblemsConfigurationBlock_pb_missing_javadoc_label=Missing Javadoc &tags:
JavadocProblemsConfigurationBlock_pb_missing_javadoc_tags_visibility_label=O&nly consider members as visible as:
JavadocProblemsConfigurationBlock_pb_missing_javadoc_tags_overriding_label=&Ignore in overriding and implementing methods
JavadocProblemsConfigurationBlock_pb_missing_comments_label=Missing &Javadoc comments:
JavadocProblemsConfigurationBlock_pb_missing_comments_visibility_label=Only &consider members as visible as:
JavadocProblemsConfigurationBlock_pb_missing_comments_overriding_label=I&gnore in overriding and implementing methods
JavadocProblemsConfigurationBlock_pb_missing_comments_method_type_parameter_label=Ignore met&hod type parameters
JavadocProblemsConfigurationBlock_pb_missing_tag_description=&Missing tag descriptions:
JavadocProblemsConfigurationBlock_returnTag=Validate @return tags


CompliancePreferencePage_title=Compiler

ComplianceConfigurationBlock_error=Error
ComplianceConfigurationBlock_warning=Warning
ComplianceConfigurationBlock_info=Info
ComplianceConfigurationBlock_ignore=Ignore

ComplianceConfigurationBlock_version11=1.1
ComplianceConfigurationBlock_version12=1.2
ComplianceConfigurationBlock_version13=1.3
ComplianceConfigurationBlock_version14=1.4
ComplianceConfigurationBlock_version15=1.5
ComplianceConfigurationBlock_version16=1.6
ComplianceConfigurationBlock_version17=1.7
ComplianceConfigurationBlock_version18=1.8
ComplianceConfigurationBlock_version9=9
ComplianceConfigurationBlock_version10=10
ComplianceConfigurationBlock_version_11=11 (BETA)
ComplianceConfigurationBlock_versionCLDC11=CLDC 1.1

ComplianceConfigurationBlock_needsbuild_title=Compiler Settings Changed
ComplianceConfigurationBlock_needsfullbuild_message=The compiler settings have changed. A full rebuild is required for changes to take effect. Do the full build now?
ComplianceConfigurationBlock_needsprojectbuild_message=The compiler settings have changed. A rebuild of the project is required for changes to take effect. Build the project now?

ComplianceConfigurationBlock_variable_attr_label=Add varia&ble attributes to generated class files (used by the debugger)
ComplianceConfigurationBlock_line_number_attr_label=Add &line number attributes to generated class files (used by the debugger)
ComplianceConfigurationBlock_source_file_attr_label=Add source &file name to generated class file (used by the debugger)
ComplianceConfigurationBlock_src_greater_compliance=Source compatibility must be equal or less than compliance level.
ComplianceConfigurationBlock_codegen_unused_local_label=Pr&eserve unused (never read) local variables
ComplianceConfigurationBlock_codegen_inline_jsr_bytecode_label=Inline finally blo&cks (larger class files, but improved performance)
ComplianceConfigurationBlock_codegen_method_parameters_attr=&Store information about method parameters (usable via reflection)
ComplianceConfigurationBlock_compiler_compliance_label=Comp&iler compliance level:
ComplianceConfigurationBlock_default_settings_label=Use defaul&t compliance settings
ComplianceConfigurationBlock_source_compatibility_label=Source co&mpatibility:
ComplianceConfigurationBlock_codegen_targetplatform_label=Ge&nerated .class files compatibility:
ComplianceConfigurationBlock_pb_assert_as_identifier_label=Disallow identifie&rs called 'assert':
ComplianceConfigurationBlock_pb_enum_as_identifier_label=Disallo&w identifiers called 'enum':
ComplianceConfigurationBlock_compliance_follows_EE_label=&Use compliance from execution environment on the <a>'Java Build Path'</a>
ComplianceConfigurationBlock_compliance_follows_EE_with_EE_label=&Use compliance from execution environment ''{0}'' on the <a>''Java Build Path''</a>
ComplianceConfigurationBlock_compliance_group_label=JDK Compliance
ComplianceConfigurationBlock_classfiles_group_label=Classfile Generation
ComplianceConfigurationBlock_classfile_greater_compliance=Classfile compatibility must be equal or less than compliance level.
ComplianceConfigurationBlock_classfile_greater_source=Classfile compatibility must be equal or greater than source compatibility.

ComplianceConfigurationBlock_jrecompliance_info=When selecting {0} compliance, make sure to have a compatible JRE installed and activated (currently {1}). <a href="1" >Configure...</a>
ComplianceConfigurationBlock_cldc11_requires_source13_compliance_se14=CLDC 1.1 requires source level 1.3 and compliance 1.4 or less
ComplianceConfigurationBlock_jrecompliance_info_project=When selecting {0} compliance, make sure to have a compatible JRE installed and activated (currently {1}). Configure the <a href="1" >''Installed JREs''</a> and <a href="2" >''Execution Environments''</a>, or change the JRE on the <a href="3" >''Java Build Path''</a>.
ComplianceConfigurationBlock_jrecompliance_backwardcompatibility_info=The system libraries from the selected release {0} will be used with ''--release'' compiler option using current JRE {1}.
ComplianceConfigurationBlock_jrecompliance_backwardcompatibility_label=Use '--&release' option

CodeStylePreferencePage_title=Code Style
CodeTemplatesPreferencePage_title=Code Templates

NameConventionConfigurationBlock_field_label=Fields
NameConventionConfigurationBlock_static_label=Static Fields
NameConventionConfigurationBlock_static_final_label=Static Final Fields
NameConventionConfigurationBlock_arg_label=Parameters
NameConventionConfigurationBlock_local_label=Local Variables
NameConventionConfigurationBlock_keywordthis_label=&Qualify all generated field accesses with 'this.'
NameConventionConfigurationBlock_isforbooleangetters_label=&Use 'is' prefix for getters that return boolean
NameConventionConfigurationBlock_use_override_annotation_label=Add '@O&verride' annotation for new overriding methods

NameConventionConfigurationBlock_dialog_prefix=P&refix list:
NameConventionConfigurationBlock_dialog_suffix=S&uffix list:

NameConventionConfigurationBlock_exceptionname_label=E&xception variable name in catch blocks:

NameConventionConfigurationBlock_error_emptyprefix=Prefix strings cannot contain an empty entry.
NameConventionConfigurationBlock_error_emptysuffix=Suffix strings cannot contain an empty entry.
NameConventionConfigurationBlock_error_invalidprefix={0} is not a valid prefix.
NameConventionConfigurationBlock_error_invalidsuffix={0} is not a valid suffix.

NameConventionConfigurationBlock_list_label=&Conventions for variable names:
NameConventionConfigurationBlock_list_edit_button=&Edit...
NameConventionConfigurationBlock_list_name_column=Variable type
NameConventionConfigurationBlock_list_prefix_column=Prefix list
NameConventionConfigurationBlock_list_suffix_column=Suffix list

NameConventionConfigurationBlock_field_dialog_title=Field Name Conventions
NameConventionConfigurationBlock_field_dialog_message=Specify prefix and suffix to be used for fields (comma separated):

NameConventionConfigurationBlock_static_dialog_title=Static Field Name Conventions
NameConventionConfigurationBlock_static_dialog_message=Specify prefix and suffix to be used for static fields (comma separated):
NameConventionConfigurationBlock_static_final_dialog_message=Specify prefix and suffix to be used for static final fields (comma separated):
NameConventionConfigurationBlock_static_final_dialog_title=Static Final Field Name Conventions

NameConventionConfigurationBlock_arg_dialog_title=Parameter Name Conventions
NameConventionConfigurationBlock_arg_dialog_message=Specify prefix and suffix to be used for parameters (comma separated):

NameConventionConfigurationBlock_local_dialog_title=Local Variable Name Conventions
NameConventionConfigurationBlock_local_dialog_message=Specify prefix and suffix to be used for local variables (comma separated):
NameConventionConfigurationBlock_override_link_label=(<a>configure compiler option</a> for implementations of interface methods)

MembersOrderPreferencePage_category_button_up=&Up
MembersOrderPreferencePage_category_button_down=D&own

MembersOrderPreferencePage_visibility_button_up=U&p
MembersOrderPreferencePage_visibility_button_down=Do&wn

MembersOrderPreferencePage_label_description=&Choose the order in which members will be displayed. The order is also used by the 'Sort Members' action, in 'Clean Up', and in 'Save Actions'.


MembersOrderPreferencePage_fields_label=Fields
MembersOrderPreferencePage_constructors_label=Constructors
MembersOrderPreferencePage_methods_label=Methods
MembersOrderPreferencePage_staticfields_label=Static Fields
MembersOrderPreferencePage_staticmethods_label=Static Methods
MembersOrderPreferencePage_initialisers_label=Initializers
MembersOrderPreferencePage_staticinitialisers_label=Static Initializers
MembersOrderPreferencePage_types_label=Types
MembersOrderPreferencePage_public_label=Public
MembersOrderPreferencePage_private_label=Private
MembersOrderPreferencePage_protected_label=Protected
MembersOrderPreferencePage_default_label=Package
MembersOrderPreferencePage_usevisibilitysort_label=&Sort members in same category by visibility
CodeTemplateBlock_templates_comment_node=Comments
CodeTemplateBlock_templates_code_node=Code

CodeTemplateBlock_catchblock_label=Catch block body
CodeTemplateBlock_methodstub_label=Method body
CodeTemplateBlock_constructorstub_label=Constructor body
CodeTemplateBlock_newtype_label=New Java files
CodeTemplateBlock_classbody_label=Class body
CodeTemplateBlock_interfacebody_label=Interface body
CodeTemplateBlock_enumbody_label=Enum body
CodeTemplateBlock_annotationbody_label=Annotation body
CodeTemplateBlock_typecomment_label=Types
CodeTemplateBlock_fieldcomment_label=Fields
CodeTemplateBlock_filecomment_label=Files
CodeTemplateBlock_methodcomment_label=Methods
CodeTemplateBlock_overridecomment_label=Overriding methods
CodeTemplateBlock_delegatecomment_label=Delegate methods
CodeTemplateBlock_constructorcomment_label=Constructors
CodeTemplateBlock_gettercomment_label=Getters
CodeTemplateBlock_settercomment_label=Setters
CodeTemplateBlock_getterstub_label=Getter body
CodeTemplateBlock_setterstub_label=Setter body

CodeTemplateBlock_templates_edit_button=&Edit...
CodeTemplateBlock_templates_import_button=I&mport...
CodeTemplateBlock_templates_export_button=E&xport...
CodeTemplateBlock_templates_exportall_button=Ex&port All...

CodeTemplateBlock_createcomment_label=Automatically add comments &for new methods and types
CodeTemplateBlock_templates_label=&Configure generated code and comments:
CodeTemplateBlock_preview=Pa&ttern:

CodeTemplateBlock_import_title=Import Templates
CodeTemplateBlock_import_extension=*.xml

CodeTemplateBlock_export_title_singular=Export 1 Code Template
CodeTemplateBlock_export_title_plural=Export {0} Code Templates
CodeTemplateBlock_export_filename=codetemplates.xml
CodeTemplateBlock_export_extension=*.xml

CodeTemplateBlock_export_exists_title=Export Code Templates
CodeTemplateBlock_export_exists_message={0} already exists.\nDo you want to replace it?

CodeTemplateBlock_error_read_title= Code Templates
CodeTemplateBlock_error_read_message= Failed to read templates.

CodeTemplateBlock_error_parse_message= Failed to parse templates:\n{0}

CodeTemplateBlock_error_write_title=Code Templates
CodeTemplateBlock_error_write_message=Failed to write templates.

CodeTemplateBlock_export_error_title= Export Templates
CodeTemplateBlock_export_error_hidden= Export failed.\n{0} is a hidden file.
CodeTemplateBlock_export_error_canNotWrite= Export failed.\n{0} cannot be modified.

TypeFilterPreferencePage_description=All types whose fully qualified name matches the selected filter strings will not be shown in the 'Open Type' dialog. They will also be ignored in content assist or quick fix proposals and when organizing imports. For example 'java.awt.*' will hide all types from the awt packages.
TypeFilterPreferencePage_list_label=&Filter list:
TypeFilterPreferencePage_add_button=Add&...
TypeFilterPreferencePage_addpackage_button=Add &Packages...
TypeFilterPreferencePage_edit_button=&Edit...
TypeFilterPreferencePage_remove_button=&Remove
TypeFilterPreferencePage_selectall_button=Ena&ble All
TypeFilterPreferencePage_deselectall_button=Di&sable All

TypeFilterPreferencePage_choosepackage_label=Package Selection
TypeFilterPreferencePage_choosepackage_description=&Choose packages to filter:

TypeFilterInputDialog_title=Type Filter
TypeFilterInputDialog_message=&Type filter name ('*' and '?' are valid wildcards):
TypeFilterInputDialog_browse_button=&Browse...
TypeFilterInputDialog_error_enterName=Enter a qualified type name.
TypeFilterInputDialog_error_invalidName=Invalid name: {0}.
TypeFilterInputDialog_error_entryExists=Entry already exists.
TypeFilterInputDialog_choosepackage_label=Package Selection
TypeFilterInputDialog_choosepackage_description=&Choose packages to filter:

SpellingPreferencePage_empty_threshold= A positive integer must be specified.
SpellingPreferencePage_invalid_threshold=''{0}'' is not a valid positive integer.
SpellingPreferencePage_ignore_digits_label=Ignore &words with digits
SpellingPreferencePage_ignore_mixed_label=Ignore &mixed case words
SpellingPreferencePage_ignore_sentence_label=Ignore &sentence capitalization
SpellingPreferencePage_ignore_upper_label=Ignore u&pper case words
SpellingPreferencePage_ignore_url_label=Ignore &internet addresses
SpellingPreferencePage_ignore_single_letters_label=I&gnore single letters
SpellingPreferencePage_ignore_java_strings_label=Ignore Ja&va string literals
SpellingPreferencePage_ignore_ampersand_in_properties_label=Ignore '&&' in &Java properties files
SpellingPreferencePage_ignore_non_letters_label=Ignore &non-letters at word boundaries
SpellingPreferencePage_proposals_threshold= Ma&ximum number of correction proposals:
SpellingPreferencePage_problems_threshold= Maximum number of problems repor&ted per file:
SpellingPreferencePage_dictionary_label=Plat&form dictionary:
SpellingPreferencePage_workspace_dictionary_label=Use&r defined dictionary:
SpellingPreferencePage_browse_label=&Browse...
SpellingPreferencePage_dictionary_error=The dictionary file must be read/write accessible.
SpellingPreferencePage_dictionary_none=none
SpellingPreferencePage_encoding_label=En&coding:
SpellingPreferencePage_locale_error=There is no dictionary available for this language.
SpellingPreferencePage_filedialog_title=Select User Dictionary
SpellingPreferencePage_enable_contentassist_label=Ma&ke dictionary available to content assist
SpellingPreferencePage_group_user=Options
SpellingPreferencePage_group_dictionary=Dictionary
SpellingPreferencePage_group_dictionaries=Dictionaries
SpellingPreferencePage_group_advanced=Advanced
SpellingPreferencePage_variables=Variab&les...
SpellingPreferencePage_user_dictionary_description=The user dictionary is a text file with one word on each line

UserLibraryPreferencePage_title=User Libraries
UserLibraryPreferencePage_description=User libraries can be added to a Java Build path and bundle a number of external archives. System libraries will be added to the boot class path when launched.

UserLibraryPreferencePage_libraries_label=&Defined user libraries:
UserLibraryPreferencePage_libraries_new_button=&New...
UserLibraryPreferencePage_libraries_edit_button=&Edit...
UserLibraryPreferencePage_libraries_toggle_button=Toggl&e
UserLibraryPreferencePage_libraries_addjar_button=Add &JARs...
UserLibraryPreferencePage_libraries_addexternaljar_button=Add E&xternal JARs...
UserLibraryPreferencePage_libraries_remove_button=&Remove
UserLibraryPreferencePage_libraries_load_button=I&mport...
UserLibraryPreferencePage_libraries_save_button=E&xport...

UserLibraryPreferencePage_operation=Updating classpath containers...
UserLibraryPreferencePage_operation_error=Error while updating classpath containers

UserLibraryPreferencePage_config_error_title=User Libraries
UserLibraryPreferencePage_config_error_message=Configuration of user libraries failed.
UserLibraryPreferencePage_browsejar_new_title=JAR Selection
UserLibraryPreferencePage_browsejar_edit_title=Edit JAR

UserLibraryPreferencePage_LibraryNameDialog_new_title=New User Library
UserLibraryPreferencePage_LibraryNameDialog_edit_title=Edit User Library
UserLibraryPreferencePage_LibraryNameDialog_name_label=&User library name:
UserLibraryPreferencePage_LibraryNameDialog_issystem_label=&System library (added to the boot class path)
UserLibraryPreferencePage_LibraryNameDialog_name_error_entername=Enter a library name.
UserLibraryPreferencePage_LibraryNameDialog_name_error_exists=Library {0} already exists.

UserLibraryPreferencePage_LoadSaveDialog_save_title=Export User Libraries
UserLibraryPreferencePage_LoadSaveDialog_save_ok_title=Export User Libraries
UserLibraryPreferencePage_LoadSaveDialog_load_title=Import User Libraries
UserLibraryPreferencePage_LoadSaveDialog_location_label=&File location:
UserLibraryPreferencePage_LoadSaveDialog_location_button=&Browse...
UserLibraryPreferencePage_LoadSaveDialog_list_selectall_button=&Select All
UserLibraryPreferencePage_LoadSaveDialog_load_replace_message=An existing library will be replaced. Do you want to continue?
UserLibraryPreferencePage_LoadSaveDialog_load_replace_multiple_message={0} libraries will be replaced. Do you want to continue?
UserLibraryPreferencePage_LoadSaveDialog_list_deselectall_button=&Deselect All
UserLibraryPreferencePage_LoadSaveDialog_list_save_label=S&elect libraries to export:
UserLibraryPreferencePage_LoadSaveDialog_list_load_label=Libraries contained in the s&elected file:
UserLibraryPreferencePage_LoadSaveDialog_filedialog_save_title=Export User Libraries
UserLibraryPreferencePage_LoadSaveDialog_filedialog_load_title=Import User Libraries
UserLibraryPreferencePage_LoadSaveDialog_error_empty=The selected file contains no user libraries
UserLibraryPreferencePage_LoadSaveDialog_error_invalidfile=The selected file is not a valid user library data file
UserLibraryPreferencePage_LoadSaveDialog_overwrite_title=Export User Libraries
UserLibraryPreferencePage_LoadSaveDialog_save_ok_message=Libraries successfully exported.
UserLibraryPreferencePage_LoadSaveDialog_overwrite_message=The file already exists. Do you want to overwrite the existing file?
UserLibraryPreferencePage_LoadSaveDialog_save_errordialog_title=Export User Libraries
UserLibraryPreferencePage_LoadSaveDialog_save_errordialog_message=Could not export file. {0}.
UserLibraryPreferencePage_LoadSaveDialog_location_error_save_enterlocation=A location must be specified for the export.
UserLibraryPreferencePage_LoadSaveDialog_location_error_save_invalid=The export location is invalid.
UserLibraryPreferencePage_LoadSaveDialog_list_error_save_nothingselected=Select the libraries to export.
UserLibraryPreferencePage_LoadSaveDialog_location_error_load_enterlocation=A location must be specified for the import target.
UserLibraryPreferencePage_LoadSaveDialog_location_error_load_invalid=The location path does not point to a file.
UserLibraryPreferencePage_LoadSaveDialog_list_error_load_nothingselected=Select the libraries to import.
UserLibraryPreferencePage_UserLibraryPreferencePage_libraries_up_button=&Up
UserLibraryPreferencePage_UserLibraryPreferencePage_libraries_down_button=D&own
UserLibraryPreferencePage_LoadSaveDialog_load_badformat=bad format
UserLibraryPreferencePage_LoadSaveDialog_load_replace_title=Import User Libraries


# template stuff

# edit template dialog
EditTemplateDialog_error_noname=Template name cannot be empty.
EditTemplateDialog_error_invalidName=Template name contains invalid characters.
EditTemplateDialog_error_invalidPattern=Template pattern contains invalid characters.
EditTemplateDialog_title_new=New Template
EditTemplateDialog_title_edit=Edit Template

EditTemplateDialog_name=&Name:
EditTemplateDialog_description=&Description:
EditTemplateDialog_context=&Context:
EditTemplateDialog_pattern=&Pattern:
EditTemplateDialog_insert_variable=Insert &Variable...

EditTemplateDialog_undo=&Undo
EditTemplateDialog_redo=&Redo
EditTemplateDialog_cut=Cu&t
EditTemplateDialog_copy=&Copy
EditTemplateDialog_paste=&Paste
EditTemplateDialog_select_all=Select &All
EditTemplateDialog_autoinsert=Auto&matically insert
EditTemplateDialog_content_assist=Insert &Variable...

JavaEditorPreferencePage_folding_title= &Folding

FoldingConfigurationBlock_enable= Enable f&olding
FoldingConfigurationBlock_combo_caption= Select folding to &use:
FoldingConfigurationBlock_info_no_preferences= The selected folding provider did not provide a preference control
FoldingConfigurationBlock_error_not_exist= The ''{0}'' folding provider does not exist.
FoldingConfigurationBlock_warning_providerNotFound_resetToDefault= The ''{0}'' folding provider could not be found. Resetting to the default folding provider.

# Properties File Editor
PropertiesFileEditorPreferencePage_key= Keys
PropertiesFileEditorPreferencePage_value= Values
PropertiesFileEditorPreferencePage_assignment= Assignments
PropertiesFileEditorPreferencePage_argument= Arguments
PropertiesFileEditorPreferencePage_comment= Comments
PropertiesFileEditorPreferencePage_foreground=&Element:
PropertiesFileEditorPreferencePage_color= C&olor:
PropertiesFileEditorPreferencePage_bold= &Bold
PropertiesFileEditorPreferencePage_italic= &Italic
PropertiesFileEditorPreferencePage_strikethrough=&Strikethrough
PropertiesFileEditorPreferencePage_underline=&Underline
PropertiesFileEditorPreferencePage_preview= Previe&w:

# DO NOT TRANSLATE "org.eclipse.ui.preferencePages.GeneralTextEditor" and "org.eclipse.ui.preferencePages.ColorsAndFonts"
PropertiesFileEditorPreferencePage_link= Properties file editor preferences. See <a href=\"org.eclipse.ui.preferencePages.GeneralTextEditor\">'Text Editors'</a> for general text editor preferences and <a href=\"org.eclipse.ui.preferencePages.ColorsAndFonts\">'Colors and Fonts'</a> to configure the font. 

# smart typing block
SmartTypingConfigurationBlock_autoclose_title=Automatically close
SmartTypingConfigurationBlock_automove_title=Automatically insert at correct position
SmartTypingConfigurationBlock_indentation_title=Indentation
# The argument will be replaced by the tab display size
SmartTypingConfigurationBlock_tabs_message_tab_text=The tab display value (currently {0}) and whether spaces are used to indent lines are configured on the <a>''Formatter''</a> preference page. The current indentation mode uses tabs.
# The first argument will be replaced by the tab display size, the second by the indent size and the third by the NLSed string of 'SmartTypingConfigurationBlock_tabs_message_spaces' or 'SmartTypingConfigurationBlock_tabs_message_tabs' (see below)  
SmartTypingConfigurationBlock_tabs_message_others_text=The tab display value (currently {0}) and whether spaces are used to indent lines are configured on the <a>''Formatter''</a> preference page. The current indentation size is {1}, using {2}.
SmartTypingConfigurationBlock_tabs_message_tooltip=Go to the formatter preference page
SmartTypingConfigurationBlock_tabs_message_spaces=spaces
SmartTypingConfigurationBlock_tabs_message_tabs=tabs
SmartTypingConfigurationBlock_tabs_message_tabsAndSpaces=tabs and spaces
SmartTypingConfigurationBlock_pasting_title=When pasting
SmartTypingConfigurationBlock_strings_title=In string literals
# do not translate the href arguments (org.eclipse.jdt.ui.preferences.ProblemSeveritiesPreferencePage and org.eclipse.ui.editors.preferencePages.Spelling)
SmartTypingConfigurationBlock_annotationReporting_link=Also see the <a href="org.eclipse.jdt.ui.preferences.ProblemSeveritiesPreferencePage">compile warnings</a> and <a href="org.eclipse.ui.editors.preferencePages.Spelling">spell checking</a> preferences.

# code assist block
CodeAssistConfigurationBlock_insertionSection_title=Insertion
CodeAssistConfigurationBlock_sortingSection_title=Sorting and Filtering
CodeAssistConfigurationBlock_matchCamelCase_label=Show ca&mel case matches
CodeAssistConfigurationBlock_matchSubstring_label=Show su&bstring matches
CodeAssistConfigurationBlock_autoactivationSection_title=Auto Activation
# do not translate the href argument (org.eclipse.jdt.ui.preferences.ProblemSeveritiesPreferencePage)
TypeFilterPreferencePage_restricted_link=Type references with <a href="org.eclipse.jdt.ui.preferences.ProblemSeveritiesPreferencePage">access restrictions</a>:
# do not translate the href argument (org.eclipse.jdt.ui.preferences.TypeFilterPreferencePage)
CodeAssistConfigurationBlock_typeFilters_link=Types along with their members can be filtered using <a href="org.eclipse.jdt.ui.preferences.TypeFilterPreferencePage">type filters</a>.
TypeFilterPreferencePage_hideForbidden_label=&Hide forbidden references
TypeFilterPreferencePage_hideDiscouraged_label=Hide dis&couraged references
CodeAssistConfigurationBlock_hideDeprecated_label=&Hide deprecated references

# {0} will be replaced by the keyboard shortcut for the command (e.g. "Ctrl+Space", or "no shortcut") 
CodeAssistAdvancedConfigurationBlock_page_description=Configure the behavior of the content assist ({0}) command.
# stand-in text if there is no keyboard shortcut in above statement
CodeAssistAdvancedConfigurationBlock_no_shortcut=no shortcut
CodeAssistAdvancedConfigurationBlock_default_table_description=&Select the proposal kinds contained in the 'default' content assist list:
CodeAssistAdvancedConfigurationBlock_default_table_category_column_title=Default Proposal Kinds
CodeAssistAdvancedConfigurationBlock_default_table_keybinding_column_title=Key Binding
# do not translate the href argument (org.eclipse.ui.preferencePages.Keys)
CodeAssistAdvancedConfigurationBlock_key_binding_hint=Individual key bindings can be assigned to each proposal kind on the <a href="org.eclipse.ui.preferencePages.Keys">'Keys'</a> preference page.
CodeAssistAdvancedConfigurationBlock_separate_table_description=&Content assist cycling: Select the proposal kinds that are cycled through when repeatedly invoking content assist:
CodeAssistAdvancedConfigurationBlock_separate_table_category_column_title=Separate Proposal Kinds
CodeAssistAdvancedConfigurationBlock_Up=&Up
CodeAssistAdvancedConfigurationBlock_Down=D&own
CodeAssistAdvancedConfigurationBlock_parameterNameFromAttachedJavadoc_timeout=&Timeout for fetching a parameter name from attached Javadoc (ms):

CodeAssistAdvancedConfigurationBlock_parameterNameFromAttachedJavadoc_timeout_emptyInput=Empty input.
CodeAssistAdvancedConfigurationBlock_parameterNameFromAttachedJavadoc_timeout_invalidInput=''{0}'' is not a valid input.
CodeAssistAdvancedConfigurationBlock_parameterNameFromAttachedJavadoc_timeout_invalidRange=Value must be between {0} and {1}.

CodeAssistStaticMembersConfigurationBlock_description= De&fine a list of static members or types with static members. Content assist will propose those static members even if the import is missing.
CodeAssistStaticMembersConfigurationBlock_newType_button= New &Type...
CodeAssistStaticMembersConfigurationBlock_newMember_button= New &Member...
CodeAssistStaticMembersConfigurationBlock_edit_button= &Edit...
CodeAssistStaticMembersConfigurationBlock_remove_button= &Remove

FavoriteStaticMemberInputDialog_member_new_title= New Member Favorite
FavoriteStaticMemberInputDialog_member_edit_title= Edit Member Favorite
FavoriteStaticMemberInputDialog_member_labelText= Enter a fully qualified static member (e.g. \'java.lang.Math.sqrt\'): 
FavoriteStaticMemberInputDialog_type_new_title= New Type Favorite
FavoriteStaticMemberInputDialog_type_edit_title= Edit Type Favorite 
FavoriteStaticMemberInputDialog_type_labelText= Enter a fully qualified type (e.g. \'java.lang.Math\'):
FavoriteStaticMemberInputDialog_browse_button= &Browse...
FavoriteStaticMemberInputDialog_ChooseTypeDialog_title= Type Selection
FavoriteStaticMemberInputDialog_ChooseTypeDialog_description= Choose type name:
FavoriteStaticMemberInputDialog_ChooseTypeDialog_error_message= A problem occurred while collecting types. See the error log for details.
FavoriteStaticMemberInputDialog_error_invalidTypeName=Not a valid type name.
FavoriteStaticMemberInputDialog_error_invalidMemberName=Not a valid member name.
FavoriteStaticMemberInputDialog_error_entryExists=Entry already exists in list.

# coloring
JavaEditorPreferencePage_coloring_category_java=Java
JavaEditorPreferencePage_coloring_category_javadoc=Javadoc
JavaEditorPreferencePage_coloring_category_comments=Comments

ProjectSelectionDialog_title=Project Specific Configuration
ProjectSelectionDialog_desciption=&Select the project to configure:
ProjectSelectionDialog_filter=Show only &projects with project specific settings
NativeLibrariesPropertyPage_errorAttaching_title=Error Attaching native library
NativeLibrariesPropertyPage_invalid_container=The current class path entry belongs to container ''{0}'' which can not be configured.
NativeLibrariesPropertyPage_location_path=&Location path:
NativeLibrariesPropertyPage_locationPath_none=(none)
NativeLibrariesPropertyPage_not_supported=The current class path entry belongs to container ''{0}'' which does not support the attachment of native libraries to its entries.
NativeLibrariesPropertyPage_read_only=The current class path entry belongs to container ''{0}'' which does not allow user modifications to native libraries on its entries.
NullAnnotationsConfigurationDialog_error_message=A problem occurred while collecting types. See the error log for details.
NullAnnotationsConfigurationDialog_error_title=Annotation Selection
NullAnnotationsConfigurationDialog_restore_defaults=Restore &Defaults
NullAnnotationsConfigurationDialog_title=Annotations for Null Specifications
NullAnnotationsConfigurationDialog_use_default_annotations_for_null=Use default annotations for null specifications (<a>Configure...</a>)

CleanUpPreferencePage_Description=A&ctive profile:
CleanUpPreferencePage_Title=Code Clean Up

OptionsConfigurationBlock_Disabled=disabled
OptionsConfigurationBlock_Enabled=enabled
OptionsConfigurationBlock_NoOptionMatchesTheFilter=No option matches the filter.
OptionsConfigurationBlock_Off=off
OptionsConfigurationBlock_On=on
OptionsConfigurationBlock_RefreshFilter=Refresh Filter
OptionsConfigurationBlock_TypeFilterText=type filter text (use ~ to filter on preference values, e.g. ~ignore or ~off)
OptionsConfigurationBlock_IgnoreOptionalProblemsLink=At least one source folder ignores optional compile problems (configure <a>here</a>).

FilteredPreferencesTree_collapseAll_tooltip=Collapse all
FilteredPreferencesTree_expandAll_tooltip=Expand all
FilterTextControl_Clear=Clear
FilterTextControl_ClearFilterField=Clear filter field

JavaCompilerPropertyPage_ignore_optional_problems_label=&Ignore optional compile problems
JavaCompilerPropertyPage_invalid_element_selection=Java Compiler settings cannot be changed for the selected element.
