Remove redundant the "this" keyword
[idea/community.git] / plugins / groovy / groovy-psi / resources / messages / GroovyBundle.properties
index 4e8715e5eef986446e49958250b31738df33db33..eda695efa667ce29e9398c9b4af133e1ab148556 100644 (file)
@@ -1,9 +1,7 @@
-# Copyright 2000-2020 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
-
-########################################################################################################################
-# Groovy script template
-########################################################################################################################
-action.groovy.scripting.shell.text=Groovy IDE Scripting Shell
+language.groovy=Groovy
+file.type.dgm=Groovy extension module descriptor file
+file.type.logback=Groovy Logback DSL configuration
+file.type.gdsl=IntelliJ Groovy DSL configuration
 action.Mvc.RunTarget.text=Run Command
 action.Mvc.RunTarget.description=Run arbitrary Grails/Griffon command
 action.Mvc.Upgrade.text=Change SDK Version
@@ -46,9 +44,7 @@ group.Groovy.CheckResources.text=Gr_oovy Resources
 group.Groovy.CheckResources.description=Run the compiler for Groovy files in resource roots to check for compilation issues
 action.Groovy.Shell.Execute.text=Execute Groovy Code
 action.Groovy.Shell.Execute.description=Execute Groovy code in console
-
 file.template.group.title.groovy=Groovy
-
 groovy.term.class=class
 groovy.term.interface=interface
 groovy.term.trait=trait
@@ -63,22 +59,25 @@ groovy.term.binding=script binding variable
 groovy.term.label=label
 groovy.term.closure=closure
 groovy.term.expression=expression
-
-newclass.dlg.title=New Groovy Class
-newclass.menu.action.text=Groovy Class
-newclass.menu.action.description=Creates new Groovy Class
-newscript.dlg.prompt=Enter name for new Groovy Script
-newscript.menu.action.text=Groovy Script
-newscript.menu.action.description=Creates new Groovy Script
-##########################################################################################################################
-# GDK & compilation
-########################################################################################################################
-
-cannot.compile=Cannot Compile
+new.class.action.text=Groovy Class
+new.class.action.description=Creates new Groovy Class
+new.class.dialog.title=New Groovy Class
+new.class.list.item.class=Class
+new.class.list.item.interface=Interface
+new.class.list.item.trait=Trait
+new.class.list.item.enum=Enum
+new.class.list.item.annotation=Annotation
+invalid.qualified.name=This is not a valid Groovy qualified name
+new.script.action.text=Groovy Script
+new.script.action.description=Creates new Groovy Script
+new.script.dialog.title=Enter Name for New Groovy Script
+new.script.list.item.script=Groovy script
+new.script.list.item.script.dsl=GroovyDSL script
+new.gant.script.dialog.title=New Gant Script
+new.gant.script.dialog.message=Enter name for new Gant Script
 debug.option=Enable &debug stack trace
 groovy.debug.disable.specific.methods=Do not step &into specific Groovy classes
 groovy.debug.caption=Groovy
-
 ########################################################################################################################
 # Parser error messages
 ########################################################################################################################
@@ -88,13 +87,11 @@ string.end.expected=String end expected
 try.without.catch.finally='try' without 'catch' or 'finally'
 expression.expected=Expression expected
 duplicate.modifier=Duplicate modifier ''{0}''
-
 ########################################################################################################################
 # Intentions & error messages
 ########################################################################################################################
 cannot.resolve=Cannot resolve symbol ''{0}''
 cannot.access=Access to ''{0}'' exceeds its access rights
-cannot.reference.static=Cannot reference static symbol ''{0}'', class qualifier needed
 cannot.reference.non.static=Cannot reference non-static symbol ''{0}'' from static context
 cannot.return.from.constructor=Cannot return an object from constructor
 cannot.return.from.void.method=Cannot return an object from a method that returns 'void'
@@ -120,13 +117,10 @@ duplicate.inner.class=Duplicate class: ''{0}''
 script.generated.with.same.name=There is a synthetic class ''{0}'' generated for script code
 variable.already.defined=Variable ''{0}'' already defined
 field.already.defined=Field ''{0}'' already defined
-import.what=Import ''{0}''
-import.class=Import class
 create.class.family.name=Create Class
 create.class.text=Create class {0}
 create.interface.text=Create interface {0}
 create.annotation.text=Create annotation {0}
-static.declaration.in.inner.class=Inner classes cannot have static declarations
 constructors.are.not.allowed.in.anonymous.class=Constructors are not allowed in anonymous class
 no.such.property=Property ''{0}'' does not exist
 change.modifier=Make ''{0}'' {1}
@@ -161,15 +155,24 @@ transient.visibility.presentation=transient
 volatile.visibility.presentation=volatile
 # suppress inspection "UnusedProperty"
 def.visibility.presentation=def
-
-
-
-# {0} - colspan, {1} - method name, {2} - class name, {3} - formal myParameters row, {4} - arguments row
-########################################################################################################################
-# Compiler
-########################################################################################################################
-class.already.exists=Class ''{0}'' already exists
-
+intention.family.name.convert.conditional.expression.to.elvis=Convert conditional expression to elvis
+intention.family.name.replace.with.keyed.access=Replace with keyed access
+intention.family.name.fix.range.class=Fix range class
+intention.family.name.make.return.implicit=Make return implicit
+intention.family.name.simplify=Simplify
+intention.family.name.remove.unnecessary.continue=Remove unnecessary continue
+intention.family.name.remove.unnecessary.return=Remove unnecessary return
+intention.family.name.add.parameter.cast=Add parameter cast
+intention.family.name.replace.for.each.operator=Replace for-each operator
+intention.family.name.add.cast=Add cast
+intention.family.name.change.variable.type=Change variable type
+intention.family.name.replace.with.conditional.call=Replace with conditional call
+intention.family.name.collapse.conditional.expressions=Collapse conditional expression
+intention.family.name.remove.double.negation=Remove double negation
+intention.family.name.activate.dsl.descriptor=Activate DSL Descriptor
+intention.family.name.collapse.if.statement=Collapse 'if' statement'
+intention.family.name.replace.with.short.circuit.expression=Replace with short-circuit expression
+intention.family.name.replace.something.with=Replace ''{0}'' with ''{1}''
 illegal.combination.of.modifiers=Illegal combination of modifiers
 illegal.combination.of.modifiers.abstract.and.final=Illegal combination of modifiers 'abstract' and 'final'
 modifier.volatile.not.allowed.here=Modifier 'volatile' not allowed here
@@ -188,32 +191,26 @@ not.abstract.method.should.have.body=Not abstract method should have body
 cannot.create.class.error.text=Cannot Create Class ''{0}'': {1}
 cannot.create.class.error.title=Cannot Create Class
 no.class.in.file.template=No Class Found in File Template
-error.external=External error
 Inner.methods.are.not.supported=Inner methods are not supported
 final.class.cannot.be.extended=Final class cannot be extended
-
 # Groovy 1.7 checks
 unsupported.inner.class.0=Inner classes are not supported in Groovy {0}
 unsupported.anonymous.class.0=Anonymous classes are not supported in Groovy {0}
-
 # Groovy 1.8 checks
 unsupported.diamonds.0=Diamonds are not supported in Groovy {0}
 unsupported.command.syntax.0=Command expression syntax is not supported in Groovy {0}
 unsupported.dollar.slashy.string.0=Dollar slashy strings are not supported in Groovy {0}
 unsupported.multiline.slashy.string.0=Multi-line slashy strings are not supported in Groovy {0}
-
 #Groovy 2.3 checks
 unsupported.traits.0=Traits are not supported in Groovy {0}
-
 #Groovy 2.5 checks
 duplicating.named.parameter=Duplicate named parameter ''{0}'' occurs in parameters: {1}
 field.should.be.immutable=Field ''{0}'' should have immutable type or be declared so with @ImmutableOptions
 immutable.options.property.not.exist=Property ''{0}'' does not exist
-explicit.includes.and.excludes=Only one of \'includes\' and \'excludes\' should be supplied
+explicit.includes.and.excludes=Only one of 'includes' and 'excludes' should be supplied
 require.closure.as.attribute.value=Expected closure as attribute value
-initializers.are.forbidden.with.defaults=Default values are forbidden with \'defaults\' disabled in @TupleConstructor
-super.is.not.allowed.in.pre.with.call.super=Call to super is not allowed in \'pre\' with \'callSuper\' enabled
-
+initializers.are.forbidden.with.defaults=Default values are forbidden with 'defaults' disabled in @TupleConstructor
+super.is.not.allowed.in.pre.with.call.super=Call to super is not allowed in 'pre' with 'callSuper' enabled
 #Groovy 3.0 checks
 illegal.default.modifier=Modifier 'default' makes sense only in interface's methods
 illegal.default.modifier.fix=Remove 'default' modifier
@@ -232,18 +229,18 @@ unsupported.safe.index.access=Safe index access is not supported in current vers
 unsupported.lambda=Lambdas are not supported in current version
 unsupported.type.annotations=Type annotations are not supported in current version
 illegal.single.argument.lambda=Single argument form of lambda is available only as right part of assignment expression or as argument inside method call
-
-#Override and implement
 method.is.not.implemented=Method ''{0}'' is not implemented
 change.implements.and.extends.classes=Normalize extends and implements lists
-
 fix.package.name=Fix package name
-
-#dynamic properties
+checkbox.delegate.via.overloading.method=Delegate via overloading method
+checkbox.ignore.conditional.operators=Ignore conditional operators
+checkbox.ignore.obscure.operators=Ignore obscure operators
+checkbox.ignore.double.checked.locking.on.volatile.fields=Ignore double-checked locking on volatile fields
+checkbox.inspect.anonymous.closures=Inspect anonymous closures
+checkbox.only.warn.if.loop.empty=Only warn if loop is empty
 add.dynamic.property=Add dynamic property ''{0}''
 duplicate.element.in.the.map=Duplicate element ''{0}'' in the map
 dynamic.tool.window.id=Dynamic Members
-
 create.field.from.usage.family.name=Create field from usage
 create.field.from.usage=Create field ''{0}''
 create.method.from.usage.family.name=Create method from usage
@@ -254,9 +251,10 @@ create.parameter.from.usage.family.name=Create parameter from usage
 create.parameter.from.usage=Create parameter ''{0}''
 add.dynamic.element=Add dynamic element
 add.dynamic.method=Add Dynamic Method
+add.dynamic.method.0=Add dynamic method ''{0}''
 dynamic.type=Type
 dynamic.name=Name
-dynamic.properties.table.name=Method arguments
+dynamic.properties.table.name=Method Arguments
 dynamic.method.return.type=Return &type:
 dynamic.method.property.type=Property &type:
 are.you.sure.to.delete.dynamic.property=Are you sure to delete ''{0}''?
@@ -264,7 +262,6 @@ dynamic.property.deletion=Deletion Dynamic Property
 are.you.sure.to.delete.elements=Are you sure to delete ''{0}'' elements?
 dynamic.element.deletion=Dynamic Element Deletion
 tuple.cant.be.placed.in.class=Multiple assignments are not allowed for fields
-unknown.class=unknown class ''{0}''
 is.not.enclosing.class=''{0}'' is not an enclosing class
 package.definition.cannot.have.modifiers=Package definition cannot have modifiers
 import.statement.cannot.have.modifiers=Import statement cannot have modifiers
@@ -273,14 +270,11 @@ continue.outside.loop=The continue statement is only allowed inside loops
 break.outside.loop.or.switch=The break statement is only allowed inside loops or switches
 label.already.used=Label ''{0}'' is already in use
 break.outside.loop=The break statement with named labels is only allowed inside loops
-
 Constructor=Constructor
 Getter=Getter
 Setter=Setter
-compile.groovy.files=&Compile Groovy files
 not.allowed.modifier.in.for.in=Modifier ''{0}'' is not allowed here
 property.name.expected=Property name expected
-add.method.body=Add method body
 wildcards.are.not.allowed.in.extends.list=A super type may not specify a wildcard type
 method.does.not.override.super=Method does not override method from its super class
 method.duplicate=Method with signature {0} is already defined in the class ''{1}''
@@ -293,11 +287,6 @@ create.instance.of.built-in.type=Instantiation of built-in type
 incorrect.variable.name=Incorrect variable name
 no.interface.expected.here=No interface expected here
 no.class.expected.here=No class expected here
-move.to.extends.list=Move reference to extends list
-move.to.implements.list=Move reference to implements list
-script.file.is.not.groovy.file=Script file is not Groovy file
-class.does.not.exist=Class does not exist
-class.cannot.be.executed=Class cannot be executed
 invoke.completion.second.time.to.show.skipped.methods=Invoke completion second time to show skipped methods
 groovy.file.extension.is.not.mapped.to.groovy.file.type=*.groovy files are mapped to ''{0}''.\nYou can map them to Groovy in Settings | File types
 class.is.not.annotation=''{0}'' is not an annotation
@@ -306,7 +295,6 @@ operator.call.is.ambiguous=Operator call is ambiguous
 duplicated.named.parameter=Duplicated named parameter ''{0}'' found
 no.super.classes.found=No super classes found
 no.super.method.found=No super methods found
-wrong.package.name=Package name ''{0}'' does not corresponding to the file path ''{1}''
 cannot.assign.string.to.enum.0=Cannot assign string to enum ''{0}''
 cannot.find.enum.constant.0.in.enum.1=Cannot find enum constant ''{0}'' in enum ''{1}''
 recursive.constructor.invocation=Recursive constructor invocation
@@ -314,13 +302,11 @@ the.usage.of.a.map.entry.expression.to.initialize.an.enum.is.currently.not.suppo
 class.definition.is.not.expected.here=Class definition is not expected here
 move.class.0.from.method=Move ''{0}'' to correct place
 move.class.from.method.family.name=Move to correct place quick fix
-constructor.call.is.ambiguous=Constructor call is ambiguous
 cannot.infer.argument.types=Cannot infer argument types
 Equals=Equals
 default.initializers.are.not.allowed.in.abstract.method=Default initializers are not allowed in abstract methods
 groovy.does.not.support.constructor.type.arguments=Groovy does not support constructor type arguments
 illegal.escape.character.in.string.literal=Illegal escape character in string literal
-add.parentheses=Add parentheses
 method.with.type.parameters.should.have.return.type=Method with type parameters should have return type
 primitive.type.parameters.are.not.allowed=Primitive type parameters are not allowed in type parameter list
 primitive.bound.types.are.not.allowed=Primitive bound types are not allowed
@@ -335,7 +321,6 @@ exception.0.has.already.been.caught=Exception ''{0}'' has already been caught
 unnecessary.type=Unnecessary exception ''{0}''. ''{1}'' is already declared
 create.enum=Create Enum {0}
 create.trait=Create Trait {0}
-create.inner.class=Create inner class {0}
 annotation.field.can.only.be.used.within.a.script.body=Annotation @Field can only be used within a script body
 annotation.field.can.only.be.used.within.a.script=Annotation @Field can only be used within a script
 return.type.is.incompatible=The return type of {0} in {1} is incompatible with {2} in {3}
@@ -345,10 +330,8 @@ at.interface.0.does.not.contain.attribute=@interface ''{0}'' does not contain at
 duplicate.attribute=Duplicate attribute
 missed.attributes=Missed attributes\: {0}
 unexpected.attribute.type.0=Unexpected attribute type\: ''{0}''
-annotation.attribute.should.have.return.type.declaration=Annotation attribute should have return type declaration
 annotation.field.should.have.type.declaration=Field in annotation should have type declaration
 interface.members.are.not.allowed.to.be=Interface members are not allowed to be {0}
-abstract.method.cannot.be.final=Abstract method cannot be final
 abstract.methods.must.not.have.body=Abstract methods must not have body
 method.has.incorrect.modifier.volatile=Method has incorrect modifier 'volatile'
 native.methods.cannot.have.body=Native methods cannot have body
@@ -379,7 +362,6 @@ injection.should.not.contain.line.feeds=GString injection must not contain line
 collection.literal.contains.named.argument.and.expression.items=Collection literal contains named and expression arguments at the same time
 annotation.collector.cannot.have.attributes=Annotation type annotated with @AnnotationCollector cannot have attributes
 annotation.type.cannot.be.inner=Annotation type cannot be inner
-cannot.find.operator.overload.method=Cannot resolve index access with arguments {0}
 named.arguments.are.not.allowed.inside.index.operations=Named arguments are not allowed inside index operations
 expected.0.to.be.inline.constant=Expected ''{0}'' to be an inline constant
 cannot.assign.a.value.to.final.field.0=Cannot assign a value to final field ''{0}''
@@ -401,9 +383,16 @@ non.static.classes.not.allowed=Non-static inner classes are not allowed in trait
 selfType.class.does.not.inherit=@SelfType: Class ''{0}'' does not inherit ''{1}''
 illegal.type.void=Illegal type: 'void'
 illegal.method.name=Method name contains illegal character(s): {0}
-
-select.module.description=Which module to use classpath of?
-select.module.title=Select module...
+indexed.property.is.applicable.to.properties.only=@IndexedProperty is applicable to properties only
+listener.list.field.must.have.a.generic.collection.type=@ListenerList field must have a generic Collection type
+listener.list.field.with.generic.wildcards.not.supported=@ListenerList field with generic wildcards not supported
+synchronized.not.allowed.on.abstract.method=@Synchronized not allowed on abstract method
+lock.field.0.must.be.static=Lock field ''{0}'' must be static
+lock.field.0.must.not.be.static=Lock field ''{0}'' must not be static
+lock.field.0.not.found=Lock field ''{0}'' not found
+select.module.action.text=Select Module...
+select.module.action.description=Select module to use classpath of
+select.module.popup.title=Use Classpath of Module
 ### Inspection groups ###
 inspection.annotations=Annotations verifying
 inspection.assignments=Assignment issues
@@ -514,6 +503,7 @@ inspection.display.name.continue=Continue statement
 inspection.display.name.break=Break statement
 inspection.display.name.unused.catch.parameter=Unused catch parameter
 inspection.display.name.empty.try.block=Empty 'try' block
+inspection.display.name.annotation.references.unknown.identifier=Unknown identifier in 'includes' and 'excludes' attributes
 inspection.display.name.empty.finally.block=Empty 'finally' block
 inspection.display.name.empty.catch.block=Empty 'catch' block
 inspection.display.name.throw.from.finally.block='throw' inside 'finally' block
@@ -545,6 +535,110 @@ inspection.display.name.check.labeled.statement=Labeled statement inspection
 inspection.display.name.variable.can.be.final=Variable can be final
 inspection.display.name.equals.between.inconvertible.types='equals()' between objects of inconvertible types
 inspection.display.name.singleton.constructor=@Singleton constructors
+inspection.message.access.to.static.field.locked.on.instance.data=Access to static field <code>#ref</code> locked on instance data #loc
+inspection.message.assignment.replaceable.with.operator.assignment=<code>#ref</code> could be simplified to ''{0}'' #loc
+inspection.message.assignment.to.for.loop.parameter=Assignment to for-loop parameter '#ref' #loc
+inspection.message.assignment.to.method.parameter=Assignment to method parameter '#ref' #loc
+inspection.message.ref.statement=#ref statement #loc
+inspection.message.call.to.thread.ref.in.a.loop=Call to <code>Thread.#ref()</code> in a loop, probably busy-waiting #loc
+inspection.message.conditional.expression.can.be.call=Conditional expression can be call #loc
+inspection.message.conditional.expression.can.be.elvis=Conditional expression can be elvis #loc
+inspection.message.conditional.expression=Conditional expression #loc
+inspection.message.conditional.expression.with.identical.branches=Conditional expression with identical branches #loc
+inspection.message.ref.can.be.simplified='#ref' can be simplified #loc
+inspection.message.ref.statement.can.be.simplified=#ref statement can be simplified #loc
+inspection.message.constant.name.ref.too.short=Constant name '#ref' is too short
+inspection.message.constant.name.ref.too.long=Constant name '#ref' is too long
+inspection.message.constant.name.ref.doesnt.match.regex=Constant name ''#ref'' doesn''t match regex ''{0}'' #loc
+inspection.message.ref.inside.finally.block='#ref' inside 'finally' block #loc
+inspection.message.divide.by.zero=Division by zero #loc
+inspection.message.double.checked.locking=Double-checked locking #loc
+inspection.message.double.negation.ref=Double negation #ref #loc
+inspection.message.duplicate.switch.case.ref=Duplicate switch case '#ref' #loc
+inspection.message.empty.ref.block=Empty '#ref' block #loc
+inspection.message.ref.statement.has.empty.branch='#ref' statement has empty branch
+inspection.message.ref.statement.has.empty.body='#ref' statement has empty body
+inspection.message.fallthrough.in.switch.statement=Fallthrough in switch statement #loc
+inspection.message.gstring.used.as.maps.key=GString is used as map's key #loc
+inspection.message.ref.statement.cannot.complete.without.throwing.exception=<code>#ref</code> statement cannot complete without throwing an exception #loc
+inspection.message.code.ref.code.recurses.infinitely.can.only.complete.by.throwing.exception=<code>#ref</code> recurses infinitely, and can only complete by throwing an exception #loc
+inspection.message.instance.method.name.ref.too.short=Instance method name '#ref' is too short
+inspection.message.instance.method.name.ref.too.long=Instance method name '#ref' is too long
+inspection.message.instance.method.name.ref.doesnt.match.regex=Instance method name ''#ref'' doesn''t match regex ''{0}'' #loc
+inspection.message.instance.variable.name.ref.too.short=Instance variable name '#ref' is too short
+inspection.message.instance.variable.name.ref.too.long=Instance variable name '#ref' is too long
+inspection.message.couldnt.find.property.field.with.this.name=Couldn't find property or field with this name #loc
+inspection.message.instance.variable.name.ref.doesn.t.match.regex=Instance variable name ''#ref'' doesn''t match regex ''{0}'' #loc
+inspection.message.call.to.ref.can.be.keyed.access=Call to '#ref' can be keyed access #loc
+inspection.message.ref.statement.with.identical.branches='#ref' statement with identical branches #loc
+inspection.message.ref.statement.with.too.many.branches=''#ref'' statement with too many branches ({0}) #loc
+inspection.message.local.variable.name.ref.too.short=Local variable name '#ref' is too short
+inspection.message.local.variable.name.ref.too.long=Local variable name '#ref' is too long
+inspection.message.local.variable.name.ref.doesnt.match.regex=Local variable name ''#ref'' doesn''t match regex ''{0}'' #loc
+inspection.message.code.ref.code.statement.doesnt.loop=<code>#ref</code> statement doesn't loop #loc
+inspection.message.method.ref.contains.too.many.parameters.0.1=Method ''#ref'' contains too many parameters ({0}>{1})
+inspection.message.method.ref.has.too.many.negations=Method ''#ref'' has too many negations ({0} > 3)
+inspection.message.ref.has.0.return.points=<code>#ref</code> has {0} return points #loc
+inspection.message.negated.conditional.expression=Negated conditional expression #loc
+inspection.message.negated.if.condition.expression=Negated if condition expression #loc
+inspection.message.nested.assignment.expression=Nested assignment expression #loc
+inspection.message.nested.conditional.expression=Nested conditional expression #loc
+inspection.message.nested.ref.statement=Nested '#ref' statement #loc
+inspection.message.non.short.circuit.boolean.expression=Non short-circuit boolean expression #loc
+inspection.message.call.to.ref.outside.synchronized.context=Call to '#ref' outside of synchronized context #loc
+inspection.message.octal.integer.ref=Octal integer #ref #loc
+inspection.message.overly.complex.arithmetic.expression=Overly complex arithmetic expression #loc
+inspection.message.overly.complex.boolean.expression=Overly complex boolean expression #loc
+inspection.message.method.ref.overly.complex.cyclomatic.complexity=Method ''#ref'' is overly complex (cyclomatic complexity = {0}>{1})
+inspection.message.method.ref.too.long.statement.count=Method ''#ref'' is too long (statement count = {0}>{1})
+inspection.message.method.ref.overly.nested.nesting.depth=Method ''#ref'' is overly nested (nesting depth = {0}>{1})
+inspection.message.method.parameter.name.ref.too.short=Method parameter name '#ref' is too short
+inspection.message.method.parameter.name.ref.too.long=Method parameter name '#ref' is too long
+inspection.message.method.parameter.name.ref.doesnt.match.regex=Method parameter name ''#ref'' doesn''t match regex ''{0}'' #loc
+inspection.message.non.private.field.accessed.in.synchronized.context=Non-private field <code>#ref</code> accessed in synchronized context  #loc
+inspection.message.nested.assignment=Result of assignment expression used #loc
+inspection.message.result.increment.or.decrement.expression.used=Result of increment or decrement expression used #loc
+inspection.message.result.of.new.ref.is.ignored=Result of <code>new #ref{0}</code> is ignored #loc
+inspection.message.ref.statement.at.end.closure.can.be.made.implicit=#ref statement at end of a closure can be made implicit #loc
+inspection.message.silly.assignment=Silly assignment #loc
+inspection.message.static.method.name.ref.too.short=Static method name '#ref' is too short
+inspection.message.static.method.name.ref.too.long=Static method name '#ref' is too long
+inspection.message.static.method.name.ref.doesnt.match.regex=Static method name ''#ref'' doesn''t match regex ''{0}'' #loc
+inspection.message.static.variable.name.ref.too.short=Static variable name '#ref' is too short
+inspection.message.static.variable.name.ref.too.long=Static variable name '#ref' is too long
+inspection.message.static.variable.name.ref.doesnt.match.regex=Static variable name ''#ref'' doesn''t match regex ''{0}'' #loc
+inspection.message.property.0.is.final=Property ''{0}'' is final #loc
+inspection.message.ref.statement.with.no.default.branch=#ref statement with no default branch#loc
+inspection.message.synchronization.on.non.final.field.ref=Synchronization on non-final field '#ref' #loc
+inspection.message.synchronization.on.ref=Synchronization on '#ref' #loc
+inspection.message.synchronization.on.variable.ref.which.was.initialized.with.literal=Synchronization on variable '#ref', which was initialized with a literal #loc
+inspection.message.synchronized.method.ref=Synchronized method '#ref' #loc
+inspection.message.call.to.system.ref=Call to 'System.#ref' #loc
+inspection.message.call.to.thread.ref=Call to 'Thread.#ref' #loc
+inspection.message.0.can.be.simplified.to.1=''{0}'' can be simplified to ''{1}'' #loc
+inspection.message.property.0.is.ignored.by.map.constructor=Property ''{0}'' is ignored by @MapConstructor #loc
+inspection.message.unconditional.call.to.ref=Unconditional call to <code>#ref()</code> #loc
+inspection.message.ref.is.unnecessary.as.last.statement.in.loop=#ref is unnecessary as the last statement in a loop #loc
+inspection.message.ref.is.unnecessary.as.last.statement.in.method.with.no.return.value=#ref is unnecessary as the last statement in a method with no return value #loc
+inspection.message.unreachable.statement=Unreachable statement #loc
+inspection.message.unsynchronized.method.ref.overrides.synchronized.method=Unsynchronized method '#ref' overrides a synchronized method #loc
+inspection.message.cannot.determine.type.ref=Cannot determine type of '#ref'
+inspection.message.call.to.ref.outside.of.loop=Call to '#ref' outside of loop #loc
+inspection.message.call.to.ref.outside.of.synchronized.context=Call to '#ref' outside of synchronized context #loc
+inspection.message.ref.loop.spins.on.field=<code>#ref</code> loop spins on field #loc
+inspection.message.package.name.mismatch=Package name mismatch
+inspection.message.dsl.descriptor.file.has.been.changed.and.isnt.currently.executed=DSL descriptor file has been changed and isn't currently executed.
+inspection.message.dsl.descriptor.file.has.been.disabled.due.to.processing.error=DSL descriptor file has been disabled due to a processing error.
+inspection.message.traits.0.contain.clashing.methods.with.signature.1=Traits {0} contain clashing methods with signature {1}
+inspection.message.unused.catch.parameter.ref=Unused catch parameter '#ref' #loc
+inspection.message.package.name.mismatch.actual.0.expected.1=Package name mismatch. Actual: ''{0}'', expected: ''{1}''
+inspection.message.property.not.indexable.type.must.be.array.or.list.but.found.0=Property is not indexable. Type must be array or list but found {0}
+inspection.message.type.argument.0.can.not.be.1=Type of argument ''{0}'' can not be ''{1}''
+text.class.0.is.unused=Class {0} is unused
+text.constructor.0.is.unused=Constructor {0} is unused
+text.method.0.is.unused=Method {0} is unused
+text.property.0.is.unused=Property {0} is unused
+text.parameter.0.is.unused=Parameter {0} is unused
 ### Intention groups ###
 intention.category.groovy=Groovy
 intention.category.conversions=Groovy/Expression conversions
@@ -570,4 +664,332 @@ settings.inlay.parameter.types=Parameter types
 settings.inlay.inferred.parameter.types=Inferred parameter types
 settings.inlay.type.parameter.list=Type parameter list
 settings.inlay.show.type.hints.for=Show type hints for:
-checkbox.delegate.via.overloading.method=Delegate via overloading method
+intention.name.replace.with.in=Replace ':' with 'in'
+intention.name.activate.back=Activate back
+intention.name.cast.to.0=Cast to {0}
+intention.name.replace.eq.with.0.eq=Replace ''='' with ''{0}=''
+intention.name.cast.operand.to.0=Cast operand to {0}
+intention.family.name.create.field=Create field
+intention.family.name.add.required.attributes.to.map.constructor=Add required attributes to @MapConstructor
+action.remove.dynamic.member.text=Remove
+action.remove.dynamic.member.description=Remove dynamic member
+action.collapse.all.text=Collapse All
+action.collapse.all.description=Collapse all
+action.expand.all.text=Expand All
+action.expand.all.description=Expand all
+dynamic.members.column.name.element=Dynamic Element
+dynamic.members.column.name.type=Type
+command.name.add.dynamic.member=Add Dynamic Member
+popup.content.navigation.to.overriding.classes.unavailable=Navigation to overriding classes is not possible during index update
+overriding.methods.of.0=Overriding Methods of ''{0}''
+expression.type.no.expression=No expression found
+expression.type.unknown=<unknown>
+add.class.to.extends.family.name=Implement
+intention.family.name.rename=Rename
+generated.stub.message=This stub is generated for Groovy class to make Groovy-Java cross-compilation possible
+generated.stub.navigate.link.label=Go to the Groovy class
+generated.stub.exclude.link.label=Exclude from stub generation
+module.with.groovy=Simple module with attached Groovy library
+action.build.restart.text=Build and Restart
+action.build.module.restart.description=Build module ''{0}'' and restart
+gdsl.investigate.link.label=Click here to investigate
+gdsl.error.notification.title=DSL script execution error
+dialog.message.gant.not.configured=Gant is not configured
+investigate.gdsl.error.intention.name=View details
+investigate.gdsl.error.family.name=Investigate DSL descriptor processing error
+grab.intention.name=Grab the artifacts
+grab.family.name=Grab
+grab.progress.title=Processing @Grab annotations
+grab.result.title={0} Grape dependency {0, choice, 0#jars|1#jar|2#jars} added
+grab.jar.count=<b>{0}</b>: {1} {1, choice, 0#jars|1#jar|2#jars}
+grab.error.ivy.missing.title=Ivy Missing
+grab.error.ivy.missing.message=Sorry, but IDEA cannot @Grab the dependencies without Ivy. \
+  Please add Ivy to your module dependencies and re-run the action.
+grab.error.0.title=Can''t run @Grab: {0}
+this.super.completion.advertisement=Pressing {0} twice without a class qualifier would show all accessible static methods
+compact.empty.middle.packages.action.text=Compact Empty Middle Packages
+compact.empty.middle.packages.action.description=Show/Compact Empty Middle Packages
+scroll.from.source.action.text=Scroll from Source
+scroll.from.source.action.description=Select the file open in the active editor
+optimize.imports.progress.title=Optimizing Imports in Groovy files...
+mvc.framework.0.library.label={0} library:
+mvc.framework.0.not.configured.for.module.1={0} SDK is not configured for module ''{1}''
+mvc.framework.0.configure.sdk.label=Configure {0} SDK
+mvc.framework.0.module.1.has.no.sdk=Module ''{1}'' has no {0} SDK.
+mvc.framework.0.module.builder.description={0} modules are used for creating {0} applications
+mvc.framework.0.sdk.not.found.title={0} SDK not found
+mvc.framework.0.change.sdk.version.title=Change {0} SDK Version
+mvc.framework.0.run.target.action.text=Run {0} Target
+mvc.framework.0.run.target.action.description=Run arbitrary {0} target
+mvc.framework.0.run.target.dialog.title=Run {0} Target
+mvc.framework.0.run.target.interactive=&Start {0} Console in Interactive Mode
+mvc.run.target.options.border.title=Options
+mvc.run.configuration.command.line.label=&Command line:
+mvc.run.configuration.no.module=Module is not specified
+mvc.run.configuration.disposed.module=Module is disposed
+mvc.console.cannot.start.process.error.title=Cannot Start Process
+mvc.console.executing.progress=Executing...
+mvc.console.0.executing.progress={0}: Executing...
+mvc.console.execution.error.title=Failed to Run Command: {0}
+mvc.console.kill.process.action.text=Kill Process
+mvc.console.kill.process.action.description=Kill process
+mvc.run.configuration.add.classpath.label=Add --classpath
+mvc.run.configuration.add.classpath.0.label=Add --classpath: {0}
+mvc.no.jdk.found.error.title=No JDK Found
+mvc.no.jdk.found.error.message=Cannot generate {0} project structure because JDK is not specified for module ''{1}''.\n\
+  Do you want to specify JDK?
+replace.all.occurrences.and.remove.variable.0=Replace all occurrences and remove variable ''{0}''
+introduce.variable.declare.final.label=Declare &final
+introduce.variable.replace.all.occurrences=Replace &all occurrences
+introduce.variable.replace.all.0.occurrences=Replace &all occurrences ({0} occurrences)
+introduce.parameter.delegate.via.overload=De&legate via overloading method
+introduce.parameter.replace.fields.border.title=Replace Fields Used in Expression with Their Getters
+introduce.parameter.do.not.replace.option.label=Do n&ot replace
+introduce.parameter.replace.inaccessible.fields.option.label=Replace fields &inaccessible in usage context
+introduce.parameter.replace.all.fields.option.label=&Replace all fields
+introduce.variable.type.label=&Type:
+introduce.variable.name.label=&Name:
+introduce.parameter.explicit.return.statement.option.label=Use e&xplicit return statement
+introduce.parameter.delegating.unavailable.tooltip=Delegating is not allowed in closure context
+introduce.variable.change.type.advertisement=Press {0} to change type
+framework.0.home.label={0} home:
+select.framework.0.home.title=Select {0} Home
+framework.0.sdk.chooser.title={0} SDK
+framework.0.sdk.chooser.description=Choose a directory containing {0} distribution
+framework.0.sdk.chooser.error.message=Looks like {0} distribution in specified path is broken. Cannot determine version.
+framework.0.sdk.chooser.error.title=Failed to Create Library
+framework.0.library={0} library
+framework.0.library.version.1={0} library of version {1}
+framework.gant=Gant
+script.runner.display.name=Groovy
+script.runner.description=Groovy class or script
+script.runner.chooser.title=Script Path
+script.runner.chooser.description=Specify path to script
+script.runner.module.not.specified.message=Module is not specified
+script.runner.no.groovy.for.module=Groovy is not configured for module ''{0}''
+script.runner.cant.find.script=Cannot find script ''{0}''
+script.runner.unknown.script.type=Unknown script type ''{0}''
+script.runner.file.is.not.groovy.file=Script file is not Groovy file
+script.runner.class.does.not.exist=Class does not exist
+script.runner.class.cannot.be.executed=Class cannot be executed
+shell.cannot.run.title=Cannot Run
+dialog.title.refactoring.unavailable.in.current.scope=Refactoring Unavailable in Current Scope
+parameter.list.owner.chooser.title=Introduce Parameter to
+extract.closure.command.name=Extract Closure
+introduce.constant.title=Introduce Constant
+undefined.library.version=undefined
+method.parameters.count.max.parameters.option=Maximum number of parameters:
+method.returns.max.returns.option=Return point limit:
+overly.complex.method.complexity.limit.option=Method complexity limit:
+overly.long.method.statements.limit.option=Maximum statements per method:
+overly.nested.method.nesting.limit.option=Maximum nesting depth:
+add.method.family=Add method
+change.base.method.label=Change base method
+change.usages.label=Change usages
+convert.parameter.to.map.entry.title=Convert Parameter to Map Entry
+live.template.context.declaration=Declaration
+live.template.context.expression=Expression
+live.template.context.statement=Statement
+find.usages.method.0.of.class.1={0} of {1}
+change.signature.type.column=Type
+change.signature.default.initializer.column=Default Initializer
+static.import.method.fix=Static import method...
+static.import.method.0.fix=Static import method ''{0}''
+groovy.consoles.type=Groovy Consoles
+getter.kind.gdk.method.0=GDK method {0}
+getter.kind.method.0=Method {0}
+getter.kind.getter.0=Getter {0}
+parameter.hint.number.of.arguments={0, choice, 0#|1#{0} argument|2#{0} arguments}
+surround.with.for=for
+surround.with.if=if
+surround.with.if.else=if / else
+surround.with.if.expr=if (expr)
+surround.with.if.else.expr=if (expr) / else
+surround.with.parentheses=(expr)
+surround.with.closure={ -> ... }.call()
+surround.with.try=try
+surround.with.try.catch=try / catch
+surround.with.try.finally=try / finally
+surround.with.try.catch.finally=try / catch / finally
+surround.with.while=while
+surround.with.while.expr=while (expr)
+surround.with.cast=((Type) expr)
+surround.with.with=with () {...}
+surround.with.with.expr=with (expr)
+surround.with.shouldFail=shouldFail () {...}
+code.style.group.list.map.literals=List and map literals
+code.style.option.align.when.multiple=Align when multiple
+code.style.option.align.multiline.named.arguments=Align multiline named arguments
+code.style.option.use.flying.geese.braces=Use flying geese braces
+code.style.option.import.annotations=Import annotations
+code.style.option.simple.lambdas.closures.in.one.line=Simple lambdas/closures in one line
+code.style.option.relational.operators=Relational operators (<, >, <=, >=, <=>)
+code.style.option.unary.operators=Unary operators (!, -, +, ++, --, *)
+code.style.option.in.named.argument.before.colon=In named argument before ':'
+code.style.option.in.named.argument.after.colon=In named argument after ':'
+code.style.option.list.maps.literals=List and maps literals
+code.style.option.closure.left.brace.in.method.calls=Closure left brace in method calls
+code.style.option.gstring.injection.braces=GString injection braces
+code.style.option.tuple.assignment.expression=Tuple assignment expression
+code.style.option.regexp.expression=Regexp expression (==~, =~)
+code.style.option.before.assert.separator=Before 'assert' separator
+code.style.option.after.assert.separator=After 'assert' separator
+# @Singleton
+singleton.constructor.found=@Singleton class should not have constructors
+singleton.constructor.remove=Remove constructor
+singleton.constructor.makeNonStrict=Make @Singleton non-strict
+########################################################################################################################
+# Unused imports
+########################################################################################################################
+unused.import=Unused import
+optimize.imports=Optimize imports
+optimize.all.imports=Optimize unused import statements
+########################################################################################################################
+# Create class fix
+########################################################################################################################
+dialog.create.class.package.chooser.title=Choose destination package
+create.directory.command=Create Directory
+destination.package=Destination package:
+second.unsafe.call=Second unsafe call
+call.can.throw.npe=Calling chain can throw NullPointerException
+unused.default.parameter.message=Default parameter is not used
+unused.default.parameter.fix=Remove initializer
+unused.assignment.tooltip=Assignment is not used
+unused.variable=Variable is not used
+variable.can.be.final.tooltip=Variable ''{0}'' can be final
+parameter.can.be.final.tooltip=Parameter ''{0}'' can be final
+equals.between.inconvertible.types.tooltip=<code>{0}</code> between objects of inconvertible types ''{1}'' and ''{2}''
+replace.with.operator.message=''{0}'' can be replaced with operator
+replace.with.operator.fix=Replace ''{0}'' with operator
+replace.with.operator.double.negation.option=Use double negation (i.e. !!)
+replace.with.operator.compareTo.equality.option=Replace 'compareTo' equality to equals (i.e. ==)
+replace.with.operator.parentheses=Do not suggest replace with operator if it entails additional parentheses
+replace.with.method.message=Can be replaced with ''{0}'' method call
+replace.with.method.fix=Replace with ''{0}'' method
+unassigned.access.tooltip=Variable ''{0}'' might not be assigned
+no.return.message=Not all execution paths return a value
+unresolved.type.status=Type ''{0}'' is not resolved
+no.type.specified=No type specified
+dynamic.element=Dynamic Element
+pointless.boolean.problem.descriptor=#ref can be simplified to ''{0}'' #loc
+pointless.arithmetic.error.message=#ref can be replaced with ''{0}'' #loc
+pointless.boolean.quickfix=Simplify
+Cannot.perform.undo.operation=Cannot perform undo operation
+Undo.disable=Undo Disabled
+type.doesnt.contain.method=Type ''{0}'' cannot be iterated in range because it does not have method ''{1}''
+type.doesnt.implement.comparable=Type ''{0}'' doesn''t implement Comparable
+add.method=Add method ''{0}()'' to class ''{1}''
+implement.class=Implement {0}
+fix.class=Fix class {0}
+rtype.cannot.contain.ltype=''{1}'' cannot contain ''{0}''
+new.instance.of.singleton=New instance of class annotated with @groovy.lang.Singleton
+replace.new.expression.with.instance.access=Replace with instance access
+getter.0.clashes.with.getter.1=Clash occurred: ''{0}'' with ''{1}''
+unused.0=Unused {0}
+remove.0=Remove {0}
+replace.postfix.0.with.prefix.0=Replace postfix {0} with prefix {0}
+replace.0.with.1=Replace {0} with binary {1}
+local.var.0.is.reassigned=Local variable ''{0}'' is reassigned
+anonymous.class=anonymous class
+closure=closure
+other.scope=Other scope
+method.may.be.static=Method may be static
+method.may.be.static.option.ignore.trait.methods=Ignore trait methods
+method.may.be.static.only.private.or.final.option=Only check final or private methods
+method.may.be.static.ignore.empty.method.option=Ignore empty methods
+ignore.boolean.expressions=Ignore unassigned variables in boolean checks
+highlight.if.groovy.object.methods.overridden=Highlight references from class overriding invokeMethod(), getProperty(), or setProperty()
+highlight.if.missing.methods.declared=Highlight references from class declaring missingMethod() or missingProperty()
+gr.package.inspection.check.scripts=Check scripts
+java.style.property.access=Java-style accessor invocation
+type.customizer.is.not.marked.as.a.resource.file=Type customizer script is not marked as compiler resources
+add.to.resources=Add to resources
+add.type.customizer.to.resources=Add type customizer script to resources
+target.0.does.not.exist=Target ''{0}'' does not exist
+target.annotation.is.unused=@Target is unused
+change.lvalue.type=Change variable ''{0}'' type to ''{1}''
+replace.qualified.name.with.import=Replace qualified name with import
+comments.count.as.content=Comments count as content
+ignore.when.catch.parameter.is.named.ignore.or.ignored=Ignore when catch parameter is named ignore or ignored
+no.applicable.signature.found=No applicable signature found
+expected.type.0=Expected ''{0}'', found ''{1}''
+declare.explicit.implementations.of.trait=Declare explicit implementations of trait
+unnecessary.modifier.description=Modifier ''{0}'' is not necessary
+unnecessary.modifier.remove=Remove unnecessary ''{0}''
+unnecessary.def.explicitly.typed.only=Only report in explicitly typed declarations
+unnecessary.alias.fix=Remove unnecessary alias
+unnecessary.alias.description=Alias is unnecessary
+unnecessary.semicolon.description=Semicolon is unnecessary
+unnecessary.semicolon.fix=Remove semicolon
+dynamic.dialog.class.label=&Class:
+dynamic.dialog.type.label=&Type:
+dynamic.dialog.static.checkbox=&Static
+find.method.ro.method.usages=Searching for Usages of Enclosing Method in Project Files
+find.method.ro.closure.usages=Searching for Usages of Enclosing Closure in Project Files
+conversion.method.not.allowed.in.non.groovy.files=Refactoring is not allowed for methods which have occurrences in non-Groovy files:
+conversion.closure.not.allowed.in.non.groovy.files=Refactoring is not allowed for closures which have occurrences in non-Groovy files:
+wrong.method.first.parameter.type=Method ''{0}'' is used with named arguments, but its first parameter ''{1}'' does not conform to Map type.
+wrong.closure.first.parameter.type=Closure ''{0}'' is used with named arguments, but its first parameter ''{1}'' does not conform to Map type.
+map.parameter.dialog.create.new.checkbox=&Create new parameter for named arguments
+map.parameter.dialog.explicit.type.checkbox=Specify type explicitly
+convert.cannot.itself=Refactoring is not available for map parameter itself
+map.param.name=Map parameter &name:
+convert.param.to.map.entry=Convert Parameter to Map Entry
+closure.used.as.variable=Closure is passed as argument. Refactoring can break semantic.
+do.you.want.to.change.method.return.type=Do you want to change return type of ''{0}'' method
+do.you.want.to.change.variable.type=Do you want to change type of ''{0}''
+closure.is.accessed.outside.of.groovy=Field <b>{0}</b> is accessed outside of Groovy
+write.access.to.closure.variable=Write access to field <b>{0}</b>
+field.is.used.in.argument.label=Field <b>{0}</b> is used in argument label
+method.with.signature.already.exists=Method with signature {0} already exists
+field.already.exists=Field <b>{0}</b> already exists
+method.is.used.outside.of.groovy=Method is used outside of Groovy
+do.you.want.to.change.type.of.parameter.in.method=Do you want to change type of parameter ''{0}'' in method ''{1}''
+file.exists=File ''{0}'' already exists in directory ''{1}''
+move.to.correct.dir.family.name=Move File to Correct Package
+move.to.correct.dir=Move to ''{0}''
+add.return.type=Add return type
+add.return.type.to.method.declaration=Add return type to method declaration
+infer.method.parameters.types=Add explicit types to parameters
+infer.method.parameters.types.for.method.declaration=Add explicit types for all parameters in method declaration
+replace.with.wrapper=Replace with {0}
+replace.primitive.type.with.wrapper=Replace primitive type with wrapper
+remove.parameter.0=Remove parameter ''{0}''
+remove.unused.parameter=Remove unused parameter
+remove.exception=Remove exception
+remove.catch.block=Remove catch block
+try.catch.fix=Try-catch fix
+cannot.create.class=Cannot create class
+rename.file.to.0=Rename file to ''{0}''
+java.style.properties.invocation.intention.family.name=Change Java-style accessor invocation to Groovy-style property reference
+java.style.properties.invocation.intention.name=Change to Groovy-style property reference
+generate.equals.and.hashcode.already.defined.warning.anonymous=equals() and hashCode() already defined
+generate.equals.and.hashcode.already.defined.warning=equals() and hashCode() already defined
+generate.equals.and.hashcode.already.defined.title=equals() and hashCode() Already Defined
+generate.equals.compare.nested.arrays.comment= // Compare nested arrays - values of {0} here
+generate.equals.compare.arrays.comment= // Probably incorrect - comparing Object[] arrays with Arrays.equals
+generate.property.missing.already.defined.warning=propertyMissing() already defined
+generate.property.missing.already.defined.title=propertyMissing() Already Defined
+generate.method.missing.already.defined.warning=methodMissing() already defined
+generate.method.missing.already.defined.title=methodMissing() Already Defined
+action.Gant.NewScript.text=Gant Script
+action.Gant.NewScript.description=Create new Gant script
+action.Groovy.Console.text=Groovy Console
+action.Groovy.Console.description=Launch Groovy console
+module.name.0.and.groovy.version.1={0} ({1})
+groovy.version.0=Groovy {0}
+groovy.version.bundled.0=Bundled Groovy {0}
+configurable.greclipse.border.title=Groovy-Eclipse options
+configurable.greclipse.path.label=Path to groovy-eclipse-batch jar:
+configurable.greclipse.path.chooser.description=Select path to groovy-eclipse-batch-*.jar with version matching your Groovy distribution
+configurable.greclipse.command.line.params.label=Additional command line parameters:
+configurable.greclipse.debug.checkbox=Generate debug info
+configurable.hotswap.checkbox=Enable hot-swap agent for Groovy code
+configurable.hotswap.checkbox.description=May cause serialization issues in the debugged application
+run.configuration.script.path.label=Script path:
+run.configuration.vm.options.label=&VM options:
+run.configuration.module.chooser.label=&Module:
+run.configuration.module.classpath.checkbox=Add module &classpath to the runner
+pull.up.wont.be.accessible.from={0} won''t be accessible from {1}
+pull.up.wont.be.accessible.from.the.subclass={0} uses {1} which won''t be accessible from the subclass.
+pull.up.abstract.wont.be.accessible.from=Can''t make {0} abstract as it won''t be accessible from the subclass.