|
8 | 8 |
|
9 | 9 | var exec = require('child_process').exec; |
10 | 10 | var fs = require('fs'); |
| 11 | + var build = {}; |
11 | 12 | var includePattern = /^#include\s"(.+\/|\/|\w|-|\/)+.md"/gm; |
12 | 13 | var ignorePattern = /^#include\s"(.+\/|\/|\w|-|\/)+.md" !ignore/gm; |
13 | 14 | var headingPattern = /^#+\s.+ !heading/gm; |
14 | | - var build = {}; |
15 | 15 | var tableOfContents = ''; |
| 16 | + var options; |
16 | 17 |
|
17 | 18 | /** |
18 | 19 | * Builds links for table of contents |
|
48 | 49 | var item = headingTag.substring(count + 1); |
49 | 50 | var index = headingTag.indexOf(item); |
50 | 51 | var headingTrimmed = buildLinkString(headingTag.substring(index)); |
| 52 | + var lead = options.tableOfContents.lead && options.tableOfContents.lead === 'number' ? '1.' : '*'; |
51 | 53 | var navItem; |
52 | 54 |
|
53 | 55 | /** |
|
61 | 63 |
|
62 | 64 | switch (obj.count) { |
63 | 65 | case 1: |
64 | | - navItem = '* ' + buildNavItem(headingTrimmed); |
| 66 | + navItem = lead + ' ' + buildNavItem(headingTrimmed); |
65 | 67 | break; |
66 | 68 | case 2: |
67 | | - navItem = ' * ' + buildNavItem(headingTrimmed); |
| 69 | + navItem = ' ' + lead + ' ' + buildNavItem(headingTrimmed); |
68 | 70 | break; |
69 | 71 | case 3: |
70 | | - navItem = ' * ' + buildNavItem(headingTrimmed); |
| 72 | + navItem = ' ' + lead + ' ' + buildNavItem(headingTrimmed); |
71 | 73 | break; |
72 | 74 | case 4: |
73 | | - navItem = ' * ' + buildNavItem(headingTrimmed); |
| 75 | + navItem = ' ' + lead + ' ' + buildNavItem(headingTrimmed); |
74 | 76 | break; |
75 | 77 | case 5: |
76 | | - navItem = ' * ' + buildNavItem(headingTrimmed); |
| 78 | + navItem = ' ' + lead + ' ' + buildNavItem(headingTrimmed); |
77 | 79 | break; |
78 | 80 | case 6: |
79 | | - navItem = ' * ' + buildNavItem(headingTrimmed); |
| 81 | + navItem = ' ' + lead + ' ' + buildNavItem(headingTrimmed); |
80 | 82 | break; |
81 | 83 | } |
82 | 84 |
|
|
93 | 95 | throw err; |
94 | 96 | } |
95 | 97 |
|
96 | | - var options = JSON.parse(data.toString()); |
| 98 | + options = JSON.parse(data.toString()); |
97 | 99 | var files = options.files; |
98 | 100 | var i; |
99 | 101 |
|
|
118 | 120 | } |
119 | 121 | } |
120 | 122 |
|
121 | | - writeFile(options, build[file].parsedData); |
| 123 | + writeFile(build[file].parsedData); |
122 | 124 | } |
123 | 125 | }); |
124 | 126 | } |
|
324 | 326 | var currentPatternTagLength = patterns[i].length; |
325 | 327 | var replacedTag = currentPattern.substring(0, currentPatternTagLength - stringLength); |
326 | 328 |
|
327 | | - if (obj.replace) { |
328 | | - console.log('do something else'); |
| 329 | + if (replacedData) { |
| 330 | + replacedData = replacedData.replace(currentPattern, replacedTag); |
329 | 331 | } |
330 | 332 | else { |
331 | | - if (replacedData) { |
332 | | - replacedData = replacedData.replace(currentPattern, replacedTag); |
333 | | - } |
334 | | - else { |
335 | | - replacedData = obj.data.replace(currentPattern, replacedTag); |
336 | | - } |
| 333 | + replacedData = obj.data.replace(currentPattern, replacedTag); |
337 | 334 | } |
338 | 335 | } |
339 | 336 |
|
|
346 | 343 | * @param {String} path Path to build new file |
347 | 344 | * @param {String} data Data to write into file |
348 | 345 | */ |
349 | | - function writeFile(options, parsedData) { |
| 346 | + function writeFile(parsedData) { |
350 | 347 | fs.writeFile(options.build, parsedData, function (err) { |
351 | 348 | if (err) { |
352 | 349 | throw err; |
|
0 commit comments