From 3d8296d4c79b72296577bd5246fa8925b42fadd2 Mon Sep 17 00:00:00 2001 From: Guillaume Grossetie Date: Tue, 12 Jan 2021 11:24:54 +0100 Subject: [PATCH] Add textlint terminology rule --- .textlintrc.js | 20 ++++++++++++------- docs/modules/converter/pages/features.adoc | 2 +- .../converter/pages/syntax/background.adoc | 2 +- docs/modules/project/pages/hacking.adoc | 10 +++++----- docs/modules/setup/pages/node-js-setup.adoc | 6 +++--- .../setup/pages/standalone-executable.adoc | 2 +- package-lock.json | 17 ++++++++++++++++ package.json | 1 + 8 files changed, 42 insertions(+), 18 deletions(-) diff --git a/.textlintrc.js b/.textlintrc.js index fc269419..61ddfd78 100644 --- a/.textlintrc.js +++ b/.textlintrc.js @@ -4,19 +4,25 @@ module.exports = { ], rules: { //'spelling': true, + 'terminology': { + defaultTerms: true, + skip: ['Blockquote', 'CodeBlock'], + terms: [ + // checks correct capitalization + 'Asciidoctor', + 'AsciiDoc', + 'Bundler', + 'npm', + 'Ruby', + 'Node', + ] + }, 'no-repetition': true, //'title-case': true, 'stop-words': { skip: ['BlockQuote', 'CodeBlock'], defaultWords: false, words: [ - // checks correct capitalization - ['asciidoctor', 'Asciidoctor'], - ['npm', 'npm'], - ['asciidoc', 'AsciiDoc'], - ['bundler', 'Bundler'], - ['ruby', 'Ruby'], - ['node', 'Node'], // checks for use of first person pronouns. ['I'], ['I\'ve'], diff --git a/docs/modules/converter/pages/features.adoc b/docs/modules/converter/pages/features.adoc index 01f05b60..664eee5c 100644 --- a/docs/modules/converter/pages/features.adoc +++ b/docs/modules/converter/pages/features.adoc @@ -51,7 +51,7 @@ There are a few ways to have no titles on slides. See {url-project-repo}/blob/master/examples/concealed-slide-titles.adoc[concealed-slide-titles.adoc]. -NOTE: `conceal` and `notitle` have the advantage that the slide still has an id so it can be linked to. +NOTE: `conceal` and `notitle` have the advantage that the slide still has an ID so it can be linked to. IMPORTANT: Like the first page of an AsciiDoc document, the first slide is handled differently. To hide the whole slide use the `:notitle:` xref:asciidoc:document:header-ref.adoc[document attribute]. diff --git a/docs/modules/converter/pages/syntax/background.adoc b/docs/modules/converter/pages/syntax/background.adoc index 5b9a826d..12f80900 100644 --- a/docs/modules/converter/pages/syntax/background.adoc +++ b/docs/modules/converter/pages/syntax/background.adoc @@ -62,7 +62,7 @@ It sets reveal.js`' `data-background-image` attribute. The `size` attribute is also supported. See the link:{url-revealjs-doc}#image-backgrounds[relevant reveal.js documentation] for details. -NOTE: Background images file names are now relative to the `:imagesdir:` attribute if set. +NOTE: Background images filenames are now relative to the `:imagesdir:` attribute if set. NOTE: The `canvas` keyword can be used instead of `background` for the same effect. diff --git a/docs/modules/project/pages/hacking.adoc b/docs/modules/project/pages/hacking.adoc index 6955752a..e83b0cda 100644 --- a/docs/modules/project/pages/hacking.adoc +++ b/docs/modules/project/pages/hacking.adoc @@ -23,7 +23,7 @@ To understand what you have access to in templates you can inject some Ruby. With the slim templating system, this is done by prepending the lines with a dash (`-`) and inserting a Ruby statement. Two complementary approaches can be used to explore the context offered by Asciidoctor through the template system: -* logging on the command line via print-like statements +* logging on the command-line via print-like statements * jump into the context through an interactive debugger [NOTE] @@ -185,7 +185,7 @@ Relevant documentation: {url-asciidoctor-abstractnode-attr} == Merge / Review policy -Any non-trivial change should be integrated in master via a pull-request. +Any non-trivial change should be integrated in `master` branch via a pull-request. This gives the community a chance to participate and helps write better code because it encourages people to review their own patches. Pull requests should come from personal forks in order not the clutter the upstream repository. @@ -222,11 +222,11 @@ You can apply that label to a pull request that is complete and ready for review Makes triaging easier. -== Node package +== Node.js package === Test locally -In order to test the Node package, you first need to build the converter into JavaScript and create a tarball of the project. +In order to test the Node.js package, you first need to build the converter into JavaScript and create a tarball of the project. $ bundle exec rake build:js $ npm pack @@ -281,7 +281,7 @@ For example: npx --node-arg=--inspect-brk asciidoctor-revealjs -v presentation.adoc -Then open the Chrome Dev Tools and click on the Node logo in the top left corner. +Then open the Chrome Dev Tools and click on the Node.js logo in the top left corner. == RubyGem package diff --git a/docs/modules/setup/pages/node-js-setup.adoc b/docs/modules/setup/pages/node-js-setup.adoc index bdc6564e..1ea3cfbf 100644 --- a/docs/modules/setup/pages/node-js-setup.adoc +++ b/docs/modules/setup/pages/node-js-setup.adoc @@ -1,9 +1,9 @@ -= Node / JavaScript Setup -:navtitle: Node / JavaScript += Node.js / JavaScript Setup +:navtitle: Node.js / JavaScript == Prerequisites -First you must install and configure {url-nodejs-download}[Node] on your machine. +First you must install and configure {url-nodejs-download}[Node.js] on your machine. [[node-install]] == Install diff --git a/docs/modules/setup/pages/standalone-executable.adoc b/docs/modules/setup/pages/standalone-executable.adoc index 2dc78eff..83f5924b 100644 --- a/docs/modules/setup/pages/standalone-executable.adoc +++ b/docs/modules/setup/pages/standalone-executable.adoc @@ -3,7 +3,7 @@ Pre-built binary packages can be downloaded from our {url-project-repo}/releases[GitHub release page]. We provide them for Windows 64-bit, Linux 64-bit and macOS 64-bit (x86-64). Open an issue if your platform isn't supported. -The executables are built using the xref:node-js-setup.adoc[Node / JavaScript] toolchain. +The executables are built using the xref:node-js-setup.adoc[Node.js / JavaScript] toolchain. == Install diff --git a/package-lock.json b/package-lock.json index cfbff4e5..060909e5 100644 --- a/package-lock.json +++ b/package-lock.json @@ -2773,6 +2773,12 @@ "is-utf8": "^0.2.0" } }, + "strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true + }, "structured-source": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/structured-source/-/structured-source-3.0.2.tgz", @@ -3028,6 +3034,17 @@ "textlint-rule-helper": "^2.1.1" } }, + "textlint-rule-terminology": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/textlint-rule-terminology/-/textlint-rule-terminology-2.1.4.tgz", + "integrity": "sha512-kLw4qL8RwY2lCNqgKveHc5sjCDlS5Tdw2TXWOrHvSvQxqaVOwsv3+51oMIQLGfJzQrhFSMlSlw5MvfaOerBvPQ==", + "dev": true, + "requires": { + "lodash": "^4.17.15", + "strip-json-comments": "^3.0.1", + "textlint-rule-helper": "^2.1.1" + } + }, "textlint-rule-title-case": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/textlint-rule-title-case/-/textlint-rule-title-case-1.0.0.tgz", diff --git a/package.json b/package.json index b9a9ec18..85c344c2 100644 --- a/package.json +++ b/package.json @@ -63,6 +63,7 @@ "textlint-rule-no-repetition": "git+https://github.com/mogztter/textlint-rule-no-repetition.git#main", "textlint-rule-spelling": "^0.3.0", "textlint-rule-stop-words": "^2.0.9", + "textlint-rule-terminology": "^2.1.4", "textlint-rule-title-case": "^1.0.0" } }