{"id":19227932,"url":"https://github.com/snakemake/snakemake-lang-vscode-plugin","last_synced_at":"2025-04-21T01:31:51.831Z","repository":{"id":40287709,"uuid":"345601043","full_name":"snakemake/snakemake-lang-vscode-plugin","owner":"snakemake","description":"Language support and snippets for Snakemake workflows (Snakefile, *.smk) for Visual Studio Code and Apache Theia.","archived":false,"fork":false,"pushed_at":"2025-04-20T16:10:35.000Z","size":202,"stargazers_count":16,"open_issues_count":13,"forks_count":16,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-04-20T16:33:13.557Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/snakemake.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2021-03-08T09:31:41.000Z","updated_at":"2025-04-08T09:06:00.000Z","dependencies_parsed_at":"2025-04-20T16:27:03.790Z","dependency_job_id":"2f04408a-45bb-4425-846c-84a6ffd97524","html_url":"https://github.com/snakemake/snakemake-lang-vscode-plugin","commit_stats":null,"previous_names":[],"tags_count":15,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/snakemake%2Fsnakemake-lang-vscode-plugin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/snakemake%2Fsnakemake-lang-vscode-plugin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/snakemake%2Fsnakemake-lang-vscode-plugin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/snakemake%2Fsnakemake-lang-vscode-plugin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/snakemake","download_url":"https://codeload.github.com/snakemake/snakemake-lang-vscode-plugin/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":249982552,"owners_count":21355716,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-09T15:25:57.359Z","updated_at":"2025-04-21T01:31:51.469Z","avatar_url":"https://github.com/snakemake.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Snakemake Language Support\n\nProvides basic language support for [Snakemake](https://snakemake.readthedocs.io) files (Snakefile, *.smk).\nFeedback, suggestions, and contributions are very welcome!\n\nThis project has been started by Peter Alping, and can be considered a fork of [this repository](https://gitlab.com/alping/vscode-snakemake).\n\n## Features\n\n- Syntax definitions based on Python, with added Snakemake keywords\n- Language rules based on Python\n- Snippets\n\n## Example\n\n![Snakemake syntax highlighting example](misc/example.png)\n\n\u003c!--\nNeeds to be published with:\nvsce publish --baseContentUrl https://gitlab.com/alping/vscode-snakemake/raw/master\n--\u003e\n\nExample taken from [Snakemake documentation](https://snakemake.readthedocs.io/en/stable/tutorial/advanced.html#summary).\n\n## Supported Syntax\n\n\u003cdetails\u003e\n\n\u003csummary\u003eKeywords and Functions\u003c/summary\u003e\n\n- Configurations\n  - configfile\n  - include\n  - localrules\n  - onerror\n  - onstart\n  - onsuccess\n  - ruleorder\n  - snakefile\n  - workdir\n- Rules\n  - checkpoint\n  - rule\n  - subworkflow\n- Rule Parameters\n  - benchmark\n  - conda\n  - cwl\n  - group\n  - input\n  - log\n  - message\n  - output\n  - params\n  - priority\n  - resources\n  - run\n  - script\n  - shadow\n  - shell\n  - singularity\n  - threads\n  - version\n  - wildcard_constraints\n  - wrapper\n- Functions\n  - ancient\n  - directory\n  - expand\n  - pipe\n  - protected\n  - temp\n  - touch\n  - unpack\n\n\u003c/details\u003e\n\n## TODO\n\n- [ ] Indentation rules (really tricky for some reason)\n- [ ] Recognize string substitutions: `\"command {input}\"`\n- [ ] Recognize wildcard constraints inside string substitutions: `\"{sample,[A-Za-z0-9]+}\"`\n\n## Snakemake Support for other Editors\n\n- [Vim](https://github.com/snakemake/snakemake/tree/master/misc/vim)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsnakemake%2Fsnakemake-lang-vscode-plugin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsnakemake%2Fsnakemake-lang-vscode-plugin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsnakemake%2Fsnakemake-lang-vscode-plugin/lists"}