=============================================================================== ALE Python Integration *ale-python-options* =============================================================================== ALE Python Project Root Behavior *ale-python-root* For some linters, ALE will search for a Python project root by looking at the files in directories on or above where a file being checked is. ALE applies the following methods, in order: 1. Find the first directory containing a common Python configuration file. 2. If no configuration file can be found, use the first directory which does not contain a readable file named `__init__.py`. ALE will look for configuration files with the following filenames. > MANIFEST.in setup.cfg pytest.ini tox.ini mypy.ini pycodestyle.cfg flake8.cfg < The first directory containing any of the files named above will be used. =============================================================================== autopep8 *ale-python-autopep8* g:ale_python_autopep8_executable *g:ale_python_autopep8_executable* *b:ale_python_autopep8_executable* Type: |String| Default: `'autopep8'` See |ale-integrations-local-executables| g:ale_python_autopep8_options *g:ale_python_autopep8_options* *b:ale_python_autopep8_options* Type: |String| Default: `''` This variable can be set to pass extra options to autopep8. g:ale_python_autopep8_use_global *g:ale_python_autopep8_use_global* *b:ale_python_autopep8_use_global* Type: |Number| Default: `get(g:, 'ale_use_global_executables', 0)` See |ale-integrations-local-executables| =============================================================================== black *ale-python-black* g:ale_python_black_executable *g:ale_python_black_executable* *b:ale_python_black_executable* Type: |String| Default: `'black'` See |ale-integrations-local-executables| autopep8 g:ale_python_black_options *g:ale_python_black_options* *b:ale_python_black_options* Type: |String| Default: `''` This variable can be set to pass extra options to black. g:ale_python_black_use_global *g:ale_python_black_use_global* *b:ale_python_black_use_global* Type: |Number| Default: `get(g:, 'ale_use_global_executables', 0)` See |ale-integrations-local-executables| =============================================================================== flake8 *ale-python-flake8* g:ale_python_flake8_change_directory *g:ale_python_flake8_change_directory* *b:ale_python_flake8_change_directory* Type: |Number| Default: `1` If set to `1`, ALE will switch to the directory the Python file being checked with `flake8` is in before checking it. This helps `flake8` find configuration files more easily. This option can be turned off if you want to control the directory Python is executed from yourself. g:ale_python_flake8_executable *g:ale_python_flake8_executable* *b:ale_python_flake8_executable* Type: |String| Default: `'flake8'` This variable can be changed to modify the executable used for flake8. g:ale_python_flake8_options *g:ale_python_flake8_options* *b:ale_python_flake8_options* Type: |String| Default: `''` This variable can be changed to add command-line arguments to the flake8 invocation. For example, to dynamically switch between programs targeting Python 2 and Python 3, you may want to set > let g:ale_python_flake8_executable = 'python3' " or 'python' for Python 2 let g:ale_python_flake8_options = '-m flake8' < after making sure it's installed for the appropriate Python versions (e.g. `python3 -m pip install --user flake8`). g:ale_python_flake8_use_global *g:ale_python_flake8_use_global* *b:ale_python_flake8_use_global* Type: |Number| Default: `get(g:, 'ale_use_global_executables', 0)` This variable controls whether or not ALE will search for flake8 in a virtualenv directory first. If this variable is set to `1`, then ALE will always use |g:ale_python_flake8_executable| for the executable path. Both variables can be set with `b:` buffer variables instead. =============================================================================== isort *ale-python-isort* g:ale_python_isort_executable *g:ale_python_isort_executable* *b:ale_python_isort_executable* Type: |String| Default: `'isort'` See |ale-integrations-local-executables| g:ale_python_isort_use_global *g:ale_python_isort_use_global* *b:ale_python_isort_use_global* Type: |Number| Default: `get(g:, 'ale_use_global_executables', 0)` See |ale-integrations-local-executables| =============================================================================== mypy *ale-python-mypy* The minimum supported version of mypy that ALE supports is v0.4.4. This is the first version containing the `--shadow-file` option ALE needs to be able to check for errors while you type. `mypy` will be run from a detected project root, per |ale-python-root|. g:ale_python_mypy_executable *g:ale_python_mypy_executable* *b:ale_python_mypy_executable* Type: |String| Default: `'mypy'` See |ale-integrations-local-executables| g:ale_python_mypy_ignore_invalid_syntax *g:ale_python_mypy_ignore_invalid_syntax* *b:ale_python_mypy_ignore_invalid_syntax* Type: |Number| Default: `0` When set to `1`, syntax error messages for mypy will be ignored. This option can be used when running other Python linters which check for syntax errors, as mypy can take a while to finish executing. g:ale_python_mypy_options *g:ale_python_mypy_options* *b:ale_python_mypy_options* Type: |String| Default: `''` This variable can be changed to add command-line arguments to the mypy invocation. g:ale_python_mypy_use_global *g:ale_python_mypy_use_global* *b:ale_python_mypy_use_global* Type: |Number| Default: `get(g:, 'ale_use_global_executables', 0)` See |ale-integrations-local-executables| =============================================================================== prospector *ale-python-prospector* g:ale_python_prospector_executable *g:ale_python_prospector_executable* *b:ale_python_prospector_executable* Type: |String| Default: `'prospector'` See |ale-integrations-local-executables| g:ale_python_prospector_options *g:ale_python_prospector_options* *b:ale_python_prospector_options* Type: |String| Default: `''` This variable can be changed to add command-line arguments to the prospector invocation. For example, to dynamically switch between programs targeting Python 2 and Python 3, you may want to set > let g:ale_python_prospector_executable = 'python3' " or 'python' for Python 2 let g:ale_python_prospector_options = '--rcfile /path/to/.prospector.yaml' " The virtualenv detection needs to be disabled. let g:ale_python_prospector_use_global = 0 after making sure it's installed for the appropriate Python versions (e.g. `python3 -m pip install --user prospector`). g:ale_python_prospector_use_global *g:ale_python_prospector_use_global* *b:ale_python_prospector_use_global* Type: |Number| Default: `get(g:, 'ale_use_global_executables', 0)` See |ale-integrations-local-executables| =============================================================================== pycodestyle *ale-python-pycodestyle* g:ale_python_pycodestyle_executable *g:ale_python_pycodestyle_executable* *b:ale_python_pycodestyle_executable* Type: |String| Default: `'pycodestyle'` See |ale-integrations-local-executables| g:ale_python_pycodestyle_options *g:ale_python_pycodestyle_options* *b:ale_python_pycodestyle_options* Type: |String| Default: `''` This variable can be changed to add command-line arguments to the pycodestyle invocation. g:ale_python_pycodestyle_use_global *g:ale_python_pycodestyle_use_global* *b:ale_python_pycodestyle_use_global* Type: |Number| Default: `get(g:, 'ale_use_global_executables', 0)` See |ale-integrations-local-executables| =============================================================================== pylint *ale-python-pylint* g:ale_python_pylint_change_directory *g:ale_python_pylint_change_directory* *b:ale_python_pylint_change_directory* Type: |Number| Default: `1` If set to `1`, ALE will switch to the directory the Python file being checked with `pylint` is in before checking it. This helps `pylint` find configuration files more easily. This option can be turned off if you want to control the directory Python is executed from yourself. g:ale_python_pylint_executable *g:ale_python_pylint_executable* *b:ale_python_pylint_executable* Type: |String| Default: `'pylint'` See |ale-integrations-local-executables| g:ale_python_pylint_options *g:ale_python_pylint_options* *b:ale_python_pylint_options* Type: |String| Default: `''` This variable can be changed to add command-line arguments to the pylint invocation. For example, to dynamically switch between programs targeting Python 2 and Python 3, you may want to set > let g:ale_python_pylint_executable = 'python3' " or 'python' for Python 2 let g:ale_python_pylint_options = '--rcfile /path/to/pylint.rc' " The virtualenv detection needs to be disabled. let g:ale_python_pylint_use_global = 0 after making sure it's installed for the appropriate Python versions (e.g. `python3 -m pip install --user pylint`). g:ale_python_pylint_use_global *g:ale_python_pylint_use_global* *b:ale_python_pylint_use_global* Type: |Number| Default: `get(g:, 'ale_use_global_executables', 0)` See |ale-integrations-local-executables| =============================================================================== pyls *ale-python-pyls* `pyls` will be run from a detected project root, per |ale-python-root|. g:ale_python_pyls_executable *g:ale_python_pyls_executable* *b:ale_python_pyls_executable* Type: |String| Default: `'pyls'` See |ale-integrations-local-executables| g:ale_python_pyls_use_global *g:ale_python_pyls_use_global* *b:ale_python_pyls_use_global* Type: |Number| Default: `get(g:, 'ale_use_global_executables', 0)` See |ale-integrations-local-executables| =============================================================================== yapf *ale-python-yapf* g:ale_python_yapf_executable *g:ale_python_yapf_executable* *b:ale_python_yapf_executable* Type: |String| Default: `'yapf'` See |ale-integrations-local-executables| g:ale_python_yapf_use_global *g:ale_python_yapf_use_global* *b:ale_python_yapf_use_global* Type: |Number| Default: `get(g:, 'ale_use_global_executables', 0)` See |ale-integrations-local-executables| =============================================================================== vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl: