dense-analysis / dense-analysis/ale
Add support for snakefmt (a close cousin of Black) for snakemake files (a DSL based on python)
- Dominant language
- Vim Script
- Stars
- 14k
- Forks
- 1.5k
- Avg merge
- 17h 49m
- Merged PRs (30d)
- 1
Description
**Name:** snakefmt
**URL:** https://github.com/snakemake/snakefmt
- snakefmt provides formatting for [Snakemake](https://snakemake.github.io/) files ([Snakemake](https://snakemake.github.io/) is a modern data analysis pipeline tool for scientific computing in the spirit of the venerable GNU Make.
- Snakemake files (i.e. the pipeline scripts) are written in a domain-specific language (DSL) that extends standard python (and is very close to standard python). The snakemake executable itself is written in python.
- The snakefmt formatter follows the design and specifications of the python formatter Black.
- Takes input from stdin and modifies contents in-place by default
In the official snakefmt repository, there already exists a plugin that can integrate with `vim` to provide the `:snakefmt` command. Furthermore, vim autocommands can be set up to automatically run `:snakefmt` upon every save operation. See the instructions [here](https://github.com/snakemake/snakefmt/blob/master/docs/editor_integration.md#Vim).
All these give an impression that it should be straightforward to integrate `snakefmt` within `ale`.
Contributor guide
Assessment
This issue has not been assessed yet.