diff --git a/.github/workflows/pr-labeler.yml b/.github/workflows/pr-labeler.yml index f8ce1591977bc3c..3dfd3f11b3eca57 100644 --- a/.github/workflows/pr-labeler.yml +++ b/.github/workflows/pr-labeler.yml @@ -19,7 +19,7 @@ jobs: name: Label by path runs-on: ubuntu-latest steps: - - uses: actions/labeler@634933edcd8ababfe52f92936142cc22ac488b1b # v6.0.1 + - uses: actions/labeler@f27b608878404679385c85cfa523b85ccb86e213 # v6.1.0 with: repo-token: "${{ secrets.GITHUB_TOKEN }}" sync-labels: true diff --git a/files/en-us/learn_web_development/getting_started/soft_skills/finding_a_job/index.md b/files/en-us/learn_web_development/getting_started/soft_skills/finding_a_job/index.md index b10bbf7b9411cc6..30487b987b5d053 100644 --- a/files/en-us/learn_web_development/getting_started/soft_skills/finding_a_job/index.md +++ b/files/en-us/learn_web_development/getting_started/soft_skills/finding_a_job/index.md @@ -322,6 +322,6 @@ Be patient. Even the best candidates will get rejections from multiple job appli - [Getting hired](https://scrimba.com/the-frontend-developer-career-path-c0j/~0156?via=mdn), Scrimba Course Partner - [Technical Interviewing 101: Ultimate Guide to Acing Your Tech Interview](https://learntocodewith.me/posts/technical-interview/), learntocodewith.me (2022) - [30 Technical Interview Questions and Tips for Answering](https://www.coursera.org/articles/technical-interview-questions), Coursera (2023) -- [How to land your first developer job](/en-US/blog/how-to-land-your-first-developer-job), MDN Blog, 2024 +- [How to land your first developer job](/en-US/blog/how-to-land-your-first-developer-job/), MDN Blog, 2024 {{PreviousMenuNext("Learn_web_development/Getting_started/Soft_skills/Workflows_and_processes", "Learn_web_development/Core", "Learn_web_development/Getting_started/Soft_skills")}} diff --git a/files/en-us/mozilla/add-ons/webextensions/internationalization/index.md b/files/en-us/mozilla/add-ons/webextensions/internationalization/index.md index 5fcb0585c700c12..60d13b1578b82fa 100644 --- a/files/en-us/mozilla/add-ons/webextensions/internationalization/index.md +++ b/files/en-us/mozilla/add-ons/webextensions/internationalization/index.md @@ -215,12 +215,14 @@ In addition, you can use such substitutions to specify parts of the string that ## Localized string selection -Locales can be specified using a language code, such as `fr` or `en` or qualified with a script and region code, such as `en-US` or `zh-Hans-CN`. When your extension asks the i18n system for a string, it selects a string using this algorithm: +Locales are specified using a language code, such as `fr` or `en`, that can be qualified with a script and region code, such as `en-US` or `zh-Hans-CN`. When your extension asks for a localized string, the i18n system returns the string from the `messages.json` files using this order of precedence: -1. Return the string if there is a `messages.json` file for the user's set browser locale containing the string. For example, if the user has set their browser to `en-US` and the extension provides the `_locales/en_US/messages.json` file. -2. Otherwise, if the browser locale is qualified with a script or region (e.g., `en-US` or `zh-Hans-CN`) and there is a `messages.json` file for the regionless version and failing that the scriptless version of that locale and that file contains the string, return it. For example, if the user has set their browser to `zh-Hans-CN` (and there is no `_locales/zh_Hans_CN/messages.json` file) the i18n system looks for a string in `zh-Hans`, and if that isn't available, `zh`. -3. Otherwise, if there is a `messages.json` file for the `default_locale` defined in the `manifest.json`, and it contains the string, return it. -4. Otherwise return an empty string. +1. The file for the user's browser locale, e.g., `zh-Hans-CN`. +2. If the browser locale is qualified with a script or region, the file for the regionless version, e.g., `zh-Hans`. +3. If the browser locale is qualified with a script or region, the file for the scriptless version, e.g., `zh`. +4. The file for the `default_locale` defined in the `manifest.json` file. + +If the requested string is not present in any of those files, an empty string is returned. Take this example: @@ -233,16 +235,26 @@ Take this example: en - messages.json - `{ "colorLocalized": { "message": "color", "description": "Color." }, /* … */ }` + - `{ "colorBlue": { "message": "Blue", "description": "Blue." }, /* … */ }` - fr - messages.json - `{ "colorLocalized": { "message": "couleur", "description": "Color." }, /* … */}` + - `{ "colorBlue": { "message": "Bleu", "description": "Blue." }, /* … */ }` + +With the `default_locale` set to `fr`. -Suppose the `default_locale` is set to `fr`. +- If the browser's locale is `en-GB`: + - `getMessage("colorLocalized")` returns "colour" because `_locales/en_GB/messages.json` contains the `colorLocalized` message. + - `getMessage("colorBlue")`, returns "blue" because it falls back to the `colorBlue` message in `_locales/en/messages.json`. +- If the browser's locale is `en-US`: + - `getMessage("colorLocalized")` returns "color" because there is no `_locales/en_US/messages.json` file, so it falls back to the message present in `_locales/en/messages.json`. + - `getMessage("colorBlue")` returns "blue" because it falls back to the `colorBlue` message in `_locales/en/messages.json`. +- If the browser's locale is `zh-Hans-CN`: + - `getMessage("colorLocalized")` returns "couleur" because there is no region, script, or language match to the `zh-Hans-CN` locale (i.e., no `messages.json` file in a `zh-Hans-CN`, `zh-Hans`, or`zh` folder). + - `getMessage("colorBlue")` returns "bleu" because there is no region, script, or language match to the `zh-Hans-CN` locale. -- If the browser's locale is `en-GB` when the extension calls `getMessage("colorLocalized")`, it is returned "colour" because `_locales/en_GB/messages.json` contains the `colorLocalized` message. -- If the browser's locale is `en-US` when the extension calls `getMessage("colorLocalized")`, it is returned "color" because it falls back to the message present in `_locales/en/messages.json`. -- If the browser's locale is `zh-Hans-CN` when the extension calls `getMessage("colorLocalized")`, it is returned "couleur" because there is no language, script, or region match to the `zh-Hans-CN` locale. +If the extension were to call `getMessage("colorRed")` it's returned an empty string, as there is no property for `"colorRed"` in any of the language files. ## Predefined messages diff --git a/files/en-us/mozilla/add-ons/webextensions/manifest.json/default_locale/index.md b/files/en-us/mozilla/add-ons/webextensions/manifest.json/default_locale/index.md index b74434e8f2a42d3..071f7f9ba71af93 100644 --- a/files/en-us/mozilla/add-ons/webextensions/manifest.json/default_locale/index.md +++ b/files/en-us/mozilla/add-ons/webextensions/manifest.json/default_locale/index.md @@ -15,7 +15,7 @@ sidebar: addonsidebar Mandatory - Contingent: must be present if the _locales subdirectory is present, + Contingent: must be present if the _locales subdirectory is present, must be absent otherwise. @@ -26,9 +26,9 @@ sidebar: addonsidebar -This key must be present if the extension contains the \_locales directory, and must be absent otherwise. It identifies a subdirectory of \_locales, and this subdirectory will be used to find the default strings for your extension. +This key must be present if the extension contains the `\_locales` directory, and must be absent otherwise. It identifies a subdirectory of `\_locales` where the i18n system finds the extension's default localization strings. -See [Internationalization](/en-US/docs/Mozilla/Add-ons/WebExtensions/Internationalization). +See [Internationalization](/en-US/docs/Mozilla/Add-ons/WebExtensions/Internationalization) for more information. ## Example diff --git a/files/en-us/web/css/reference/properties/caret-animation/index.md b/files/en-us/web/css/reference/properties/caret-animation/index.md index 41d2106564f4891..d746dbecd7cf606 100644 --- a/files/en-us/web/css/reference/properties/caret-animation/index.md +++ b/files/en-us/web/css/reference/properties/caret-animation/index.md @@ -13,7 +13,10 @@ sidebar: cssref The **`caret-animation`** [CSS](/en-US/docs/Web/CSS) property is used to enable or disable the blinking behavior of the **insertion caret**, the visible marker that appears in editable elements to indicate where the next character will be inserted or deleted. -When applying a custom animation to the caret, you should stop the default blinking so that it doesn't interfere with the animation. +The `caret-animation` property can also be set as part of the {{cssxref("caret")}} shorthand property. + +> [!NOTE] +> When applying a custom animation to the caret, you should stop the default blinking so that it doesn't interfere with the animation. ## Syntax diff --git a/files/en-us/web/css/reference/properties/caret-color/index.md b/files/en-us/web/css/reference/properties/caret-color/index.md index d096978014c2c0f..064f9c9034982dd 100644 --- a/files/en-us/web/css/reference/properties/caret-color/index.md +++ b/files/en-us/web/css/reference/properties/caret-color/index.md @@ -9,6 +9,8 @@ sidebar: cssref The **`caret-color`** [CSS](/en-US/docs/Web/CSS) property sets the color of the **insertion caret**, sometimes referred to as the **text input cursor**. This is the visible marker appearing at the insertion point where the next character typed will be added or where the next character deleted will be removed. +The `caret-color` property can also be set as part of the {{cssxref("caret")}} shorthand property. + {{InteractiveExample("CSS Demo: caret-color")}} ```css interactive-example-choice diff --git a/files/en-us/web/css/reference/properties/caret-shape/index.md b/files/en-us/web/css/reference/properties/caret-shape/index.md index 674f92e793bc431..e2c90138a59b211 100644 --- a/files/en-us/web/css/reference/properties/caret-shape/index.md +++ b/files/en-us/web/css/reference/properties/caret-shape/index.md @@ -13,6 +13,8 @@ sidebar: cssref The **`caret-shape`** [CSS](/en-US/docs/Web/CSS) property sets the shape of the **insertion caret**, the visible marker that appears in editable elements to indicate where the next character will be inserted or deleted. +The `caret-shape` property can also be set as part of the {{cssxref("caret")}} shorthand property. + {{InteractiveExample("CSS Demo: caret-shape")}} ```css interactive-example-choice diff --git a/files/en-us/web/svg/reference/attribute/overflow/index.md b/files/en-us/web/svg/reference/attribute/overflow/index.md index 84d8645d4a4e86c..5ea46b3472ce1fc 100644 --- a/files/en-us/web/svg/reference/attribute/overflow/index.md +++ b/files/en-us/web/svg/reference/attribute/overflow/index.md @@ -6,7 +6,7 @@ browser-compat: svg.global_attributes.overflow sidebar: svgref --- -The **`overflow`** attribute sets what to do when an element's content is too big to fit in its block formatting context. **This feature is not widely implemented yet**. +The **`overflow`** attribute sets what to do when an element's content is too big to fit in its block formatting context. This attribute has the same parameter values and meaning as the CSS {{cssxref("overflow")}} property, however, the following additional points apply: diff --git a/package-lock.json b/package-lock.json index ec0b6b006e4e0e9..a941a0710f843fd 100644 --- a/package-lock.json +++ b/package-lock.json @@ -38,7 +38,7 @@ "parse-diff": "^0.12.0", "prettier": "3.8.3", "tempy": "^3.2.0", - "yaml": "^2.8.4", + "yaml": "^2.9.0", "yargs": "^18.0.0" }, "engines": { @@ -9887,9 +9887,9 @@ "license": "ISC" }, "node_modules/yaml": { - "version": "2.8.4", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.8.4.tgz", - "integrity": "sha512-ml/JPOj9fOQK8RNnWojA67GbZ0ApXAUlN2UQclwv2eVgTgn7O9gg9o7paZWKMp4g0H3nTLtS9LVzhkpOFIKzog==", + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.9.0.tgz", + "integrity": "sha512-2AvhNX3mb8zd6Zy7INTtSpl1F15HW6Wnqj0srWlkKLcpYl/gMIMJiyuGq2KeI2YFxUPjdlB+3Lc10seMLtL4cA==", "dev": true, "license": "ISC", "bin": { diff --git a/package.json b/package.json index 6cb09fc27f7f81f..094c76c889b435e 100644 --- a/package.json +++ b/package.json @@ -78,7 +78,7 @@ "parse-diff": "^0.12.0", "prettier": "3.8.3", "tempy": "^3.2.0", - "yaml": "^2.8.4", + "yaml": "^2.9.0", "yargs": "^18.0.0" } }