Last updated:
0 purchases
precommitrunhookentry 1.0.0b1
Run pre-commit hook entry. Allow to run pre-commit hooks for text editor
formatting / linting needs.
Danger Zone
IMPORTANT: This is highly experimental tool as pre-commit internals does
not intend to be used in other scripts.
It might be broken after new pre-commit release.
TO USE WITH CAUTION!
Requirements
Python 3.7 or later
pre-commit 2.19.0 or later
License
pre-commit-run-hook-entry is licensed under the terms of
BSD-3-Clause license.
Installation
pip install pre-commit-run-hook-entry
Usage
pre-commit-run-hook-entry HOOK [ARGS]
pre-commit-which-hook-entry HOOK
Prerequisites
pre-commit-run-hook-entry only works in directories, where
pre-commit run --all HOOK is executable.
VS Code Integration
Example below illustrates how to configure VS Code to use black, flake8 &
mypy pre-commit hooks for formatting & linting,
{
"python.formatting.provider": "black",
"python.formatting.blackPath": "pre-commit-run-hook-entry",
"python.formatting.blackArgs": ["black"],
"python.linting.enabled": true,
"python.linting.flake8Enabled": true,
"python.linting.flake8Path": "pre-commit-run-hook-entry",
"python.linting.flake8Args": ["flake8"],
"python.linting.mypyEnabled": true,
"python.linting.mypyPath": "pre-commit-run-hook-entry",
"python.linting.mypyArgs": ["mypy"]
}
Sublime Text 3 Integration
sublack
From one point sublack has builtin
pre-commit integration, but it seems do not respect settings from
pyproject.toml, to fix this use pre-commit-run-black-entry as
sublack.black_command,
{
"sublack.black_command": "pre-commit-run-black-entry"
}
SublimeLinter-flake8
{
"SublimeLinter.linters.flake8.executable": "pre-commit-run-hook-entry",
"SublimeLinter.linters.flake8.args": ["--", "flake8"]
}
SublimeLinter-contrib-mypy
{
"SublimeLinter.linters.mypy.executable": "pre-commit-run-hook-entry",
"SublimeLinter.linters.mypy.args": ["--", "mypy"]
}
SublimeJsPrettier
First, you need to find out path to prettier hook entry with,
pre-commit-which-hook-entry prettier
Then, paste command output (<OUTPUT>) into plugin config,
{
"js_prettier": {
"prettier_cli_path": "<OUTPUT>"
}
}
SublimeLinter-eslint
First, you need to find out path to eslint hook entry with,
pre-commit-which-hook-entry eslint
Then, paste command output (<OUTPUT>) into plugin config,
{
"SublimeLinter.linters.eslint.executable": "<OUTPUT>",
"SublimeLinter.linters.eslint.env": {
"NODE_PATH": "<OUTPUT>/../../lib/node_modules"
}
}
IMPORTANT: If you’re using any additionalDependencies for eslint hook,
you need to configure NODE_PATH, so plugin will be able to find out given
dependencies.
Issues & Feature Requests
Feel free to submit new issue or feature request at GitHub
For personal and professional use. You cannot resell or redistribute these repositories in their original state.
There are no reviews.