farplugins / advcmpex Goto Github PK
View Code? Open in Web Editor NEWPlugin for advanced compare of files in Far Manager
License: BSD 3-Clause "New" or "Revised" License
Plugin for advanced compare of files in Far Manager
License: BSD 3-Clause "New" or "Revised" License
- не работает (ctrl+)пробел для "изменить флаг отличия файлов"
- не работает ctrl для "показать каталог текущего элемента списка",
- не работают никакие клики мышью.
Остальные сочетания клавиш работают.У себя уже по всякому проверил - никакой реакции. Пустой фар с дефолтными настройками, только этим с одним плагином (+дефолтные), х32-х64, никакой разницы.
megaslowpoke
При сравнении стоят галочки [x] size [x] contents [x] Subfolders
В редких случаях при сравнении вложенных папок плагин ошибается, выделяя папку с более старыми файлами вместо папки с более новыми файлами. Исследовав данное поведение, пришёл к выводу, что в этом случае плагин выделяет папку с более новой меткой времени самой папки, игнорируя то, что внутри этой папки находятся файлы с более старой датой.
В данной ситуации мне непонятно, почему плагин вообще ориентируется на дату папки, если у меня даже не установлена галочка [ ] time ? Возможно, это из соображений скорости? Однако, из соображений надёжности, лучше сравнивать не метки времени самих папок, а метки времени файлов внутри этих папок.
Пример:
Слева открыта папка Old с подпапками AAA и BBB, справа открыта папка New с подпапками AAA и BBB. Схематично изобразим дерево папок так:
-------------------------------------------------------------------
| Путь Время | Путь Время |
|---------------------------------|---------------------------------|
| Old <DIR> | New <DIR |
| AAA <DIR> позавчера | AAA <DIR> вчера |
| a.txt позавчера | a.txt вчера |
| BBB <DIR> сегодня | BBB <DIR> вчера |
| b.txt позавчера | b.txt вчера |
-------------------------------------------------------------------
Подпапки AAA и BBB в папке New имеют вчерашнюю дату (имеется в виду Last write time этих папок) и содержат обновлённые вчера файлы.
Подпапка AAA в папке Old имеет позавчерашнюю дату и содержит старые позавчерашние файлы.
Подпапка BBB в папке Old имеет сегодняшнюю дату (новее, чем дата подпапки BBB в папке New) и содержит старые позавчерашние файлы.
В результате сравнения плагин AdvCmpEx выделяет подпапку AAA в папке New и подпапку BBB в папке Old.
Ожидается, что выделятся подпапки AAA и BBB в папке New, поскольку в них содержатся более новые файлы.
P.S.
По всей видимости, эта же причина мешает корректно сравнить содержимое папок с одинаковой меткой времени этих папок.
Пример: пусть есть папка AAA в левой панели и папка AAA в правой панели, обе с одинаковым Last write time. В левой папке AAA лежит вчерашний файл a.txt, в правой папке AAA лежит сегодняшний файл a.txt, который отличается не только временем создания, но и размером. Однако, при сравнении плагин AdvCmpEx не выделяет папку AAA в правой панели, поскольку, похоже, ограничивается лишь сравнением Last write time этих папок.
Windows 7 SP1 x64, FAR 3.0.5737.0 x64, AdvCmpEx 3.3.0.0 x64
╔════════════════════════════ AdvCmpEx ════════════════════════════╗
║ Режим работы плагина: 1. Сравнение файлов ↓║
║ [x] сравнивать имена файлов с учетом регистра ║
║ [x] размер ║
║ [ ] время ║
║ [x] секунды: ( ) пропустить (•) двухсекундная точность ║
║ [x] игнорировать различия часовых поясов ║
║ [ ] содержимое ║
║ [ ] только если различаются временем ║
║ [ ] кэш: ( ) игнорировать (•) использовать [ F8-Чистка ] ║
║ [x] частично: ( ) весь файл (•) фрагмент (Кб): 64 ║
║ [ ] игнорировать: все пробельные символы ↓║
╟──────────────────────────────────────────────────────────────────╢
║ [x] Вложенные папки, уровнем вложенности не более 10 ║
║ [ ] Сканировать символические ссылки ║
║ [ ] Игнорировать в имени файла: ↓║
║ [ ] Стоп на различии/дубликате [x] Фильтр файлов [ F4 ] ║
║ [ ] Только помеченные объекты [ ] Выделять новые файлы ║
║ [ ] Только на правой панели [?] Игнорировать отсутствующие ║
║ [ ] Легкая синхронизация ║
║ [x] Показывать сообщения [ ] Оповещать звуком ║
║ [x] Показывать итоговый диалог [x] Общий индикатор сравнения ║
╟──────────────────────────────────────────────────────────────────╢
║ { ОК } [ F2-Под курсором ] [ Отменить ] ║
╚══════════════════════════════════════════════════════════════════╝
Вызываем диалог и сразу же жмём ESC.
FAR схлопывается.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.