1

Я занимался кодированием Powershell, когда мне приходилось использовать эту строку:

`+[char]'ߡ'`

но мне пришлось добавить «-1» перед завершающей обратной кавычкой. Но независимо от того, что я пробовал в моем текстовом редакторе,

`+[char]'ߡ'-1`

будет результатом. Это случается и с тобой?

  1. Попробуйте набрать:

    '+ [Символ]' ߡ'`
    В блокнот ++ или омнибокс Chrome и т.д.
  2. Поместите курсор на 12 мест в этой строке (между ' и `) и введите -1 .

Это выходит правильно? Потому что это не для меня, и это не на моем другом компьютере тоже.

Почему это происходит? И происходит ли это на вашем компьютере? Или только мой?

ПРОВЕРЕНО НА ОКНАХ 10 x32

1 ответ1

1

Вы испытываете правильное поведение. Этот треугольный символ ߡ - U+07E1 NKO LETTER MA. Скрипт N'Ko находится справа налево, поэтому персонаж демонстрирует сильное предпочтение рендеринга RTL. Дефис является "слабым", когда речь заходит о RTL, как и европейские цифры, но европейские цифры станут RTL, если за ними стоит первое сильное предпочтение - RTL. После того как вы введете 1 , произойдет переупорядочение, и для поездки появится дефис, поскольку он находится между цифрой и буквой N'Ko. Латинские буквы строго слева направо, поэтому они не будут затронуты.

Несмотря на то, что текст кажется перетасованным, данные персонажа не меняются; -1 действительно после буквы N'Ko и вне одинарной кавычки. При сохранении +[char]'ߡ'-1 в файл .ps1 и его запуске печатается 2016 без синтаксической ошибки. Кроме того, вставка этого текста в консоль PowerShell не производит RTL-рендеринг; Вы просто получаете ящик вместо письма Н'Ко.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .