###############################################################################
# Copyright (c) 2000, 2011 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
#     Ferenc Hechler, ferenc_hechler@users.sourceforge.net - 83258 [jar exporter] Deploy java application as executable jar
#     Troy Bishop <tjbishop@ca.ibm.com> - Add support for importing/exporting Java Code Style preferences - https://bugs.eclipse.org/bugs/show_bug.cgi?id=304395
###############################################################################

pluginName= Java Development Tools UI
providerName= Eclipse.org

Dummy.label=
BookmarkRulerAction.label= Java Editor Bookmark Ruler Action
JavaSelectRulerAction.label= Java Editor Ruler Single-Click

importExportWizards.category=Java
elementFiltersName=Java Element Filters

classpathContainerPageExtensionPoint=Classpath Container Configuration
classpathAttributeConfiguration=Classpath Attribute Configuration

quickFixProcessorExtensionPoint=Quick Fix Processor
quickAssistProcessorExtensionPoint=Quick Assist Processor
classpathFixProcessorExtensionPoint=Classpath Fix Processor

javadocExportWizardPageExtensionPoint=Javadoc Export Wizard Page

cleanUpExtensionPoint=Clean Ups

queryParticipantsExtensionPoint=Java Query Participants

defaultClasspathContainerPage=Default Classpath Container
defaultQuickFixProcessor=Standard Quick Fix Processor
spellingQuickFixProcessor=Spelling Quick Fix Processor
defaultQuickAssistProcessor=Standard Quick Assist Processor
advancedQuickAssistProcessor=Advanced Quick Assist Processor

javaCompletionProposalComputer= Java Completion Proposal Computers
javaCompletionProposalSorters= Java Completion Proposal Sorters

RelevanceSorter.name=by relevance
AlphabeticSorter.name=alphabetically

javadocCompletionProcessor=Javadoc Completion Processors
javaEditorTextHoversName=Java Editor Text Hovers
javaDocumentSetupParticipant=Java Document Setup Participant

JavaProposalCategory= J&ava Proposals
OtherJavaProposalCategory= &Java Non-Type Proposals
JavaTypesCategory= Java &Type Proposals
DefaultProposalCategory= &Basic Proposals
TemplateProposalCategory= Te&mplate Proposals
TextProposalCategory= &Word Proposals
SWTProposalCategory= &SWT Template Proposals

templatesViewName= Templates

SpecificContentAssist.name= Content Assist
SpecificContentAssist.desc= A parameterizable command that invokes content assist with a single completion proposal category
SpecificContentAssist.param= type

perspectiveName=Java
java.perspective.description=This perspective is designed to support Java development. It offers a Package Explorer, a Type Hierarchy, and Java-specific navigation actions.
typeHierarchyName=Java Type Hierarchy
typeHierarchy.perspective.description=This perspective is designed to support Java development. It offers a Type Hierarchy and Java-specific navigation actions.

viewCategoryName=Java
packagesViewName= Package Explorer
hierarchyViewName=Type Hierarchy
newWizardCategoryName=Java
commonNavigatorContentName=Java Elements

buildPathPageName=Java Build Path
codeStylePageName=Java Code Style
codeTemplatePageName=Code Templates
importOrganizePageName=Organize Imports
cleanUpPageName=Clean Up
codeFormatterPageName=Formatter
problemSeveritiesPageName=Errors/Warnings
javadocProblemsPageName=Javadoc
builderPageName=Building
compliancePageName=Java Compiler
todoPageName=Task Tags
javadocLocationPageName=Javadoc Location

preferenceKeywords.general=Java package explorer call type hierarchy refactoring rename editor search
preferenceKeywords.appearance=Java appearance package explorer browsing compress show method return types categories members
preferenceKeywords.sortorder=Java member sort order appearance
preferenceKeywords.typefilter=Java type filter ignore package appearance content assist
preferenceKeywords.buildpath=Java project source sourcefolder library libraries output outputfolder jre buildpath
preferenceKeywords.buildpathoptions=Java build source sourcefolder output outputfolder buildpath home

preferenceKeywords.cpvars=Java classpath variable variables buildpath
preferenceKeywords.userlibs=Java user library libraries external archive archives buildpath
preferenceKeywords.codestyle=Java prefix postfix suffix naming convention project specific comment override getter this annotation exception qualify field parameter
preferenceKeywords.cleanup=Java profile codestyle project specific cleanup
preferenceKeywords.formatter=Java profile codestyle project specific comment indentation Javadoc brace white space blank line new control statement wrapping annotation with tab tabulator parenthesis bracket

preferenceKeywords.codetemplates=Java comment code getter setter Javadoc codestyle override constructor file type field method override overriding catch body project specific
preferenceKeywords.organizeimports=Java static imports order codestyle project specific packages
preferenceKeywords.compliance=Java compliance level identifier assert enum debug compatibility jdk 1.1 1.2 1.3 1.4 1.5 5.0 1.6 6 1.7 7 CLDC J2SE5 classfile compiler project specific projectspecific
preferenceKeywords.building=Java build path buildpath problem exclusion inclusion pattern folder outputfolder filtered resource output compiler 1.5 5.0 J2SE5 project specific projectspecific strictly compatible JRE execution environment
preferenceKeywords.severities=Java errors warnings ignore compiler options nls externalize string severity severities jdk 5.0 1.5 J2SE5 deprecated static access member serializable serialVersionUID assignment effect finally empty char array catch shadowing package visible interface object method deprecated forbidden discouraged reference unused code unnecessary import imports private cast instanceof local variable parameter thrown exception final type bound generic vararg boxing unboxing autoboxing annotation @Override @Deprecated @SuppressWarnings enum constants switch project specific projectspecific raw null synchronized problem identical equals hashcode dead code missing
preferenceKeywords.javadocproblems=Java tag problem missing deprecated non visible severity severities level comment compiler project specific projectspecific
preferenceKeywords.todo=Java case sensitive task tag todo xxx fix fixme compiler project specific projectspecific comments
preferenceKeywords.javaeditor=Java java editor quick assist appearance navigation colors light bulb smart caret positioning highlight matching bracket foreground background show selected only save action participant clean up
preferenceKeywords.javaeditorproperty= Java java editor save action participant clean up

preferenceKeywords.contentassist=Java editor content code assist complete completion insert overwrite single proposal common prefix automatically import fill argument name guess alphabetical hide discouraged reference forbidden auto activation trigger Javadoc camel camelcase category categories separate specific timeout type types word hippie template static members favorites
preferenceKeywords.hover=Java editor hover sticky annotation roll over key modifier combined variable problem externalized externalize string source
preferenceKeywords.syntaxcoloring=Java editor colors semantic coloring highlighting Javadoc html links tags multi line single line comment task tag method invocation static field annotation autoboxing unboxing boxing constant deprecated field keywords local variable operators brackets strings type variable inherited method declaration
preferenceKeywords.templates=Java editor templates snippet macros
preferenceKeywords.folding=Java editor folding section comment comments header method import inner type
preferenceKeywords.markoccurrences=Java editor occurrence mark highlight type method constant field exception
preferenceKeywords.smarttyping=Java editor typing type close comment tabs indentation indent imports wrap escape semicolons braces brackets parenthesis parentheses strings literals paste pasting javadoc tabulator automatically smart typing
preferenceKeywords.propertieseditor=Java editor colors properties nls externalized string foreground argument assignment comment key value
preferenceKeywords.saveparticipant=Java editor save cleanup participants organize imports format
preferenceKeywords.classpathcontainer=Java classpath container buildpath jre

preferenceKeywords.wizards.java=Java
preferenceKeywords.jarpackager=Java archive application

preferenceTransfer.java.compiler.name= Java Compiler Preferences
preferenceTransfer.java.compiler.description= Java > Compiler preferences.
preferenceTransfer.java.appearance.name= Java Appearance Preferences
preferenceTransfer.java.appearance.description= Java > Appearance preferences.
preferenceTransfer.java.codestyle.name= Java Code Style Preferences
preferenceTransfer.java.codestyle.description= Java > Code Style preferences

sourceAttachmentPageName=Java Source Attachment
ClassFileViewerName=Class File Viewer
jarDescEditorName=JAR Export Wizard

javaEditorFontDefiniton.label= Java Editor Text Font
javaEditorFontDefintion.description= The Java editor text font is used by Java editors.

javaCompareFontDefiniton.label= Java compare text font
javaCompareFontDefiniton.description= The Java compare text font is used by Java compare/merge tools.

propertiesFileCompareFontDefiniton.label= Java properties file compare text font
propertiesFileCompareFontDefiniton.description= The Java properties file compare text font is used by Java properties file compare/merge tools.

javadocDisplayFontDefiniton.label= Javadoc display font
javadocDisplayFontDefiniton.description= The Javadoc display font is used in the Javadoc view, for Javadoc hovers and for the additional information in content assist.

coloredLabels.match_highlight.label=Colored labels - match highlight
coloredLabels.match_highlight.description=The background color used to highlight matches when colored labels in Java views are enabled. 

coloredLabels.writeaccess_highlight.label=Colored labels - write access occurrences
coloredLabels.writeaccess_highlight.description=The background color used to highlight write accesses when colored labels in Java views are enabled. 

coloredLabels.inherited.label=Inherited members
coloredLabels.inherited.description=The color used to render to inherited members. 

javaPrefName=Java
organizeImportsPrefName=Organize Imports
typeFilterPrefName=Type Filters
cleanUpPrefName=Clean Up
codeFormatterPrefName=Formatter
classPathVarPrefName=Classpath Variables
userLibrariesPrefName=User Libraries
editorPrefName=Editor
compliancePrefName=Compiler
problemSeveritiesPrefName=Errors/Warnings
javadocProblemsPrefName=Javadoc
javaBuildPrefName=Building
buildPathPrefName=Build Path

todoTaskPrefName=Task Tags
codeTemplatePreferencePageName=Code Templates
codeStylePreferencePageName=Code Style
appearancePrefName=Appearance
memberSortPrefName=Members Sort Order
nativeLibraryPageName=Native Library

templatePageName=Templates

contentAssistPageName= Content Assist
contentAssistAdvancedName= Advanced
contentAssistFavoritesName= Favorites

editorHoversPageName=Hovers
editorSyntaxColoringPage=Syntax Coloring
editorFoldingPage=Folding
editorMarkOccurrencesPage=Mark Occurrences
editorTypingPage=Typing
editorSaveParticipants=Save Actions
editorPageName= Java Editor

classpathContainerPageName=Classpath Container

jarExportWizard.label=JAR file
jarExportWizard.description=Export resources into a JAR file on the local file system.

fatJarExportWizard.label=Runnable JAR file
fatJarExportWizard.description=Export all resources required to run an application into a JAR file on the local file system.

createJarAction.label=Create &JAR
createJarAction.tooltip=Creates the JAR Based on the Selected JAR Description File

JavaActionSet.label= Java Navigation
JavaActionSet.description= Java Navigation Action Set

JavaElementCreationActionSet.label= Java Element Creation
JavaElementCreationActionSet.description= Java Element Creation Action Set

CompilationUnitEditorName= Java Editor

OpenTypeAction.label=Open &Type...
OpenTypeAction.tooltip=Open Type

ShowInBreadcrumbAction.label=Show in &Breadcrumb
ShowInBreadcrumbAction.tooltip=Shows the element at the cursor position in the editor breadcrumb 

OpenProjectWizardAction.label=Java &Project...
OpenProjectWizardAction.tooltip=New Java Project

OpenPackageWizardAction.label=P&ackage...
OpenPackageWizardAction.tooltip=New Java Package

OpenClassWizardAction.label=&Class...
OpenClassWizardAction.tooltip=New Java Class

ImplementOccurrences.label=Implement Occurrences
ExceptionOccurrences.label=Exception Occurrences
MethodExitOccurrences.label=Method Exit Target Occurrences
BreakContinueTargetOccurrences.label=Break / Continue Target Occurrences
OccurrencesInFile.label=Occurrences In File

OccurrenceAnnotation.label= Occurrences
WriteOccurrenceAnnotation.label= Write Occurrences

javaEditorPresentationActionSet.label= Java Editor Presentation
toggleMarkOccurrences.label= Toggle Mark Occurrences
toggleMarkOccurrences.tooltip= Toggle Mark Occurrences
toggleMarkOccurrences.description= Toggles mark occurrences in Java editors

toggleBreadcrumb.label= Toggle Java Editor Breadcrumb
toggleBreadcrumb.tooltip= Toggle Java Editor Breadcrumb
toggleBreadcrumb.description= Toggle the Java editor breadcrumb

OverrideIndicator.label= Override Indicators

OverrideIndicatorLabelDecorator.label=Java Method Override Indicator
OverrideIndicatorLabelDecorator.description=Decorates methods with an override indicator.

InterfaceIndicatorLabelDecorator.label=Java Type Indicator
InterfaceIndicatorLabelDecorator.description=Decorates compilation units and class files with an interface, enum, abstract class, or annotation indicator, and shows when types are package-visible or deprecated.

BuildpathIndicatorLabelDecorator.label=Java Build Path Indicator
BuildpathIndicatorLabelDecorator.description=Decorates files and folders if they are on the build path of their enclosing project.

##########################################################################
# Java Search
##########################################################################
JavaSearchPage.label= Java Search
openJavaSearchPageAction.label= &Java...

# Action sets
JavaSearchActionSet.label= Java Search
JavaSearchActionSet.description= Action set containing search related Java actions

# Menus
searchMenu.label= Se&arch
declarationsSubMenu.label= Dec&larations
referencesSubMenu.label= R&eferences
occurrencesSubMenu.label= Occurre&nces in File
implementorsSubMenu.label= &Implementors
readAccessSubMenu.label= &Read Access
writeAccessSubMenu.label= &Write Access

ReferencesInWorkspace.label= &Workspace
DeclarationsInWorkspace.label= &Workspace

InWorkspace.label= &Workspace
InProject.label= &Project
InHierarchy.label= &Hierarchy
InWorkingSet.label= Working &Set...

CompareWithMenu.label=Comp&are With

ReplaceWithMenu.label=Rep&lace With

JavaCompareFromHistoryAction.label= Element from &Local History...
JavaCompareFromHistoryAction.tooltip= Compares the Selected Java Element With One from Local History

JavaCompareAction.label= Other E&lement...
JavaCompareAction.tooltip= Compares the Selected Java Elements with Each Other

JavaReplaceFromHistoryAction.label=Element from &Local History...
JavaReplaceFromHistoryAction.tooltip=Replaces the Selected Java Element With One from Local History

JavaReplaceWithPreviousFromHistoryAction.label=&Previous Element from Local History
JavaReplaceWithPreviousFromHistoryAction.tooltip=Replaces the Selected Java Element With the Previous from Local History

JavaAddElementFromHistoryAction.label=Restore from Local Histor&y...
JavaAddElementFromHistoryAction.tooltip=Restores a Java Element from Local History to the Selected Container

Refactoring.menu.label= Refac&tor

Refactoring.renameAction.label=Re&name...
Refactoring.moveAction.label=&Move...
Refactoring.modifyParametersAction.label=&Change Method Signature...
Refactoring.convertAnonymousToNestedAction.label=C&onvert Anonymous Class to Nested...
Refactoring.convertNestedToTopAction.label=Mo&ve Type to New File...

Refactoring.pushDownAction.label=Push &Down...
Refactoring.pullUpAction.label=Pull &Up...
Refactoring.extractInterfaceAction.label=&Extract Interface...
Refactoring.extractClassAction.label=Extract Class...
Refactoring.extractSupertypeAction.label=Extrac&t Superclass...
Refactoring.changeTypeAction.label=Generali&ze Declared Type...
Refactoring.useSupertypeAction.label=Use Supertype W&here Possible...
Refactoring.inferTypeArgumentsAction.label=Infer &Generic Type Arguments...

Refactoring.inlineAction.label=&Inline...
Refactoring.extractMethodAction.label=E&xtract Method...
Refactoring.extractTempAction.label=Extract &Local Variable...
Refactoring.extractConstantAction.label=Extr&act Constant...

Refactoring.introduceIndirectionAction.label=Introduce Indirec&tion...
Refactoring.introduceParameterAction.label=Introduce &Parameter...
Refactoring.introduceFactoryAction.label=Introduce &Factory...
Refactoring.convertLocalToFieldAction.label=Convert Local Varia&ble to Field...
Refactoring.selfEncapsulateFieldAction.label=Encap&sulate Field...
Refactoring.introduceParameterObject.label=Introduce &Parameter Object...

Refactoring.migrateJar.label=Migrate &JAR File...
Refactoring.applyScript.label=Appl&y Script...
Refactoring.createScript.label=C&reate Script...
Refactoring.showHistory.label=&History...

Refactoring.NLSFieldRenameParticipant=Externalized string accessor field rename

NewJavaProject.label= Java Project
NewJavaProject.description=Create a Java project

NewJavaPackage.label= Package
NewJavaPackage.description=Create a Java package

NewJavaClass.label= Class
NewJavaClass.description=Create a Java class

NewJavaInterface.label= Interface
NewJavaInterface.description= Create a Java interface

NewEnumType.label= Enum
NewEnumType.description= Create an enum type

NewAnnotationType.label= Annotation
NewAnnotationType.description= Create an annotation type

NewSourceFolderCreationWizard.label=Source Folder
NewSourceFolderCreationWizard.description=Create a Java source folder

NewJavaWorkingSetWizard.label=Java Working Set
NewJavaWorkingSetWizard.description=Creates a Java working set

AddBookmark.label=Add Boo&kmark
AddBookmark.tooltip=Add Bookmark...

AddTask.label=Add &Task
AddTask.tooltip=Add Task...

#NLS

#Browsing
Browsing.perspectiveName= Java Browsing
browsing.perspective.description=This perspective is designed to support Java code browsing. It offers Java-specific navigation actions and view to show projects, packages, types, and members.
Browsing.viewCategoryName= Java Browsing
Browsing.projectsViewName= Projects
Browsing.packagesViewName= Packages
Browsing.typesViewName= Types
Browsing.membersViewName= Members

##########################################################################
# Coding Action set
##########################################################################
CodingActionSet.label= Java Coding
CodingActionSet.description= Action set containing coding related Java actions

##########################################################################
# Open Action set
##########################################################################
OpenActionSet.label= Java Open Actions
OpenActionSet.description= Action set containing open actions for Java

##########################################################################
# Navigate Menu
##########################################################################

GoToTypeAction.label=&Type...

GoToPackageAction.label=&Package...

OpenAction.label=&Open
OpenAction.tooltip=Open an Editor on the Selected Element

OpenImplementationAction.label=O&pen Implementation
OpenImplementationAction.tooltip=Opens the Implementations of a Method in its Hierarchy

OpenSuperImplementationAction.label=Open &Super Implementation
OpenSuperImplementationAction.tooltip=Opens the Implementation of the Method in a Super Class, when Super Class Exists

OpenAttachedJavadocAction.label=Open Attached &Javadoc

OpenTypeHierarchyAction.label=Ope&n Type Hierarchy

OpenCallHierarchyAction.label=Open Call H&ierarchy


OpenHyperlinkAction.label=Open Hyperlin&k
OpenHyperlinkAction.tooltip=Opens the hyperlink at the caret location or opens a chooser if more than one hyperlink is available

OpenTypeInHierarchyAction.label=Open Type in Hierarch&y...
OpenTypeInHierarchyAction.tooltip=Opens a Type in a Type Hierarchy

##########################################################################
# Source Menu
##########################################################################
SourceMenu.label= &Source

CommentAction.label= Co&mment

UncommentAction.label= &Uncomment

ToggleCommentAction.label= Togg&le Comment

AddBlockCommentAction.label= Add &Block Comment

RemoveBlockCommentAction.label= Remove Bloc&k Comment

ShiftRightAction.label= &Shift Right

ShiftLeftAction.label= S&hift Left

FormatAction.label=&Format

FormatElementAction.label= Format Eleme&nt

SortMembersAction.label= S&ort Members...

AddImportAction.label= A&dd Import

OrganizeImportsAction.label= Or&ganize Imports

CleanUpAction.label= Clean &Up...

CopyQualifiedName.label= Cop&y Qualified Name

SurroundWithTemplateAction.label= Surround &With

OverrideMethodsAction.label= O&verride/Implement Methods...

GenerateGetterSetterAction.label= Gene&rate Getters and Setters...

GenerateDelegateMethodsAction.label=Generate Delegate &Methods...

AddConstructorFromSuperclassAction.label= Generate &Constructors from Superclass...

GenerateConstructorUsingFieldsAction.label= Gener&ate Constructor using Fields...

AddJavaDocCommentAction.label= Generate Element Comm&ent

GenerateHashCodeEqualsAction.label= Generate &hashCode() and equals()...

GenerateToStringAction.label= Generate to&String()...

ExternalizeStringsAction.label= E&xternalize Strings...

FindNLSProblems.label= Find Broken Ex&ternalized Strings

IndentAction.label= Correct &Indentation

##########################################################################
# Javadoc Support
##########################################################################
JavadocWizard.name= Javadoc
JavadocWizard.description=Generate Javadoc.
CreateJavadocAction.label= Open Javadoc &Wizard...
CreateJavadocAction.tooltip= Open Javadoc Wizard

GenerateJavadocAction.label= &Generate Javadoc...

##########################################################################
# Java Working Set Support
##########################################################################
JavaWorkingSetPage.name= Java
JavaWorkingSetPage.description=Working set for Java elements
OthersWorkingSetWizardPage.name= Others
OthersWorkingSetWizardPage.description=Working set containing all elements not in any Package Explorer groups

##########################################################################
# Marker Support
##########################################################################
markerCategory.problem = Java Problems
markerCategory.buildpath_problem = Java Build Path Problems

##########################################################################
# Filter Support
##########################################################################
HideSystemFiles.label= .* resources
HideSystemFiles.description= Hides resources with names that start with a '.'

HideInnerClassFiles.label= Inner class files
HideInnerClassFiles.description= Hides class files with names that contain a '$'

HideEmptyPackages.label= Empty packages
HideEmptyPackages.description= Hides all empty packages

HideNoPackageContainingFolders.label= Folder containing no packages
HideNoPackageContainingFolders.description= Hides folders which do not contain any packages

HideEmptyInnerPackages.label= Empty parent packages
HideEmptyInnerPackages.description= Hides empty packages which do not contain Java files but other sub-folders. E.g. given a package 'org.junit' where 'org' does not contain any Java files, this filter will hide the package 'org' but not the package 'org.junit'

HideNonJavaElements.label= Non-Java elements
HideNonJavaElements.description= Hides all non-Java elements

HideEmptyLibraryContainers.label= Empty library containers 
HideEmptyLibraryContainers.description= Hides library containers which do not contain at least one library that is not filtered 

HideReferencedLibraries.label= Libraries from external
HideReferencedLibraries.description= Hides external libraries i.e. those not contained inside the project itself

HideContainedLibraries.label=Libraries in project
HideContainedLibraries.description= Hides local libraries i.e. those contained inside the project itself

HideJavaFiles.label= Java files
HideJavaFiles.description= Hides all Java files

HidePackageDeclaration.label= Package declarations
HidePackageDeclaration.description= Hides all package declarations

HideImportDeclaration.label= Import declarations
HideImportDeclaration.description= Hides all import declarations

HideNonJavaProjects.label= Non-Java projects
HideNonJavaProjects.description= Hides all projects without Java nature

HideNonPublicType.label= Non-public types
HideNonPublicType.description= Hides all non-public types

HideInterface.label= Interfaces
HideInterface.description= Hides all interfaces

HideEnum.label= Enums
HideEnum.description= Hides all enum types

HideAnnotation.label= Annotations
HideAnnotation.description= Hides all annotations

HideClass.label= Classes
HideClass.description= Hides all classes

HideNonSharedProjects.label= Non-shared projects
HideNonSharedProjects.description= Hides all unshared projects

HideClosedProjects.label= Closed projects
HideClosedProjects.description= Hides closed projects

HideFields.label= Fields
HideFields.description= Hides fields

HideStatics.label= Static fields and methods
HideStatics.description= Hides static fields and methods

HideNonPublic.label= Non-public members
HideNonPublic.description= Hides non-public members

HideLocalTypes.label= Local types
HideLocalTypes.description= Hides local types

HideSyntheticMembers.label= Synthetic members
HideSyntheticMembers.description= Hides synthetic members. Synthetic members do not appear in the source code, but are internally created by the compiler.

HideOutputFolder.label= Output folders
HideOutputFolder.description= Hides Java output folders of the Java projects. A Java output folder is where the compiled Java classes are.
HideJavaOutputFolder.label= Java output folders

sourceHover= Source
sourceHoverDescription= Shows the source of the selected element.
javadocHover= Javadoc
javadocHoverDescription= Shows the Javadoc of the selected element.
nlsStringHover= Externalized String
nlsStringHoverDescription= Shows the externalized string of the selected key.
sequentialHover= Combined Hover
sequentialHoverDescription= Tries the hovers in the sequence listed in above table, excluding this hover, and uses the one which fits best for the selected element and the current context.
annotationHover= Annotation Description
annotationHoverDescription= Shows the description of the selected annotation.
problemHover= Problem Description
problemHoverDescription= Shows the description of the selected problem.

##########################################################################
# Action Definitions
##########################################################################

category.refactoring.name=Refactor - Java
category.refactoring.description=Java Refactoring Actions
category.source.name=Source
category.source.description= Java Source Actions

context.editingJavaSource.name= Editing Java Source
context.editingJavaSource.description= Editing Java Source Context

context.editingPropertiesSource.name= Editing Properties Files
context.editingPropertiesSource.description= Editing Properties Files Context

context.editorBreadcrumb.name= Editor Breadcrumb Navigation
context.editorBreadcrumb.description= Editor Breadcrumb Navigation Context

#--- Edit menu
ActionDefinition.show.outline.name= Quick Outline
ActionDefinition.show.outline.description= Show the quick outline for the editor input

ActionDefinition.open.hierarchy.name= Quick Hierarchy
ActionDefinition.open.hierarchy.description= Show the quick hierarchy of the selected element

ActionDefinition.open.structure.name= Open Structure
ActionDefinition.open.structure.description= Show the structure of the selected element

ActionDefinition.gotoNextMember.name= Go to Next Member
ActionDefinition.gotoNextMember.description= Move the caret to the next member of the compilation unit

ActionDefinition.gotoPreviousMember.name= Go to Previous Member
ActionDefinition.gotoPreviousMember.description= Move the caret to the previous member of the compilation unit

ActionDefinition.selectEnclosing.name= Select Enclosing Element
ActionDefinition.selectEnclosing.description= Expand selection to include enclosing element

ActionDefinition.selectNext.name= Select Next Element
ActionDefinition.selectNext.description= Expand selection to include next sibling

ActionDefinition.selectPrevious.name= Select Previous Element
ActionDefinition.selectPrevious.description= Expand selection to include previous sibling

ActionDefinition.selectLast.name= Restore Last Selection
ActionDefinition.selectLast.description= Restore last selection

ActionDefinition.removeOccurrenceAnnotations.name= Remove Occurrence Annotations
ActionDefinition.removeOccurrenceAnnotations.description= Removes the occurrence annotations from the current editor


#--- Source menu
ActionDefinition.sourceQuickMenu.name= Show Source Quick Menu
ActionDefinition.sourceQuickMenu.description= Shows the source quick menu

ActionDefinition.comment.name= Comment
ActionDefinition.comment.description= Turn the selected lines into Java comments

ActionDefinition.uncomment.name= Uncomment
ActionDefinition.uncomment.description= Uncomment the selected Java comment lines

ActionDefinition.toggleComment.name= Toggle Comment
ActionDefinition.toggleComment.description= Toggle comment the selected lines

ActionDefinition.addBlockComment.name= Add Block Comment
ActionDefinition.addBlockComment.description= Enclose the selection with a block comment

ActionDefinition.removeBlockComment.name= Remove Block Comment
ActionDefinition.removeBlockComment.description= Remove the block comment enclosing the selection

ActionDefinition.format.name= Format
ActionDefinition.format.description= Format the selected text

ActionDefinition.copyQualifiedName.name= Copy Qualified Name
ActionDefinition.copyQualifiedName.description= Copy a fully qualified name to the system clipboard

ActionDefinition.quickformat.name= Format Element
ActionDefinition.quickformat.description= Format enclosing text element

ActionDefinition.addImport.name= Add Import
ActionDefinition.addImport.description= Create import statement on selection

ActionDefinition.organizeImports.name= Organize Imports
ActionDefinition.organizeImports.description= Evaluate all required imports and replace the current imports

ActionDefinition.cleanUp.name= Clean Up
ActionDefinition.cleanUp.description= Solve problems and improve code style on selected resources

ActionDefinition.sortMembers.name=Sort Members
ActionDefinition.sortMembers.description=Sort all members using the member order preference

ActionDefinition.delegateMethods.name=Generate Delegate Methods
ActionDefinition.delegateMethods.description=Add delegate methods for a type's fields

ActionDefinition.getterSetter.name=Generate Getters and Setters
ActionDefinition.getterSetter.description=Generate Getter and Setter methods for type's fields

ActionDefinition.addJavadocComment.name=Add Javadoc Comment
ActionDefinition.addJavadocComment.description=Add a Javadoc comment stub to the member element

ActionDefinition.surroundWith.tryCatch.name= Surround with try/catch Block
ActionDefinition.surroundWith.tryCatch.description= Surround the selected text with a try/catch block

ActionDefinition.surroundWith.tryMultiCatch.name= Surround with try/multi-catch Block
ActionDefinition.surroundWith.tryMultiCatch.description= Surround the selected text with a try/multi-catch block

ActionDefinition.surroundWith.quickMenu.name= Surround With Quick Menu
ActionDefinition.surroundWith.quickMenu.description= Shows the Surround With quick menu

ActionDefinition.overrideMethods.name= Override/Implement Methods
ActionDefinition.overrideMethods.description= Override or implement methods from super types

ActionDefinition.generateHashCode.name= Generate hashCode() and equals()
ActionDefinition.generateHashCode.description= Generates hashCode() and equals() methods for the type

ActionDefinition.generateToString.name= Generate toString()
ActionDefinition.generateToString.description= Generates the toString() method for the type

ActionDefinition.addUnimplementedConstructors.name= Generate Constructors from Superclass
ActionDefinition.addUnimplementedConstructors.description= Evaluate and add constructors from superclass

ActionDefinition.generateConstructorUsingFields.name= Generate Constructor using Fields
ActionDefinition.generateConstructorsUsingFields.description= Choose fields to initialize and constructor from superclass to call 


ActionDefinition.externalizeStrings.name= Externalize Strings
ActionDefinition.externalizeStrings.description=Finds all strings that are not externalized and moves them into a separate property file

ActionDefinition.findNLSProblems.name= Find Broken Externalized Strings
ActionDefinition.findNLSProblems.description=Finds undefined, duplicate and unused externalized string keys in property files

ActionDefinition.indent.name= Correct Indentation
ActionDefinition.indent.description=Corrects the indentation of the selected lines

ActionDefinition.corrections.renameInFile.name=Quick Assist - Rename in file
ActionDefinition.corrections.renameInFile.description=Invokes quick assist and selects 'Rename in file'

ActionDefinition.corrections.assignToLocal.name=Quick Assist - Assign to local variable
ActionDefinition.corrections.assignToLocal.description=Invokes quick assist and selects 'Assign to local variable'

ActionDefinition.corrections.assignToField.name=Quick Assist - Assign to field
ActionDefinition.corrections.assignToField.description=Invokes quick assist and selects 'Assign to field'

ActionDefinition.corrections.assignParamToField.name=Quick Assist - Assign parameter to field
ActionDefinition.corrections.assignParamToField.description=Invokes quick assist and selects 'Assign parameter to field'

ActionDefinition.corrections.addBlock.name=Quick Assist - Replace statement with block
ActionDefinition.corrections.addBlock.description=Invokes quick assist and selects 'Replace statement with block'

ActionDefinition.corrections.addThrowsDecl.name=Quick Fix - Add throws declaration
ActionDefinition.corrections.addThrowsDecl.description=Invokes quick assist and selects 'Add throws declaration'

ActionDefinition.corrections.addCast.name=Quick Fix - Add cast
ActionDefinition.corrections.addCast.description=Invokes quick assist and selects 'Add cast'

ActionDefinition.corrections.addNonNLS.name=Quick Fix - Add non-NLS tag
ActionDefinition.corrections.addNonNLS.description=Invokes quick assist and selects 'Add non-NLS tag'

ActionDefinition.corrections.qualifyField.name=Quick Fix - Qualify field access
ActionDefinition.corrections.qualifyField.description=Invokes quick assist and selects 'Qualify field access'

ActionDefinition.corrections.changeToStatic.name=Quick Fix - Change to static access
ActionDefinition.corrections.changeToStatic.description=Invokes quick assist and selects 'Change to static access'

ActionDefinition.corrections.addImport.name=Quick Fix - Add import
ActionDefinition.corrections.addImport.description=Invokes quick assist and selects 'Add import'

ActionDefinition.corrections.addSuppressWarnings.name=Quick Fix - Add @SuppressWarnings
ActionDefinition.corrections.addSuppressWarnings.description=Invokes quick fix and selects 'Add @SuppressWarnings' 

ActionDefinition.corrections.splitJoinVariableDeclaration.name=Quick Assist - Split/Join variable declaration
ActionDefinition.corrections.splitJoinVariableDeclaration.description=Invokes quick assist and selects 'Split/Join variable declaration'

ActionDefinition.corrections.extractLocal.name=Quick Assist - Extract local variable (replace all occurrences)
ActionDefinition.corrections.extractLocal.description=Invokes quick assist and selects 'Extract local variable (replace all occurrences)'

ActionDefinition.corrections.extractLocalNotReplaceOccurrences.name=Quick Assist - Extract local variable
ActionDefinition.corrections.extractLocalNotReplaceOccurrences.description=Invokes quick assist and selects 'Extract local variable'

ActionDefinition.corrections.extractConstant.name=Quick Assist - Extract constant
ActionDefinition.corrections.extractConstant.description=Invokes quick assist and selects 'Extract constant'

ActionDefinition.corrections.convertLocalToField.name=Quick Assist - Convert local variable to field
ActionDefinition.corrections.convertLocalToField.description=Invokes quick assist and selects 'Convert local variable to field'

ActionDefinition.corrections.inlineLocal.name=Quick Assist - Inline local variable
ActionDefinition.corrections.inlineLocal.description=Invokes quick assist and selects 'Inline local variable'

ActionDefinition.corrections.convertAnonymousToLocal.name=Quick Assist - Convert anonymous to local class
ActionDefinition.corrections.convertAnonymousToLocal.description=Invokes quick assist and selects 'Convert anonymous to local class'

ActionDefinition.corrections.encapsulateField.name=Quick Assist - Create getter/setter for field
ActionDefinition.corrections.encapsulateField.description=Invokes quick assist and selects 'Create getter/setter for field'

#--- Refactor menu
ActionDefinition.refactorQuickMenu.name= Show Refactor Quick Menu
ActionDefinition.refactorQuickMenu.description= Shows the refactor quick menu

ActionDefinition.pullUp.name= Pull Up
ActionDefinition.pullUp.description= Move members to a superclass

ActionDefinition.pushDown.name= Push Down
ActionDefinition.pushDown.description= Move members to subclasses

ActionDefinition.renameElement.name= Rename - Refactoring 
ActionDefinition.renameElement.description= Rename the selected element

ActionDefinition.modifyMethodParameters.name= Change Method Signature
ActionDefinition.modifyMethodParameters.description= Change method signature includes parameter names and parameter order

ActionDefinition.moveElement.name= Move - Refactoring 
ActionDefinition.moveElement.description= Move the selected element to a new location

ActionDefinition.extractLocalVariable.name= Extract Local Variable
ActionDefinition.extractLocalVariable.description= Extracts an expression into a new local variable and uses the new local variable

ActionDefinition.extractConstant.name= Extract Constant
ActionDefinition.extractConstant.description= Extracts a constant into a new static field and uses the new static field

ActionDefinition.introduceParameter.name= Introduce Parameter
ActionDefinition.introduceParameter.description= Introduce a new method parameter based on the selected expression

ActionDefinition.introduceParameterObject.name= Introduce Parameter Object
ActionDefinition.introduceParameterObject.description= Introduce a parameter object to a selected method

ActionDefinition.introduceFactory.name= Introduce Factory
ActionDefinition.introduceFactory.description= Introduce a factory method to encapsulate invocation of the selected constructor

ActionDefinition.inline.name= Inline
ActionDefinition.inline.description= Inline a constant, local variable or method

ActionDefinition.introduceIndirection.name= Introduce Indirection
ActionDefinition.introduceIndirection.description= Introduce an indirection to encapsulate invocations of a selected method

ActionDefinition.replaceInvocations.name= Replace Invocations
ActionDefinition.replaceInvocations.description= Replace invocations of the selected method

ActionDefinition.extractClass.name=Extract Class...
ActionDefinition.extractClass.description=Extracts fields into a new class

ActionDefinition.selfEncapsulateField.name= Encapsulate Field
ActionDefinition.selfEncapsulateField.description= Create getting and setting methods for the field and use only those to access the field

ActionDefinition.extractMethod.name= Extract Method
ActionDefinition.extractMethod.description= Extract a set of statements or an expression into a new method and use the new method

ActionDefinition.extractInterface.name= Extract Interface
ActionDefinition.extractInterface.description= Extract a set of members into a new interface and try to use the new interface

ActionDefinition.extractSupertype.name= Extract Superclass
ActionDefinition.extractSupertype.description= Extract a set of members into a new superclass and try to use the new superclass

ActionDefinition.changeType.name= Generalize Declared Type
ActionDefinition.changeType.description= Change the declaration of a selected variable to a more general type consistent with usage

ActionDefinition.convertNestedToTopLevel.name= Move Type to New File
ActionDefinition.convertNestedToTopLevel.description= Move Type to New File

ActionDefinition.useSupertype.name= Use Supertype Where Possible
ActionDefinition.useSupertype.description= Change occurrences of a type to use a supertype instead

ActionDefinition.inferTypeArguments.name= Infer Generic Type Arguments
ActionDefinition.inferTypeArguments.description= Infer type arguments for references to generic classes and remove unnecessary casts

ActionDefinition.convertLocalToField.name= Convert Local Variable to Field
ActionDefinition.convertLocalToField.description= Convert a local variable to a field

ActionDefinition.convertAnonymousToNested.name= Convert Anonymous Class to Nested
ActionDefinition.convertAnonymousToNested.description= Convert an anonymous class to a nested class

ActionDefinition.applyRefactoringScript.name=Apply Script
ActionDefinition.applyRefactoringScript.description=Perform refactorings from a refactoring script on the local workspace

ActionDefinition.createRefactoringScript.name=Create Script
ActionDefinition.createRefactoringScript.description=Create a refactoring script from refactorings on the local workspace

ActionDefinition.openRefactoringHistory.name=Open Refactoring History 
ActionDefinition.openRefactoringHistory.description=Opens the refactoring history

ActionDefinition.migrate.name=Migrate JAR File
ActionDefinition.migrate.description=Migrate a JAR File to a new version


#--- Navigate menu
ActionDefinition.openType.name= Open Type
ActionDefinition.openType.description= Open a type in a Java editor

ActionDefinition.openTypeInHierarchy.name= Open Type in Hierarchy
ActionDefinition.openTypeInHierarchy.description= Open a type in the type hierarchy view

ActionDefinition.gotoPackage.name= Go to Package
ActionDefinition.gotoPackage.description= Go to Package

ActionDefinition.gotoBreadcrumb.name= Show In Breadcrumb
ActionDefinition.gotoBreadcrumb.description= Shows the Java editor breadcrumb and sets the keyboard focus into it

ActionDefinition.gotoType.name= Go to Type
ActionDefinition.gotoType.description= Go to Type

ActionDefinition.openEditor.name= Open Declaration
ActionDefinition.openEditor.description= Open an editor on the selected element

ActionDefinition.openImplementation.name= Open Implementation
ActionDefinition.openImplementation.description= Opens the Implementations of a method in its hierarchy

ActionDefinition.openSuperImplementation.name= Open Super Implementation
ActionDefinition.openSuperImplementation.description= Open the Implementation in the Super Type

ActionDefinition.openAttachedJavadoc.name= Open Attached Javadoc
ActionDefinition.openAttachedJavadoc.description= Open the attached Javadoc of the selected element in a browser

ActionDefinition.openTypeHierarchy.name= Open Type Hierarchy
ActionDefinition.openTypeHierarchy.description= Open a type hierarchy on the selected element

ActionDefinition.openCallHierarchy.name= Open Call Hierarchy
ActionDefinition.openCallHierarchy.description= Open a call hierarchy on the selected element

ActionDefinition.showInPackageView.name= Show in Package Explorer
ActionDefinition.showInPackageView.description= Show the selected element in the Package Explorer


ActionDefinition.gotoMatchingBracket.name= Go to Matching Bracket
ActionDefinition.gotoMatchingBracket.description= Moves the cursor to the matching bracket

#--- Search menu
ActionDefinition.referencesInWorkspace.name= References in Workspace
ActionDefinition.referencesInWorkspace.description= Search for references to the selected element in the workspace

ActionDefinition.referencesInProject.name= References in Project
ActionDefinition.referencesInProject.description= Search for references to the selected element in the enclosing project

ActionDefinition.referencesInHierarchy.name= References in Hierarchy
ActionDefinition.referencesInHierarchy.description= Search for references of the selected element in its hierarchy

ActionDefinition.referencesInWorkingSet.name= References in Working Set
ActionDefinition.referencesInWorkingSet.description= Search for references to the selected element in a working set

ActionDefinition.readAccessInworkspace.name= Read Access in Workspace
ActionDefinition.readAccessInWorkspace.description= Search for read references to the selected element in the workspace

ActionDefinition.readAccessInProject.name= Read Access in Project
ActionDefinition.readAccessInProject.description= Search for read references to the selected element in the enclosing project

ActionDefinition.readAccessInHierarchy.name= Read Access in Hierarchy
ActionDefinition.readAccessInHierarchy.description= Search for read references of the selected element in its hierarchy

ActionDefinition.readAccessInWorkingSet.name= Read Access in Working Set
ActionDefinition.readAccessInWorkingSet.description= Search for read references to the selected element in a working set

ActionDefinition.writeAccessInWorkspace.name=Write Access in Workspace
ActionDefinition.writeAccessInWorkspace.description= Search for write references to the selected element in the workspace

ActionDefinition.writeAccessInProject.name= Write Access in Project
ActionDefinition.writeAccessInProject.description= Search for write references to the selected element in the enclosing project

ActionDefinition.writeAccessInHierarchy.name= Write Access in Hierarchy
ActionDefinition.writeAccessInHierarchy.description= Search for write references of the selected element in its hierarchy

ActionDefinition.writeAccessInWorkingSet.name= Write Access in Working Set
ActionDefinition.writeAccessInWorkingSet.description= Search for write references to the selected element in a working set

ActionDefinition.declarationsInWorkspace.name= Declaration in Workspace
ActionDefinition.declarationsInWorkspace.description= Search for declarations of the selected element in the workspace

ActionDefinition.declarationsInProject.name= Declaration in Project
ActionDefinition.declarationsInProject.description= Search for declarations of the selected element in the enclosing project

ActionDefinition.declarationsInHierarchy.name= Declaration in Hierarchy
ActionDefinition.declarationsInHierarchy.description= Search for declarations of the selected element in its hierarchy

ActionDefinition.declarationsInWorkingSet.name= Declaration in Working Set
ActionDefinition.declarationsInWorkingSet.description= Search for declarations of the selected element in a working set

ActionDefinition.implementorsInWorkspace.name= Implementors in Workspace
ActionDefinition.implementorsInWorkspace.description= Search for implementors of the selected interface

ActionDefinition.implementorsInProject.name= Implementors in Project
ActionDefinition.implementorsInProject.description= Search for implementors of the selected interface in the enclosing project

ActionDefinition.implementorsInWorkingSet.name= Implementors in Working Set
ActionDefinition.implementorsInWorkingSet.description= Search for implementors of the selected interface in a working set

ActionDefinition.occurrencesInFile.quickMenu.name= Show Occurrences in File Quick Menu
ActionDefinition.occurrencesInFile.quickMenu.description= Shows the Occurrences in File quick menu

ActionDefinition.occurrencesInFile.name= Search All Occurrences in File
ActionDefinition.occurrencesInFile.description= Search for all occurrences of the selected element in its declaring file

ActionDefinition.methodExitOccurrences.name = Search Method Exit Occurrences in File
ActionDefinition.methodExitOccurrences.description = Search for method exit occurrences of a selected return type

ActionDefinition.breakContinueTargetOccurrences.name = Search break/continue Target Occurrences in File
ActionDefinition.breakContinueTargetOccurrences.description = Search for break/continue target occurrences of a selected target name

ActionDefinition.exceptionOccurrences.name= Search Exception Occurrences in File
ActionDefinition.exceptionOccurrences.description= Search for exception occurrences of a selected exception type

ActionDefinition.implementOccurrences.name= Search Implement Occurrences in File
ActionDefinition.implementOccurrences.description= Search for implement occurrences of a selected type

#---  project
ActionDefinition.generateJavadoc.name= Generate Javadoc
ActionDefinition.generateJavadoc.description= Generates Javadoc for a selectable set of Java resources


#--- commands not assigned to a menu
ActionDefinition.foldingCollapseMembers.name= Collapse Members
ActionDefinition.foldingCollapseMembers.description= Collapse all members

ActionDefinition.foldingCollapseComments.name= Collapse Comments
ActionDefinition.foldingCollapseComments.description= Collapse all comments

#--- perspective commands
PerspectiveCommand.javaBrowsing.name= Java Browsing
PerspectiveCommand.javaBrowsing.description= Show the Java Browsing perspective

PerspectiveCommand.java.name= Java
PerspectiveCommand.java.description= Show the Java perspective

PerspectiveCommand.javaTypeHierarchy.name= Java Type Hierarchy
PerspectiveCommand.javaTypeHierarchy.description= Show the Java Type Hierarchy perspective


#--- Commands for surfacing java elements
command.openElementInEditor.name= Open Java Element
command.openElementInEditor.desc= Open a Java element in its editor
commandParameter.openElementInEditor.elementRef.name= Java element reference
command.showElementInPackageView.name= Show Java Element in Package Explorer
command.showElementInPackageView.desc= Select Java element in the Package Explorer view
commandParameter.showElementInPackageView.elementRef.name= Java element reference
command.showElementInTypeHierarchyView.name= Show Java Element Type Hierarchy
command.showElementInTypeHierarchyView.desc= Show a Java element in the Type Hierarchy view
commandParameter.showElementInTypeHierarchyView.elementRef.name= Java element reference

#--- Call Hierarchy
callHierarchyViewName=Call Hierarchy

#--- Info views
JavaSourceView= Declaration
JavadocView= Javadoc


#--- Info view colors
JavadocViewBackgroundColor.label= Javadoc view background
JavadocViewBackgroundColor.description= The color used as background for the Javadoc view.
DeclarationViewBackgroundColor.label= Declaration view background
DeclarationViewBackgroundColor.description= The color used as background for the Declaration view.

#--- linked mode annotations
linked.focus.label= Current range
linked.slave.label= Range linked to current
linked.target.label= Editable range
linked.exit.label= Final caret location

userLibrary.name=User Library

#--- templates
templates.java.contextType.name= Java
templates.java.statements.contextType.name= Java statements
templates.java.members.contextType.name= Java type members
templates.javadoc.contextType.name= Javadoc
templates.swt.contextType.name= SWT
templates.swt.statements.contextType.name= SWT statements
templates.swt.members.contextType.name= SWT type members

templates.java.resolvers.Field.name= Field
templates.java.resolvers.Field.description= <b>${<i>id</i>:field(type[,type]*)}</b><br>Evaluates to a field in the current scope that is a subtype of any of the given types. If no type is specified, any non-primitive field matches.<br><br><b>Example:</b><br><code>${counter:field(int)}</code>
templates.java.resolvers.Link.name= Linked Mode
templates.java.resolvers.Link.description= <b>${<i>id</i>:link([proposal[,proposal]*])}</b><br>Evaluates to <i>id</i> if the list of proposals is empty, evaluates to the first proposal otherwise. The evaluated value is put into linked mode. A proposal window shows all the given proposals.<br><br><b>Example1:</b><br><code>java.util.Collections.${kind:link(EMPTY_SET, EMPTY_LIST, EMPTY_MAP)}</code><br><br><b>Example2:</b><br><code>int ${integer:link}; ${integer}= 0;</code>
templates.java.resolvers.Imports.name= Import
templates.java.resolvers.Imports.description= <b>${:import([type[,type]*])}</b><br>Adds an import statement for each type that is not already imported. Does nothing if a conflicting import exists. Evaluates to nothing.<br><br><b>Example:</b><br><code>${:import(java.util.List, java.util.Collection)}</code>
templates.java.resolvers.ImportStatic.name= Import Static
templates.java.resolvers.ImportStatic.description= <b>${:importStatic([qualifiedName[,qualifiedName]*])}</b><br>Adds a static import statement for each qualified name that is not already imported. The <code>qualifiedName</code> is the fully qualified name of a static field or method or it is the qualified name of a type plus a '.*' suffix. Does nothing if a conflicting import exists. Evaluates to nothing.<br><br><b>Example:</b><br><code>${:importStatic(java.util.Collections.EMPTY_SET, 'java.lang.System.*')}</code>
templates.java.resolvers.Var.name= Variable
templates.java.resolvers.Var.description= <b>${<i>id</i>:var(type[,type]*)}</b><br>Evaluates to a field, local variable or parameter visible in the current scope that is a subtype of any of the given types. If no type is specified, any non-primitive variable matches.<br><br><b>Example:</b><br><code>${array:var(java.lang.Object[])}</code>
templates.java.resolvers.LocalVar.name= Local Variable
templates.java.resolvers.LocalVar.description= <b>${<i>id</i>:localVar(type[,type]*)}</b><br>Evaluates to a local variable or parameter visible in the current scope that is a subtype of any of the given types. If no type is specified, any non-primitive local variable matches.<br><br><b>Example:</b><br><code>${iterable:localVar(java.lang.Iterable)}</code>
templates.java.resolvers.Name.name= New Name
templates.java.resolvers.Name.description= <b>${<i>id</i>:newName(reference)}</b><br>Evaluates to an non-conflicting name for a new local variable of the type specified by the reference. The reference may either be a Java type name or the name of another template variable. The generated name respects the code style settings.<br><br><b>Example:</b><br><code>${index:newName(int)}</code>
templates.java.resolvers.Type.name= New Type
templates.java.resolvers.Type.description= <b>${<i>id</i>:newType(fullyQualifiedType)}</b><br>Evaluates to a type name given the fully qualified Java type name. Evaluates to a simple type name and an import if no conflicting type exists. Evaluates to a fully qualified type name otherwise.<br><br><b>Example:</b><br><code>${type:newType(java.util.Iterator)}</code>
templates.java.resolvers.ElementType.name= Element Type
templates.java.resolvers.ElementType.description= <b>${<i>id</i>:elemType(variable)}</b><br>Evaluates to the element type of the referenced template variable. The reference should be the name of another template variable that resolves to an array or an instance of <code>java.lang.Iterable</code>.<br><br><b>Example:</b><br><code>${t:elemType(a)} elem = ${a:array};</code>
templates.java.resolvers.ArgumentType.name= Argument Type
templates.java.resolvers.ArgumentType.description= <b>${<i>id</i>:argType(variable, n)}</b><br> Evaluates to the <em>nth</em> type argument of the referenced template variable. The reference should be the name of another template variable. Resolves to <code>java.lang.Object</code> if the referenced variable cannot be found or is not a parameterized type.<br><br><b>Example:</b><br><code>${type:argType(vector, 0)} ${first:name(type)} = ${vector:var(java.util.Vector)}.get(0);</code>;
templates.java.resolvers.ExceptionVariableName.name= Exception Variable Name
templates.java.resolvers.ExceptionVariableName.description= Exception variable name in catch blocks

#--- folding
foldingStructureProvidersExtensionPoint= Folding Structure Providers
defaultFoldingStructureProviderName= Default Java Folding

#--- presentation
javaPresentation.label= Java

#--- Properties File Editor
PropertiesFileEditorName=Properties File Editor
propertiesFileDocumentSetupParticipant= Properties File Document Setup Participant

propertiesFileEditorFontDefiniton.label= Properties File Editor Text Font
propertiesFileEditorFontDefintion.description= The Properties File editor text font is used by Properties File editors.

propertiesFileEditorPrefName= Properties Files Editor

#--- Spelling
defaultSpellingEngine.label= Default spelling engine
spellingMarker= Spelling Marker

#--- Java model provider
JavaModelProvider.name=Java Workspace
JavaModelContent.name=Java Workspace

#--- Java problem grouping
MarkerCategory.name=Java Problem Type
MarkerCategory.buildpath=Build Path
MarkerCategory.fatal=Fatal Errors
MarkerCategory.documentation=Documentation
MarkerCategory.codestyle=Code Style
MarkerCategory.potential=Potential Programming Problems
MarkerCategory.namingconflicts=Name Shadowing and Conflicts
MarkerCategory.deprecation=Deprecation
MarkerCategory.generictypes=Type Safety and Raw Types
MarkerCategory.unnecessary=Unnecessary Code
MarkerCategory.nls=Externalized Strings
MarkerCategory.restrictedAPI=Restricted API

#--- Hyperlinking ---
JavaEditorHyperlinkTarget= Java Editor
PropertiesFileEditorHyperlinkTarget=Properties File Editor
JavaElementHyperlinkDetector= Open Declaration
JavaElementHyperlinkImplementationDetector= Open Implementation
NLSHyperlinkDetector= Java Property Key
PropertyKeyHyperlinkDetector= Java Property Key
JavaElementHyperlinkDeclaredTypeDetector= Open Declared Type
JavaElementHyperlinkReturnTypeDetector= Open Return Type 
JavaElementHyperlinkSuperImplementationDetector= Open Super Implementation 

#--- Clean Up ---
CleanUpTabPage.CodeStyle.name = &Code Style
CleanUpTabPage.MemberAccesses.name = Membe&r Accesses
CleanUpTabPage.UnnecessaryCode.name = &Unnecessary Code
CleanUpTabPage.MissingCode.name = &Missing Code
CleanUpTabPage.CodeOrganizing.name = Code &Organizing

contentMergeViewers.java.label=Java Source Compare
contentMergeViewers.properties.label=Java Properties Compare
structureMergeViewers.java.label=Java Structure Compare
