MantisBT  Site | Plugring | Plugins API and Macros | Forum | English Forum | Code

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0003455Far ManagerInterfacepublic2017-07-22 12:182017-08-08 16:37
Reporterantonr 
Assigned To 
PrioritynormalSeveritymajorReproducibilityalways
StatusnewResolutionopen 
Platformx64OSx64 Windows 10 build 15063.483OS Version1703
Product Version3.0 
Target VersionFixed in Version 
Summary0003455: Ломается весь интерфейс при наличии старших юникодных символов
DescriptionПодробное описание:
при использовании точечных шрифтов ломается любой (панели, редактор, диалоги) интерфейс Far, если текст на экране содержит старшие символы Unicode (например иероглифы).
Steps To Reproduce1) установить для окна Far точечный шрифт
https://paste.pics/d2ecc48bfcc2ac7193750ec884837f6c
2) открыть в панели папку с иероглифами в названиях файлов
http://paste.pics/643f77420ab5c16f08051d63999239f5
получится вот такое
http://paste.pics/6b06ada5ccf7ef2ca6091e473d601d8a
примерно такое же получается в диалоге при копировании файлов, в редакторе и просмотрщике
Additional InformationПоявилось где-то между 4900 и 4949.
Спасибо
TagsNo tags attached.
Build
Attached Filespng file icon d2ecc48bfcc2ac7193750ec884837f6c.png [^] (22,271 bytes) 2017-07-22 12:27


png file icon 6b06ada5ccf7ef2ca6091e473d601d8a.png [^] (20,429 bytes) 2017-07-22 12:27

- Relationships

-  Notes
(0015472)
antonr (reporter)
2017-07-22 12:28

Залил скриншоты.
Баг повторяется в 4991
(0015473)
2useven10 (developer)
2017-07-22 13:05
edited on: 2017-07-22 13:05

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

(0015474)
antonr (reporter)
2017-07-22 20:21

Спасибо за пояснение.
Жаль, всю жизнь использовал точечные шрифты в Far.
(0015475)
DrKnS (administrator)
2017-07-22 21:00

> Появилось где-то между 4900 и 4949.

Вы уверены, что оно не всегда так было?
(0015476)
antonr (reporter)
2017-07-23 12:42

Уверен, потому всегда настраивал точечные шрифты для Far сразу как только устанавливал.

Только теперь я не уверен, поломалось ли что-то в Far или это стало появляться после апгрейда Windows с 8.1 на 10 или 10-ки на новую сборку.
(0015477)
antonr (reporter)
2017-07-23 12:51

Попробовал на сборке 4787 x64 и x86. На ней эта проблема тоже присутствует. Так что возможно, дело в Windows.
(0015478)
zg (developer)
2017-07-23 13:01

это фича новой консоли десятки. очень странная. при векторных шрифтах она тоже проявляется в виде удвоенной ширины курсора, когда он под таким символом.
(0015484)
SEt (reporter)
2017-07-25 00:46

Совершенно непонятно, почему проблемы консоли по-прежнему остаются проблемой интерфейса Far'а.
Это как сказать, что в консоли невозможна графика, а поэтому и в Far'е.
(0015485)
DrKnS (administrator)
2017-07-25 12:11

> Совершенно непонятно

Если не ошибаюсь, вы забыли прикрепить патч с решением проблемы.
(0015486)
SEt (reporter)
2017-07-25 20:48

Нет, ошибаетесь. Преписывать такую сильно интегрированную часть Far'а как отрисовка только для очевидной демонстрации, что так можно, у меня точно нет желания.

На относительно простое решение проблемы я намекнул: рисовать элементы Far'а так же как рисуются сейчас картинки - дочерним окном к консоли. Но делать это должны Far Group, а не кто-то сторонний, ибо никаких гарантий, что такой сторонний патч примут, нет - только опять начнутся холивары.
(0015488)
2useven10 (developer)
2017-07-25 22:11

Решение относительно простое для отрисовки из самого фара.
Иначе это будет очередной эмулятор консоли.
Один уже есть, вполне работоспособный, и с отрисовкой иероглифов
может и не идеально, но справляется.
(0015489)
zg (developer)
2017-07-25 22:44

а как предлагается бороться с тем, что всякие WriteConsoleOutput - асинхронные?
(0015490)
SEt (reporter)
2017-07-25 23:20

Я предлагаю такую альтернативную отрисовку только для самого фара. Понятно, что универсально решить все проблемы консоли не получится.

А в чём проблемы с асинхронностью? В самом простом варианте Far внутри себя держит текстовый буфер, который рисуется графическим выводом текста, а не консольным. Лучше, конечно, что-то поинтеллектуальнее, чтобы иероглифы нормально выводились - если их запихать в размеры обычной буквы, то становится совсем плохо с читаемостью.
(0015491)
zg (developer)
2017-07-25 23:36

в том, что если кто-то (внешняя программа, плагин и т.д.) вывели что-то в консоль, а потом фар отрисовал свой интерфейс, то реальный вывод может случиться позже уже поверх отрисованного фаром.
(0015492)
DrKnS (administrator)
2017-07-25 23:52

> В самом простом варианте Far внутри себя держит текстовый буфер, который рисуется графическим выводом текста

Поддержка внешней отрисовки (подкладываете свою dll, получаете буфер, рисуете его, чем хотите) была добавлена шесть лет назад.
(0015519)
olegyershov (reporter)
2017-08-08 16:09
edited on: 2017-08-08 16:09

Добрый день,
Только что хотел запостить такой же баг-репорт, обнаружил что уже есть...
Someone wrote

> Появилось где-то между 4900 и 4949.
Вы уверены, что оно не всегда так было?

Подтверждаю. Всегда использовал растровые шрифты. Раньше такого не было даже в более ранней версии FAR 3.0. Truetype шрифты для консольного приложения какие-то дурацкие, если честно.
Юникодные файлы у меня лежат на компе, еще когда был FAR 2.0. Правда в эту папку не часто залезаю.
Но с truetype ничего не ломается почему-то.

(0015520)
DrKnS (administrator)
2017-08-08 16:21

> Раньше такого не было даже в более ранней версии FAR 3.0

Раньше и трава зеленее была, да.

Поясню вопрос.
Если вы сейчас, на этой же ОС, с этими же настройками, с этими же файлами, возьмёте эту "более раннюю версию FAR 3.0" (кстати, какую именно?), результат будет другим?
(0015521)
olegyershov (reporter)
2017-08-08 16:37

Уговорили...
Поставил Far 2.0
Растровые шрифты все ломают.

- Issue History
Date Modified Username Field Change
2017-07-22 12:18 antonr New Issue
2017-07-22 12:27 antonr File Added: d2ecc48bfcc2ac7193750ec884837f6c.png
2017-07-22 12:27 antonr File Added: 6b06ada5ccf7ef2ca6091e473d601d8a.png
2017-07-22 12:28 antonr Note Added: 0015472
2017-07-22 13:05 2useven10 Note Added: 0015473
2017-07-22 13:05 2useven10 Note Edited: 0015473 View Revisions
2017-07-22 20:21 antonr Note Added: 0015474
2017-07-22 21:00 DrKnS Note Added: 0015475
2017-07-23 12:42 antonr Note Added: 0015476
2017-07-23 12:51 antonr Note Added: 0015477
2017-07-23 13:01 zg Note Added: 0015478
2017-07-25 00:46 SEt Note Added: 0015484
2017-07-25 12:11 DrKnS Note Added: 0015485
2017-07-25 20:48 SEt Note Added: 0015486
2017-07-25 22:11 2useven10 Note Added: 0015488
2017-07-25 22:44 zg Note Added: 0015489
2017-07-25 23:20 SEt Note Added: 0015490
2017-07-25 23:36 zg Note Added: 0015491
2017-07-25 23:52 DrKnS Note Added: 0015492
2017-08-08 16:09 olegyershov Note Added: 0015519
2017-08-08 16:09 olegyershov Note Edited: 0015519 View Revisions
2017-08-08 16:21 DrKnS Note Added: 0015520
2017-08-08 16:37 olegyershov Note Added: 0015521



Copyright © 2000 - 2017 MantisBT Team
Powered by Mantis Bugtracker