Characters composed of multiple Unicode values causes autocomplete to not properly replace existing letters when typed into the command bar

Explanation

When using the command bar in Studio, typing partial keywords / variable names (henceforth referred to as “partial text”) results in one or more suggestions being shown. Normally, accepting the suggestion completely removes the partial text and replaces it with the suggestion.

However, when there is a letter / character composed of multiple unicode values (such as Russian characters Г, Ы) prior to the partial text, one or more letters in the partial text are not removed / become duplicated at the start of the autocompleted text.

Below is a video showcasing the normal behavior, then showing the bugged behaviour with 1 or more Russian characters.

The number of characters that are not removed from the partial text corresponds to the amount of additional unicode values in the preceding text. Russian characters, being composed of 2 unicode values, causes 1 (2-1) letters to not be removed. Characters containing 5 unicode values, such as ◌𞥉, causes 4 (5-1) letters to not be removed.


Reproduction

  1. Insert a character composed of multiple unicode values into the command bar
  2. Type a partial keyword / variable at some point after the character
  3. Accept an autocomplete suggestion (by pressing enter/tab/other)
  4. Observe the duplicated characters at the start of the autocompleted text.
Various Unicode Values for Testing

Index corresponds to the number of values in the character

  1. A (No issue)
  2. д
  3. *̸̜
  4. ◌̃
  5. Ò̴̖̀

Device Info

Operating System: Windows 10
CPU: Ryzen 5 3600
GPU: GTX 1650 Super
RAM: 16GB @ 3600MHz

2 Likes