-
Notifications
You must be signed in to change notification settings - Fork 174
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Неправильно отображаются 'й' и 'ё' в именах файлов, созданных не в far2l #826
Comments
Приложил подорожник, должно стать лучше. Но сделать идеально - не в ближайшее время точно, внутренняя логика фара не рассчитана на такое - когда символов два, а выглядят как один |
А как это в виндовом фаре решают? |
никак |
Но у меня винда не свежая (2008r2 - считай - семерка), может в десятке чтонить с этим сделали интересное. |
Ха! А в линуксовой консоли кто-то такое умеет вообще?
А идеалогически правильно было бы сразу весь символ съедать, типа? |
Кстати, тут схожая проблемка есть, возможно, примерно того же генеза #825 |
в 20й убунте получше - смайлик желтый и не наезжает на квадратную скобку, но в миднайте все такой же косяк с й |
Там страннота с этим сэмплом страннейшая:
Я на mint 20, который эквивалентен 20 убунте |
Обычно для простоты считают 1 уникодный code point == 1 символ, но это часто не работает (из-за этих-самых комбинированных символов, ну ещё и из-за суррогатов). Разделять текст на настоящие символы сложнее. Если это надо сделать, обычно проходят BreakIterator'ом из ICU. Представление символов с диакритиками (вроде ё и й) в виде последовательности code point'ов -- это рекомендованный стандартом способ, хотя обычно так никто не делает. Комбинированные символы (вроде ё и й одним code point'ом) в уникоде в качестве исключения только для тех символов, которые были в старых кодировках. Насчёт того, что смайл налазит на следующий символ -- это скорее проблема шрифта, а не рендерера. Если какой-то символ оказывается шире, чем остальные, то либо он налазит на следующий, либо сдвигает оставшуюся строку вправо. По-моему, лучше, чтоб налазил. И ещё надо не забывать о лигатурах. В некоторых языках символы объединяются в лигатуры. Например, в арабском ويكيبيديا, если повставлять пробелы между буквами, выглядит так: وي ك ي ب ي د ي ا. Ну и у программистов начали появляться шрифты с лигатурами, всякие там |
Да причины вполне понятны, корень проблем в квадратно-гнездовом представлении винды о консоли, ну и фар его унаследовал. |
зато в никсах до недавнего времени клипборда в консоли не было и половины кнопок))
А что должно случится? Вроде странностей не наблюдается |
Странно, у меня с JetBrains Mono никогда такого не было (и в far2l тоже хорошо работает). |
это я strim посоветовтаь хотел, не вкопипастил ник просто |
Хм, со второй попытки включился! Лигатуры работат странно, но работают. Ух, зачем же он только узкий такой. Не очень-то оно читабельность повышает, наоборот, скорее: контраст заглавных и строчных букв как раз для того и придуман, чтоб читабельность повысить. |
А теперь попробуйте в рамочку в это поместить, или например в имени файла использовать. То всё что справа, cъедет.
|
Ну, хм, mcedit, turbo и nano считают смайл шириной в два знакоместа просто. И ничего, интерфейс у turbo не ломается от этого, хотя он тоже из box drawing chars сделан, как и у фара. Ну это если в терминалке гнома. |
Браузеры в fixed-width chars режиме тоже смайл на два знакоместа рисуют. И хром и лиса. Ну уж браузеры-то точно должны знать, как обращатья с юникодом правильно? |
А вот нашлось: https://bugs.launchpad.net/ubuntu/+source/gnome-terminal/+bug/1665140 Со стандарта Unicode 9 (2017 года), смайлы объявили wide, и они действительно должны занимать два знакоместа (как, например, иероглифы). |
Ладно, Ктулху с ней с шириной, вот почему в turbo под far2l курсор на правую квадратную скобку у смайла не поставить? А в гном терминале норм. Ну это-то точно баг. |
давайте ширину смайла в соответтвующей теме обсуждать #825 , природа багов общая но все же человек мою просьбу выставить кратный 5 шрифт может не заметить |
JBшный так и не прижился у меня (больно узкий), но за инфу про прогерские шрифты с лигатурами — Большое Человеческое Спасибо! Вот ещё несколько таких, для тех, кому JB не зашел. И вот тут ещё есть. О господи, с Microsoft'овского гитхаба подсел на Microsoft'овский шрифт. Какой-то я неправильный линуксоид |
Рендерилка f2l, конечно, подглюкивает местами на некоторых конструкциях. На таком, например !== |
а что у нас здесь осталось не решенным, собственно? я проверил сэмпл, нормально сейчас рисуется. два бекспейса тоже нормально, ведь по факту там два символа наличествует что требуется доделать с точки зрения UX? |
closing as fixed |
Русские имена файлов с буквами 'й' и 'ё' отображаются с отъехавшими надстрочными частями, словно они являются отдельными символами (на картинке "неудачный файл.txt"). Такая проблема не случается с файлами, созданными в самом far2l (на картинке "удачный файл.txt"). Наблюдаю эту проблему уже года 2-3 с разными сборками far2l под Mac OS X c wxWidgets 3.0 - 3.1.
Возможно, баг дублирует #213, но на тот явно забили. А возможно - это всем известная проблема, и есть способ её порешать? Спасибо!
The text was updated successfully, but these errors were encountered: