-
Notifications
You must be signed in to change notification settings - Fork 83
Expand file tree
/
Copy pathMarkdownStatistics.cs
More file actions
356 lines (287 loc) · 8.33 KB
/
MarkdownStatistics.cs
File metadata and controls
356 lines (287 loc) · 8.33 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
using System.Collections.Generic;
using Waher.Runtime.Collections;
namespace Waher.Content.Markdown
{
/// <summary>
/// Contains some basic statistical information about a Markdown document.
/// </summary>
public class MarkdownStatistics
{
/// <summary>
/// Number of elements in Markdown document (total).
/// </summary>
public int NrElements { get; set; }
/// <summary>
/// Number of abbreviations.
/// </summary>
public int NrAbbreviations { get; set; }
/// <summary>
/// Number of mail hyperlinks.
/// </summary>
public int NrMailHyperLinks { get; set; }
/// <summary>
/// Number of URL hyperlinks.
/// </summary>
public int NrUrlHyperLinks { get; set; }
/// <summary>
/// Number of hyperlinks (total).
/// </summary>
public int NrHyperLinks { get; set; }
/// <summary>
/// Internal (during computation of statistics) Mail hyperlinks.
/// </summary>
internal ChunkedList<string> IntMailHyperlinks { get; set; }
/// <summary>
/// Internal (during computation of statistics) URL hyperlinks.
/// </summary>
internal ChunkedList<string> IntUrlHyperlinks { get; set; }
/// <summary>
/// Mail hyperlinks.
/// </summary>
public string[] MailHyperlinks { get; set; }
/// <summary>
/// URL hyperlinks.
/// </summary>
public string[] UrlHyperlinks { get; set; }
/// <summary>
/// Number of deletes (span+block).
/// </summary>
public int NrDelete { get; set; }
/// <summary>
/// Number of details references.
/// </summary>
public int NrDetailsReference { get; set; }
/// <summary>
/// Number of emoji references.
/// </summary>
public int NrEmojiReference { get; set; }
/// <summary>
/// Number of emphasizes.
/// </summary>
public int NrEmphasize { get; set; }
/// <summary>
/// Number of footnote references
/// </summary>
public int NrFootnoteReference { get; set; }
/// <summary>
/// Number of hash-tags.
/// </summary>
public int NrHashTags { get; set; }
/// <summary>
/// Number of HTML entities.
/// </summary>
public int NrHtmlEntities { get; set; }
/// <summary>
/// Number of unicode HTML entities.
/// </summary>
public int NrHtmlUnicodeEntities { get; set; }
/// <summary>
/// Number of HTML entities (total).
/// </summary>
public int NrHtmlEntitiesTotal { get; set; }
/// <summary>
/// Number of code inlines.
/// </summary>
public int NrInlineCode { get; set; }
/// <summary>
/// Number of HTML inlines.
/// </summary>
public int NrInlineHtml { get; set; }
/// <summary>
/// Number of script inlines.
/// </summary>
public int NrInlineScript { get; set; }
/// <summary>
/// Number of text inlines.
/// </summary>
public int NrInlineText { get; set; }
/// <summary>
/// Number of insert (span+block).
/// </summary>
public int NrInsert { get; set; }
/// <summary>
/// Number of line breaks.
/// </summary>
public int NrLineBreak { get; set; }
/// <summary>
/// Number of meta references.
/// </summary>
public int NrMetaReference { get; set; }
/// <summary>
/// Number of multimedia (total).
/// </summary>
public int NrMultimedia { get; set; }
/// <summary>
/// Number of multi-formatted multimedia.
/// </summary>
public int NrMultiformatMultimedia { get; set; }
/// <summary>
/// Internal (during computation of statistics) Multimedia links, per file extension.
/// </summary>
internal Dictionary<string, ChunkedList<string>> IntMultimediaPerExtension { get; set; }
/// <summary>
/// Internal (during computation of statistics) Multimedia links, per Content-Type
/// </summary>
internal Dictionary<string, ChunkedList<string>> IntMultimediaPerContentType { get; set; }
/// <summary>
/// Internal (during computation of statistics) Multimedia links, per Content Category (top part of Content-Type)
/// </summary>
internal Dictionary<string, ChunkedList<string>> IntMultimediaPerContentCategory { get; set; }
/// <summary>
/// Multimedia links, per file extension.
/// </summary>
public Dictionary<string, string[]> MultimediaPerExtension { get; set; }
/// <summary>
/// Multimedia links, per Content-Type
/// </summary>
public Dictionary<string, string[]> MultimediaPerContentType { get; set; }
/// <summary>
/// Multimedia links, per Content Category (top part of Content-Type)
/// </summary>
public Dictionary<string, string[]> MultimediaPerContentCategory { get; set; }
/// <summary>
/// Number of multimedia, per file extension.
/// </summary>
public Dictionary<string, int> NrMultimediaPerExtension { get; set; }
/// <summary>
/// Number of multimedia, per Content-Type
/// </summary>
public Dictionary<string, int> NrMultimediaPerContentType { get; set; }
/// <summary>
/// Number of multimedia, per Content Category (top part of Content-Type)
/// </summary>
public Dictionary<string, int> NrMultimediaPerContentCategory { get; set; }
/// <summary>
/// Number of strike throughs.
/// </summary>
public int NrStrikeThrough { get; set; }
/// <summary>
/// Number of strong.
/// </summary>
public int NrStrong { get; set; }
/// <summary>
/// Number of subscripts.
/// </summary>
public int NrSubscript { get; set; }
/// <summary>
/// Number of superscripts.
/// </summary>
public int NrSuperScript { get; set; }
/// <summary>
/// Number of underlines.
/// </summary>
public int NrUnderline { get; set; }
/// <summary>
/// Number of block quotes.
/// </summary>
public int NrBlockQuotes { get; set; }
/// <summary>
/// Number of bullet lists.
/// </summary>
public int NrBulletLists { get; set; }
/// <summary>
/// Number of code blocks.
/// </summary>
public int NrCodeBlocks { get; set; }
/// <summary>
/// Number of comments.
/// </summary>
public int NrComments { get; set; }
/// <summary>
/// Number of definition descriptions.
/// </summary>
public int NrDefinitionDescriptions { get; set; }
/// <summary>
/// Number of definition lists.
/// </summary>
public int NrDefinitionLists { get; set; }
/// <summary>
/// Number of definition terms.
/// </summary>
public int NrDefinitionTerms { get; set; }
/// <summary>
/// Number of footnotes.
/// </summary>
public int NrFootnotes { get; set; }
/// <summary>
/// Number of headers.
/// </summary>
public int NrHeaders { get; set; }
/// <summary>
/// Number of horizontal rules.
/// </summary>
public int NrHorizontalRules { get; set; }
/// <summary>
/// Number of HTML blocks.
/// </summary>
public int NrHtmlBlocks { get; set; }
/// <summary>
/// Number of invisible breaks.
/// </summary>
public int NrInvisibleBreaks { get; set; }
/// <summary>
/// Number of numbered items.
/// </summary>
public int NrNumberedItems { get; set; }
/// <summary>
/// Number of numbered lists.
/// </summary>
public int NrNumberedLists { get; set; }
/// <summary>
/// Number of paragraphs.
/// </summary>
public int NrParagraph { get; set; }
/// <summary>
/// Number of sections.
/// </summary>
public int NrSections { get; set; }
/// <summary>
/// Number of section separators.
/// </summary>
public int NrSectionSeparators { get; set; }
/// <summary>
/// Number of tables.
/// </summary>
public int NrTables { get; set; }
/// <summary>
/// Number of task items.
/// </summary>
public int NrTaskItems { get; set; }
/// <summary>
/// Number of task lists.
/// </summary>
public int NrTaskLists { get; set; }
/// <summary>
/// Number of unnumbered items.
/// </summary>
public int NrUnnumberedItems { get; set; }
/// <summary>
/// Number of list items (total).
/// </summary>
public int NrListItems { get; set; }
/// <summary>
/// Number of lists (total).
/// </summary>
public int NrLists { get; set; }
/// <summary>
/// Number of nested blocks.
/// </summary>
public int NrNestedBlocks { get; set; }
/// <summary>
/// Number of center-aligned blocks.
/// </summary>
public int NrCenterAlignedBlocks { get; set; }
/// <summary>
/// Number of left-aligned blocks.
/// </summary>
public int NrLeftAlignedBlocks { get; set; }
/// <summary>
/// Number of right-aligned blocks.
/// </summary>
public int NrRightAlignedBlocks { get; set; }
/// <summary>
/// Number of margin-aligned blocks.
/// </summary>
public int NrMarginAlignedBlocks { get; set; }
}
}