diff --git a/.textlintrc.json b/.textlintrc.json index ac8949f7298..914366e2bd9 100644 --- a/.textlintrc.json +++ b/.textlintrc.json @@ -1,5 +1,7 @@ { - "filters": {}, + "filters": { + "comments": true + }, "rules": { "common-misspellings": { "ignore": ["Proove", "Alot"] diff --git a/package-lock.json b/package-lock.json index cc2a366946e..0d2628fe3db 100644 --- a/package-lock.json +++ b/package-lock.json @@ -15,8 +15,9 @@ "remark-lint-no-shell-dollars": "^3.1.1", "remark-stringify": "^10.0.2", "textlint": "^12.2.1", + "textlint-filter-rule-comments": "^1.2.2", "textlint-rule-common-misspellings": "^1.0.1", - "textlint-rule-terminology": "^3.0.1" + "textlint-rule-terminology": "^3.0.2" } }, "node_modules/@azu/format-text": { @@ -5330,6 +5331,15 @@ "node": "^12.20.0 || ^14.13.1 || >=16.0.0" } }, + "node_modules/textlint-filter-rule-comments": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/textlint-filter-rule-comments/-/textlint-filter-rule-comments-1.2.2.tgz", + "integrity": "sha512-AtyxreCPb3Hq/bd6Qd6szY1OGgnW34LOjQXAHzE8NoXbTUudQqALPdRe+hvRsf81rnmGLxBiCUXZbnbpIseFyw==", + "dev": true, + "peerDependencies": { + "textlint": ">=6.8.0" + } + }, "node_modules/textlint-rule-common-misspellings": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/textlint-rule-common-misspellings/-/textlint-rule-common-misspellings-1.0.1.tgz", @@ -5374,9 +5384,9 @@ } }, "node_modules/textlint-rule-terminology": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/textlint-rule-terminology/-/textlint-rule-terminology-3.0.1.tgz", - "integrity": "sha512-jk2SGGep+XBckhIm9u6CG7NeMZiosJRPfoh7ISlCZizj/JGNk/zheDYGVXwKbFu20SxsguyUIpTF1z/d1Q+NeQ==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/textlint-rule-terminology/-/textlint-rule-terminology-3.0.2.tgz", + "integrity": "sha512-PgHg7wkf0gWbihSL+GZF+rG8GJX01azQXIUtWZ4UniDs5GwcwXpb98Dts8jrFQ+c9UeLb1u2HtBgjTmlWkWlQw==", "dev": true, "dependencies": { "lodash": "^4.17.15", @@ -10014,6 +10024,13 @@ "unique-concat": "^0.2.2" } }, + "textlint-filter-rule-comments": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/textlint-filter-rule-comments/-/textlint-filter-rule-comments-1.2.2.tgz", + "integrity": "sha512-AtyxreCPb3Hq/bd6Qd6szY1OGgnW34LOjQXAHzE8NoXbTUudQqALPdRe+hvRsf81rnmGLxBiCUXZbnbpIseFyw==", + "dev": true, + "requires": {} + }, "textlint-rule-common-misspellings": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/textlint-rule-common-misspellings/-/textlint-rule-common-misspellings-1.0.1.tgz", @@ -10060,9 +10077,9 @@ } }, "textlint-rule-terminology": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/textlint-rule-terminology/-/textlint-rule-terminology-3.0.1.tgz", - "integrity": "sha512-jk2SGGep+XBckhIm9u6CG7NeMZiosJRPfoh7ISlCZizj/JGNk/zheDYGVXwKbFu20SxsguyUIpTF1z/d1Q+NeQ==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/textlint-rule-terminology/-/textlint-rule-terminology-3.0.2.tgz", + "integrity": "sha512-PgHg7wkf0gWbihSL+GZF+rG8GJX01azQXIUtWZ4UniDs5GwcwXpb98Dts8jrFQ+c9UeLb1u2HtBgjTmlWkWlQw==", "dev": true, "requires": { "lodash": "^4.17.15", diff --git a/package.json b/package.json index 5bbe66861f8..97a535e9e18 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,6 @@ "name": "home-assistant.io", "description": "Home Assistant Website & Documentation", "version": "1.0.0", - "dependencies": {}, "devDependencies": { "remark-cli": "^11.0.0", "remark-frontmatter": "^4.0.1", @@ -11,8 +10,9 @@ "remark-lint-no-shell-dollars": "^3.1.1", "remark-stringify": "^10.0.2", "textlint": "^12.2.1", + "textlint-filter-rule-comments": "^1.2.2", "textlint-rule-common-misspellings": "^1.0.1", - "textlint-rule-terminology": "^3.0.1" + "textlint-rule-terminology": "^3.0.2" }, "resolutions": { "minimist": ">=1.2.5" diff --git a/source/_integrations/amcrest.markdown b/source/_integrations/amcrest.markdown index a1c2f85fc6b..8f015f691f3 100644 --- a/source/_integrations/amcrest.markdown +++ b/source/_integrations/amcrest.markdown @@ -86,7 +86,7 @@ stream_source: default: snapshot ffmpeg_arguments: description: > - Extra options to pass to ffmpeg, e.g., + Extra options to pass to FFmpeg, e.g., image quality or video filter options. required: false type: string diff --git a/source/_integrations/blink.markdown b/source/_integrations/blink.markdown index 404ec306c82..3a18f796e5e 100644 --- a/source/_integrations/blink.markdown +++ b/source/_integrations/blink.markdown @@ -99,7 +99,7 @@ The following are some examples showing how to correctly make service calls usin ### Snap Picture and Save Locally -This example script shows how to take a picture with your camera, named `My Camera` in your Blink app (this is **not necessarily** the friendly name in home-assistant). After snapping a picture, the image will then be saved to a local directory called `/tmp/my_image.jpg`. Note that this example makes use of services found in the [camera integration](/integrations/camera#service-snapshot) +This example script shows how to take a picture with your camera, named `My Camera` in your Blink app (this is **not necessarily** the friendly name in Home Assistant). After snapping a picture, the image will then be saved to a local directory called `/tmp/my_image.jpg`. Note that this example makes use of services found in the [camera integration](/integrations/camera#service-snapshot) ```yaml alias: "Blink Snap Picture" diff --git a/source/_integrations/cast.markdown b/source/_integrations/cast.markdown index e5bf6514c54..400b24fa6ad 100644 --- a/source/_integrations/cast.markdown +++ b/source/_integrations/cast.markdown @@ -33,7 +33,7 @@ Ignore CEC: ## Home Assistant Cast -Home Assistant has its own Cast application to show the Home Assistant UI on any Chromecast device. You can use it by adding the [Cast entity row](/dashboards/entities/#cast) to your dashboards, or by calling the `cast.show_lovelace_view` service. The service takes the path of a dashboard view and an entity ID of a Cast device to show the view on. A `path` has to be defined in your dashboard's YAML for each view, as outlined in the [views documentation](/dashboards/views/#path). The `dashboard_path` is the part of the dashboard URL that follows the defined `base_url`, typically "lovelace". The following is a full configuration for a script that starts casting the `downstairs` tab of the `lovelace-cast` path (note that `entity_id` is specified under `data` and not for the service call): +Home Assistant has its own Cast application to show the Home Assistant UI on any Chromecast device. You can use it by adding the [Cast entity row](/dashboards/entities/#cast) to your dashboards, or by calling the `cast.show_lovelace_view` service. The service takes the path of a dashboard view and an entity ID of a Cast device to show the view on. A `path` has to be defined in your dashboard's YAML for each view, as outlined in the [views documentation](/dashboards/views/#path). The `dashboard_path` is the part of the dashboard URL that follows the defined `base_url`, typically "`lovelace`". The following is a full configuration for a script that starts casting the `downstairs` tab of the `lovelace-cast` path (note that `entity_id` is specified under `data` and not for the service call): ```yaml cast_downstairs_on_kitchen: diff --git a/source/_integrations/delijn.markdown b/source/_integrations/delijn.markdown index cd8fdd5565f..463cbfdba6a 100644 --- a/source/_integrations/delijn.markdown +++ b/source/_integrations/delijn.markdown @@ -37,7 +37,7 @@ sensor: {% configuration %} api_key: - description: "API Subscription key needed to access De Lijn API's." + description: "API Subscription key needed to access De Lijn APIs." required: true type: string next_departure: diff --git a/source/_integrations/doods.markdown b/source/_integrations/doods.markdown index 706526126f4..ff48113c176 100644 --- a/source/_integrations/doods.markdown +++ b/source/_integrations/doods.markdown @@ -149,7 +149,7 @@ labels: ## Supported labels -Both detectors "default" and "tensorflow" use the labels in [this file](https://raw.githubusercontent.com/amikelive/coco-labels/master/coco-labels-2014_2017.txt). +Both detectors `default` and `tensorflow` use the labels in [this file](https://raw.githubusercontent.com/amikelive/coco-labels/master/coco-labels-2014_2017.txt). ## Sample configuration diff --git a/source/_integrations/fail2ban.markdown b/source/_integrations/fail2ban.markdown index 35770ac757d..2be153e75d4 100644 --- a/source/_integrations/fail2ban.markdown +++ b/source/_integrations/fail2ban.markdown @@ -103,15 +103,15 @@ datepattern = ^%%Y-%%m-%%d %%H:%%M:%%S #### Map log file directories -First, we need to make sure that fail2ban log can be passed to Home Assistant and that the Home Assistant log can be passed to fail2ban. When starting the Let's Encrypt docker, you need to add the following argument (adjust paths based on your setup): +First, we need to make sure that fail2ban log can be passed to Home Assistant and that the Home Assistant log can be passed to fail2ban. When starting the Let's Encrypt Docker, you need to add the following argument (adjust paths based on your setup): ```txt /mnt/user/appdata/home-assistant:/hass ``` -This will map the Home Assistant configuration directory to the Let's Encrypt docker, allowing `fail2ban` to parse the log for failed login attempts. +This will map the Home Assistant configuration directory to the Let's Encrypt Docker, allowing `fail2ban` to parse the log for failed login attempts. -Now do the same for the Home Assistant docker, but this time we'll be mapping the `fail2ban` log directory to Home Assistant so that the fail2ban sensor is able to read that log: +Now do the same for the Home Assistant Docker, but this time we'll be mapping the `fail2ban` log directory to Home Assistant so that the fail2ban sensor is able to read that log: ```txt /mnt/user/appdata/letsencrypt/log/fail2ban:/fail2ban diff --git a/source/_integrations/flic.markdown b/source/_integrations/flic.markdown index e3b82534281..b638b9f392d 100644 --- a/source/_integrations/flic.markdown +++ b/source/_integrations/flic.markdown @@ -17,7 +17,7 @@ The platform does not directly interact with the buttons, *but communicates with ## Service setup -If you are using Hass.io, you can run the service locally by [installing](/hassio/installing_third_party_addons/) the flicd add-on from [pschmitt's repository](https://github.com/pschmitt/hassio-addons). +If you are using the Home Assistant Operating System, you can run the service locally by [installing](/hassio/installing_third_party_addons/) the flicd add-on from [pschmitt's repository](https://github.com/pschmitt/hassio-addons). For instructions on how to install the service manually, visit the GitHub repository of the service for [Linux](https://github.com/50ButtonsEach/fliclib-linux-hci), [macOS](https://github.com/50ButtonsEach/flic-service-osx) or [Windows](https://github.com/50ButtonsEach/fliclib-windows). diff --git a/source/_integrations/foursquare.markdown b/source/_integrations/foursquare.markdown index 8ac120ec1ee..1d143b73069 100644 --- a/source/_integrations/foursquare.markdown +++ b/source/_integrations/foursquare.markdown @@ -71,7 +71,7 @@ Parameters: - **eventId** (*Optional*): The event the user is checking in to. - **shout** (*Optional*): A message about your check-in. The maximum length of this field is 140 characters. - **mentions** (*Optional*): Mentions in your check-in. This parameter is a semicolon-delimited list of mentions. A single mention is of the form "start,end,userid", where start is the index of the first character in the shout representing the mention, end is the index of the first character in the shout after the mention, and userid is the userid of the user being mentioned. If userid is prefixed with "fbu-", this indicates a Facebook userid that is being mention. Character indices in shouts are 0-based. -- **broadcast** (*Optional*): "Who to broadcast this check-in to. Accepts a comma-delimited list of values: private (off the grid) or public (share with friends), Facebook share on Facebook, Twitter share on twitter, followers share with followers (celebrity mode users only), If no valid value is found, the default is public." +- **broadcast** (*Optional*): "Who to broadcast this check-in to. Accepts a comma-delimited list of values: private (off the grid) or public (share with friends), Facebook share on Facebook, Twitter share on Twitter, followers share with followers (celebrity mode users only), If no valid value is found, the default is public." - **ll** (*Optional*): Latitude and longitude of the user's location. Only specify this field if you have a GPS or other device reported location for the user at the time of check-in. - **llAcc** (*Optional*): Accuracy of the user's latitude and longitude, in meters. - **alt** (*Optional*): Altitude of the user's location, in meters. diff --git a/source/_integrations/google.markdown b/source/_integrations/google.markdown index 0d6f864584a..a56a7d4f3f4 100644 --- a/source/_integrations/google.markdown +++ b/source/_integrations/google.markdown @@ -31,7 +31,7 @@ This section explains how to generate a Client ID and Client Secret on 1. When it gets to the Page titled _Add credentials to your project_ just click cancel. 1. Navigate to APIs & Services (left sidebar) > Credentials 1. Click on the field on the right of the screen, 'CONFIGURE CONSENT SCREEN', select "External" and create. -1. Set the 'Application Name' (the name of the application asking for consent) to anything you want. We suggest "Home-Assistant". +1. Set the 'Application Name' (the name of the application asking for consent) to anything you want. We suggest `Home-Assistant`. 1. You then need to select a `Support email`. To do this, simply click the drop down box and select your email address. 1. You finally need to complete the section: `Developer contact information`. To do this, simply enter your email address (same as above is fine). 1. Scroll to the bottom and click `save`. (You don't have to fill out anything else) diff --git a/source/_integrations/homematic.markdown b/source/_integrations/homematic.markdown index 4eaf2d07cdf..7d53d627beb 100644 --- a/source/_integrations/homematic.markdown +++ b/source/_integrations/homematic.markdown @@ -209,7 +209,7 @@ Resolving names can take some time. So when you start Home Assistant you won't s ### Multiple hosts -In order to allow communication with multiple hosts or different protocols in parallel (wireless, wired and ip), multiple connections will be established, each to the configured destination. The name you choose for the host has to be unique and limited to ASCII letters. +In order to allow communication with multiple hosts or different protocols in parallel (wireless, wired and IP), multiple connections will be established, each to the configured destination. The name you choose for the host has to be unique and limited to ASCII letters. Using multiple hosts has the drawback, that the services (explained below) may not work as expected. Only one connection can be used for services, which limits the devices/variables a service can use to the scope/protocol of the host. This does *not* affect the entities in Home Assistant. They all use their own connection and work as expected. diff --git a/source/_integrations/http.markdown b/source/_integrations/http.markdown index ba07bf66509..0936c6535b4 100644 --- a/source/_integrations/http.markdown +++ b/source/_integrations/http.markdown @@ -153,7 +153,7 @@ If you want to use Home Assistant to host or serve static files then create a di