VSCodeインストール構成yapf

10051 ワード

目次

  • yapf概要
  • 取付
  • 有効
  • 行最大文字数
  • を変更
  • 別の方法
  • yapfの概要


    yapfはGoogleからオープンソースのPythonコード自動フォーマットツールで、PEP 8の規範に基づいて私たちのコードを自動的にフォーマットして、コードをもっと規範的で、もっときれいにすることができます.
    VSCDEのインストール構成yapfについて説明します

    インストール

    pip install yapf
    

    使用可能

  • File -> Preferences -> Setting
  • 検索ボックス入力:formatting.provider
  • プルダウンメニュー選択yapf
  • 行の最大文字数の変更


    このうち最大列幅は80に制限され、80を超えるとフォーマット時にyapfで改行され、現在ではディスプレイが大きくなるにつれて解像度も高くなるので、この制限を適切に修正することができます.
    対応する項目のファイルを見つけます\.venv\Lib\site-packages\yapf\yapflib\style.py
    次の関数を見つけます
    def CreatePEP8Style():
        return dict(
            ALIGN_CLOSING_BRACKET_WITH_VISUAL_INDENT=True,
            ALLOW_MULTILINE_LAMBDAS=False,
            ALLOW_MULTILINE_DICTIONARY_KEYS=False,
            ALLOW_SPLIT_BEFORE_DEFAULT_OR_NAMED_ASSIGNS=True,
            ALLOW_SPLIT_BEFORE_DICT_VALUE=True,
            ARITHMETIC_PRECEDENCE_INDICATION=False,
            BLANK_LINE_BEFORE_NESTED_CLASS_OR_DEF=False,
            BLANK_LINE_BEFORE_CLASS_DOCSTRING=False,
            BLANK_LINE_BEFORE_MODULE_DOCSTRING=False,
            BLANK_LINES_AROUND_TOP_LEVEL_DEFINITION=2,
            COALESCE_BRACKETS=False,
            COLUMN_LIMIT=79,
            CONTINUATION_ALIGN_STYLE='SPACE',
            CONTINUATION_INDENT_WIDTH=4,
            DEDENT_CLOSING_BRACKETS=False,
            INDENT_CLOSING_BRACKETS=False,
            DISABLE_ENDING_COMMA_HEURISTIC=False,
            EACH_DICT_ENTRY_ON_SEPARATE_LINE=True,
            I18N_COMMENT='',
            I18N_FUNCTION_CALL='',
            INDENT_DICTIONARY_VALUE=False,
            INDENT_WIDTH=4,
            INDENT_BLANK_LINES=False,
            JOIN_MULTIPLE_LINES=True,
            NO_SPACES_AROUND_SELECTED_BINARY_OPERATORS=set(),
            SPACE_BETWEEN_ENDING_COMMA_AND_CLOSING_BRACKET=True,
            SPACES_AROUND_POWER_OPERATOR=False,
            SPACES_AROUND_DEFAULT_OR_NAMED_ASSIGN=False,
            SPACES_BEFORE_COMMENT=2,
            SPLIT_ARGUMENTS_WHEN_COMMA_TERMINATED=False,
            SPLIT_ALL_COMMA_SEPARATED_VALUES=False,
            SPLIT_ALL_TOP_LEVEL_COMMA_SEPARATED_VALUES=False,
            SPLIT_BEFORE_ARITHMETIC_OPERATOR=False,
            SPLIT_BEFORE_BITWISE_OPERATOR=True,
            SPLIT_BEFORE_CLOSING_BRACKET=True,
            SPLIT_BEFORE_DICT_SET_GENERATOR=True,
            SPLIT_BEFORE_DOT=False,
            SPLIT_BEFORE_EXPRESSION_AFTER_OPENING_PAREN=False,
            SPLIT_BEFORE_FIRST_ARGUMENT=False,
            SPLIT_BEFORE_LOGICAL_OPERATOR=True,
            SPLIT_BEFORE_NAMED_ASSIGNS=True,
            SPLIT_COMPLEX_COMPREHENSION=False,
            SPLIT_PENALTY_AFTER_OPENING_BRACKET=300,
            SPLIT_PENALTY_AFTER_UNARY_OPERATOR=10000,
            SPLIT_PENALTY_ARITHMETIC_OPERATOR=300,
            SPLIT_PENALTY_BEFORE_IF_EXPR=0,
            SPLIT_PENALTY_BITWISE_OPERATOR=300,
            SPLIT_PENALTY_COMPREHENSION=80,
            SPLIT_PENALTY_EXCESS_CHARACTER=7000,
            SPLIT_PENALTY_FOR_ADDED_LINE_SPLIT=30,
            SPLIT_PENALTY_IMPORT_NAMES=0,
            SPLIT_PENALTY_LOGICAL_OPERATOR=300,
            USE_TABS=False,
        )
    
    COLUMN_LIMIT=79,COLUMN_LIMIT=120,に変更すると、列幅が120に変更されます.

    別の方法


    vscodeのsettings.jsonは次のように変更し、希望する文字数を入力します.
    {
        "python.formatting.provider": "yapf",
        "python.formatting.yapfArgs": ["--style", "{column_limit: 79}"],
    }