anchor.diff:  main(List<String> args) async {
     final argResults = argParser.parse(args);
   
  -  final editCommand = argResults['edit-command'];
  -  final copyCommand = argResults['copy-command'];
  -  final addCommand = argResults['add-command'];
  -  final finalCommand = argResults['final-command'];
  +  final editCommand = parseCommand(argResults['edit-command']);
  +  final copyCommand = parseCommand(argResults['copy-command']);
  +  final addCommand = parseCommand(argResults['add-command']);
  +  final finalCommand = parseCommand(argResults['final-command']);
     final dryRun = argResults['dry-run'];
     final verbose = argResults['verbose'];
     final strict = argResults['strict'];
  
positive.code:     return pluralize(s);
    }
  }
  
negative.code:     return rel == '.' ? replacer(to) : join(to, replacer(rel));
    }
  
    Future runCommand(List<String> command, List<File> files) async {
      final result = await Process.run(command.first,
          []..addAll(command.skip(1))..addAll(files.map((file) => file.path)));
      if (result.exitCode == 0) {
        stdout.write(result.stdout);
      } else {
  