インスペクションの無効化と有効化
いくつかのインスペクションは現在見たくない問題を報告するかもしれません。この場合、無効にしたり抑制したりできます。
インスペクションを無効にする
インスペクションを使用不可にすると、無効になります。これは、このインスペクションが検出するように設計されているという問題について、コード分析エンジンがプロジェクトファイルの検索を停止することを意味します。インスペクションを無効にすると、現在のインスペクションプロファイルで無効になります。他のプロファイルでは有効のままです。
特定の種類のファイルのインスペクションを部分的に無効にするには、スコープ設定を使用します。
PyCharm のほとんどのインスペクションは無効にできます。ただし、一部のインスペクションは、設定に関係なくコードをハイライトし続けます。例: 構文エラーは常にハイライトされます。
設定でインスペクションを無効にする
Ctrl+Alt+S を押して設定を開き、
を選択します。無効にするインスペクションを見つけて、その横にあるチェックボックスをオフにします。
変更を適用し、ダイアログを閉じます。
すぐに直接エディターで引き起こされたインスペクションを無効にすることができます。
エディターからインスペクションを無効にする
ハイライトされた行にキャレットを置き、Alt+Enter を押します(または をクリックしてインテンションアクションを使用します)。
無効にするインスペクションの横の矢印をクリックし、インスペクションを無効にするを選択します。
問題ツールウィンドウからインスペクションを無効にする
問題ツールウィンドウ (コード分析を実行すると表示されます) のインスペクション結果タブで、無効にするインスペクションを右クリックし、インスペクションを無効にするを選択します。
無効になったインスペクションアラートを非表示にするには、 をクリックします。
インスペクションを再度有効にする
Ctrl+Alt+S を押して設定を開き、
を選択します。Ctrl+Alt+Shift+H を押してインスペクションの構成を選択することもできます。
リストで無効化されたインスペクションを見つけ、その横にあるチェックボックスを選択します。
変更されたインスペクションは青色で書かれています。 をクリックして変更されたインスペクションのみ表示を選択し、設定が変更されたインスペクションのみを表示することもできます。
変更を適用するには、OK をクリックします。
インスペクションの抑止
インスペクションを抑制すると、コード分析エンジンは、特定のコード部分 (クラス、メソッド、フィールド、ステートメント) 内でこのインスペクションによって検出された問題をハイライトしません。現在のクラス内のすべてのインスペクションを抑制することもできます。
PyCharm のほとんどのインスペクションを抑制できます。ただし、一部のインスペクションにはこのオプションがありません。例: 構文エラーは、設定に関係なく、エディターで常にハイライトされます。
エディターからのインスペクションの抑制
ハイライトされた行にキャレットを置き、Alt+Enter を押します(または をクリックしてインテンションアクションを使用します)。
抑制するインスペクションの横にある ボタンをクリックし、必要な範囲に応じて抑制アクションを選択します。
PyCharm は、対応するコードに特別なコメントを追加します。
インスペクションなしのコメントをさらに見る。
または、
noqa
コメントを使用して、個々のインスペクションを抑制できます。コメント行では、flake8 エラーコード(英語)および pycodestyle.py エラーコード(英語)を指定できます。
問題ツールウィンドウからインスペクションを抑制する
問題ツールウィンドウのインスペクション結果タブ (コード分析を実行すると表示されます) で、抑制するインスペクションを右クリックし、必要な抑制アクションを選択します。
報告された問題はタイプごとにグループ化されているため、同じタイプのすべてのインスペクションを評価して抑制することができます。
ハイライトを無効にしますが、修正は保持する
インスペクションには重大度があり、エディターでコードの問題をハイライトします。設定を開かなくても、インスペクションのコードのハイライトをすばやく無効にすることができます。この場合、インスペクションは有効なままで修正を提供しますが、重大度はハイライトしない (修正を使用できます) に変わります。
エディターでインスペクションによってハイライトされているコード要素にキャレットを置き、Alt+Enter を押します。
利用可能な修正とコンテキストアクションのリストが開きます。 でマークされたインスペクションフィックスを見つけます。
修正の横にある ボタンをクリックしてインスペクションのオプションを開き、ハイライトの無効化、修正の保持を選択します。
重大度を変更するインスペクションの名前は、インスペクションのオプションの上に書かれています。
ハイライトを元に戻したい場合は、Ctrl+Alt+S を押して IDE 設定を開き、すべてのスコープでインスペクションの重大度を変更するを参照してください。
を選択します。リストで必要なインスペクションを見つけて、必要に応じて重大度を変更します。詳細については、ファイルのハイライトレベルを変更する
デフォルトでは、PyCharm は検出されたすべてのコードの問題をハイライトします。エディターの右上隅にあるウィジェットの上にマウスを置き、ハイライトリストから別のレベルを選択します。
なし : ハイライトをオフにします。
構文 : 構文上の問題のみをハイライトします。
すべての問題 : (デフォルト)構文の問題とインスペクションで見つかった問題をハイライトします。
メインメニューからハイライトレベルを変更することもできます。
を選択します。
コメントを抑制する
# noinspection DuplicatedCode
# noinspection PyAbstractClass
# noinspection PyArgumentEqualDefault
# noinspection PyArgumentList
# noinspection PyAssignmentToLoopOrWithParameter
# noinspection PyAsyncCall
# noinspection PyAttributeOutsideInit
# noinspection PyAugmentAssignment
# noinspection PyBroadException
# noinspection PyByteLiteral
# noinspection PyCallByClass
# noinspection PyChainedComparisons
# noinspection PyClassHasNoInit
# noinspection PyClassicStyleClass
# noinspection PyComparisonWithNone
# noinspection PyCompatibility
# noinspection PyDecorator
# noinspection PyDefaultArgument
# noinspection PyDictCreation
# noinspection PyDictDuplicateKeys
# noinspection PyDocstringTypes
# noinspection PyExceptClausesOrder
# noinspection PyExceptionInheritance
# noinspection PyFromFutureImport
# noinspection PyGlobalUndefined
# noinspection PyIncorrectDocstring
# noinspection PyInitNewSignature
# noinspection PyInterpreter
# noinspection PyListCreation
# noinspection PyMandatoryEncoding
# noinspection PyMethodFirstArgAssignment
# noinspection PyMethodMayBeStatic
# noinspection PyMethodOverriding
# noinspection PyMethodParameters
# noinspection PyMissingConstructor
# noinspection PyMissingOrEmptyDocstring
# noinspection PyNestedDecorators
# noinspection PyNoneFunctionAssignment
# noinspection PyOldStyleClasses
# noinspection PyPackageRequirements
# noinspection PyPep8
# noinspection PyPep8Naming
# noinspection PyPropertyAccess
# noinspection PyPropertyDefinition
# noinspection PyProtectedMember
# noinspection PyRaisingNewStyleClass
# noinspection PyRedeclaration
# noinspection PyRedundantParentheses
# noinspection PySetFunctionToLiteral
# noinspection PyShadowingNames
# noinspection PySimplifyBooleanCheck
# noinspection PySingleQuotedDocstring
# noinspection PyStatementEffect
# noinspection PyStringException
# noinspection PyStringFormat
# noinspection PySuperArguments
# noinspection PyTestParametrized
# noinspection PythonAsciiChar
# noinspection PyTrailingSemicolon
# noinspection PyTupleAssignmentBalance
# noinspection PyTupleItemAssignment
# noinspection PyTypeChecker
# noinspection PyUnboundLocalVariable
# noinspection PyUnnecessaryBackslash
# noinspection PyUnreachableCode
# noinspection PyUnresolvedReferences
# noinspection PyUnusedLocal
# noinspection ReturnValueFromInit
# noinspection SpellCheckingInspection
関連ページ:
スコープ
スコープは、プロジェクト内のファイル、パッケージ、ディレクトリのサブセットであり、検索、コードインスペクションなどの特定の操作の適用を制限できます。さらに、各スコープの色分けを設定して、どのような種類のファイルを扱っているかを一度に確認できます。プロジェクトが大きくなるにつれて、スコープはさらに役立ちます。基本的なケースをカバーするいくつかの定義済みスコープがあります。さらに、プロジェクトにカスタムスコープを追加することも可能です。例: テスト用またはチーム内で担当しているファイル用にカスタムス...
インスペクションの重大度を変更する
インスペクション重大度レベルは、検出されたコードの問題がプロジェクトに与える影響の深刻度を示します。PyCharm には、定義済みの一連の重大度レベルがあります。エラー構文エラー警告バグを引き起こす可能性がある、または拡張が必要なコードの断片弱い警告改善または最適化できるコードの断片 (冗長なコード、重複したコードフラグメントなど) サーバーの問題外部ビルドサーバー (TeamCity など) に起因する問題文法エラー文法の間違い。この重大度は、バンドルされている Grazie Lite プラグインに...
カスタムインスペクションを作成する
カスタムインスペクションを作成するには、検索を構成してテンプレートを置き換える必要があります。IDE はテンプレートに一致するコードを検索し、それをエディターでハイライトします。設定ダイアログで、に移動します。新しいインスペクションを作成するプロファイルを選択します。ツールバーでカスタムインスペクションの追加ボタン () をクリックし、インスペクションでコードのみをハイライトする場合は構造検索インスペクションの追加…を選択します。または、インスペクションでコード文字列をハイライトして修正を提案す...