Instantly generate cerr debug print statements for any C++ variable with a single shortcut — built for competitive programming.
- Place cursor on any variable (or select it)
- Press
Ctrl+Shift+D - A debug print line is inserted below automatically
- Works with any alias —
vll,pii,vpii, or whatever you define - Automatically decodes
usingandtypedefaliases - Supports all common CP data structures
| Type | Example | Output |
|---|---|---|
| Scalar | int, ll, double |
cerr << "x: " << x << "\n"; |
| Bool | bool |
prints true/false |
| String | string |
quoted print |
| Pair | pair<int,int>, pii |
{a, b} |
| Tuple | tuple<int,int,int> |
{a, b, c} |
| Vector | vector<int>, vi, vll |
range-for loop |
| 2D Vector | vector<vector<int>>, vvi |
nested loop |
| Vector of Pairs | vector<pii>, vpii |
{a,b} per element |
| Vector of Tuples | vector<tuple<...>> |
{a,b,c} per element |
| Set / Multiset | set<int>, si |
range-for loop |
| Set of Pairs | set<pii> |
{a,b} per element |
| Map | map<int,int>, mii |
k->v |
| Map + Vector value | map<int,vector<int>> |
k->[v1 v2 ...] |
| Map + Pair value | map<int,pii> |
k->{a,b} |
| Map + Set value | map<int,set<int>> |
k->{s1 s2 ...} |
| Nested Map | map<int,map<int,int>> |
nested print |
| Stack | stack<int> |
destructive copy loop |
| Queue | queue<int> |
destructive copy loop |
| Priority Queue | priority_queue<pii> |
destructive copy loop |
| Deque | deque<int> |
range-for loop |
Any alias defined with using or typedef is automatically resolved:
using ll = long long;
using pii = pair<int,int>;
using vpii = vector<pii>; // chained alias — works!
vpii v = {{1,2},{3,4}};
// Ctrl+Shift+D generates:
cerr << "v: "; for(auto& [_a,_b]: v) cerr << "{" << _a << "," << _b << "} "; cerr << "\n";Aliases defined in locally #included header files are also resolved automatically.
C++ files only (.cpp). Activated automatically on onLanguage:cpp.