Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Программы » FAR Manager (часть 5)

Модерирует : gyra, Maz

Maz (15-01-2020 17:38): FAR Manager (часть 6)  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200

   

Maz



Дед Мазай
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

 
Предыдущие топики:  1 2 3 4
 
Где взять последнюю версию?
На странице загрузки скачайте MSI-инсталлятор стабильной сборки нужной вам разрядности (32 или 64 бита) или дистрибутив в виде 7z-архива и установите/распакуйте в любую папку (FAR портабелен и может работать без установки).
Там же на свой страх и риск можно взять наиболее свежую "ночную" сборку (в ночных сборках устраняются выявленные недоработки, добавляются новые функции, но могут содержаться и серьёзные ошибки).
Архив всех предыдущих ночных сборок FAR
Last release на github - собирается практически сразу (в течение получаса) после каждого коммита.
 
Общие сведения о совместимости FAR и плагинов
 
Можно воспользоваться одной из пользовательских сборок FAR Manager
Вопросы, касающиеся сборок, следует задавать непосредственно их авторам, а не на официальном форуме.
 
Где взять дополнительные плагины, скрипты и макросы?
Плагринг. В настоящее время большинство авторов (возможно, уже и все) выкладывают плагины здесь. Кроме плагинов здесь появляется всё относящиеся к FAR: дополнения, консольные шрифты, скрипты и пр.
Анонсы плагинов на официальном форуме. Даже если автор не выкладывает по каким-либо причинам плагин на плагринге, он может дать анонс в этой теме.
Полезные скрипты и макросы.
 
Инструкции по сборке ФАРа из исходников
Набор для самостоятельной сборки ФАРа
Как собрать FAR самостоятельно (старая инструкция)  
 
Ссылки на устаревшие версии
Выдержка из Far Manager Site and Forum ‹ FAQ :
Отличия FAR 3 от FAR 2
Отличия FAR 2 от FAR 1.7
 
Примечания
 
* 13 декабря 2008 г. произошло переименование веток: ANSI-ветка 1.71 превратилась в 1.75, а Unicode-ветка получила номер версии 2.0 (вместо 1.80). Т.е. версии 1.хх это ANSI ("старый" FAR), а версии 2.хх – Unicode ("новый" FAR). Эти ветки сильно различаются по способу взаимодействия с плагинами и системой!
* При обновлении ANSI-ветки 1.хх более старые версии плагинов могут работать в более новом FAR, но более новые плагины в большинстве случаев требуют обновления FAR (см. документацию).
* Unicode-плагины в ANSI-версии FAR не работают – у них иной способ взаимодействия (API) с Far.exe, поэтому даже не пытайтесь их использовать в FAR версии ниже 1.80.
* При обновлении Unicode-версии FAR 1.80/2.0/3.0 обращайте внимание на номер сборки: следует обязательно обновить все плагины для сборок 677/680/684, иначе они не будут работать. ANSI-плагины (кроме тех, которые работают в редакторе) можно применять в Unicode-версии FAR, в меню плагинов (вызываемом по F11) они будут помечены значком [A] справа от их имени. Unicode-плагины в FAR 1.80/2.x/3.х никаким значком после имени не помечаются.
* Unicode-версия FAR 1.80/2.x/3.х требует как минимум Windows 2000, т.е. она работает только в Windows 2000/XP/2003/Vista/2008/7/8/10.
* Плагины от FAR 2 несовместимы с FAR 3 и не запустятся.
* В FAR 3 выборочно могут работать плагины от FAR 1, однако не стоит брать от FAR 1 плагины для редактора или работающие с дисками: первые портят текст в Юникоде, вторые – файловую систему.
* В любом случае разрядность плагинов должна совпадать с разрядностью FAR, иначе плагин не будет загружен.
* Блондинку на скриншоте зовут Tommie Jo.

 
Принципиальные различия между hard link, symlink и junction
Как устранить взаимное влияние запущенных копий FAR в памяти
Как запустить Lua/MoonScript из FAR
Как правильно добавить в программу нужную DLL (или иную зависимость), чтобы при обновлении ОС или иных программ она не перестала работать
Патч для ansi-плагинов для хранения настроек плагинов в папке профиля, а не в реестре
Как распаковать UUE/XXE файлы патчей и использовать их?
 
ВНИМАНИЕ!
 
Правильное (корректное) завершение Far: всегда завершайте сеанс работы с Far по F10! Подробнее на форуме - Различие выхода из Far по F10 и крестиком
 
Общие правила обращения за помощью
  1. Решаете задачу самостоятельно, при необходимости ищете ответы в теме и других источниках. Предварительное изучение документации обязательно!
  2. Если ваших знаний не хватает, то задаёте вопрос в форуме и строго следуете инструкциям тех людей, которые вам помогают.
  3. Если решить задачу, следуя пунктам 1 и 2, не удалось, то задаёте вопрос разработчикам.

Невыполнение этих правил ведёт к тому, что никто не станет помогать решать вашу задачу.

Всего записей: 38754 | Зарегистр. 26-02-2002 | Отправлено: 18:55 23-11-2017 | Исправлено: Victor_VG, 10:00 09-09-2019
Alexyz21



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
wseventeen
В трапах FarExitW и Renewal.dll взяты из многочисленных трапов, там были только они и 1 раз CLBCATQ.DLL вместе с Renewal. Трапы вместе с Renewal удалены - Far больше не падает. Если надо, то могу попробовать восстановить трапы и передать вам.
 
Вот, поднял, правда все трапы битые, но они, когда я их просматривал ещё "живые" - сплошь состояли из записей типа таких
Цитата:
Addr[93]: 05000C0A Mod:04FA0000 lMod:04FA0000 "Renewal.dll"+0006000A at ".rdata"+00010C0A: "ExitFARW" + 0004CD80
других *.dll в трапах не было (смотрел поиском по .dll)- только Renewal.dll.
 
Если надо, то восстановлю из бэкапа Renewal, попадаю снова и получу живой трап, если он вам нужен, конечно.

Всего записей: 3471 | Зарегистр. 16-06-2007 | Отправлено: 07:50 11-09-2019 | Исправлено: Alexyz21, 08:18 11-09-2019
Victor_VG



Tracker Mod
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
PictureView, версия 3.2019.9.10  
 
декодер JpegRec.pvd не видит JPEG, с PNG проблемы нет, с JPEG проведены три серии тестов, всё видно на скриншотах:
 

 

 

 
Ну а по стеку и просмотром ОЗУ видно, что модули загружены в ОЗУ, но плагин ждёт ConfigureW():
 
0PictureView.dll
BMP.pvd
BPG.pvd
DjVu.pvd
FLIF.pvd
ITP.pvd
JLS.pvd
JpegRec.pvd
TIFF.pvd
ebP.pvd
WIC.pvd
 
15, 0PictureView.dll!ConfigureW+0x582e, 0x7fee6c02c1e
 
замена JpegRec.pvd v3.2019.9.10 на JpegRec.pvd v3.2019.5.28 или его удаление (отключение) и доступность  libgfl340.dll проблему решает.
 
А просмотр состояния тредов показывает:
 
0PictureView.dll!ConfigureW+0x4c80, 1 042 631 093, Time critical  
 
что плагин находится в состоянии ожидания ответа от модуля.

----------
Жив курилка! (Р. Ролан, "Кола Брюньон")
Xeon E5 2697v2/C602/128 GB PC3-14900L/GTX 1660 Ti, Xeon E5-2697v2/C602J/128 Gb PC3-14900L/GTX 1660 Ti

Всего записей: 33134 | Зарегистр. 31-07-2002 | Отправлено: 09:44 11-09-2019 | Исправлено: Victor_VG, 09:48 11-09-2019
wseventeen

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Alexyz21

Цитата:
В трапах FarExitW и Renewal.dll ...

В идеале нужен сценарий для повторения.
Вообще если раньше проблем с Renewal не было, а недавно появились, не думаю что дело в нём.
На FarExitW падают плагины 'неправильно инициализирующие COM' (c) DrKnS, связано с недавними изменениями в фар. К таким плагинам как минимум относятся 2 популярных: PictureView3 (до последнего обновления) и RESearch. Падение при выходе из-за вызова CoUninitialize без проверки того, что в CoInitialize была ошибка.

Всего записей: 1415 | Зарегистр. 20-12-2007 | Отправлено: 10:18 11-09-2019 | Исправлено: wseventeen, 10:40 11-09-2019
Victor_VG



Tracker Mod
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Забавный эфект на Far b5472 Git-78bd82573 в LuaManager v5.0.3/5.0.4 - из плагинов/скриптов только LuaMacro и LuaManager. Зовём, встаём на его строке и F3 - ловим ругань "modules\LuaManager\init.lua:329: pattern too complex". А другие скрипты по F3 смотрит без проблем. Случайно обнаружил когда стал проверять LuaManager v5.0.4 "на запуск". Судя по сообщению в регулярке на строке 329 приходит закольцовка поиска если ей скормить LuaManager. По идее там стоит поставить проверку на такие явления - мало что ешё вылезет? Стек такой выходит:. Случай понятно редкий, но раз в год и палка стреляет.   - очередные фокусы luautf8 вылезли.

----------
Жив курилка! (Р. Ролан, "Кола Брюньон")
Xeon E5 2697v2/C602/128 GB PC3-14900L/GTX 1660 Ti, Xeon E5-2697v2/C602J/128 Gb PC3-14900L/GTX 1660 Ti

Всего записей: 33134 | Зарегистр. 31-07-2002 | Отправлено: 23:53 11-09-2019 | Исправлено: Victor_VG, 03:55 12-09-2019
Victor_VG



Tracker Mod
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Нашёл коммит где возникает ошибка - b5459 Git-78bd82573 :: LuaMacro b699 - LuaFAR: add "luautf8" library. Опять фокусы luautf8 вылезли и надо искать решение как с ней "договариваться" но желание это делать у меня отбили наглухо...

----------
Жив курилка! (Р. Ролан, "Кола Брюньон")
Xeon E5 2697v2/C602/128 GB PC3-14900L/GTX 1660 Ti, Xeon E5-2697v2/C602J/128 Gb PC3-14900L/GTX 1660 Ti

Всего записей: 33134 | Зарегистр. 31-07-2002 | Отправлено: 03:53 12-09-2019 | Исправлено: Victor_VG, 05:24 12-09-2019
shmuz

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Victor_VG
Надо заменить строку 332  в init.lua (LuaManager 5.0.4) на

Код:
  if not fmoon then text = regex.match(text,(".*?[\r\n]"):rep(l2-l1+1)) or "" end -- для lua достанем строки с текстом функции

Я бы не сказал, что это баг новой библиотеки utf8, поскольку string.match также отказывается работать с таким паттерном. Но прежняя библиотека как-то с ним справлялась.

Всего записей: 1857 | Зарегистр. 09-03-2012 | Отправлено: 07:49 12-09-2019 | Исправлено: shmuz, 07:52 12-09-2019
Victor_VG



Tracker Mod
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
shmuz
 
Спасибо! Я уже понял что происходит переполнение регулярки, по паттерны Lua мне не знакомы и я в нём запутался. Сижу доки читаю...
 
Добавлено:
Забавно - знак точка заставил меня разбирать паттерн как привычную перловую регулярку.
 
А после замены строки 332 ошибка ушла.

----------
Жив курилка! (Р. Ролан, "Кола Брюньон")
Xeon E5 2697v2/C602/128 GB PC3-14900L/GTX 1660 Ti, Xeon E5-2697v2/C602J/128 Gb PC3-14900L/GTX 1660 Ti

Всего записей: 33134 | Зарегистр. 31-07-2002 | Отправлено: 09:24 12-09-2019
Victor_VG



Tracker Mod
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Подчистил х64, перезалил. Локально можно подчистить мусор батником:

Цитата:
@echo off
rd /s/q .\Far\plugins\editor\align\align
rd /s/q .\Far\plugins\editor\autowrap\autowrap
rd /s/q .\Far\plugins\editor\brackets\brackets
rd /s/q .\Far\plugins\editor\drawline\drawline
rd /s/q .\Far\plugins\editor\editcase\editcase
rd /s/q .\Far\plugins\editor\hlfviewer\hlfviewer
exit


----------
Жив курилка! (Р. Ролан, "Кола Брюньон")
Xeon E5 2697v2/C602/128 GB PC3-14900L/GTX 1660 Ti, Xeon E5-2697v2/C602J/128 Gb PC3-14900L/GTX 1660 Ti

Всего записей: 33134 | Зарегистр. 31-07-2002 | Отправлено: 09:05 13-09-2019
Alexyz21



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
В каких случаях FAR при постоении диалога корректирует X2 у элементов с типом==4 (DI_EDIT)? - Когда встречает Item с X2==0 любого типа или как-то иначе? - Для кого ещё, помимо DI_EDIT, осуществляется коррекция? Каков алгоритм коррекции X2 вообще?

Всего записей: 3471 | Зарегистр. 16-06-2007 | Отправлено: 10:34 13-09-2019 | Исправлено: Alexyz21, 10:48 13-09-2019
shmuz

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
В каких случаях FAR при постоении диалога корректирует X2 у элементов с типом==4 (DI_EDIT)? - Когда встречает Item с X2==0 любого типа или как-то иначе? - Для кого ещё, помимо DI_EDIT, осуществляется коррекция? Каков алгоритм коррекции X2 вообще?

Ориентируйтесь строго на Энциклопедию. Если там чего-то не расписано, то это что-то может измениться в любой момент.

Всего записей: 1857 | Зарегистр. 09-03-2012 | Отправлено: 11:08 13-09-2019
Alexyz21



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
shmuz
В ходе экспериментов с диалогом LF Search: Replace в редакторе выяснилось, что если ресайзить диалог   far.SendDlgMessage hDlg,F.DM_RESIZEDIALOG,0,{X:DlgWidth,Y:db-dt+1}
, то изменяется и X2 у DI_DOUBLEBOX - приходится это учитывать, а предположительно после отрисовки DI_TEXT SEPARATOR (тип -1, X2=0) корректируются X2 у других DI_EDIT на величину ресайзинга, по крайней мере в отрицательную сторону.
 
Неодинаковое поведение при сжатии/растяжении диалогов
 
Диалог EditSearch:
[win.Uuid"5D3CBA90-F32D-433C-B016-9BB4AF96FACC"]: {1,2.3,3.3,5,7,12.1,13.1} --editsearch
 
, 5 означает 5-й Item X2 выровнять по правой границе, так как иначе Х2 останется прежним:
 
Оригинальный диалог, выравнивание правой границы (Х2) не требуется, diff=0, 1 symbol=10 pixels:
   
 
Диалог после растяжения, Х2 нужно увеличить на величину растяжения diff=48:
   
 
Диалог после сжатия и коррекции на величину растяжения, которая теперь отрицательная - опа, корректировать не надо было! Т.е. FAR сам уже скомпенсировал разницу, причём округлил её вверх, а не вниз, как в остальных расчётах, из-за чего разница увеличилась на 1. Почему FAR делает компенсацию только при сжатии - непонятно. (DlgWidth=текущий размер диалога, ex=Оригинальный размер до сжатия, diff - разница между ними:
   

Всего записей: 3471 | Зарегистр. 16-06-2007 | Отправлено: 11:55 13-09-2019 | Исправлено: Alexyz21, 16:21 13-09-2019
shmuz

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Alexyz21
Конкретно разбираться сейчас времени нет, но в своё время в этой "подсистеме" было полно багов, предполагаю, что часть из них ещё жива.

Всего записей: 1857 | Зарегистр. 09-03-2012 | Отправлено: 13:29 13-09-2019
citPiks



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Alexyz21
 
Ранее в отношении макроса Dialog_Maximize.moon я писал о том, что "после выставления в диалоге масштаба желаемого коэффициента масштабируемый диалог изменяет размер со следующего вызова; а желательно бы чтобы сразу после ввода нового коэффициента". И из Ваших с Victor_VG пояснений я так понял, что пока что в 10-ке не получается отрисовывать трансформируемый диалог.  
 
Поэтому я пока что составил для себя временное вспомогательное дополнение к диалогу масштаба на примитивной основе. Составленный макрос активирует макрос масштаба по Enter или по левому клику мышки, а затем сбрасывает трансформируемый диалог и перевызывает его сызнова. И, таким образом, благодаря макросу Dialog_Maximize.moon, практически сразу же после активации диалога масштаба можно видеть целевой диалог в трансформированном виде.

Всего записей: 373 | Зарегистр. 26-06-2016 | Отправлено: 22:38 13-09-2019
citPiks



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
На стационарном диске H: и на внешнем хард-диске G: находятся почти одинаковые копии Far 3.0.0.5472 x86. Состав макросов у них один и тот же, а состав плагинов на диске G: по количеству даже несколько меньше, чем в Far`е на диске H:. С диска H: Far загружается нормально, а загрузка с диска G: завершается падением. Трап-лог создаётся не объёмный:
Цитата:
Exception in [G:\FarLce\Far.exe] FAR itself.
 
System information:
 Windows NT, version 10.0.17763
 
FAR.EXE information:
 Version info: 3.0.5472
    File size: 4167680 bytes
   Time stamp: 11.09.2019 04:07:40
 Hdr checksum: 0x004077CF (computed: 0x004077CF)
 
Exception 0EEDFADE "DELPHI_EXCEPTION" at 759EFD62 has 00F5E378 flags.
   Cw: 00000000  Sw: 00000000  Tw: 0A7DFBEC  EOf: 0A5F0000 Es: 00F5E388 DOf: 77E1D40C Ds: 0A7DFBEC Cr0: 1DA11BF7
  dr0: 0A5F4D04 dr1: 00F5E31C dr2: 00F5E33C dr3: 77E50466 dr6: 0A5F0000 dr7: 00000001

Подскажите, пожалуйста, что это может означать, и как это можно исправить?

Всего записей: 373 | Зарегистр. 26-06-2016 | Отправлено: 08:36 14-09-2019
shmuz

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
citPiks

Цитата:
Подскажите, пожалуйста, что это может означать, и как это можно исправить?

Сначала надо определиться с первым, а уж затем думать про второе.
Убирайте сторонние плагины и макросы, чтобы определить виновника.

Всего записей: 1857 | Зарегистр. 09-03-2012 | Отправлено: 12:08 14-09-2019
Pasha_ZZZ



Platinum Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
citPiks
Цитата:
DELPHI_EXCEPTION
Поможет сократить список подозреваемых

Всего записей: 12375 | Зарегистр. 11-03-2002 | Отправлено: 12:17 14-09-2019
citPiks



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
shmuz
Pasha_ZZZ
 
Благодарю вас за наставления! Виновник нашёлся. Это плагин Observer 1.11.2.0.
 
Но для меня остаётся сущей загадкой почему этот же самый плагин в том же самом составе модулей на внутреннем диске одну и ту же версию Far не роняет, а на съёмном — стабильно валит? И какое отношение к этому имеет указание в трап-логе на DELPHI_EXCEPTION?

Всего записей: 373 | Зарегистр. 26-06-2016 | Отправлено: 15:04 14-09-2019 | Исправлено: citPiks, 15:05 14-09-2019
Pasha_ZZZ



Platinum Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
citPiks
Скорее всего виноват дело в одном из сабплагинов в папке modules. Сам Observer на VC.

Всего записей: 12375 | Зарегистр. 11-03-2002 | Отправлено: 15:09 14-09-2019
citPiks



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Плагином Renewal обновил на съёмном диске Far до сегодняшней сборки. И Observer перестал валить Far! Жаль, что поторопился и не догадался до этого вычислить какой модуль плагина виновник.

Всего записей: 373 | Зарегистр. 26-06-2016 | Отправлено: 15:54 14-09-2019 | Исправлено: citPiks, 16:06 14-09-2019
Alexyz21



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Жаль, что поторопился и не догадался до этого вычислить какой модуль плагина виновник.

Чтобы было не жаль можно обновить до старой сборки и таки вычислить

Всего записей: 3471 | Зарегистр. 16-06-2007 | Отправлено: 17:59 14-09-2019
   

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200

Компьютерный форум Ru.Board » Компьютеры » Программы » FAR Manager (часть 5)
Maz (15-01-2020 17:38): FAR Manager (часть 6)


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru