262f1240ee54caaf6eb07596458240c43fae3a43
[idea/community.git] / python / src / META-INF / python-core.xml
1 <idea-plugin version="2">
2   <!-- Components and extensions declared in this file work both in PyCharm and Python plugin.
3        Both Community and Professional editions. -->
4
5   <resource-bundle>com.jetbrains.python.PyBundle</resource-bundle>
6
7   <module value="com.intellij.modules.python"/>
8
9   <extensions defaultExtensionNs="com.intellij">
10     <library.type implementation="com.jetbrains.python.library.PythonLibraryType"/>
11     <renameHandler implementation="com.jetbrains.python.magicLiteral.PyMagicLiteralRenameHandler"/>
12     <nameSuggestionProvider implementation="com.jetbrains.python.refactoring.PyNameSuggestionProvider"/>
13     <methodNavigationOffsetProvider implementation="com.jetbrains.python.codeInsight.PyMethodNavigationOffsetProvider"/>
14     <copyPastePreProcessor implementation="com.jetbrains.python.editor.PythonCopyPasteProcessor"/>
15     <errorHandler implementation="com.intellij.diagnostic.ITNReporter"/>
16     <fileTypeFactory implementation="com.jetbrains.python.PythonFileTypeFactory"/>
17     <fileTypeDetector implementation="com.jetbrains.python.PyFileTypeDetector"/>
18     <editorHighlighterProvider filetype="Python" implementationClass="com.jetbrains.python.PyEditorHighlighterProvider"/>
19     <lang.syntaxHighlighterFactory key="Python" implementationClass="com.jetbrains.python.highlighting.PySyntaxHighlighterFactory"/>
20     <lang.braceMatcher language="Python" implementationClass="com.jetbrains.python.PyBraceMatcher"/>
21     <lang.parserDefinition language="Python" implementationClass="com.jetbrains.python.PythonParserDefinition"/>
22     <lang.commenter language="Python" implementationClass="com.jetbrains.python.PythonCommenter"/>
23     <lang.foldingBuilder language="Python" implementationClass="com.jetbrains.python.PythonFoldingBuilder"/>
24     <lang.findUsagesProvider language="Python" implementationClass="com.jetbrains.python.findUsages.PythonFindUsagesProvider"/>
25     <lang.formatter language="Python" implementationClass="com.jetbrains.python.formatter.PythonFormattingModelBuilder"/>
26     <preFormatProcessor implementation="com.jetbrains.python.formatter.PyPreFormatProcessor"/>
27     <lang.whiteSpaceFormattingStrategy language="Python"
28                                        implementationClass="com.jetbrains.python.formatter.PyWhiteSpaceFormattingStrategy"/>
29     <lang.lineWrapStrategy language="Python" implementationClass="com.jetbrains.python.formatter.PyLineWrapPositionStrategy"/>
30     <lang.namesValidator language="Python" implementationClass="com.jetbrains.python.refactoring.rename.PythonNamesValidator"/>
31     <lang.surroundDescriptor language="Python"
32                              implementationClass="com.jetbrains.python.refactoring.surround.PyStatementSurroundDescriptor"/>
33     <lang.surroundDescriptor language="Python"
34                              implementationClass="com.jetbrains.python.refactoring.surround.PyExpressionSurroundDescriptor"/>
35     <lang.unwrapDescriptor language="Python" implementationClass="com.jetbrains.python.refactoring.unwrap.PyUnwrapDescriptor"/>
36     <lang.psiStructureViewFactory language="Python" implementationClass="com.jetbrains.python.structureView.PyStructureViewFactory"/>
37     <lang.documentationProvider language="Python" implementationClass="com.jetbrains.python.documentation.PythonDocumentationProvider"/>
38     <lang.documentationProvider language="Python" implementationClass="com.jetbrains.python.console.PydevDocumentationProvider"/>
39     <lang.emacs language="Python" implementationClass="com.jetbrains.python.editor.PyEmacsHandler"/>
40     <annotator language="Python" implementationClass="com.jetbrains.python.validation.PyAnnotatingVisitor"/>
41     <annotator language="Python" implementationClass="com.jetbrains.python.validation.PyDumbAwareAnnotator"/>
42     <quoteHandler fileType="Python" className="com.jetbrains.python.editor.PythonQuoteHandler"/>
43     <enterHandlerDelegate implementation="com.jetbrains.python.editor.PythonEnterHandler"/>
44     <enterHandlerDelegate implementation="com.jetbrains.python.editor.PyEnterAtIndentHandler" order="first"/>
45     <enterHandlerDelegate implementation="com.jetbrains.python.editor.PyEnterBetweenBracketsHandler"/>
46     <editor.backspaceModeOverride language="Python" implementationClass="com.intellij.codeInsight.editorActions.SmartBackspaceDisabler"/>
47     <sdkType implementation="com.jetbrains.python.sdk.PythonSdkType"/>
48     <gotoClassContributor implementation="com.jetbrains.python.PyGotoClassContributor"/>
49     <gotoSymbolContributor implementation="com.jetbrains.python.PyGotoSymbolContributor"/>
50     <codeInsight.parameterInfo language="Python" implementationClass="com.jetbrains.python.PyParameterInfoHandler"/>
51     <codeInsight.fillParagraph language="Python" implementationClass="com.jetbrains.python.actions.PyFillParagraphHandler"/>
52     <colorSettingsPage implementation="com.jetbrains.python.highlighting.PythonColorsPage"/>
53     <extendWordSelectionHandler implementation="com.jetbrains.python.editor.selectWord.PyWordSelectionHandler"/>
54     <extendWordSelectionHandler implementation="com.jetbrains.python.editor.selectWord.PyLiteralSelectionHandler"/>
55     <extendWordSelectionHandler implementation="com.jetbrains.python.editor.selectWord.PyStatementSelectionHandler"/>
56     <extendWordSelectionHandler implementation="com.jetbrains.python.editor.selectWord.PyListSelectionHandler"/>
57     <extendWordSelectionHandler implementation="com.jetbrains.python.editor.selectWord.PyCommaSelectionHandler"/>
58     <basicWordSelectionFilter implementation="com.jetbrains.python.editor.selectWord.PyBasicWordSelectionFilter"/>
59     <completion.contributor language="Python"
60                             implementationClass="com.jetbrains.python.codeInsight.completion.PyKeywordCompletionContributor"/>
61     <completion.contributor language="Python"
62                             implementationClass="com.jetbrains.python.codeInsight.completion.PySpecialMethodNamesCompletionContributor"/>
63     <completion.contributor language="Python"
64                             implementationClass="com.jetbrains.python.codeInsight.completion.PySuperMethodCompletionContributor"/>
65     <completion.contributor language="Python"
66                             implementationClass="com.jetbrains.python.codeInsight.completion.PySuperClassAttributesCompletionContributor"/>
67     <completion.contributor language="Python"
68                             implementationClass="com.jetbrains.python.codeInsight.completion.PyDictKeyNamesCompletionContributor"/>
69     <completion.contributor language="Python"
70                             implementationClass="com.jetbrains.python.codeInsight.completion.PyParameterCompletionContributor"/>
71     <completion.contributor language="Python"
72                             implementationClass="com.jetbrains.python.codeInsight.completion.PyDocstringCompletionContributor"/>
73     <completion.contributor language="Python"
74                             implementationClass="com.jetbrains.python.codeInsight.completion.PyMetaClassCompletionContributor"/>
75     <completion.contributor language="Python"
76                             implementationClass="com.jetbrains.python.codeInsight.completion.PyStructuralTypeAttributesCompletionContributor"/>
77
78     <lang.tokenSeparatorGenerator language="Python" implementationClass="com.jetbrains.python.PyTokenSeparatorGenerator"/>
79     <lang.elementManipulator forClass="com.jetbrains.python.psi.PyReferenceExpression"
80                              implementationClass="com.jetbrains.python.psi.impl.PyReferenceExpressionManipulator"/>
81
82     <projectService serviceInterface="com.jetbrains.python.psi.PyElementGenerator"
83                     serviceImplementation="com.jetbrains.python.psi.impl.PyElementGeneratorImpl"/>
84
85     <applicationService serviceInterface="com.jetbrains.python.packaging.PyPackageService"
86                         serviceImplementation="com.jetbrains.python.packaging.PyPackageService"/>
87     <applicationService serviceInterface="com.jetbrains.python.module.PyModuleService"
88                         serviceImplementation="com.jetbrains.python.module.PyModuleServiceImpl"/>
89
90     <typedHandler implementation="com.jetbrains.python.codeInsight.PyKeywordTypedHandler" id="pyCommaAfterKwd"/>
91     <typedHandler implementation="com.jetbrains.python.codeInsight.PyMethodNameTypedHandler" id="pyMethodNameTypedHandler"/>
92     <typedHandler implementation="com.jetbrains.python.editor.PythonSpaceHandler"/>
93
94     <stubIndex implementation="com.jetbrains.python.psi.stubs.PyClassNameIndex"/>
95     <stubIndex implementation="com.jetbrains.python.psi.stubs.PyClassNameIndexInsensitive"/>
96     <stubIndex implementation="com.jetbrains.python.psi.stubs.PyFunctionNameIndex"/>
97     <stubIndex implementation="com.jetbrains.python.psi.stubs.PySuperClassIndex"/>
98     <stubIndex implementation="com.jetbrains.python.psi.stubs.PyVariableNameIndex"/>
99     <stubIndex implementation="com.jetbrains.python.psi.stubs.PyInstanceAttributeIndex"/>
100     <stubIndex implementation="com.jetbrains.python.psi.stubs.PyDecoratorStubIndex"/>
101     <stubIndex implementation="com.jetbrains.python.psi.stubs.PyClassAttributesIndex"/>
102     <fileBasedIndex implementation="com.jetbrains.python.psi.stubs.PyModuleNameIndex"/>
103     <fileBasedIndex implementation="com.jetbrains.python.psi.stubs.PySetuptoolsNamespaceIndex"/>
104
105     <declarationRangeHandler key="com.jetbrains.python.psi.PyClass"
106                              implementationClass="com.jetbrains.python.codeInsight.PyDeclarationRangeHandler"/>
107
108     <declarationRangeHandler key="com.jetbrains.python.psi.PyFunction"
109                              implementationClass="com.jetbrains.python.codeInsight.PyDeclarationRangeHandler"/>
110
111     <targetElementEvaluator language="Python" implementationClass="com.jetbrains.python.codeInsight.PyTargetElementEvaluator"/>
112
113     <moduleService serviceInterface="com.jetbrains.python.ReSTService"
114                    serviceImplementation="com.jetbrains.python.ReSTService"/>
115
116     <!-- Run/Debug -->
117     <applicationService serviceInterface="com.jetbrains.python.run.PyRunConfigurationFactory"
118                         serviceImplementation="com.jetbrains.python.run.PyRunConfigurationFactoryImpl"/>
119     <applicationService serviceInterface="com.jetbrains.python.run.PythonRunConfigurationExtensionsManager"
120                         serviceImplementation="com.jetbrains.python.run.PythonRunConfigurationExtensionsManager"/>
121     <configurationType implementation="com.jetbrains.python.run.PythonConfigurationType"/>
122     <programRunner implementation="com.jetbrains.python.run.PythonRunner" order="first"/>
123     <programRunner implementation="com.jetbrains.python.debugger.PyDebugRunner"/>
124     <runConfigurationProducer implementation="com.jetbrains.python.run.PythonRunConfigurationProducer"/>
125     <xdebugger.breakpointType implementation="com.jetbrains.python.debugger.PyLineBreakpointType"/>
126     <xdebugger.breakpointType implementation="com.jetbrains.python.debugger.PyExceptionBreakpointType"/>
127
128     <configurationType implementation="com.jetbrains.python.testing.PythonTestConfigurationType"/>
129
130     <runConfigurationProducer implementation="com.jetbrains.python.testing.unittest.PythonUnitTestConfigurationProducer"/>
131     <testSrcLocator implementation="com.jetbrains.python.testing.PythonUnitTestTestIdUrlProvider"/>
132     
133     <testSrcLocator implementation="com.jetbrains.python.testing.nosetest.PythonNoseTestUrlProvider"/>
134
135     <runConfigurationProducer implementation="com.jetbrains.python.testing.pytest.PyTestConfigurationProducer"/>
136     <runConfigurationProducer implementation="com.jetbrains.python.testing.doctest.PythonDocTestConfigurationProducer"/>
137     <runConfigurationProducer implementation="com.jetbrains.python.testing.nosetest.PythonNoseTestConfigurationProducer"/>
138     <runConfigurationProducer implementation="com.jetbrains.python.testing.attest.PythonAtTestConfigurationProducer"/>
139
140     <!-- <referenceImporter implementation="com.jetbrains.python.codeInsight.imports.PythonReferenceImporter"/> -->
141     <codeInsight.lineMarkerProvider language="Python" implementationClass="com.jetbrains.python.codeInsight.PyLineMarkerProvider"/>
142     <definitionsSearch implementation="com.jetbrains.python.psi.search.PyDefinitionsSearch"/>
143     <gotoTargetRendererProvider implementation="com.jetbrains.python.codeInsight.PyGotoTargetRendererProvider"/>
144
145     <typeHierarchyProvider language="Python" implementationClass="com.jetbrains.python.hierarchy.PyTypeHierachyProvider"/>
146     <callHierarchyProvider language="Python" implementationClass="com.jetbrains.python.hierarchy.call.PyCallHierarchyProvider"/>
147     <highlightUsagesHandlerFactory implementation="com.jetbrains.python.codeInsight.highlighting.PyHighlightExitPointsHandlerFactory"/>
148
149     <joinLinesHandler implementation="com.jetbrains.python.editor.PyJoinLinesHandler"/>
150
151     <intentionAction>
152       <className>com.jetbrains.python.codeInsight.intentions.PyConvertMethodToPropertyIntention</className>
153       <category>Python</category>
154     </intentionAction>
155
156     <intentionAction>
157       <className>com.jetbrains.python.codeInsight.intentions.ImportToImportFromIntention</className>
158       <category>Python</category>
159     </intentionAction>
160
161     <intentionAction>
162       <className>com.jetbrains.python.codeInsight.intentions.PyConvertStaticMethodToFunctionIntention</className>
163       <category>Python</category>
164     </intentionAction>
165
166     <intentionAction>
167       <className>com.jetbrains.python.codeInsight.intentions.SpecifyTypeInDocstringIntention</className>
168       <category>Python</category>
169     </intentionAction>
170
171     <intentionAction>
172       <className>com.jetbrains.python.codeInsight.intentions.SpecifyTypeInPy3AnnotationsIntention</className>
173       <category>Python</category>
174     </intentionAction>
175
176     <intentionAction>
177       <className>com.jetbrains.python.codeInsight.intentions.TypeAssertionIntention</className>
178       <category>Python</category>
179     </intentionAction>
180
181     <intentionAction>
182       <className>com.jetbrains.python.codeInsight.intentions.ImportFromToImportIntention</className>
183       <category>Python</category>
184     </intentionAction>
185
186     <intentionAction>
187       <className>com.jetbrains.python.codeInsight.intentions.ImportToggleAliasIntention</className>
188       <category>Python</category>
189     </intentionAction>
190
191     <intentionAction>
192       <className>com.jetbrains.python.codeInsight.intentions.PySplitIfIntention</className>
193       <category>Python</category>
194     </intentionAction>
195
196     <intentionAction>
197       <className>com.jetbrains.python.codeInsight.intentions.PyNegateComparisonIntention</className>
198       <category>Python</category>
199     </intentionAction>
200
201     <intentionAction>
202       <className>com.jetbrains.python.codeInsight.intentions.PyStringConcatenationToFormatIntention</className>
203       <category>Python</category>
204     </intentionAction>
205
206     <intentionAction>
207       <className>com.jetbrains.python.codeInsight.intentions.ConvertFormatOperatorToMethodIntention</className>
208       <category>Python</category>
209     </intentionAction>
210
211     <intentionAction>
212       <className>com.jetbrains.python.codeInsight.intentions.PyFlipComparisonIntention</className>
213       <category>Python</category>
214     </intentionAction>
215
216     <intentionAction>
217       <className>com.jetbrains.python.codeInsight.intentions.PyDemorganIntention</className>
218       <category>Python</category>
219     </intentionAction>
220
221     <intentionAction>
222       <className>com.jetbrains.python.codeInsight.intentions.ReplaceListComprehensionWithForIntention</className>
223       <category>Python</category>
224     </intentionAction>
225
226     <intentionAction>
227       <className>com.jetbrains.python.codeInsight.intentions.PyJoinIfIntention</className>
228       <category>Python</category>
229     </intentionAction>
230
231     <intentionAction>
232       <className>com.jetbrains.python.codeInsight.intentions.PyDictConstructorToLiteralFormIntention</className>
233       <category>Python</category>
234     </intentionAction>
235
236     <intentionAction>
237       <className>com.jetbrains.python.codeInsight.intentions.PyDictLiteralFormToConstructorIntention</className>
238       <category>Python</category>
239     </intentionAction>
240
241     <intentionAction>
242       <className>com.jetbrains.python.codeInsight.intentions.PyQuotedStringIntention</className>
243       <category>Python</category>
244     </intentionAction>
245
246     <intentionAction>
247       <className>com.jetbrains.python.codeInsight.intentions.PyConvertLambdaToFunctionIntention</className>
248       <category>Python</category>
249     </intentionAction>
250
251     <intentionAction>
252       <className>com.jetbrains.python.codeInsight.intentions.ConvertVariadicParamIntention</className>
253       <category>Python</category>
254     </intentionAction>
255
256     <intentionAction>
257       <className>com.jetbrains.python.codeInsight.intentions.PyConvertTripleQuotedStringIntention</className>
258       <category>Python</category>
259     </intentionAction>
260
261     <intentionAction>
262       <className>com.jetbrains.python.codeInsight.intentions.PyTransformConditionalExpressionIntention</className>
263       <category>Python</category>
264     </intentionAction>
265
266     <intentionAction>
267       <className>com.jetbrains.python.codeInsight.intentions.PyGenerateDocstringIntention</className>
268       <category>Python</category>
269     </intentionAction>
270
271     <intentionAction>
272       <className>com.jetbrains.python.codeInsight.intentions.PyYieldFromIntention</className>
273       <category>Python</category>
274     </intentionAction>
275
276     <testFinder implementation="com.jetbrains.python.codeInsight.testIntegration.PyTestFinder"/>
277     <testCreator language="Python" implementationClass="com.jetbrains.python.codeInsight.testIntegration.PyTestCreator"/>
278
279     <stubElementTypeHolder class="com.jetbrains.python.PyElementTypes"/>
280
281     <localInspection language="Python" shortName="PyArgumentListInspection" bundle="com.jetbrains.python.PyBundle" key="INSP.NAME.incorrect.call.arguments" groupKey="INSP.GROUP.python" enabledByDefault="true"  level="WARNING" implementationClass="com.jetbrains.python.inspections.PyArgumentListInspection"/>
282     <localInspection language="Python" shortName="PyRedeclarationInspection" bundle="com.jetbrains.python.PyBundle" key="INSP.NAME.redeclaration" groupKey="INSP.GROUP.python" enabledByDefault="true"  level="WARNING" implementationClass="com.jetbrains.python.inspections.PyRedeclarationInspection"/>
283     <localInspection language="Python" shortName="PyUnresolvedReferencesInspection" bundle="com.jetbrains.python.PyBundle" key="INSP.NAME.unresolved.refs" groupKey="INSP.GROUP.python" enabledByDefault="true"  level="WARNING" implementationClass="com.jetbrains.python.inspections.unresolvedReference.PyUnresolvedReferencesInspection"/>
284     <localInspection language="Python" shortName="PyInterpreterInspection" bundle="com.jetbrains.python.PyBundle" key="INSP.NAME.invalid.interpreter" groupKey="INSP.GROUP.python" enabledByDefault="true"  level="WARNING" implementationClass="com.jetbrains.python.inspections.PyInterpreterInspection"/>
285     <localInspection language="Python" shortName="PyMethodParametersInspection" bundle="com.jetbrains.python.PyBundle" key="INSP.NAME.problematic.first.parameter" groupKey="INSP.GROUP.python" enabledByDefault="true"  level="WEAK WARNING" implementationClass="com.jetbrains.python.inspections.PyMethodParametersInspection"/>
286     <localInspection language="Python" shortName="PyUnreachableCodeInspection" bundle="com.jetbrains.python.PyBundle" key="INSP.NAME.unreachable.code" groupKey="INSP.GROUP.python" enabledByDefault="true"  level="WARNING" implementationClass="com.jetbrains.python.inspections.PyUnreachableCodeInspection"/>
287     <localInspection language="Python" shortName="PyMethodFirstArgAssignmentInspection" bundle="com.jetbrains.python.PyBundle" key="INSP.NAME.first.arg.assign" groupKey="INSP.GROUP.python" enabledByDefault="true"  level="WARNING" implementationClass="com.jetbrains.python.inspections.PyMethodFirstArgAssignmentInspection"/>
288     <localInspection language="Python" shortName="PyStringFormatInspection" bundle="com.jetbrains.python.PyBundle" key="INSP.NAME.str.format" groupKey="INSP.GROUP.python" enabledByDefault="true"  level="WARNING" implementationClass="com.jetbrains.python.inspections.PyStringFormatInspection"/>
289     <localInspection language="Python" shortName="PyMethodOverridingInspection" bundle="com.jetbrains.python.PyBundle" key="INSP.NAME.method.over" groupKey="INSP.GROUP.python" enabledByDefault="true"  level="WARNING" implementationClass="com.jetbrains.python.inspections.PyMethodOverridingInspection"/>
290     <localInspection language="Python" shortName="PyInitNewSignatureInspection" bundle="com.jetbrains.python.PyBundle" key="INSP.NAME.new.init.signature" groupKey="INSP.GROUP.python" enabledByDefault="true"  level="WARNING" implementationClass="com.jetbrains.python.inspections.PyInitNewSignatureInspection"/>
291     <localInspection language="Python" shortName="PyTrailingSemicolonInspection" bundle="com.jetbrains.python.PyBundle" key="INSP.NAME.trailing.semicolon" groupKey="INSP.GROUP.python" enabledByDefault="true"  level="WARNING" implementationClass="com.jetbrains.python.inspections.PyTrailingSemicolonInspection"/>
292     <localInspection language="Python" shortName="PyReturnFromInitInspection" bundle="com.jetbrains.python.PyBundle" key="INSP.NAME.init.return" groupKey="INSP.GROUP.python" enabledByDefault="true"  level="WARNING" implementationClass="com.jetbrains.python.inspections.PyReturnFromInitInspection"/>
293     <localInspection language="Python" shortName="PyUnusedLocalInspection" bundle="com.jetbrains.python.PyBundle" key="INSP.NAME.unused" groupKey="INSP.GROUP.python" enabledByDefault="true"  level="WEAK WARNING" implementationClass="com.jetbrains.python.inspections.PyUnusedLocalInspection"/>
294     <localInspection language="Python" shortName="PyDictCreationInspection" bundle="com.jetbrains.python.PyBundle" key="INSP.NAME.dict.creation" groupKey="INSP.GROUP.python" enabledByDefault="true"  level="WEAK WARNING" implementationClass="com.jetbrains.python.inspections.PyDictCreationInspection"/>
295     <localInspection language="Python" shortName="PyDictDuplicateKeysInspection" bundle="com.jetbrains.python.PyBundle" key="INSP.NAME.duplicate.keys" groupKey="INSP.GROUP.python" enabledByDefault="true"  level="WARNING" implementationClass="com.jetbrains.python.inspections.PyDictDuplicateKeysInspection"/>
296     <localInspection language="Python" shortName="PyExceptClausesOrderInspection" bundle="com.jetbrains.python.PyBundle" key="INSP.NAME.bad.except.clauses.order" groupKey="INSP.GROUP.python" enabledByDefault="true"  level="WARNING" implementationClass="com.jetbrains.python.inspections.PyExceptClausesOrderInspection"/>
297     <localInspection language="Python" shortName="PyTupleAssignmentBalanceInspection" bundle="com.jetbrains.python.PyBundle" key="INSP.NAME.incorrect.assignment" groupKey="INSP.GROUP.python" enabledByDefault="true"  level="WARNING" implementationClass="com.jetbrains.python.inspections.PyTupleAssignmentBalanceInspection"/>
298     <localInspection language="Python" shortName="PyClassicStyleClassInspection" bundle="com.jetbrains.python.PyBundle" key="INSP.NAME.classic.class.usage" groupKey="INSP.GROUP.python" enabledByDefault="false"  level="WARNING" implementationClass="com.jetbrains.python.inspections.PyClassicStyleClassInspection"/>
299     <localInspection language="Python" shortName="PyExceptionInheritInspection" bundle="com.jetbrains.python.PyBundle" key="INSP.NAME.exception.not.inherit" groupKey="INSP.GROUP.python" enabledByDefault="true"  level="WARNING" implementationClass="com.jetbrains.python.inspections.PyExceptionInheritInspection"/>
300     <localInspection language="Python" shortName="PyDefaultArgumentInspection" bundle="com.jetbrains.python.PyBundle" key="INSP.NAME.default.argument" groupKey="INSP.GROUP.python" enabledByDefault="true"  level="WARNING" implementationClass="com.jetbrains.python.inspections.PyDefaultArgumentInspection"/>
301     <localInspection language="Python" shortName="PyRaisingNewStyleClassInspection" bundle="com.jetbrains.python.PyBundle" key="INSP.NAME.raising.new.style.class" groupKey="INSP.GROUP.python" enabledByDefault="true"  level="WARNING" implementationClass="com.jetbrains.python.inspections.PyRaisingNewStyleClassInspection"/>
302     <localInspection language="Python" shortName="PyDocstringInspection" bundle="com.jetbrains.python.PyBundle" key="INSP.NAME.docstring" groupKey="INSP.GROUP.python" enabledByDefault="false"  level="WEAK WARNING" implementationClass="com.jetbrains.python.inspections.PyDocstringInspection"/>
303     <localInspection language="Python" shortName="PyUnboundLocalVariableInspection" bundle="com.jetbrains.python.PyBundle" key="INSP.NAME.unbound" groupKey="INSP.GROUP.python" enabledByDefault="true"  level="WARNING" implementationClass="com.jetbrains.python.inspections.PyUnboundLocalVariableInspection"/>
304     <localInspection language="Python" shortName="PyStatementEffectInspection" bundle="com.jetbrains.python.PyBundle" key="INSP.NAME.statement.effect" groupKey="INSP.GROUP.python" enabledByDefault="true"  level="WARNING" implementationClass="com.jetbrains.python.inspections.PyStatementEffectInspection"/>
305     <localInspection language="Python" shortName="PySimplifyBooleanCheckInspection" bundle="com.jetbrains.python.PyBundle" key="INSP.NAME.check.can.be.simplified" groupKey="INSP.GROUP.python" enabledByDefault="true"  level="WEAK WARNING" implementationClass="com.jetbrains.python.inspections.PySimplifyBooleanCheckInspection"/>
306     <localInspection language="Python" shortName="PyFromFutureImportInspection" bundle="com.jetbrains.python.PyBundle" key="INSP.NAME.from.future.import" groupKey="INSP.GROUP.python" enabledByDefault="true"  level="WARNING" implementationClass="com.jetbrains.python.inspections.PyFromFutureImportInspection"/>
307     <localInspection language="Python" shortName="PyComparisonWithNoneInspection" bundle="com.jetbrains.python.PyBundle" key="INSP.NAME.comparison.with.none" groupKey="INSP.GROUP.python" enabledByDefault="true"  level="WEAK WARNING" implementationClass="com.jetbrains.python.inspections.PyComparisonWithNoneInspection"/>
308     <localInspection language="Python" shortName="PyStringExceptionInspection" bundle="com.jetbrains.python.PyBundle" key="INSP.NAME.raising.string.exception" groupKey="INSP.GROUP.python" enabledByDefault="true"  level="WARNING" implementationClass="com.jetbrains.python.inspections.PyStringExceptionInspection"/>
309     <localInspection language="Python" shortName="PySuperArgumentsInspection" bundle="com.jetbrains.python.PyBundle" key="INSP.NAME.wrong.super.arguments" groupKey="INSP.GROUP.python" enabledByDefault="true"  level="WARNING" implementationClass="com.jetbrains.python.inspections.PySuperArgumentsInspection"/>
310     <localInspection language="Python" shortName="PyByteLiteralInspection" bundle="com.jetbrains.python.PyBundle" key="INSP.NAME.byte.literal" groupKey="INSP.GROUP.python" enabledByDefault="true"  level="WARNING" implementationClass="com.jetbrains.python.inspections.PyByteLiteralInspection"/>
311     <localInspection language="Python" shortName="PyNonAsciiCharInspection" bundle="com.jetbrains.python.PyBundle" key="INSP.NAME.non.ascii" groupKey="INSP.GROUP.python" enabledByDefault="true"  level="WARNING" implementationClass="com.jetbrains.python.inspections.PyNonAsciiCharInspection"/>
312     <localInspection language="Python" shortName="PyTupleItemAssignmentInspection" bundle="com.jetbrains.python.PyBundle" key="INSP.NAME.tuple.item.assignment" groupKey="INSP.GROUP.python" enabledByDefault="true"  level="WARNING" implementationClass="com.jetbrains.python.inspections.PyTupleItemAssignmentInspection"/>
313     <localInspection language="Python" shortName="PyCallingNonCallableInspection" displayName="Trying to call a non-callable object" groupKey="INSP.GROUP.python" enabledByDefault="true"  level="WARNING" implementationClass="com.jetbrains.python.inspections.PyCallingNonCallableInspection"/>
314     <localInspection language="Python" shortName="PyPropertyAccessInspection" bundle="com.jetbrains.python.PyBundle" key="INSP.NAME.property.access" groupKey="INSP.GROUP.python" enabledByDefault="true"  level="WARNING" implementationClass="com.jetbrains.python.inspections.PyPropertyAccessInspection"/>
315     <localInspection language="Python" shortName="PyPropertyDefinitionInspection" bundle="com.jetbrains.python.PyBundle" key="INSP.NAME.property.definition" groupKey="INSP.GROUP.python" enabledByDefault="true"  level="WARNING" implementationClass="com.jetbrains.python.inspections.PyPropertyDefinitionInspection"/>
316     <localInspection language="Python" shortName="PyInconsistentIndentationInspection" displayName="Inconsistent indentation" groupKey="INSP.GROUP.python" enabledByDefault="true"  level="WARNING" implementationClass="com.jetbrains.python.inspections.PyInconsistentIndentationInspection"/>
317     <localInspection language="Python" shortName="PyNestedDecoratorsInspection" bundle="com.jetbrains.python.PyBundle" key="INSP.NAME.nested.decorators" groupKey="INSP.GROUP.python" enabledByDefault="true"  level="WEAK WARNING" implementationClass="com.jetbrains.python.inspections.PyNestedDecoratorsInspection"/>
318     <localInspection language="Python" shortName="PyCallByClassInspection" bundle="com.jetbrains.python.PyBundle" key="INSP.NAME.different.class.call" groupKey="INSP.GROUP.python" enabledByDefault="true"  level="WEAK WARNING" implementationClass="com.jetbrains.python.inspections.PyCallByClassInspection"/>
319     <localInspection language="Python" shortName="PyBroadExceptionInspection" bundle="com.jetbrains.python.PyBundle" key="INSP.NAME.too.broad.exception.clauses" groupKey="INSP.GROUP.python" enabledByDefault="true"  level="WEAK WARNING" implementationClass="com.jetbrains.python.inspections.PyBroadExceptionInspection"/>
320     <localInspection language="Python" shortName="PyRedundantParenthesesInspection" bundle="com.jetbrains.python.PyBundle" key="INSP.NAME.redundant.parentheses" groupKey="INSP.GROUP.python" enabledByDefault="true"  level="WEAK WARNING" implementationClass="com.jetbrains.python.inspections.PyRedundantParenthesesInspection"/>
321     <localInspection language="Python" shortName="PyAugmentAssignmentInspection" bundle="com.jetbrains.python.PyBundle" key="INSP.NAME.augment.assignment" groupKey="INSP.GROUP.python" enabledByDefault="true"  level="WEAK WARNING" implementationClass="com.jetbrains.python.inspections.PyAugmentAssignmentInspection"/>
322     <localInspection language="Python" shortName="PyChainedComparisonsInspection" bundle="com.jetbrains.python.PyBundle" key="INSP.NAME.chained.comparisons" groupKey="INSP.GROUP.python" enabledByDefault="true"  level="WEAK WARNING" implementationClass="com.jetbrains.python.inspections.PyChainedComparisonsInspection"/>
323     <localInspection language="Python" shortName="PyOldStyleClassesInspection" bundle="com.jetbrains.python.PyBundle" key="INSP.NAME.oldstyle.class" groupKey="INSP.GROUP.python" enabledByDefault="true"  level="WARNING" implementationClass="com.jetbrains.python.inspections.PyOldStyleClassesInspection"/>
324     <localInspection language="Python" shortName="PyCompatibilityInspection" bundle="com.jetbrains.python.PyBundle" key="INSP.NAME.compatibility" groupKey="INSP.GROUP.python" enabledByDefault="false"  level="WARNING" implementationClass="com.jetbrains.python.inspections.PyCompatibilityInspection"/>
325     <localInspection language="Python" shortName="PyListCreationInspection" bundle="com.jetbrains.python.PyBundle" key="INSP.NAME.list.creation" groupKey="INSP.GROUP.python" enabledByDefault="true"  level="WEAK WARNING" implementationClass="com.jetbrains.python.inspections.PyListCreationInspection"/>
326     <localInspection language="Python" shortName="PyUnnecessaryBackslashInspection" bundle="com.jetbrains.python.PyBundle" key="INSP.NAME.unnecessary.backslash" groupKey="INSP.GROUP.python" enabledByDefault="true"  level="WARNING" implementationClass="com.jetbrains.python.inspections.PyUnnecessaryBackslashInspection"/>
327     <localInspection language="Python" shortName="PySingleQuotedDocstringInspection" bundle="com.jetbrains.python.PyBundle" key="INSP.NAME.single.quoted.docstring" groupKey="INSP.GROUP.python" enabledByDefault="true"  level="WEAK WARNING" implementationClass="com.jetbrains.python.inspections.PySingleQuotedDocstringInspection"/>
328     <localInspection language="Python" shortName="PyMissingConstructorInspection" bundle="com.jetbrains.python.PyBundle" key="INSP.NAME.missing.super.constructor" groupKey="INSP.GROUP.python" enabledByDefault="true"  level="WARNING" implementationClass="com.jetbrains.python.inspections.PyMissingConstructorInspection"/>
329     <localInspection language="Python" shortName="PyArgumentEqualDefaultInspection" bundle="com.jetbrains.python.PyBundle" key="INSP.NAME.argument.equal.default" groupKey="INSP.GROUP.python" enabledByDefault="false"  level="WEAK WARNING" implementationClass="com.jetbrains.python.inspections.PyArgumentEqualDefaultInspection"/>
330     <localInspection language="Python" shortName="PySetFunctionToLiteralInspection" bundle="com.jetbrains.python.PyBundle" key="INSP.NAME.set.function.to.literal" groupKey="INSP.GROUP.python" enabledByDefault="true"  level="WARNING" implementationClass="com.jetbrains.python.inspections.PySetFunctionToLiteralInspection"/>
331     <localInspection language="Python" shortName="PyDecoratorInspection" bundle="com.jetbrains.python.PyBundle" key="INSP.NAME.decorator.outside.class" groupKey="INSP.GROUP.python" enabledByDefault="true"  level="WARNING" implementationClass="com.jetbrains.python.inspections.PyDecoratorInspection"/>
332     <localInspection language="Python" shortName="PyTypeCheckerInspection" displayName="Type checker" groupKey="INSP.GROUP.python" enabledByDefault="true"  level="WARNING" implementationClass="com.jetbrains.python.inspections.PyTypeCheckerInspection"/>
333     <localInspection language="Python" shortName="PyDeprecationInspection" displayName="Deprecated function, class or module" groupKey="INSP.GROUP.python" enabledByDefault="true"  level="WARNING" implementationClass="com.jetbrains.python.inspections.PyDeprecationInspection"/>
334     <localInspection language="Python" shortName="PyMandatoryEncodingInspection" displayName="No encoding specified for file" groupKey="INSP.GROUP.python" enabledByDefault="false"  level="WARNING" implementationClass="com.jetbrains.python.inspections.PyMandatoryEncodingInspection"/>
335     <localInspection language="Python" shortName="PyPackageRequirementsInspection" bundle="com.jetbrains.python.PyBundle" key="INSP.NAME.requirements" groupKey="INSP.GROUP.python" enabledByDefault="true"  level="WARNING" implementationClass="com.jetbrains.python.inspections.PyPackageRequirementsInspection"/>
336     <localInspection language="Python" shortName="PyPep8Inspection" displayName="PEP 8 coding style violation" groupKey="INSP.GROUP.python" enabledByDefault="true" level="WEAK WARNING" implementationClass="com.jetbrains.python.inspections.PyPep8Inspection"/>
337     <localInspection language="Python" shortName="PyAttributeOutsideInitInspection" displayName="Instance attribute defined outside __init__" groupKey="INSP.GROUP.python" enabledByDefault="true" level="WEAK WARNING" implementationClass="com.jetbrains.python.inspections.PyAttributeOutsideInitInspection"/>
338     <localInspection language="Python" shortName="PyClassHasNoInitInspection" displayName="Class has no __init__ method" groupKey="INSP.GROUP.python" enabledByDefault="true" level="WEAK WARNING" implementationClass="com.jetbrains.python.inspections.PyClassHasNoInitInspection"/>
339     <localInspection language="Python" shortName="PyNoneFunctionAssignmentInspection" displayName="Assigning function call that doesn't return anything" groupKey="INSP.GROUP.python" enabledByDefault="true" level="WEAK WARNING" implementationClass="com.jetbrains.python.inspections.PyNoneFunctionAssignmentInspection"/>
340     <localInspection language="Python" shortName="PyGlobalUndefinedInspection" displayName="Global variable is undefined at the module level" groupKey="INSP.GROUP.python" enabledByDefault="true" level="WEAK WARNING" implementationClass="com.jetbrains.python.inspections.PyGlobalUndefinedInspection"/>
341     <localInspection language="Python" shortName="PyProtectedMemberInspection" displayName="Access to a protected member of a class" groupKey="INSP.GROUP.python" enabledByDefault="true" level="WEAK WARNING" implementationClass="com.jetbrains.python.inspections.PyProtectedMemberInspection"/>
342     <localInspection language="Python" shortName="PyMethodMayBeStaticInspection" displayName="Method may be static" groupKey="INSP.GROUP.python" enabledByDefault="true" level="WEAK WARNING" implementationClass="com.jetbrains.python.inspections.PyMethodMayBeStaticInspection"/>
343     <localInspection language="Python" shortName="PyDocstringTypesInspection" bundle="com.jetbrains.python.PyBundle" key="INSP.NAME.docstring.types" groupKey="INSP.GROUP.python" enabledByDefault="true"  level="WEAK WARNING" implementationClass="com.jetbrains.python.inspections.PyDocstringTypesInspection"/>
344     <localInspection language="Python" shortName="PyShadowingBuiltinsInspection" displayName="Shadowing built-ins" groupKey="INSP.GROUP.python" enabledByDefault="true"  level="WEAK WARNING" implementationClass="com.jetbrains.python.inspections.PyShadowingBuiltinsInspection"/>
345     <localInspection language="Python" shortName="PyShadowingNamesInspection" displayName="Shadowing names from outer scopes" groupKey="INSP.GROUP.python" enabledByDefault="true"  level="WEAK WARNING" implementationClass="com.jetbrains.python.inspections.PyShadowingNamesInspection"/>
346     <localInspection language="Python" shortName="PyAbstractClassInspection" displayName="Class must implement all abstract methods" groupKey="INSP.GROUP.python" enabledByDefault="true"  level="WEAK WARNING" implementationClass="com.jetbrains.python.inspections.PyAbstractClassInspection"/>
347     <localInspection language="Python" shortName="PyPep8NamingInspection" displayName="PEP 8 naming convention violation" groupKey="INSP.GROUP.python" enabledByDefault="true"  level="WEAK WARNING" implementationClass="com.jetbrains.python.inspections.PyPep8NamingInspection"/>
348     <localInspection language="Python" shortName="PyAssignmentToLoopOrWithParameterInspection" displayName="Assignment to 'for' loop or 'with' statement parameter" groupKey="INSP.GROUP.python" enabledByDefault="true"  level="WEAK WARNING" implementationClass="com.jetbrains.python.inspections.PyAssignmentToLoopOrWithParameterInspection"/>
349
350     <liveTemplateContext implementation="com.jetbrains.python.codeInsight.liveTemplates.PythonTemplateContextType"/>
351     <liveTemplateMacro implementation="com.jetbrains.python.codeInsight.liveTemplates.CollectionElementNameMacro"/>
352     <liveTemplateMacro implementation="com.jetbrains.python.codeInsight.liveTemplates.PyClassNameMacro"/>
353     <liveTemplateMacro implementation="com.jetbrains.python.codeInsight.liveTemplates.PyFunctionNameMacro"/>
354     <liveTemplateMacro implementation="com.jetbrains.python.codeInsight.liveTemplates.PyIterableVariableMacro"/>
355
356     <codeInsight.overrideMethod language="Python" implementationClass="com.jetbrains.python.codeInsight.override.PyOverrideMethodsHandler"/>
357     <lang.refactoringSupport language="Python" implementationClass="com.jetbrains.python.refactoring.PyRefactoringProvider"/>
358     <lang.refactoringSupport.classMembersRefactoringSupport language="Python"
359                                                             implementationClass="com.jetbrains.python.refactoring.classes.PyClassMembersRefactoringSupport"/>
360     <inlineActionHandler implementation="com.jetbrains.python.refactoring.inline.PyInlineLocalHandler"/>
361     <codeInsight.gotoSuper language="Python" implementationClass="com.jetbrains.python.codeInsight.PyGotoSuperHandler"/>
362     <gotoDeclarationHandler implementation="com.jetbrains.python.codeInsight.PyBreakContinueGotoProvider" order="FIRST"/>
363     <lang.smartEnterProcessor language="Python"
364                               implementationClass="com.jetbrains.python.codeInsight.editorActions.smartEnter.PySmartEnterProcessor"/>
365     <statementUpDownMover implementation="com.jetbrains.python.codeInsight.editorActions.moveUpDown.PyStatementMover" id="statement"
366                           order="before line"/>
367
368     <filePropertyPusher implementation="com.jetbrains.python.psi.impl.PythonLanguageLevelPusher"/>
369
370     <elementDescriptionProvider implementation="com.jetbrains.python.findUsages.PyElementDescriptionProvider"/>
371     <elementDescriptionProvider implementation="com.jetbrains.python.magicLiteral.PyMagicLiteralElementDescriptionProvider"/>
372     <fileStructureGroupRuleProvider implementation="com.jetbrains.python.findUsages.PyFunctionGroupingRuleProvider" id="py-function"/>
373     <usageTypeProvider implementation="com.jetbrains.python.findUsages.PyUsageTypeProvider"/>
374     <usageTargetProvider implementation="com.jetbrains.python.magicLiteral.PyMagicLiteralUsageTargetProvider"/>
375     <importFilteringRule implementation="com.jetbrains.python.findUsages.PyImportFilteringRule"/>
376
377     <multiHostInjector implementation="com.jetbrains.python.codeInsight.regexp.PythonRegexpInjector"/>
378     <lang.parserDefinition language="PythonRegExp"
379                            implementationClass="com.jetbrains.python.codeInsight.regexp.PythonRegexpParserDefinition"/>
380     <lang.parserDefinition language="PythonVerboseRegExp"
381                            implementationClass="com.jetbrains.python.codeInsight.regexp.PythonVerboseRegexpParserDefinition"/>
382     <lang.syntaxHighlighterFactory key="PythonVerboseRegExp"
383                                    implementationClass="com.jetbrains.python.codeInsight.regexp.PythonVerboseRegexpSyntaxHighlighterFactory"/>
384
385     <applicationService serviceInterface="com.jetbrains.python.codeInsight.PyCodeInsightSettings"
386                         serviceImplementation="com.jetbrains.python.codeInsight.PyCodeInsightSettings"/>
387     <applicationService serviceInterface="com.jetbrains.python.testing.PyTestFrameworkService"
388                         serviceImplementation="com.jetbrains.python.testing.PyTestFrameworkService"/>
389     <applicationService serviceInterface="com.jetbrains.python.sdk.PySdkService"
390                         serviceImplementation="com.jetbrains.python.sdk.PySdkService"/>
391     <autoImportOptionsProvider instance="com.jetbrains.python.codeInsight.imports.PyAutoImportOptions"/>
392
393     <defaultLiveTemplatesProvider implementation="com.jetbrains.python.codeInsight.liveTemplates.PyDefaultLiveTemplatesProvider"/>
394
395     <completion.contributor language="Python"
396                             implementationClass="com.jetbrains.python.codeInsight.completion.PyClassNameCompletionContributor"/>
397     <weigher key="completion" implementationClass="com.jetbrains.python.codeInsight.completion.PythonCompletionWeigher" order="first"/>
398     <completion.confidence language="Python" implementationClass="com.jetbrains.python.codeInsight.completion.PyCompletionConfidence"/>
399     <typedHandler implementation="com.jetbrains.python.console.completion.PythonConsoleAutopopupBlockingHandler" id="pydevBlockAutoPopup"
400                   order="first, before completionAutoPopup"/>
401
402     <referencesSearch implementation="com.jetbrains.python.psi.search.PyInitReferenceSearchExecutor"/>
403     <referencesSearch implementation="com.jetbrains.python.magicLiteral.PyMagicLiteralReferenceSearcher"/>
404     <referencesSearch implementation="com.jetbrains.python.psi.search.PyKeywordArgumentSearchExecutor"/>
405     <referencesSearch implementation="com.jetbrains.python.psi.search.PyStringReferenceSearch"/>
406     <findUsagesHandlerFactory implementation="com.jetbrains.python.findUsages.PyFindUsagesHandlerFactory" id="Python"
407                               order="last, before default"/>
408     <readWriteAccessDetector implementation="com.jetbrains.python.findUsages.PyReadWriteAccessDetector"/>
409     <findUsagesHandlerFactory implementation="com.jetbrains.python.magicLiteral.PyMagicLiteralFindUsagesHandlerFactory"/>
410
411     <renamePsiElementProcessor implementation="com.jetbrains.python.refactoring.rename.RenamePyVariableProcessor" order="last" id="pyvar"/>
412     <renamePsiElementProcessor implementation="com.jetbrains.python.refactoring.rename.RenamePyFunctionProcessor" order="before pyvar"/>
413     <renamePsiElementProcessor implementation="com.jetbrains.python.refactoring.rename.RenamePyClassProcessor" order="before pyvar"/>
414     <renamePsiElementProcessor implementation="com.jetbrains.python.magicLiteral.PyMagicLiteralRenameProcessor" order="before pyvar"/>
415     <renamePsiElementProcessor implementation="com.jetbrains.python.refactoring.rename.RenamePyFileProcessor" order="first"/>
416
417     <automaticRenamerFactory implementation="com.jetbrains.python.refactoring.rename.PyContainingFileRenamerFactory"/>
418     <automaticRenamerFactory implementation="com.jetbrains.python.refactoring.rename.PyInheritorRenameFactory"/>
419     <automaticRenamerFactory implementation="com.jetbrains.python.refactoring.rename.PyParametersRenameFactory"/>
420
421     <moveFileHandler implementation="com.jetbrains.python.refactoring.move.PyMoveFileHandler"/>
422     <refactoring.moveHandler implementation="com.jetbrains.python.refactoring.move.PyMoveClassOrFunctionDelegate"/>
423
424     <refactoring.changeSignatureUsageProcessor implementation="com.jetbrains.python.refactoring.changeSignature.PyChangeSignatureUsageProcessor" id="Python"/>
425
426     <lang.importOptimizer language="Python" implementationClass="com.jetbrains.python.codeInsight.imports.PyImportOptimizer"/>
427
428     <codeStyleSettingsProvider implementation="com.jetbrains.python.formatter.PyCodeStyleSettingsProvider"/>
429     <langCodeStyleSettingsProvider implementation="com.jetbrains.python.formatter.PyLanguageCodeStyleSettingsProvider"/>
430
431     <lang.elementManipulator forClass="com.jetbrains.python.psi.PyStringLiteralExpression"
432                              implementationClass="com.jetbrains.python.psi.impl.PyStringLiteralExpressionManipulator"/>
433     <lang.elementManipulator forClass="com.jetbrains.python.psi.PyKeywordArgument"
434                              implementationClass="com.jetbrains.python.psi.impl.PyKeywordArgumentManipulator"/>
435
436     <analyzeStacktraceFilter implementation="com.jetbrains.python.run.PythonTracebackFilter"/>
437
438     <internalFileTemplate name="Python Script"/>
439     <internalFileTemplate name="Python Unit Test"/>
440     <internalFileTemplate name="Setup Script"/>
441
442     <moduleService serviceInterface="com.jetbrains.python.psi.resolve.PythonPathCache"
443                    serviceImplementation="com.jetbrains.python.psi.resolve.PythonModulePathCache"/>
444
445     <problemFileHighlightFilter implementation="com.jetbrains.python.codeInsight.PyProblemFileHighlightFilter"/>
446
447     <editorSmartKeysConfigurable instance="com.jetbrains.python.codeInsight.PySmartKeysOptions"/>
448     <editorSmartKeysConfigurable instance="com.jetbrains.python.codeInsight.PySpecificSmartKeysOptions"/>
449
450     <psi.referenceContributor implementation="com.jetbrains.python.codeInsight.PyStdReferenceContributor"/>
451
452     <applicationService serviceInterface="com.jetbrains.python.documentation.PythonDocumentationMap"
453                         serviceImplementation="com.jetbrains.python.documentation.PythonDocumentationMap"/>
454     <applicationConfigurable groupId="tools" instance="com.jetbrains.python.documentation.PythonDocumentationConfigurable"
455                              id="com.jetbrains.python.documentation.PythonDocumentationConfigurable"
456                              displayName="Python External Documentation"/>
457     <projectConfigurable groupId="tools" instance="com.jetbrains.python.configuration.PyIntegratedToolsModulesConfigurable"
458                          id="com.jetbrains.python.configuration.PyIntegratedToolsModulesConfigurable" displayName="Python Integrated Tools"
459                          nonDefaultProject="true"/>
460     <moduleService serviceInterface="com.jetbrains.python.documentation.PyDocumentationSettings"
461                    serviceImplementation="com.jetbrains.python.documentation.PyDocumentationSettings"/>
462     <psi.referenceContributor implementation="com.jetbrains.python.documentation.DocStringReferenceContributor"/>
463     <completion.contributor language="Python" implementationClass="com.jetbrains.python.documentation.DocStringTagCompletionContributor"/>
464
465     <projectService serviceInterface="com.intellij.psi.search.ProjectScopeBuilder"
466                     serviceImplementation="com.jetbrains.python.psi.search.PyProjectScopeBuilder"
467                     overrides="true"/>
468
469     <treeStructureProvider implementation="com.jetbrains.python.projectView.PyTreeStructureProvider"/>
470
471     <project.converterProvider implementation="com.jetbrains.python.testing.converters.PythonTestConverterProvider"/>
472
473     <projectConfigurable groupId="build" dynamic="true" id="pyconsole" instance="com.jetbrains.python.console.PyConsoleOptionsConfigurable"
474                          displayName="Console"/>
475     <projectService serviceImplementation="com.jetbrains.python.console.PyConsoleOptions"/>
476
477     <projectConfigurable groupId="build" id="reference.idesettings.debugger.python" instance="com.jetbrains.python.debugger.PyDebuggerConfigurable"
478                          displayName="Python Debugger"/>
479     <projectService serviceImplementation="com.jetbrains.python.debugger.PyDebuggerOptionsProvider"/>
480
481     <codeBlockProvider language="Python" implementationClass="com.jetbrains.python.codeInsight.PyCodeBlockProvider"/>
482
483     <iconProvider implementation="com.jetbrains.python.PyDirectoryIconProvider"/>
484
485     <projectService serviceInterface="com.jetbrains.python.debugger.PySignatureCacheManager"
486                     serviceImplementation="com.jetbrains.python.debugger.PySignatureCacheManagerImpl"/>
487
488     <projectService serviceInterface="com.jetbrains.python.psi.PyPsiFacade"
489                     serviceImplementation="com.jetbrains.python.psi.impl.PyPsiFacadeImpl"/>
490     <applicationService serviceInterface="com.jetbrains.python.packaging.PyPackageManagers"
491                         serviceImplementation="com.jetbrains.python.packaging.PyPackageManagersImpl"/>
492
493     <qualifiedNameProvider implementation="com.jetbrains.python.actions.PyQualifiedNameProvider"/>
494
495     <externalAnnotator language="Python" implementationClass="com.jetbrains.python.validation.Pep8ExternalAnnotator"/>
496
497     <statistics.usagesCollector implementation="com.jetbrains.python.statistics.PyInterpreterUsagesCollector"/>
498     <statistics.usagesCollector implementation="com.jetbrains.python.statistics.PyPackageUsagesCollector"/>
499
500     <additionalTextAttributes scheme="Default" file="colorSchemes/PythonDefault.xml"/>
501     <additionalTextAttributes scheme="Darcula" file="colorSchemes/PythonDarcula.xml"/>
502
503     <postStartupActivity implementation="com.jetbrains.python.sdk.PythonSdkUpdater"/>
504     <postStartupActivity implementation="com.jetbrains.python.packaging.PyPIPackagesUpdater"/>
505     <postStartupActivity implementation="com.jetbrains.python.testing.PyTestRunnerUpdater"/>
506
507     <macro implementation="com.jetbrains.python.sdk.InterpreterDirectoryMacro"/>
508
509     <!-- User skeletons -->
510     <codeInsight.lineMarkerProvider language="Python" implementationClass="com.jetbrains.python.codeInsight.userSkeletons.PyUserSkeletonsLineMarkerProvider"/>
511
512     <!-- Buildout -->
513     <facetType implementation="com.jetbrains.python.buildout.BuildoutFacetType"/>
514     <framework.detector implementation="com.jetbrains.python.buildout.BuildoutFrameworkDetector"/>
515
516     <lang.parserDefinition language="BuildoutCfg" implementationClass="com.jetbrains.python.buildout.config.BuildoutCfgParserDefinition"/>
517     <fileTypeFactory implementation="com.jetbrains.python.buildout.config.BuildoutCfgFileTypeFactory"/>
518     <lang.syntaxHighlighterFactory key="BuildoutCfg"
519                                    implementationClass="com.jetbrains.python.buildout.config.BuildoutCfgHighlighterFactory"/>
520
521     <localInspection language="BuildoutCfg" shortName="BuildoutUnresolvedPartInspection" bundle="com.jetbrains.python.PyBundle"
522                      key="buildout.unresolved.part.inspection" groupKey="buildout" enabledByDefault="true" level="WARNING"
523                      implementationClass="com.jetbrains.python.buildout.config.inspection.BuildoutUnresolvedPartInspection"/>
524
525     <colorSettingsPage implementation="com.jetbrains.python.buildout.config.BuildoutCfgColorsPage"/>
526     <moduleService serviceInterface="com.jetbrains.python.testing.TestRunnerService"
527                    serviceImplementation="com.jetbrains.python.testing.TestRunnerService"/>
528
529     <problemFileHighlightFilter implementation="com.jetbrains.python.buildout.config.BuildoutCfgProblemFileHighlightFilter"/>
530
531
532     <!-- PyDocstring -->
533     <languageInjector implementation="com.jetbrains.python.documentation.doctest.PyDocstringLanguageInjector"/>
534     <lang.parserDefinition language="PyDocstring" implementationClass="com.jetbrains.python.documentation.doctest.PyDocstringParserDefinition"/>
535     <highlightErrorFilter implementation="com.jetbrains.python.documentation.doctest.PyDocstringErrorFilter"/>
536
537     <!-- Packaging -->
538     <moduleService serviceInterface="com.jetbrains.python.packaging.PyPackageRequirementsSettings"
539                    serviceImplementation="com.jetbrains.python.packaging.PyPackageRequirementsSettings"/>
540
541   </extensions>
542
543   <extensionPoints>
544     <extensionPoint qualifiedName="Pythonid.pythonDocumentationQuickInfoProvider" interface="com.jetbrains.python.documentation.PythonDocumentationQuickInfoProvider"/>
545     <extensionPoint qualifiedName="Pythonid.importResolver" interface="com.jetbrains.python.psi.impl.PyImportResolver"/>
546     <extensionPoint qualifiedName="Pythonid.magicLiteral" interface="com.jetbrains.python.magicLiteral.PyMagicLiteralExtensionPoint"/>
547     <extensionPoint qualifiedName="Pythonid.unresolvedReferenceSkipper" interface="com.jetbrains.python.inspections.unresolvedReference.PyUnresolvedReferenceSkipperExtPoint"/>
548     <extensionPoint qualifiedName="Pythonid.resolveResultRater" interface="com.jetbrains.python.psi.impl.PyResolveResultRater"/>
549     <extensionPoint qualifiedName="Pythonid.typeProvider" interface="com.jetbrains.python.psi.impl.PyTypeProvider"/>
550     <extensionPoint qualifiedName="Pythonid.pySuperMethodsSearch" interface="com.intellij.util.QueryExecutor"/>
551     <extensionPoint qualifiedName="Pythonid.pyClassInheritorsSearch" interface="com.intellij.util.QueryExecutor"/>
552     <extensionPoint qualifiedName="Pythonid.pyClassMembersProvider" interface="com.jetbrains.python.psi.types.PyClassMembersProvider"/>
553     <extensionPoint qualifiedName="Pythonid.pyModuleMembersProvider" interface="com.jetbrains.python.psi.types.PyModuleMembersProvider"/>
554     <extensionPoint qualifiedName="Pythonid.pyOverridingMethodsSearch" interface="com.intellij.util.QueryExecutor"/>
555     <extensionPoint qualifiedName="Pythonid.runnableScriptFilter" interface="com.jetbrains.python.run.RunnableScriptFilter"/>
556     <extensionPoint qualifiedName="Pythonid.runnableUnitTestFilter" interface="com.jetbrains.python.testing.RunnableUnitTestFilter"/>
557     <extensionPoint qualifiedName="Pythonid.unresolvedReferenceQuickFixProvider"
558                     interface="com.jetbrains.python.inspections.PyUnresolvedReferenceQuickFixProvider"/>
559     <extensionPoint qualifiedName="Pythonid.dumbAnnotator" interface="com.jetbrains.python.validation.PyAnnotator"/>
560     <extensionPoint qualifiedName="Pythonid.inspectionExtension" interface="com.jetbrains.python.inspections.PyInspectionExtension"/>
561     <extensionPoint qualifiedName="Pythonid.customTargetExpressionStubType"
562                     interface="com.jetbrains.python.psi.impl.stubs.CustomTargetExpressionStubType"/>
563     <extensionPoint qualifiedName="Pythonid.knownDecoratorProvider" interface="com.jetbrains.python.psi.PyKnownDecoratorProvider"/>
564     <extensionPoint qualifiedName="Pythonid.documentationLinkProvider" interface="com.jetbrains.python.documentation.PythonDocumentationLinkProvider"/>
565     <extensionPoint qualifiedName="Pythonid.importCandidateProvider" interface="com.jetbrains.python.codeInsight.imports.PyImportCandidateProvider"/>
566     <extensionPoint qualifiedName="Pythonid.dialectsTokenSetContributor" interface="com.jetbrains.python.PythonDialectsTokenSetContributor"/>
567     <extensionPoint qualifiedName="Pythonid.runConfigurationExtension" interface="com.jetbrains.python.run.PythonRunConfigurationExtension"/>
568     <extensionPoint qualifiedName="Pythonid.visitorFilter" beanClass="com.intellij.lang.LanguageExtensionPoint"/>
569     <extensionPoint qualifiedName="Pythonid.remoteInterpreterManager" interface="com.jetbrains.python.remote.PythonRemoteInterpreterManager"/>
570     <extensionPoint qualifiedName="Pythonid.keywordArgumentProvider" interface="com.jetbrains.python.psi.impl.PyKeywordArgumentProvider"/>
571     <extensionPoint qualifiedName="Pythonid.canonicalPathProvider" interface="com.jetbrains.python.psi.resolve.PyCanonicalPathProvider"/>
572     <extensionPoint qualifiedName="Pythonid.templateContextProvider" interface="com.jetbrains.python.templateLanguages.TemplateContextProvider"/>
573     <extensionPoint qualifiedName="Pythonid.pyReferenceResolveProvider" interface="com.jetbrains.python.psi.resolve.PyReferenceResolveProvider"/>
574     <extensionPoint qualifiedName="Pythonid.breakpointHandler" interface="com.jetbrains.python.debugger.PyBreakpointHandlerFactory"/>
575     <extensionPoint qualifiedName="Pythonid.consoleOptionsProvider" interface="com.jetbrains.python.console.PyConsoleOptionsProvider"/>
576   </extensionPoints>
577
578   <extensions defaultExtensionNs="Pythonid">
579     <pySuperMethodsSearch implementation="com.jetbrains.python.psi.search.PySuperMethodsSearchExecutor"/>
580     <pyClassInheritorsSearch implementation="com.jetbrains.python.psi.search.PyClassInheritorsSearchExecutor"/>
581     <pyOverridingMethodsSearch implementation="com.jetbrains.python.psi.search.PyOverridingMethodsSearchExecutor"/>
582     <runnableScriptFilter implementation="com.jetbrains.python.testing.PythonUnitTestRunnableScriptFilter"/>
583     <dumbAnnotator implementation="com.jetbrains.python.validation.DocStringAnnotator"/>
584     <dumbAnnotator implementation="com.jetbrains.python.validation.PyDefinitionsAnnotator"/>
585     <dumbAnnotator implementation="com.jetbrains.python.validation.GeneratorInArgumentListAnnotator"/>
586     <dumbAnnotator implementation="com.jetbrains.python.validation.StarAnnotator"/>
587     <dumbAnnotator implementation="com.jetbrains.python.validation.StringLiteralQuotesAnnotator"/>
588
589     <customTargetExpressionStubType implementation="com.jetbrains.python.psi.impl.stubs.PropertyStubType"/>
590     <dialectsTokenSetContributor implementation="com.jetbrains.python.PythonTokenSetContributor"/>
591     <pyClassMembersProvider implementation="com.jetbrains.python.codeInsight.stdlib.PyStdlibClassMembersProvider"/>
592     <typeProvider implementation="com.jetbrains.python.codeInsight.stdlib.PyStdlibTypeProvider"/>
593     <pyModuleMembersProvider implementation="com.jetbrains.python.codeInsight.stdlib.PyStdlibModuleMembersProvider"/>
594     <documentationLinkProvider implementation="com.jetbrains.python.codeInsight.stdlib.PyStdlibDocumentationLinkProvider"/>
595     <canonicalPathProvider implementation="com.jetbrains.python.codeInsight.stdlib.PyStdlibCanonicalPathProvider"/>
596
597     <!-- User skeletons -->
598     <pyModuleMembersProvider implementation="com.jetbrains.python.codeInsight.userSkeletons.PyUserSkeletonsModuleMembersProvider"/>
599     <pyClassMembersProvider implementation="com.jetbrains.python.codeInsight.userSkeletons.PyUserSkeletonsClassMembersProvider"/>
600     <typeProvider implementation="com.jetbrains.python.codeInsight.userSkeletons.PyUserSkeletonsTypeProvider"/>
601
602     <!-- typing -->
603     <typeProvider implementation="com.jetbrains.python.codeInsight.PyTypingTypeProvider"/>
604
605     <typeProvider implementation="com.jetbrains.python.debugger.PyCallSignatureTypeProvider"/>
606     <pyReferenceResolveProvider implementation="com.jetbrains.python.psi.resolve.PythonBuiltinReferenceResolveProvider"/>
607
608     <!-- PyDocstring -->
609     <dialectsTokenSetContributor implementation="com.jetbrains.python.documentation.doctest.PyDocstringTokenSetContributor"/>
610     <visitorFilter language="PyDocstring" implementationClass="com.jetbrains.python.documentation.doctest.PyDocstringVisitorFilter"/>
611
612     <!-- Console -->
613     <visitorFilter language="Python" implementationClass="com.jetbrains.python.console.ConsoleVisitorFilter"/>
614
615     <!-- Packaging -->
616     <keywordArgumentProvider implementation="com.jetbrains.python.packaging.setupPy.SetupKeywordArgumentProvider"/>
617
618     <!-- PyQt -->
619     <typeProvider implementation="com.jetbrains.pyqt.PyQtTypeProvider"/>
620
621     <!-- NumPy -->
622     <pyModuleMembersProvider implementation="com.jetbrains.numpy.codeInsight.NumpyModuleMembersProvider"/>
623     <typeProvider implementation="com.jetbrains.numpy.codeInsight.NumpyDocStringTypeProvider"/>
624   </extensions>
625
626   <project-components>
627     <component>
628       <implementation-class>com.jetbrains.python.PythonPsiManager</implementation-class>
629     </component>
630   </project-components>
631
632   <actions>
633     <group id="PyTypeHierarchyPopupMenu">
634       <reference ref="TypeHierarchyBase.BaseOnThisType"/>
635       <reference ref="TypeHierarchy.Class"/>
636       <reference ref="TypeHierarchy.Subtypes"/>
637       <reference ref="TypeHierarchy.Supertypes"/>
638       <separator/>
639       <reference ref="EditSource"/>
640       <separator/>
641       <reference ref="FindUsages"/>
642       <reference ref="RefactoringMenu"/>
643       <separator/>
644       <reference ref="AddToFavorites"/>
645       <separator/>
646       <reference ref="ReformatCode"/>
647       <reference ref="OptimizeImports"/>
648       <reference ref="$Delete"/>
649       <separator/>
650       <reference ref="VersionControlsGroup"/>
651       <separator/>
652       <reference ref="ExternalToolsGroup"/>
653       <separator/>
654       <reference ref="CompareTwoFiles"/>
655       <reference ref="CompareFileWithEditor"/>
656     </group>
657
658     <group id="PyCallHierarchyPopupMenu">
659       <reference ref="EditSource"/>
660       <separator/>
661       <reference ref="FindUsages"/>
662       <reference ref="RefactoringMenu"/>
663       <separator/>
664       <reference ref="AddToFavorites"/>
665       <separator/>
666
667       <reference ref="ReformatCode"/>
668       <reference ref="OptimizeImports"/>
669       <separator/>
670       <reference ref="VersionControlsGroup"/>
671
672       <separator/>
673       <reference ref="ExternalToolsGroup"/>
674       <separator/>
675       <reference ref="CompareTwoFiles"/>
676       <reference ref="CompareFileWithEditor"/>
677     </group>
678
679     <!-- Console -->
680     <action id="com.jetbrains.python.console.RunPythonConsoleAction"
681             class="com.jetbrains.python.console.RunPythonConsoleAction"
682             text="Python Console..." description="Allows to quickly run Python console">
683       <add-to-group group-id="ToolsMenu" anchor="last"/>
684     </action>
685
686     <action id="com.jetbrains.python.console.PyOpenDebugConsoleAction"
687             class="com.jetbrains.python.console.PyOpenDebugConsoleAction"
688             text="Open Debug Command Line" description="Opens debug command line for running process">
689       <add-to-group group-id="ToolsMenu" anchor="last"/>
690     </action>
691
692     <action id="ExecuteInPyConsoleAction"
693             class="com.jetbrains.python.actions.PyExecuteSelectionAction"
694             text="Execute selection in console"
695             description="Executes selected code fragment in Python/Django console">
696       <add-to-group group-id="EditorPopupMenu" anchor="before" relative-to-action="CompareClipboardWithSelection"/>
697
698       <keyboard-shortcut keymap="$default" first-keystroke="alt shift E"/>
699       <keyboard-shortcut keymap="Eclipse" first-keystroke="ctrl alt E" replace-all="true"/>
700       <keyboard-shortcut keymap="NetBeans 6.5" first-keystroke="ctrl alt E" replace-all="true"/>
701     </action>
702
703     <action id="NewPythonFile" class="com.jetbrains.python.actions.CreatePythonFileAction">
704       <add-to-group group-id="NewGroup" anchor="before" relative-to-action="NewXml"/>
705     </action>
706
707     <action id="NewPythonPackage" class="com.jetbrains.python.actions.CreatePackageAction" text="Python Package"
708             description="Create a new directory and __init__.py inside it" icon="AllIcons.Nodes.Package">
709       <add-to-group group-id="NewGroup" anchor="after" relative-to-action="NewDir"/>
710     </action>
711
712     <action id="CompuleQrc" class="com.jetbrains.pyqt.CompileQrcAction" text="Compile .qrc file">
713       <add-to-group group-id="ProjectViewPopupMenuRunGroup" anchor="first"/>
714     </action>
715
716     <action id="CleanPyc" class="com.jetbrains.python.actions.CleanPycAction" text="Clean Python Compiled Files"
717             description="Delete compiled bytecode files in selected directory and its subdirectories">
718       <add-to-group group-id="ProjectViewPopupMenu" anchor="after" relative-to-action="ProjectViewPopupMenuRefactoringGroup"/>
719     </action>
720
721     <action id="PyDebugger.AttachToProcess" class="com.jetbrains.python.debugger.attach.PyAttachToProcessAction"
722             text="Attach to Process..."
723             description="Attach debugger to a Python process">
724
725       <add-to-group group-id="ToolsMenu" anchor="first"/>
726     </action>
727
728     <group id="PyPackagingMenu" text="Packaging">
729       <action id="CreateSetupPy" class="com.jetbrains.python.packaging.setupPy.CreateSetupPyAction"/>
730       <action id="RunSetupPyTask" class="com.jetbrains.python.packaging.setupPy.SetupTaskChooserAction"/>
731       <add-to-group group-id="ToolsMenu" anchor="last"/>
732     </group>
733
734     <action id="PythonGenerateDictionaries" class="com.jetbrains.python.spellchecker.PythonSpellcheckerGenerateDictionariesAction"
735             text="Generate Python Spellchecker Dictionaries" internal="true">
736       <add-to-group group-id="Internal"/>
737     </action>
738
739     <action id="PyInvertBooleanAction" class="com.jetbrains.python.refactoring.invertBoolean.PyInvertBooleanAction" text="Invert Boolean">
740       <add-to-group group-id="RefactoringMenu" anchor="last" />
741     </action>
742
743     <action id="PyDebugger.ViewArray" class="com.jetbrains.python.debugger.array.PyViewArrayAction" text="View as Array">
744       <add-to-group group-id="XDebugger.ValueGroup" anchor="after" relative-to-action="Debugger.Tree.AddToWatches"/>
745     </action>
746
747   </actions>
748
749   <extensions defaultExtensionNs="com.intellij.spellchecker">
750     <support language="Python" implementationClass="com.jetbrains.python.spellchecker.PythonSpellcheckerStrategy"/>
751     <bundledDictionaryProvider implementation="com.jetbrains.python.spellchecker.PythonBundledDictionaryProvider"/>
752   </extensions>
753
754   <application-components>
755     <component>
756       <implementation-class>com.jetbrains.python.testing.VFSTestFrameworkListener</implementation-class>
757     </component>
758   </application-components>
759
760 </idea-plugin>