coc-sqlfluff
v0.11.4
Published
SQLFluff (A SQL linter and auto-formatter for Humans) extension for coc.nvim
Downloads
101
Maintainers
Readme
coc-sqlfluff
SQLFluff (A SQL linter and auto-formatter for Humans) extension for coc.nvim
Features
- Lint
- Format
- Code Action
- Built-in installer
Install
CocInstall:
:CocInstall coc-sqlfluff
vim-plug:
Plug 'yaegassy/coc-sqlfluff', {'do': 'yarn install --frozen-lockfile'}
Detect: sqlfluff
sqlfluff.commandPath
setting- PATH environment (e.g. system global PATH or venv, etc ...)
- builtin: extension-only "venv" (Installation commands are also provided)
Bult-in install
coc-sqlfluff allows you to create an extension-only "venv" and install "sqlfluff".
The first time you use coc-sqlfluff, if sqlfluff is not detected, you will be prompted to do a built-in installation.
You can also run the installation command manually.
:CocCommand sqlfluff.install
SQLFluff configuration file (setup.cfg, tox.ini, pep8.ini, .sqlfluff, pyproject.toml)
SQLFluff is able to read project-specific default values for its command line options, or from a configuration file.
SQLFluff will look for the following files in order. Later files will (if found) will be used to overwrite any vales read from earlier files.
setup.cfg
tox.ini
pep8.ini
.sqlfluff
pyproject.toml
REF:
Configuration options
sqlfluff.enable
: Enable coc-sqlfluff extension, default:true
sqlfluff.commandPath
: The path to the sqlfluff command (Absolute path), default:""
sqlfluff.builtin.pythonPath
: Python 3.x path (Absolute path) to be used for built-in install, default:""
sqlfluff.dialect
: The dialect of SQL to lint, valid option:["ansi", "bigquery", "clickhouse", "databricks", "db2", "duckdb", "exasol", "hive", "mysql", "oracle", "postgres", "redshift", "snowflake", "soql", "sparksql", "sqlite", "teradata", "tsql"]
, default:"ansi"
sqlfluff.linter.ignoreParsing
: Whether the sql linter should ignore parsing errors, default:true
sqlfluff.lintOnOpen
: Lint file on opening, default:true
sqlfluff.lintOnChange
: Lint file on change, default:true
sqlfluff.lintOnSave
: Lint file on save, default:true
sqlfluff.formatEnable
: Whether the document formatter is enabled or not, default:true
sqlfluff.formatIgnoreStderrAlert
: Ignore stderr message output when formatting is executed, e.g.Unfixable violations detected
, default:true
Commands
sqlfluff.install
: Install sqlfluff- It will be installed in this path:
- Mac/Linux:
~/.config/coc/extensions/coc-sqlfluff-data/sqlfluff/venv/bin/sqlfluff
- Windows:
~/AppData/Local/coc/extensions/coc-sqlfluff-data/sqlfluff/venv/Scripts/sqlfluff.exe
- Mac/Linux:
- It will be installed in this path:
sqlfluff.fix
: Run sqlfluff fix filesqlfluff.format
: Run sqlfluff format file (Available in sqlfluffv2.0.0
and later)sqlfluff.showOutput
: Show sqlfluff output channel
Code Actions
Example key mapping (Code Action related):
nmap <silent> ga <Plug>(coc-codeaction-line)
Usage:
In the line with diagnostic message, enter the mapped key (e.g. ga
) and you will see a list of code actions that can be performed.
Actions:
Ignoring Errors for current line (-- noqa)
Ignoring Errors for current line (-- noqa: disable=all)
Ignoring Errors for current line (-- noqa: enable=all)
Show web documentation for {RULE_ID}
Thanks
License
MIT
This extension is built with create-coc-extension