Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(979)

Unified Diff: packages/cli_util/README.md

Issue 2989763002: Update charted to 0.4.8 and roll (Closed)
Patch Set: Removed Cutch from list of reviewers Created 3 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « packages/cli_util/CONTRIBUTING.md ('k') | packages/cli_util/analysis_options.yaml » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: packages/cli_util/README.md
diff --git a/packages/cli_util/README.md b/packages/cli_util/README.md
index bcff2f3ce350015dde904fb7c28cf7130b650c5e..0256472ae2e09e3c01a8f1236be8b28da684e990 100644
--- a/packages/cli_util/README.md
+++ b/packages/cli_util/README.md
@@ -7,8 +7,9 @@ SDK directory. Useful, especially, when building client applications that
interact with the Dart SDK (such as the [analyzer][analyzer]).
[![Build Status](https://travis-ci.org/dart-lang/cli_util.svg)](https://travis-ci.org/dart-lang/cli_util)
+[![Pub](https://img.shields.io/pub/v/cli_util.svg)](https://pub.dartlang.org/packages/cli_util)
-## Usage
+## Locating the Dart SDK
```dart
import 'dart:io';
@@ -17,15 +18,47 @@ import 'package:cli_util/cli_util.dart';
import 'package:path/path.dart' as path;
main(args) {
- // Get sdk dir from cli_util
- Directory sdkDir = getSdkDir(args);
+ // Get sdk dir from cli_util.
+ String sdkPath = getSdkPath();
// Do stuff... For example, print version string
- File versionFile = new File(path.join(sdkDir.path, 'version'));
+ File versionFile = new File(path.join(sdkPath, 'version'));
print(versionFile.readAsStringSync());
}
```
+## Displaying output and progress
+
+`package:cli_util` can also be used to help CLI tools display output and progress.
+It has a logging mechanism which can help differentiate between regular tool
+output and error messages, and can facilitate having a more verbose (`-v`) mode for
+output.
+
+In addition, it can display an indeterminate progress spinner for longer running
+tasks, and optionally display the elapsed time when finished:
+
+```dart
+import 'package:cli_util/cli_logging.dart';
+
+main(List<String> args) async {
+ bool verbose = args.contains('-v');
+ Logger logger = verbose ? new Logger.verbose() : new Logger.standard();
+
+ logger.stdout('Hello world!');
+ logger.trace('message 1');
+ await new Future.delayed(new Duration(milliseconds: 200));
+ logger.trace('message 2');
+ logger.trace('message 3');
+
+ Progress progress = logger.progress('doing some work');
+ await new Future.delayed(new Duration(seconds: 2));
+ progress.finish(showTiming: true);
+
+ logger.stdout('All ${logger.ansi.emphasized('done')}.');
+ logger.flush();
+}
+```
+
## Features and bugs
Please file feature requests and bugs at the [issue tracker][tracker].
« no previous file with comments | « packages/cli_util/CONTRIBUTING.md ('k') | packages/cli_util/analysis_options.yaml » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698