docs: function lessError(ctx /*, options*/) {
    var message = '';
    var extract = ctx.extract;
    var error   = [];
  
    if (ctx.stack || !ctx.hasOwnProperty('index')) { return ctx; }
  
    if (typeof (extract[0]) === 'string') {
      error.push((ctx.line - 1) + ' ' + extract[0]);
    }
  
    if (extract[1]) {
      error.push(ctx.line + ' ' +
                 extract[1].slice(0, ctx.column) +
                 extract[1][ctx.column] +
                 extract[1].slice(ctx.column + 1));
    }
  
    if (typeof (extract[2]) === 'string') {
      error.push((ctx.line + 1) + ' ' + extract[2]);
    }
  
    error   = error.join('\n');
    message = ctx.type + 'Error: ' + ctx.message;
  
    if (ctx.filename) {
      message += ' in ' + ctx.filename + ':' + ctx.line + ':' + ctx.column;
    }
  
    return new Error(message + '\n---\n' + error);
  }