FastOlympicCoding
FastOlympicCoding is a Sublime Text 3 plugin for competitive programming that provides a number of features to efficiently write, test, and debug programs.
Features
- Add and modify tests to run them against the solution
- Stress Test the solution to find input where it produces an incorrect output
- Aliases for standard data types
- Real-time C++ compilation errors highlighting
- See the line where the program breaks down and inspect variable values (requires LLDB.framework be installed)
Tech
FastOlympicCoding uses the following projects to work properly:
User Guide
Installation
- Install via Package Control
- Install manually:
download plugin into packages (preferences — browse packages)
Warning! rename plugin folder to FastOlympicCoding
TestManager

- press
accept to memorize given output as correct.
- if the program output coincides with one of the correct outputs, then the test is folded
TestManager Keybindings
- ctrl+b (OSX) ctrl+alt+b (Linux + Win) compile and run
- ctrl+enter new test
- ctrl+c (OSX) ctrl+x (Linux + Win) kill process
- ctrl+shift+b (OSX) run with debugger
- ctrl+d delete test
- ctrl+super+up/ctrl+super+down (OSX) ctrl+shift+up/ctrl+shift+down (Linux + Win) swap tests
- cmd+k, cmd+p (OSX) ctrl+k, ctrl+p (Linux + Win) close/open right panel
Settings
- to edit settings
- press cmd+shift+p (OSX) ctrl+shift+p (Linux + Win) and type
Open Settings
- or
tools — FastOlympicCoding — settings
Stress Testing

- to stress test solution implement three following files:
<name>.cpp - program that works incorrect
<name>__Good.cpp - program that works correct
<name>__Generator.cpp - program that generates tests, you can read a seed for random in the input
- run
Make Stress on the command palette
ClassCompletion

- type aliases to substitute them with data types
- customize aliases in the settings file
CppLint

- error highlighting works in real-time
- specify custom compile command in the settings file
Debugger

- debugging tools available only for OSX
- ctrl+shift+b to run program with debugger
- point the cursor on the variable to see its value
- to select the stack frame type
FastOlympicCoding: Select Frame on the command palette
- the only one dependency is xcode (you can install it with
xcode-select --install)