Update README.md file.
diff --git a/README.md b/README.md
index 23be3f0..c300394 100644
--- a/README.md
+++ b/README.md
@@ -3,24 +3,51 @@
 
 # Character code constants
 
-This package defines symbolic names for some character codes (aka. code points).
+This package can *generate* constant symbolic names for character codes.
 
-They can used when working directly with characters as integers,
-to make the code more readable: `if (firstChar == $A) ...`.
+The constants can used when working directly with characters as integers,
+to make the code more readable: `if (firstChar == $A) ...` vs
+`if (firstChar == 0x41 /*A*/)`.
 
-This is not an official Google package, and is not supported by Google.
+# Pre-defined constants
+
+The package also provides a set of pre-defined constants covering all
+ASCII characters and all HTML entities.
+
+Those constants are intended for use while developing
+a new package or application. When development is done,
+it's recommended that you generate a file for yourself,
+containing only the constants that you actually use,
+and include that in your project.
 
 ## Usage
 
-Import either one of the libraries:
+To generate a set of constants, run the `charcode` application with a list
+of the characters you want to reference.
+
+Example:
+```bash
+dart run charcode -o lib/src/charcodes.dart "09ftn{}[],:"
+```
+
+Run `dart run charcode --help` to see other options.
+
+After switching to the generated constants file, you can, and should,
+remove your dependency on this package, or keep it as a dev-dependency
+in case you want to generate the file again.
+
+To use the pre-defined constants, import either the ASCII or the HTML library
 ```dart
 import "package:charcode/ascii.dart";
+// or
 import "package:charcode/html_entity.dart";
 ```
-or import both libraries using the `charcode.dart` library:
+or import both libraries using the combined `charcode.dart` library:
 ```dart
 import "package:charcode/charcode.dart";
 ```
+(Importing both libraries directly causes some conflicting names
+to be inaccessible.)
 
 ## Naming
 
@@ -32,9 +59,9 @@
 
 The names of letters are lower-case for lower-case letters (`$sigma` for `σ`),
 and mixed- or upper-case for upper-case letters (`$Sigma` for `Σ`).
-The names of symbols and punctuation are all lower-case,
+The names of symbols and punctuation are all lower-case or camelCase,
 and omit suffixes like "sign", "symbol" and "mark".
-Examples: `$plus`, `$exclamation`, `$tilde`.
+Examples: `$plus`, `$exclamation`, `$tilde`, `$doubleQuote`.
 
 The `ascii.dart` library defines a symbolic name for each ASCII character.
 Some characters have more than one name. For example the common name `$tab`