diff options
| -rw-r--r-- | docs/anki-integration.md | 5 | ||||
| -rw-r--r-- | ext/data/templates/anki-field-templates-upgrade-v36.handlebars | 3 | ||||
| -rw-r--r-- | ext/data/templates/default-anki-field-templates.handlebars | 4 | ||||
| -rw-r--r-- | ext/js/data/anki-template-util.js | 1 | ||||
| -rw-r--r-- | ext/js/data/options-util.js | 10 | ||||
| -rw-r--r-- | ext/settings.html | 6 | ||||
| -rw-r--r-- | test/data/anki-note-builder-test-results.json | 2 | ||||
| -rw-r--r-- | test/options-util.test.js | 2 | 
8 files changed, 28 insertions, 5 deletions
| diff --git a/docs/anki-integration.md b/docs/anki-integration.md index f12c1268..5aa9e10c 100644 --- a/docs/anki-integration.md +++ b/docs/anki-integration.md @@ -87,8 +87,9 @@ Flashcard fields can be configured with the following steps:      | `{frequency-average-rank}`        | The average of frequency data for the current kanji. Defaults to rank 9999999 when frequency data is not found, indicating extremely low rank-based kanji usage.         |      | `{frequency-average-occurrence}`  | The average of frequency data for the current kanji. Defaults to 0 occurrences when frequency data is not found, the lowest possible occurrence-based kanji usage.       |      | `{glossary}`                      | List of definitions for the kanji.                                                                                                                                       | -    | `{kunyomi}`                       | Kunyomi (Japanese reading) for the kanji expressed as katakana.                                                                                                          | -    | `{onyomi}`                        | Onyomi (Chinese reading) for the kanji expressed as hiragana.                                                                                                            | +    | `{kunyomi}`                       | Kunyomi (Japanese reading) for the kanji expressed as hiragana.                                                                                                          | +    | `{onyomi}`                        | Onyomi (Chinese reading) for the kanji expressed as katakana.                                                                                                            | +    | `{onyomi-hiragana}`               | Onyomi (Chinese reading) for the kanji expressed as hiragana.                                                                                                            |      | `{screenshot}`                    | Screenshot of the web page taken at the time the kanji was added.                                                                                                        |      | `{search-query}`                  | The full search query shown on the search page.                                                                                                                          |      | `{selection-text}`                | The selected text on the search page or popup.                                                                                                                           | diff --git a/ext/data/templates/anki-field-templates-upgrade-v36.handlebars b/ext/data/templates/anki-field-templates-upgrade-v36.handlebars new file mode 100644 index 00000000..0b07e483 --- /dev/null +++ b/ext/data/templates/anki-field-templates-upgrade-v36.handlebars @@ -0,0 +1,3 @@ +{{#*inline "onyomi-hiragana"}} +    {{~#each definition.onyomi}}{{hiragana .}}{{#unless @last}}, {{/unless}}{{/each~}} +{{/inline}}
\ No newline at end of file diff --git a/ext/data/templates/default-anki-field-templates.handlebars b/ext/data/templates/default-anki-field-templates.handlebars index 53dab1c1..bbeff830 100644 --- a/ext/data/templates/default-anki-field-templates.handlebars +++ b/ext/data/templates/default-anki-field-templates.handlebars @@ -173,6 +173,10 @@      {{~#each definition.onyomi}}{{.}}{{#unless @last}}, {{/unless}}{{/each~}}  {{/inline}} +{{#*inline "onyomi-hiragana"}} +    {{~#each definition.onyomi}}{{hiragana .}}{{#unless @last}}, {{/unless}}{{/each~}} +{{/inline}} +  {{#*inline "reading"}}      {{~#unless modeTermKana~}}          {{~#if merge~}} diff --git a/ext/js/data/anki-template-util.js b/ext/js/data/anki-template-util.js index 20170dae..1c74d747 100644 --- a/ext/js/data/anki-template-util.js +++ b/ext/js/data/anki-template-util.js @@ -83,6 +83,7 @@ export function getStandardFieldMarkers(type) {                  'glossary',                  'kunyomi',                  'onyomi', +                'onyomi-hiragana',                  'screenshot',                  'search-query',                  'selection-text', diff --git a/ext/js/data/options-util.js b/ext/js/data/options-util.js index 521b4c9b..e2fd2789 100644 --- a/ext/js/data/options-util.js +++ b/ext/js/data/options-util.js @@ -542,7 +542,8 @@ export class OptionsUtil {              this._updateVersion32,              this._updateVersion33,              this._updateVersion34, -            this._updateVersion35 +            this._updateVersion35, +            this._updateVersion36          ];          /* eslint-enable @typescript-eslint/unbound-method */          if (typeof targetVersion === 'number' && targetVersion < result.length) { @@ -1286,6 +1287,13 @@ export class OptionsUtil {          await this._applyAnkiFieldTemplatesPatch(options, '/data/templates/anki-field-templates-upgrade-v35.handlebars');      } +    /** +     *  - Added handlebars for onyomi reading in hiragana. +     *  @type {import('options-util').UpdateFunction} +     */ +    async _updateVersion36(options) { +        await this._applyAnkiFieldTemplatesPatch(options, '/data/templates/anki-field-templates-upgrade-v36.handlebars'); +    }      /**       * @param {string} url diff --git a/ext/settings.html b/ext/settings.html index 14342a5b..525e99b1 100644 --- a/ext/settings.html +++ b/ext/settings.html @@ -3088,10 +3088,14 @@                  </tr>                  <tr>                      <td><code class="anki-field-marker">{kunyomi}</code></td> -                    <td>Kunyomi (Japanese reading) for the kanji, expressed as katakana.</td> +                    <td>Kunyomi (Japanese reading) for the kanji, expressed as hiragana.</td>                  </tr>                  <tr>                      <td><code class="anki-field-marker">{onyomi}</code></td> +                    <td>Onyomi (Chinese reading) for the kanji, expressed as katakana.</td> +                </tr> +                <tr> +                    <td><code class="anki-field-marker">{onyomi-hiragana}</code></td>                      <td>Onyomi (Chinese reading) for the kanji, expressed as hiragana.</td>                  </tr>                  <tr> diff --git a/test/data/anki-note-builder-test-results.json b/test/data/anki-note-builder-test-results.json index 49e0d8fe..1c78c0db 100644 --- a/test/data/anki-note-builder-test-results.json +++ b/test/data/anki-note-builder-test-results.json @@ -19,6 +19,7 @@          "glossary": "<div style=\"text-align: left;\"><ol><li>utsu meaning 1</li><li>utsu meaning 2</li><li>utsu meaning 3</li><li>utsu meaning 4</li><li>utsu meaning 5</li></ol></div>",          "kunyomi": "う.つ, う.ち-, ぶ.つ",          "onyomi": "ダ, ダアス", +        "onyomi-hiragana": "だ, だあす",          "screenshot": "",          "search-query": "fullQuery",          "selection-text": "", @@ -50,6 +51,7 @@          "glossary": "<div style=\"text-align: left;\"><ol><li>komu meaning 1</li><li>komu meaning 2</li><li>komu meaning 3</li><li>komu meaning 4</li><li>komu meaning 5</li></ol></div>",          "kunyomi": "-こ.む, こ.む, こ.み, -こ.み, こ.める",          "onyomi": "", +        "onyomi-hiragana": "",          "screenshot": "",          "search-query": "fullQuery",          "selection-text": "", diff --git a/test/options-util.test.js b/test/options-util.test.js index 8fb07263..70404ce5 100644 --- a/test/options-util.test.js +++ b/test/options-util.test.js @@ -605,7 +605,7 @@ function createOptionsUpdatedTestData1() {              }          ],          profileCurrent: 0, -        version: 35, +        version: 36,          global: {              database: {                  prefixWildcardsSupported: false |