- Fix incoming undercuts to statements #96
- Fix outgoing undercuts to statements #96
- add data to inference objects #86
- moved to Monorepo, renamed to @argdown/core
- switched to Typescript.
- Rewrote MapPlugin
- Split off StatementSelectionPlugin, ArgumentSelectionPlugin, PreselectionPlugin, RegroupPlugin, GroupPlugin, ColorPlugin
- YAML frontmatter and metadata
- Added a lot of configuration options (selection, grouping, colorizing, customizing nodes)
- Added loose and strict mode for switching between attack/support contrary/entails for s2s relations (#69 Strict mode for entailment and contrary relations)
- upgraded Chevrotain, made parser compatible with new version
- #71 Arg disappears if contradictory instead of contrary relation
- #59 Linter: Argument Syntax
- #64 Syntax error for Argument conclusion produces unhelpful error message.
- added location information to argument descriptions
- added location information to all rule nodes
- added location information to statements and arguments
- added location information and heading reference to sections (only startLine and startColumn)
- added title for definition and reference nodes
- lexer performance optimization: added custom token start char hints (see http://sap.github.io/chevrotain/docs/guide/resolving_lexer_errors.html#CUSTOM_OPTIMIZE)
- parser performance optimization: OR caching, see point 3 at http://sap.github.io/chevrotain/docs/FAQ.html#major-performance-benefits
- added tagsDictionary to JSON export.
- JSON export includes labelTitle and labelText for map nodes
- Removed data-line attribute from argument html elements
- fixed line numbers for inferences
- added has-line class to all html elements with line numbers.
- Parser: Added startLine information for block elements (statements, arguments, relations, list items).
- HTML export: Added data-line attributes for block elements. This will make it possible to sync scrolling in VS Code preview.
- HTML export: added configuration options (will be used in VS Code preview) to change validateLink and normalizeLink behaviour.
- Fixed line numbers for relations, argument statements, inferences and list items. The lexer now puts all single line breaks in a special group, instead of skipping them completely. This makes it possible to ignore single line breaks in the parser, but still check the lexing context for line breaks.
- Improved security of HTML Export: link validation
- Added utils for link validation/normalization (copied from Markdown-It)
- Plugins can now use the prepare method to add default settings to the request object before argdownListeners and the run method are called. Plugins no longer have to keep any kind of state (see Readme for details).
- Windows line endings in argument reconstructions and list items no longer produce lexer errors.
- changed application and plugin structure: app.run(request) expects a request object with an input field, a process array, containing the processors to be run, and configuration options. Plugins now get passed a request and a response object and are expected to add their data to the response and return it.
- fixed typo in logAstRecursively
- removed occurences of chevrotain.getTokenConstructor
- Upgrade to Chevrotain 2.0.2
- Made chevrotain.EOF accessible as ArgdownLexer.EOF
- Added CHANGELOG.md