OLD | NEW |
1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
4 | 4 |
5 /// Parses text in a markdown-like format and renders to HTML. | 5 /// Parses text in a markdown-like format and renders to HTML. |
6 library markdown; | 6 #library('markdown'); |
7 | 7 |
8 // TODO(rnystrom): Use "package:" URL (#4968). | 8 // TODO(rnystrom): Use "package:" URL (#4968). |
9 part 'src/markdown/ast.dart'; | 9 #source('src/markdown/ast.dart'); |
10 part 'src/markdown/block_parser.dart'; | 10 #source('src/markdown/block_parser.dart'); |
11 part 'src/markdown/html_renderer.dart'; | 11 #source('src/markdown/html_renderer.dart'); |
12 part 'src/markdown/inline_parser.dart'; | 12 #source('src/markdown/inline_parser.dart'); |
13 | 13 |
14 /// Converts the given string of markdown to HTML. | 14 /// Converts the given string of markdown to HTML. |
15 String markdownToHtml(String markdown) { | 15 String markdownToHtml(String markdown) { |
16 final document = new Document(); | 16 final document = new Document(); |
17 | 17 |
18 final lines = markdown.split('\n'); | 18 final lines = markdown.split('\n'); |
19 document.parseRefLinks(lines); | 19 document.parseRefLinks(lines); |
20 final blocks = document.parseLines(lines); | 20 final blocks = document.parseLines(lines); |
21 return renderToHtml(blocks); | 21 return renderToHtml(blocks); |
22 } | 22 } |
(...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
106 /// `<em>this <strong>is</strong> a</em> <code>markdown</code>`. | 106 /// `<em>this <strong>is</strong> a</em> <code>markdown</code>`. |
107 List<Node> parseInline(String text) => new InlineParser(text, this).parse(); | 107 List<Node> parseInline(String text) => new InlineParser(text, this).parse(); |
108 } | 108 } |
109 | 109 |
110 class Link { | 110 class Link { |
111 final String id; | 111 final String id; |
112 final String url; | 112 final String url; |
113 final String title; | 113 final String title; |
114 Link(this.id, this.url, this.title); | 114 Link(this.id, this.url, this.title); |
115 } | 115 } |
OLD | NEW |