Code Viewer - просмотр исходного кода

Обсуждение только плагинов и утилит для Total Commander.

Модераторы: Avada, CaptainFlint, Nik, d-view, Моторокер

HarDCorP
Сообщения: 12
Зарегистрирован: Пт июн 14, 2024 15:36

Сообщение HarDCorP »

Небольшой вопрос, поддерживается ли тип/метод сглаживания шрифтов?
gdi судя по всему по умолчанию.

Посмотрел в TTextEditor похожего тоже там не нашел
olegvsk
Сообщения: 115
Зарегистрирован: Чт дек 17, 2020 16:34

Сообщение olegvsk »

HarDCorP писал(а):Небольшой вопрос, поддерживается ли тип/метод сглаживания шрифтов?
Для отрисовки используется GDI, поэтому сглаживание только системное.
Destiny
Сообщения: 340
Зарегистрирован: Вт дек 15, 2015 18:22

Сообщение Destiny »

На последнем билде 1.6 открылся файл, который частично текстовый - частично бинарный - это результат работы шифровальщика.
Внутри него преимущественно блочный объем текста - т.е. строки не выходят за границу в 100 символов. НО есть и уникальные
строки с размером от 400 и до 600 символов в длину.
Так вот при попытке скролить по горизонтали такой файл - мы вроде как полосой прокрутки утыкаемся в правую кнопку прокрутки.
Вроде вот все - граница текста должна быть. НО нет - визуально мы видим, что до конца этой строки еще символов 20/30.
И даже отключение миникарты, которая теоретически перекрывает именно этот объем текста - не помогает. Миникарта исчезает,
отрисовка строки дергается вправо и уже граница окна плагина превращается в рубеж, до которого опять-таки прокрутка автоматом
прокрутилась, дальше не идет, но строка по прежнему отрисован не до конца - всё те же 20/30 символов надо прокрутить.
Изображение

Код: Выделить всё

ћа„Ђµ¤SУ¬ќТу:Ь4~%)›¦4Њ[Uц„MB(ъ—Fюы‘сШ-ЫМ-­ЭxЅ	gћЙб±’к#Рлс`·ћ+цLIеN¬нSCЈї}{}{949661550-1576102258}{CS 1.7.0.1}{и“Ъ»‡–DЁYњЖБ4}{55309130215979645811}{000082000101000109000111000116000101000068000101000115000107000116000111000112000095000083000117000112000112000114000101000115000115000087000104000101000110000077000105000110000105000109000105000122000101000100000046000114000101000103}{Wr}{wП'ЂШ}{146}{dgdQdYdUdZdUd3d4d2dMd4d0d2}{ENCRYPTENDED}
Вот можно такую строку использовать для тестов. В свой ЛЮБОЙ текстовый файл, где граница текста плавает в пределах 100 символов -
вставляйте эту одиночную строку выше и проверяете воспроизводимость бага. Должно сработать.
Понятно дело, что проблема скорее всего именно в этих "как бы текстовых", но на самом деле весьма непечатных символах:
Изображение
Наверное как-то некорректно вычисляется их ширина, чтобы сформировать общее значение величины требуемой гор.прокрутки.
Потому как если в обычном текстовом файле просто набрать текстовую строку "АБВГД" аж в 500 символов - она все равно будет
нормально отображена при просмотре в плагине... И нормально горизонтально скролироваться.

В чистом Листере проблем нет. Но там другая пробела - несоразмерно огромная длина виртуальной прокрутки.
Там едва-едва сдвигаешь вправо прокрутку - и уже мне отрисовывается конец этой длинной строки.
Там похоже в принципе не считается - ГДЕ находится граница текста, а берется огромный буфер вывода с запасом.
Наверное подразумевается поддержка вывода строки с длиной в 65535 символов в самой "жирной" (с точки зрения
ширины знакоместа) их вариации.

Еще вопрос - почему команда "Перечитать" имеет хоткей F5, отличающийся от Листерного F2? Разумно же полностью
поддерживать ВСЕ хоткеи стандартного Листера - и добавить какие-то свои, уникальные, нужные самому плагину.

P.S. пока печатал это всё - еще случайно потыкал мышкой в правую кнопку прокрутки, когда полоса прокрутки УЖЕ
находилась впритык к ней, т.е. возможности двигаться куда-то еще правее вроде как и не было.
НО чудо! полоса прокрутки осталась на месте, а выводимый текст стал смещаться левее - открывая тем самым ту часть,
что была недоступна и составляла суть описанного выше бага.
Если честно - не могу назвать эту возможность хоть как-то полезной и нужной. Потому как любая операция с прокруткой
все равно приводит к вышеописанному. Т.е. достаточно вот просто мышкой щелкнуть в полосу, ничего не двигать, а вот
вся перерисовка содержимого файла будет выполнена и картинка станет точно такой же как и на первой моей картинке
тут выше.
Т.е. эта формально доступная, виртуальная прокрутка - хоть и показывает скрытое особым образом, но вот пользоваться
этим все равно невозможно на постоянной основе. Это опять-таки выглядит как скорее баг самой полосы.

P.P.S.
И еще странность - при открытии по F3 каталога - плагин вдруг решил взять на себя права по его "открытию".
Ну, т.е. вот ЧТО плагин для просмотра текстовых файлов может делать в случае, когда Листером хочется
просмотреть сводную информацию по каталогу, которая до сего дня беспрекословно только Листером и
просматривалась? А сейчас вот сабж стал влазить в эту отлаженную цепочку действий....
Галка же, если уж вести речь о настройках, есть для ФАЙЛОВ! лишь!
"Открывать любые файлы". Ну да, тут галочка стоит. Но это же про файлы, а не про каталоги....
В детект-строке доступно лишь определение запрета по размеру файлов. Опять-таки - файлов!
olegvsk
Сообщения: 115
Зарегистрирован: Чт дек 17, 2020 16:34

Сообщение olegvsk »

Destiny писал(а):Так вот при попытке скролить по горизонтали такой файл - мы вроде как полосой прокрутки утыкаемся в правую кнопку прокрутки.
Непечатные символы отображаются текстом шириной более одного символа, поэтому неверно считается длина строки. Думаю, можно пофиксить.
Destiny писал(а):почему команда "Перечитать" имеет хоткей F5
Потому что для меня с начала времён обновление - это F5, в других моих плагинах так же. F2 я бы лучше задействовал для сохранения, но он здесь, как и во многих других редакторах, используется для закладок.
Destiny писал(а):при открытии по F3 каталога - плагин вдруг решил взять на себя права по его "открытию"
Спасибо за баг, нужно отключить реагирование на каталоги.
Destiny
Сообщения: 340
Зарегистрирован: Вт дек 15, 2015 18:22

Сообщение Destiny »

olegvsk писал(а):Потому что для меня с начала времён обновление - это F5
Вы удивитесь но и для меня это так же)))
НО! есть одно большое НО!
Вы же сделали плагин ДЛЯ листера - значит надо принимать правила работы его логики И лишь потом ПЛЮСОМ
добавлять что-то своё, заточенное под логику плагина.
Так вот у Листера обновление - это F2. Значит логично будет сделать поддержку этого, а в плагине сделать что-то своё.
А если вдруг почему-то нельзя/не хочется этого делать, то тогда надо бы в Листере дизейблить те пункты меню - действия
которых невозможны в связи с подключенным плагином.

Или тогда уж сделать поддержку настроек хоткеев внутри плагина.
Destiny писал(а):случайно потыкал мышкой в правую кнопку прокрутки, когда полоса прокрутки УЖЕ
находилась впритык к ней, т.е. возможности двигаться куда-то еще правее вроде как и не было.
НО чудо! полоса прокрутки осталась на месте, а выводимый текст стал смещаться левее - открывая
тем самым ту часть, что была недоступна и составляла суть описанного выше бага.
А этот баг заметили/подтверждаете? ИМХО, не должно быть какой-то виртуальной прокрутки "в никуда/за пределы".
olegvsk
Сообщения: 115
Зарегистрирован: Чт дек 17, 2020 16:34

Сообщение olegvsk »

Destiny писал(а):Вы же сделали плагин ДЛЯ листера - значит надо принимать правила работы его логики
Вопрос философский. Сам привык жать F2 при просмотре в голом листере быстрых логов. Но тематика плагина сказывается и на клавиатурных сочетаниях. Для редактора естественней F5, а F2 занято под закладки.
Destiny писал(а):надо бы в Листере дизейблить те пункты меню
Наверное... А вы часто бываете в меню листера? :)
Destiny писал(а):Или тогда уж сделать поддержку настроек хоткеев внутри плагина
Это смело. Может, когда-нибудь и приду к этому.
Destiny писал(а):А этот баг заметили/подтверждаете
Подтверждаю, признаю :).
Destiny
Сообщения: 340
Зарегистрирован: Вт дек 15, 2015 18:22

Сообщение Destiny »

olegvsk писал(а): А вы часто бываете в меню листера?
Как только что-то нажатое через хоткей не сработало - тут же мышкой "лечу" туда, чтобы уж
наверняка выполнить тот функционал, что в моей голове числится закрепленным за нажатым
мной хоткеем. Да и я в принципе скорее "мышист", чем "клавишник".

P.S.
Просто этот плагин как-то вообще со словом "редактор" не состыковывается - а просмотр он и в
Африке просмотр. А значит - весь функционал Листера ожидается и при просмотре этим плагином.
Аватара пользователя
yozhik
Сообщения: 353
Зарегистрирован: Вс май 04, 2014 20:34
Откуда: Электросталь

Сообщение yozhik »

Что-то файлы *.ts плагин не открывает, хотя в CodeViewer.ini это расширение прописано :(
Amo ergo sum
Аватара пользователя
AlexTP1
Сообщения: 46
Зарегистрирован: Сб июл 27, 2024 21:39

Сообщение AlexTP1 »

C *.ts есть проблемы и в других плагинах, видимо это залочено в Листере.
olegvsk
Сообщения: 115
Зарегистрирован: Чт дек 17, 2020 16:34

Сообщение olegvsk »

yozhik писал(а):Что-то файлы *.ts плагин не открывает, хотя в CodeViewer.ini это расширение прописано
Как-то связано с обработкой мультимедийных файлов в TC. Если в детект-строку плагина добавить MULTIMEDIA, плагин будет вызываться.
Destiny
Сообщения: 340
Зарегистрирован: Вт дек 15, 2015 18:22

Сообщение Destiny »

Странно, что плагин пытается открыть документы Офиса. Они же двоичные файлы....
О какой ошибке "Error: No mapping for the Unicode character exists in the target multi-byte code page" тут вообще можно говорить?
Аватара пользователя
BlackFox
Сообщения: 75
Зарегистрирован: Сб дек 18, 2004 04:33
Откуда: Mayence

Сообщение BlackFox »

Destiny писал(а):документы Офиса. Они же двоичные файлы....
если речь о новом формате (docX/xlsX/pptX) - то это зазипованные наборы файлов. Но - да, в любом случае не исходники.
Destiny
Сообщения: 340
Зарегистрирован: Вт дек 15, 2015 18:22

Сообщение Destiny »

И еще глюк или что это. НО при просмотре к примеру файла пользовательских команд у Тотала - это спецфайл Usercmd.ini
где перечислены все созданные пользователем новые команды для интерфейса Тотала, я не вижу символа подчёркивания!
Которого там весьма много - ибо каждая команда обязана начинаться с "em_" префикса.
Изображение
Вот как выглядит в плагине кусок файла.
И вот как выглядит в Листере - при просмотре без плагина:
Изображение
Аватара пользователя
yozhik
Сообщения: 353
Зарегистрирован: Вс май 04, 2014 20:34
Откуда: Электросталь

Сообщение yozhik »

Destiny
У меня кажет
Изображение
1.6 версия (на вс. сл.)
Amo ergo sum
Аватара пользователя
BlackFox
Сообщения: 75
Зарегистрирован: Сб дек 18, 2004 04:33
Откуда: Mayence

Сообщение BlackFox »

Destiny
у меня тоже всё показывает так, как в обычном листере, включая подчерки. Версия 1.3.
Ответить