anchor.diff:      tags.forEach(writeRow);
       buf.write('</table>');
   
  -    h3('Lint rule timings');
  -    List<LintRule> rules = Registry.ruleRegistry.rules.toList();
  -    int totalLintTime = rules.fold(0,
  -        (sum, rule) => sum + lintRegistry.getTimer(rule).elapsedMilliseconds);
  -    p('Total time spent in lints: ${printMilliseconds(totalLintTime)}');
  -
  -    rules.sort((first, second) {
  -      int firstTime = lintRegistry.getTimer(first).elapsedMilliseconds;
  -      int secondTime = lintRegistry.getTimer(second).elapsedMilliseconds;
  -      if (firstTime == secondTime) {
  -        return first.lintCode.name.compareTo(second.lintCode.name);
  -      }
  -      return secondTime - firstTime;
  -    });
  -    buf.write('<table>');
  -    _writeRow(['Lint code', 'Time (in ms)'], header: true);
  -    for (var rule in rules) {
  -      int time = lintRegistry.getTimer(rule).elapsedMilliseconds;
  -      _writeRow([rule.lintCode.name, printMilliseconds(time)]);
  -    }
  -    buf.write('</table>');
  +    if (_showLints) {
  +      h3('Lint rule timings');
  +      List<LintRule> rules = Registry.ruleRegistry.rules.toList();
  +      int totalLintTime = rules.fold(0,
  +          (sum, rule) => sum + lintRegistry.getTimer(rule).elapsedMilliseconds);
  +      p('Total time spent in lints: ${printMilliseconds(totalLintTime)}');
  +
  +      rules.sort((first, second) {
  +        int firstTime = lintRegistry.getTimer(first).elapsedMilliseconds;
  +        int secondTime = lintRegistry.getTimer(second).elapsedMilliseconds;
  +        if (firstTime == secondTime) {
  +          return first.lintCode.name.compareTo(second.lintCode.name);
  +        }
  +        return secondTime - firstTime;
  +      });
  +      buf.write('<table>');
  +      _writeRow(['Lint code', 'Time (in ms)'], header: true);
  +      for (var rule in rules) {
  +        int time = lintRegistry.getTimer(rule).elapsedMilliseconds;
  +        _writeRow([rule.lintCode.name, printMilliseconds(time)]);
  +      }
  +      buf.write('</table>');
  +    }
     }
   }
   
  
positive.code: 
      p('Other data to include:');
      ul([
        "the IDE you are using and it's version${ideText.isEmpty ? '' : ' ($ideText)'}",
        'the Dart SDK version (<code>${escape(_sdkVersion)}</code>)',
        'your operating system (<code>${escape(Platform.operatingSystem)}</code>)',
      ], (line) => buf.writeln(line));
  
      p('Thanks!');
  
negative.code: 
      int fastCount =
          completions.where((c) => c.elapsedInMilliseconds <= 100).length;
      p('${completions.length} results; ${printPercentage(
          fastCount / completions.length)} within 100ms.');
  
      // draw a chart
      buf.writeln(
  