add repeat()

This commit is contained in:
2019-11-21 00:36:03 +08:00
parent 70d1dea148
commit e7f490e70d

View File

@@ -9,16 +9,18 @@ main(List<String> args) async {
return; return;
} }
final restArgs = parseResult.rest; final restArgs = parseResult.rest;
final width = int.parse(parseResult['width']);
final jsonContent = await readContent(restArgs); final jsonContent = await readContent(restArgs);
final jsonDecoded = json.decode(jsonContent); final jsonDecoded = json.decode(jsonContent);
JsonEncoder encoder = new JsonEncoder.withIndent(' '); JsonEncoder encoder = new JsonEncoder.withIndent(repeat(' ', width));
print(encoder.convert(jsonDecoded)); print(encoder.convert(jsonDecoded));
} }
ArgResults parseArgs(List<String> args) { ArgResults parseArgs(List<String> args) {
final parser = new ArgParser(); final parser = new ArgParser();
parser.addFlag('help', abbr: 'h', defaultsTo: false, help: 'Help'); parser.addFlag('help', abbr: 'h', defaultsTo: false, help: 'Help');
parser.addOption('width', abbr: 'w', defaultsTo: '4', help: 'Space width');
return parser.parse(args); return parser.parse(args);
} }
@@ -40,6 +42,14 @@ Future<String> readFromStdin() async {
return Future<String>.value(stdinContentArray.join('\n')); return Future<String>.value(stdinContentArray.join('\n'));
} }
String repeat(String s, int count) {
var ret = '';
for (var i = 0; i < count; i++) {
ret += s;
}
return ret;
}
printHelp() { printHelp() {
print('pretty.dart - version 0.1'); print('pretty.dart - version 0.1');
print('Usage:'); print('Usage:');