/exercism-modern

A modern interface to exercism

Primary LanguageEmacs Lisp

Exercism-modern

https://github.com/elken/exercism-modern/actions/workflows/ci.yml/badge.svg

A modern interface to Exercism.

Installation

Standard

Clone the repo, add to your load-path

Doom Emacs

Append the following to the corresponding file:

packages.el

(package! exercism-modern
  :recipe (:files (:defaults "icons")
           :host github :repo "elken/exercism-modern"))

config.el

(use-package! exercism-modern
  :commands (exercism-modern-jump exercism-modern-view-tracks))

Exercism setup

Currently depends on following the setup mapped out here, after doing them you should be fine to use this.

NOTE the first time you view the tracks/a specific track there will be a one-time delay while the icons are downloaded. This will only occur once per the main tracks view and one per track

Commands

exercism-modern-jump

Open dired at the exercism workspace directory.

exercism-modern-view-tracks

.github/assets/tracks.png

Main entry point into Exercism; a listing of all the available programming languages that have courses.

Shows your current statistics for overall completion of a track.

Pressing RET on a track will open a listing of all the exercises available.

exercism-modern-track-view-exercises

.github/assets/exercises.png

Listing of all exercises available for a given track.

Any exercises not yet unlocked are greyed out.

keyaction
RETDownload exercise(s)
mMark an exercise to be downloaded
uUnmark an exercise
tToggle all marks

A more detailed listing of shortcuts available when navigating exercises is available here.

exercism-modern-submit

Once you’re done with an exercise and you’re happy the tests pass, invoke this to submit the solution files to exercism. When invoked with the universal argument C-u (SPC u for Doom Emacs users), prompt for a buffer to submit instead.