snakemake/snakemake-lang-vscode-plugin

Build targets in sidebar

Hugovdberg opened this issue · 2 comments

It would be nice to have a panel in the sidebar that lists all the targets in the Snakefile so you can quickly run a target, perhaps including a [Force run] button, and an option to quickly jump to the definition.

A plain text mockup:

  • all [> [!> [\
  • download_data [> [!> [\
  • preprocess_data [> [!> [\

using the following definitions for the symbold:

  • [> Run selected rule, call snakemake {rule}
  • [!> Force run selected rule, call `snakemake --force {rule}
  • [\ Edit rule definition, open file and go to line

Some things that need to be considered:

  • visualise modular rules
  • handle multiple open folders in the current workspace
  • select profile to use (per open folder)
  • how and when to update the list of rules as building the list can be slow
  • visualise running rules, can we allow starting multiple rules in parallel?

Finally, I don't have any experience building VS Code plugins, but I figure it should be possible.

That is a great idea! I am happy to take a PR.

Do you have more things we should consider when developing this?