anchor.diff:    var jsCode = jsProgramToCode(jsModule, moduleFormat,
         buildSourceMap: argResults['source-map'],
         jsUrl: path.toUri(output).toString(),
  -      mapUrl: path.toUri(output + '.map').toString());
  +      mapUrl: path.toUri(output + '.map').toString(),
  +      customScheme: customScheme);
     file.writeAsStringSync(jsCode.code);
   
     if (jsCode.sourceMap != null) {
  
positive.code: 
    Map builtMap;
    if (buildSourceMap && sourceMap != null) {
      builtMap =
          placeSourceMap(sourceMap.build(jsUrl), mapUrl, <String, String>{});
      var jsDir = path.dirname(path.fromUri(jsUrl));
      var relative = path.relative(path.fromUri(mapUrl), from: jsDir);
      var relativeMapUrl = path.toUri(relative).toString();
  
negative.code: /// This was copied from module_compiler.dart.
  /// Convert a source string to a Uri.  The [source] may be a Dart URI, a file
  /// URI, or a local win/mac/linux path.
  Uri _sourceToUri(String source, customScheme) {
    var uri = Uri.parse(source);
    var scheme = uri.scheme;
    if (scheme == "dart" ||
        scheme == "package" ||
        scheme == "file" ||
        scheme == customScheme) {
      // A valid URI.
      return uri;
    }
    // Assume a file path.
    // TODO(jmesserly): shouldn't this be `path.toUri(path.absolute)`?
    return new Uri.file(path.absolute(source));
  }
  
  /// Parses Dart's non-standard `-Dname=value` syntax for declared variables,
  