Build analyzer
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 25/100
- Issue type
- Feature
- Clarity
- Mostly clear
- Activity status
- Stale
- Tech stack
- vim
- Domain
- tooling
Research direction
Start with the analyzer interface specification and the creating-from-scratch guide linked in the issue, then compare implementations in other Exercism track repositories. Build a Vimscript-track analyzer that follows the JSON interface and produces student-facing output, or verify whether one already exists and check the track config.json status.analyzer key.
Written by the indexing model from the issue text.
Description
In Exercism v3, we are making increased use of our v2 analyzers. Analyzers automatically assess student's submissions and provide mentor-style commentary. They can be used to catch common mistakes and/or do complex solution analysis that can't easily be done directly in a test suite.
Each analyzer is track-specific. When a new solution is submitted, we run the track's analyzer, which outputs a JSON file that contains the analysis results.
In v2, analyzer comments were given to a mentor to pass to a student. In v3, the analyzers will normally output directly to students, although we have added an extra key to output suggestions to mentors. If your track already has an analyzer, the only requisite change is updating the outputted copy to be student-facing.
The analyzer is an optional tool though, which means that if a track does not have an analyzer, it will still function normally.
Goal
Build an analyzer for your track according to the spec. Check this page to help you get started with building an analyzer.
It can be very useful to check how other tracks have implemented their analyzer.
If your track already has a working analyzer, please close this issue and ensure that the .status.analyzer key in the track config.json file is set to true.
Choosing between representer and analyzer
There is some overlap between the goals of the representer and the analyzer. If you want to build both, we recommend starting by building the representer for the following reasons:
- Representers are usually (far) easier to implement
- Representers can have a far bigger impact on the mentoring load than analyzers by empowering mentors
- Representers apply to all exercises, whereas analyzers usually target specific exercises or a subset
Tracking
- Dominant language
- Vim Script
- Stars
- 22
- Forks
- 27
- PR merge metrics
- No merged PRs in 30d
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from exercism/vimscript
-
Build representer Openx:action/create x:knowledge/advanced x:module/representer x:size/massive x:type/coding
Difficulty 4/5 3-5 days Newbie friendliness 35/100
-
Pass linting checks Openx:action/fix x:knowledge/elementary x:size/medium x:type/content
Difficulty 3/5 1-2 days Newbie friendliness 25/100
-
x:action/improve x:knowledge/intermediate x:module/practice-exercise x:size/large x:type/content
Difficulty 5/5 Over a week Newbie friendliness 25/100
All issues in exercism/vimscript
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 90/100
danielmiessler/LifeOS#2218 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
-
help wanted
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
hemilabs/ui-monorepo#2332 ·
-
Help-Wanted Needs-Triage Package-Update
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
microsoft/winget-pkgs#438662 ·
-
priority: p3
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
googleapis/librarian#7636 ·