wikiparser-node 1.18.1 → 1.18.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +7 -2
- package/bin/config.js +2 -2
- package/bundle/bundle-es7.min.js +29 -29
- package/bundle/bundle-lsp.min.js +95 -29
- package/bundle/bundle.min.js +26 -26
- package/config/.schema.json +13 -0
- package/config/default.json +460 -4
- package/config/enwiki.json +111 -0
- package/config/jawiki.json +954 -0
- package/config/llwiki.json +117 -0
- package/config/minimum.json +10 -0
- package/config/moegirl.json +104 -0
- package/config/zhwiki.json +109 -0
- package/dist/addon/token.js +10 -9
- package/dist/addon/transclude.js +1 -3
- package/dist/base.d.mts +5 -0
- package/dist/base.d.ts +5 -0
- package/dist/base.js +1 -0
- package/dist/base.mjs +2 -1
- package/dist/bin/config.js +82 -59
- package/dist/index.d.ts +5 -1
- package/dist/index.js +68 -73
- package/dist/lib/document.d.ts +6 -6
- package/dist/lib/document.js +43 -36
- package/dist/lib/element.d.ts +6 -0
- package/dist/lib/element.js +543 -466
- package/dist/lib/lsp.d.ts +1 -0
- package/dist/lib/lsp.js +84 -56
- package/dist/lib/redirectMap.d.ts +7 -0
- package/dist/lib/redirectMap.js +31 -0
- package/dist/lib/text.d.ts +2 -2
- package/dist/lib/text.js +383 -325
- package/dist/lib/title.d.ts +23 -4
- package/dist/lib/title.js +17 -5
- package/dist/mixin/noEscape.d.ts +4 -0
- package/dist/mixin/noEscape.js +22 -0
- package/dist/mixin/readOnly.d.ts +4 -0
- package/dist/mixin/readOnly.js +26 -0
- package/dist/parser/braces.js +29 -15
- package/dist/parser/commentAndExt.js +5 -16
- package/dist/parser/links.js +1 -1
- package/dist/parser/quotes.js +1 -1
- package/dist/parser/redirect.js +1 -3
- package/dist/src/arg.js +253 -202
- package/dist/src/attribute.d.ts +0 -5
- package/dist/src/attribute.js +3 -7
- package/dist/src/converter.js +213 -162
- package/dist/src/gallery.js +1 -2
- package/dist/src/heading.js +5 -6
- package/dist/src/imageParameter.js +16 -16
- package/dist/src/imagemap.js +3 -2
- package/dist/src/index.d.ts +1 -1
- package/dist/src/index.js +722 -694
- package/dist/src/link/base.js +292 -241
- package/dist/src/link/file.js +13 -17
- package/dist/src/link/galleryImage.js +1 -1
- package/dist/src/link/redirectTarget.js +1 -2
- package/dist/src/magicLink.d.ts +0 -6
- package/dist/src/magicLink.js +5 -15
- package/dist/src/nested.js +7 -7
- package/dist/src/nowiki/base.js +2 -1
- package/dist/src/nowiki/index.js +4 -3
- package/dist/src/onlyinclude.js +95 -44
- package/dist/src/parameter.d.ts +0 -6
- package/dist/src/parameter.js +1 -13
- package/dist/src/redirect.js +6 -6
- package/dist/src/syntax.d.ts +4 -1
- package/dist/src/syntax.js +4 -1
- package/dist/src/table/base.d.ts +0 -5
- package/dist/src/table/base.js +2 -9
- package/dist/src/table/index.js +6 -3
- package/dist/src/table/td.d.ts +1 -0
- package/dist/src/table/td.js +2 -3
- package/dist/src/table/trBase.js +3 -1
- package/dist/src/tagPair/index.js +2 -1
- package/dist/src/transclude.js +706 -647
- package/dist/util/debug.js +10 -3
- package/dist/util/lint.js +31 -30
- package/dist/util/string.js +4 -5
- package/extensions/dist/base.js +8 -6
- package/extensions/dist/lint.js +1 -1
- package/extensions/dist/lsp.js +0 -5
- package/extensions/es7/base.js +8 -6
- package/extensions/es7/lint.js +1 -1
- package/extensions/ui.css +1 -1
- package/package.json +3 -4
package/README.md
CHANGED
|
@@ -17,7 +17,7 @@ WikiParser-Node is an offline [Wikitext](https://www.mediawiki.org/wiki/Wikitext
|
|
|
17
17
|
|
|
18
18
|
## Mini (also known as [WikiLint](https://www.npmjs.com/package/wikilint))
|
|
19
19
|
|
|
20
|
-
This version provides a [CLI](https://en.wikipedia.org/wiki/Command-line_interface), but only retains the parsing functionality and linting functionality. The parsed AST cannot be modified. It is used for
|
|
20
|
+
This version provides a [CLI](https://en.wikipedia.org/wiki/Command-line_interface), but only retains the parsing functionality and linting functionality. The parsed AST cannot be modified. It is used for the [WikiParser Language Server](https://marketplace.visualstudio.com/items?itemName=Bhsd.vscode-extension-wikiparser) VSCode extension.
|
|
21
21
|
|
|
22
22
|
## Browser-compatible
|
|
23
23
|
|
|
@@ -59,7 +59,7 @@ For more browser extensions, please refer to the corresponding [documentation](h
|
|
|
59
59
|
|
|
60
60
|
## CLI usage
|
|
61
61
|
|
|
62
|
-
For MediaWiki sites
|
|
62
|
+
For MediaWiki sites with the [CodeMirror extension](https://mediawiki.org/wiki/Extension:CodeMirror) installed, such as different language editions of Wikipedia and other [Wikimedia Foundation-hosted sites](https://meta.wikimedia.org/wiki/Special:SiteMatrix), you can use the following command to obtain the parser configuration:
|
|
63
63
|
|
|
64
64
|
```sh
|
|
65
65
|
npx getParserConfig <site> <script path> [force]
|
|
@@ -78,10 +78,15 @@ Parser.config = 'jawiki';
|
|
|
78
78
|
|
|
79
79
|
Please refer to the [Wiki](https://github.com/bhsd-harry/wikiparser-node/wiki/Home-%28EN%29).
|
|
80
80
|
|
|
81
|
+
# Performance
|
|
82
|
+
|
|
83
|
+
A full dump scan of Chinese Wikipedia's ~2.8 million articles (parsing and linting) on a personal MacBook Air takes about 4 hours.
|
|
84
|
+
|
|
81
85
|
# Known issues
|
|
82
86
|
|
|
83
87
|
## Parser
|
|
84
88
|
|
|
89
|
+
1. Memory leaks may occur in rare cases.
|
|
85
90
|
1. Preformatted text with a leading space is only processed by [`Token.prototype.toHtml`](https://github.com/bhsd-harry/wikiparser-node/wiki/Token-%28EN%29#tohtml).
|
|
86
91
|
|
|
87
92
|
## HTML conversion
|
package/bin/config.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
'use strict';
|
|
3
3
|
const /** @type {import('./config.ts').default} */ fetchConfig = require('../dist/bin/config.js').default;
|
|
4
|
-
const [,, site, url, force
|
|
5
|
-
fetchConfig(site, url, force
|
|
4
|
+
const [,, site, url, force] = process.argv;
|
|
5
|
+
fetchConfig(site, url, force);
|