{"ref":"artifact:larshp-vscode-abap","page":"/artifacts/larshp-vscode-abap","json":"/artifacts/larshp-vscode-abap.json","generated":"2026-10-26","drafted_with_ai":true,"entity":{"id":"larshp-vscode-abap","name":"ABAP Syntax Highlighting","artifact_type":"ide-extension","ecosystem":"abap","domain":"developer-experience","origin_ring":"independent","use_as":"dependency","source_available":true,"description":{"one_line":"A VS Code extension that registers .abap files as the language abap and colours them with a TextMate grammar.","short":"VS Code syntax highlighting for .abap files","what_it_solves":"An .abap file on disk opens in Visual Studio Code as plain text, with nothing to tell a keyword from a comment. This extension contributes the language abap for the file extensions .abap and .ABAP and binds a TextMate grammar to it under the scope source.abap, written from [pvl/abap.tmbundle](https://github.com/pvl/abap.tmbundle), the TextMate bundle the README names as its basis. The manifest contributes that language and that grammar and nothing more: no completion, no validation, no connection to a system. Token colours are overridden per theme through an editor.tokenColorCustomizations section in settings.json, which is how the README gives a colour to keyword.operator.abap, a scope with no highlighting of its own by default. A comment pair of * #region and * #endregion folds the lines between them and marks them in the minimap.","when_not_to_use":"It binds to the .abap and .ABAP file extensions inside Visual Studio Code, so it does nothing for ABAP opened in another editor, or for source read from a system over ADT instead of from a file on disk.","to_build_on_it":"The whole grammar is one TextMate file, ./syntaxes/abap.tmLanguage, with the editor's own brackets and comment rules beside it in language-configuration.json, and the repository is MIT-licensed. Adding a scope means editing that file and the token colours a theme maps onto it."},"links":{"repo":"https://github.com/larshp/vscode-abap","homepage":"https://marketplace.visualstudio.com/items?itemName=larshp.vscode-abap"},"provides":[{"capability":"capability:editor-support","what_it_does":"Colours ABAP source in Visual Studio Code, by registering .abap and .ABAP as the language abap and binding a TextMate grammar to it under the scope source.abap. It also folds the lines between a * #region and a * #endregion comment and shows that region in the minimap, and its token colours can be overridden per theme in settings.json.","sources":[{"url":"https://github.com/larshp/vscode-abap","title":"larshp/vscode-abap — README","checked":"2026-10-25","quote":"ABAP syntax highlighting for Visual Studio Code"},{"url":"https://raw.githubusercontent.com/larshp/vscode-abap/main/package.json","title":"larshp/vscode-abap — package.json, languages","checked":"2026-10-25","quote":"\"id\": \"abap\""},{"url":"https://raw.githubusercontent.com/larshp/vscode-abap/main/package.json","title":"larshp/vscode-abap — package.json, file extensions","checked":"2026-10-25","quote":"\".abap\","},{"url":"https://raw.githubusercontent.com/larshp/vscode-abap/main/package.json","title":"larshp/vscode-abap — package.json, grammars","checked":"2026-10-25","quote":"\"scopeName\": \"source.abap\""},{"url":"https://github.com/larshp/vscode-abap","title":"larshp/vscode-abap — README, Folding / Regions","checked":"2026-10-25","quote":"this will make a foldable region, plus show up in the minimap,"},{"url":"https://github.com/larshp/vscode-abap","title":"larshp/vscode-abap — README, Customization","checked":"2026-10-25","quote":"If you want to customize the token colors, add an `editor.tokenColorCustomizations` section to your vscode `settings.json`."}]}],"maintainers":["actor:larshp"],"provenance":{"discovered_via":[{"source":"source:curator"}],"first_seen":"2026-10-25"},"drafted_with_ai":true,"contributors":["actor:albertmink","actor:frehu","actor:larshp","actor:marcellourbani"]},"effective_normative_relations":[],"readings":{"liveness":[{"label":"Maintenance","tier":"unknown","evidence":"no release data"},{"label":"Continuity","tier":"good","evidence":"4 contributors"},{"label":"Repository","tier":"poor","evidence":"pushed 2024-07, not archived"}],"compatibility":[{"label":"Declared for","tier":"fair","evidence":"nothing declared"},{"label":"Survived majors","tier":"unknown","evidence":"not read on ABAP: its lines run side by side"},{"label":"Maintainer's CI","tier":"fair","evidence":"no CI configured"}],"practice":[{"label":"Tests","tier":"poor","evidence":"none found in the tree"},{"label":"Docs","tier":"fair","evidence":"README 1 KB"},{"label":"Changelog","tier":"fair","evidence":"none in the repo"}],"reach":[{"value":null,"unit":"installs/week"},{"value":34,"unit":"watching"}]},"signals":{"crawled_at":"2026-10-25","npm":"not published under this name","stars":34,"forks":9,"open_issues":9,"archived":false,"pushed_at":"2024-07-17","license_spdx":"MIT","org_owned":false,"default_branch":"main","created_at":"2016-01-22T11:21:10Z","open_prs":1,"tree_truncated":false,"test_files":0,"workflows":0,"other_ci":false,"readme_bytes":1044,"docs_files":0,"changelog":false,"license_file":true,"dts_files":0,"first_commit":"2016-01-22","last_commit":"2024-07-17","commits":57,"contributors":4,"readme_path":"README.md","readme_sha":"878b2af9d3aa16e16cdb2b0432eafefc868145a8","repo_read":"2026-10-25"},"edges":{"maintainers":[{"ref":"actor:larshp","name":"Lars Hvam","json":"/actors/larshp.json"}],"contributors":[{"ref":"actor:albertmink","name":"Albert Mink","json":"/actors/albertmink.json"},{"ref":"actor:frehu","name":"Frederik Hudák","json":"/actors/frehu.json"},{"ref":"actor:larshp","name":"Lars Hvam","json":"/actors/larshp.json"},{"ref":"actor:marcellourbani","name":"Marcello Urbani","json":"/actors/marcellourbani.json"}],"explained_by":[],"alternative_to_this":[],"needed_by":[],"available_via":[],"parts":[],"add_ons":[],"answered_through_parts":[]}}