Skip to content

Conversation

@btangmu
Copy link
Member

@btangmu btangmu commented Oct 25, 2025

-Revise AddValue.vue to support new child component AddValueTags.vue

-Move template to top for consistency with most of our Vue components (we should decide on a consistent convention)

-New radio buttons enable choosing between default Text mode and new Tags mode

-Implement tags with a-tag from Ant Design Vue, see https://www.antdv.com/components/tag

-Display one tag for each Unicode code point; hover shows USV and Unicode name, see https://www.npmjs.com/package/unicode-name

-Enable inserting new tags with [+] buttons that appear between tags, before the first tag, and following the last tag

-Each tag has [x] button for deleting the tag

-Enable inputting a character either directly or by its USV (U+...)

CLDR-18954

  • This PR completes the ticket.

ALLOW_MANY_COMMITS=true

-Revise AddValue.vue to support new child component AddValueTags.vue

-Move template to top for consistency with most of our Vue components (we should decide on a consistent convention)

-New radio buttons enable choosing between default Text mode and new Tags mode

-Implement tags with a-tag from Ant Design Vue, see https://www.antdv.com/components/tag

-Display one tag for each Unicode code point; hover shows USV and Unicode name, see https://www.npmjs.com/package/unicode-name

-Enable inserting new tags with [+] buttons that appear between tags, before the first tag, and following the last tag

-Each tag has [x] button for deleting the tag

-Enable inputting a character either directly or by its USV (U+...)
@btangmu btangmu self-assigned this Oct 25, 2025
-Also remove defineEmits from AddValueTags.vue
@btangmu
Copy link
Member Author

btangmu commented Oct 25, 2025

Please note that the ticket is still "investigate", and this PR is intended to illustrate possibilities rather than a final design.

Screenshots are based on running ST locally with these changes.

image

The input dialog shown above has new "Input mode" radio buttons, and the winning value has just been inserted by clicking the "Winning" button. The path is https://st.unicode.org/cldr-apps/v#/am/Gregorian/471a794c61b793f4 .

image

After choosing "Tags", hovering on the first tag shows the USV and character name.

image

After clicking on the leftmost [+], an input box is displayed for inserting a character. The user has typed "A".

image

After clicking on the rightmost [+], an input box is displayed for inserting a character. The user has typed "U+20000".

image

After pressing Return or clicking outside the input box, the character 𠀀 is displayed and the hover shows the USV and character name.

image image

Hovering on "Text" or "Tags" shows description of the input mode. Note that a checkbox could be used instead, or there could be more than two modes. For example, sequences of ordinary characters could be combined in one tag, and separate tags could be displayed only for special characters such as thin spaces. Or, text and tags could be displayed simultaneously. Or, additional controls could be displayed for choosing from a palette of special characters to input.

@btangmu
Copy link
Member Author

btangmu commented Oct 26, 2025

So far (commits 1 and 2) this PR only supports the conventional U+... notation (plus character names) to help identify characters. A likely enhancement would be to add support for codes like ❰TSP❱ for thin space; see https://cldr.unicode.org/translation/core-data/exemplars#key-to-escapes

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant