В блокноте я не могу вставить символ в крайнем левом углу этой строки, который смешивает еврейские символы с запятой и кавычками, когда в режиме LTR

Вот файл

http://www.zen76171.zen.co.uk/a.c

אהב","אהבו"

Назовите это изображение A

Вы видите курсор там.

Иврит - это язык справа налево, поэтому клавиши со стрелками влево и вправо ведут себя немного по-разному при перемещении по нему.

Странно то, что если я поставлю курсор там, где вы видите его, в крайнем левом углу. Затем, если я ударил символ, например, двойную кавычку, то я получаю это

/images/1541a1b3c4c5619a bff64520961a b65f2a901661.png

Теперь, скажем, я снова открываю файл, поэтому оглянемся на ImageA. Затем я пробую другой символ, например, букву "р", тогда я получаю это

/images/3fca6084e9819c15ca1df7a3f828c8bf465a b1ed.png

Теперь я нашел, как указано в заголовке, немного обходного пути, который заключается в том, если я помещаю файл в режиме справа налево. (Ctrl с правым смещением), затем я могу добавить цитату в правильную позицию, а затем перевести файл в режим слева направо, цитата в порядке там.

Но мне любопытно, возможно ли сделать это чисто слева направо, а если нет, то почему. Слева направо - это вопрос презентации, а режим справа налево не должен быть более функциональным на техническом уровне. Так что, если что, я делаю неправильно, когда в режиме слева направо я не могу вставить эту цитату? Или есть ошибка в режиме слева направо?

1 ответ

У вас есть текст

Определите блок иврита, его начало и конец

Иногда вы даже не можете нажать на точку, где вы хотите цитату.

Кажется, проблема связана с тем, что у вас есть блок (1+) символов, которые являются LTR, за которыми следует блок, который является символами RTL и т. Д. И проблема, кажется, является своего рода философским вопросом о том, являются ли точка A и точка B началом / концом этого блока. Или относятся ли они к предыдущему и следующему блоку. Если они относятся к предыдущему и следующему блоку, то вы получите забавные результаты. Точка B заканчивает предыдущий блок, который в режиме LTR находится в точке A. А точка A начинает следующий блок, который в режиме LTR находится в точке B. Таким образом, вы можете получить этот эффект обтекания. И что происходит, если любой английский символ, напечатанный в точке A, появляется в точке B, а любой еврейский символ, напечатанный в точке B, появляется в точке A.

Можно обнаружить, что они не могут щелкнуть по точке A или не могут щелкнуть по точке B. Что ж, тогда, если вы хотите указать точку A, вы можете попробовать щелкнуть по точке B, и наоборот. И вы можете обнаружить, что напечатанный там символ заканчивается в другом месте, где вы хотите его.

Также стоит написать блоки на иврите и английском и наблюдать, как курсор перемещается по ним, нажимая клавиши со стрелками влево и вправо. Таким образом, вы можете получить некоторое представление о том, где находятся начало и конец блоков.

Часто это больше о начале и конце блока, чем о начале и конце строки.

Кроме того, что отличает режим LTR от режима RTL. В обоих случаях английский идет слева направо и иврит справа налево. Но в режиме LTR, если у вас есть смежные блоки, то есть блок иврита, блок английского языка, блок иврита и т. Д. Или блок английского языка, затем блок иврита, а затем блок английского языка, блоки перейдут из LTR в режиме LTR. И RTL в режиме RTL. В блокноте вы также получаете выравнивание в соответствии с ним, хотя некоторые программы, например, файлы классов Visual Studio, помещающие данные в список, будут упорядочивать подобные блоки, обнаруживая иврит, делая RTL, но все же выравнивая все по левому краю. Это все еще режим RTL.

Кроме того, если все ваши слова на иврите и единственными блоками английского языка являются знаки препинания, то, если вы используете режим RTL, тогда может возникнуть меньше проблем, потому что в режиме RTL нет сомнений, что конец любого блока символов иврита будет рядом со следующим блоком символов иврита.

Другие вопросы по тегам