DirSync3 — Synchronize Directories

Here you can discuss about your favorite plug-in.
User avatar
Dennis_Moore
Posts: 287
Joined: Tue 03 Mar, 2015 19:54
Location: Kiev
Has thanked: 6 times
Been thanked: 14 times

DirSync3 — Synchronize Directories

Post by Dennis_Moore »

Latest post of the previous page:

pepak wrote: Environment variables can be arranged, will put it in my TODO list.
Temporary solution. Using EnvMan with something like this:

Code: Select all

FAREXTPRG=%SYSTEMDRIVE%\Program Files\FAR_ExtPrg
PATH=%FAREXTPRG%\WinMerge;%PATH%
pepak
Posts: 474
Joined: Sun 13 Jul, 2008 11:18
Has thanked: 12 times
Been thanked: 36 times

DirSync3 — Synchronize Directories

Post by pepak »

Version 1.02
  • If no synchronization items remained in the editor when it was being closed, the editor would reappear immediately. It was not possible to leave the editor unless at least one item remained in it.
  • When opening the editor with the differences for the first time (not using "return to editor"), the cursor is positioned at the first synchronization item.
  • The progress window no longer shows the NT schematics (\\?\) in filenames. The same is true for various confirmation dialogs.
  • Tightened checks for error conditions:
    • A source file or directory requested for synchronization does not exist at the time synchronization is to be actually performed.
    • A source directory is no longer a directory when synchronizing.
    • A destination for a directory copy exists but is not a directory.
  • When running the visual comparison command, environment variables such as %ProgramFiles% in the command get expanded.
Download
pepak
Posts: 474
Joined: Sun 13 Jul, 2008 11:18
Has thanked: 12 times
Been thanked: 36 times

DirSync3 — Synchronize Directories

Post by pepak »

Version 1.03
  • Completely rewritten the underlying framework for my FAR plugins. As a result it will be much easier to maintain the plugin, but it is possible (likely) that in the short term, some new bugs will manifest.
  • Support for building the plugin using Delphi versions up to 10.3 Rio.
  • Fixed remembering of directories in the "files are different, which one do you want to overwrite" mode. In the old version, incorrect directories might possibly be remembered.
  • Fixed incorrect "Remember choice" checkbox caption when the "Global remember" option was active.
  • Fixed the "ignore differences in new line characters" and "ignore differences in whitespace" options which haven't been working correctly for ages.
  • Fixed the unnecessarily large size of Retry/Skip dialogs if only one file was concerned (e.g. when deleting a file).
Download
Last edited by pepak on Sun 27 Jan, 2019 17:24, edited 1 time in total.
Hedin
Posts: 210
Joined: Thu 17 Mar, 2005 10:29
Has thanked: 4 times

DirSync3 — Synchronize Directories

Post by Hedin »

pepak, PlugRing page contains binaries for FarCtags plugin, instead of DirSync3.
pepak
Posts: 474
Joined: Sun 13 Jul, 2008 11:18
Has thanked: 12 times
Been thanked: 36 times

DirSync3 — Synchronize Directories

Post by pepak »

Fixed.
pepak
Posts: 474
Joined: Sun 13 Jul, 2008 11:18
Has thanked: 12 times
Been thanked: 36 times

DirSync3 — Synchronize Directories

Post by pepak »

Version 1.10
  • Support for synchronizing directories which loop into itself, such as Windows user profiles. Looped directories are detected during scan and either considered matching (if both left and right directory are in their respective loops) or non-matching (if only one of the directories is looped). During synchronization, looped directories are detected and a warning is issued instead of endlessly copying.
  • When a reparse point such as a junction is encountered while deleting directories during synchronization, the reparse point is now deleted non-recursively - that is, the reparse point itself will get deleted but its contents will remain at the other end of the reparse point.
  • Support for proper detection of reading failures (e.g. because of insufficient privileges). Until now, these errors would be reported as differences in the file contents, but the direction of the difference would be based solely on the file dates of both files. Now a failed file is marked as such (<!--, --!>, <!!>) and considered the "older" one for the purposes of synchronization (i.e. it will be marked for overwriting with the readable file). A similar behavior is implemented for unreadable directories, except that unreadable directories will not get synchronized - you must change the difference to one of the non-error differences (<---, --->).
  • Implemented a PluginCall interface for all editor tasks. All available functionality can be found in DirSync3.lua, along with a demonstration of how the calls can be used. You can modify the macro at the end of the file or add extra macros with other functions, as needed.
  • Support for CTRL+F5/F6 hotkeys in the editor to jump to the left/right file of the selected difference.
  • Support for comparing file names case-sensitively.
  • When comparing directories, if the two directories refer to the same filesystem object (e.g. after using junctions), consider them matching without performing the actual comparison.
  • Updated the plugin to a newer version of Dialog API. Among other things, this allows the plugin to properly react to resizing of the FAR's window.
  • Minor fixes for compatibility with Delphi 10.1 and newer.
  • Display the contents of the "Remember directory" edit as "changed" for a better readability. We don't really need the "unchanged" option here anyway, since most of the modifications will involve either deleting path components (which is more comfortably achieved by pressing BACKSPACE on the checkbox than in the edit) or adding extra path components (where we don't want to delete the previous content anyway).
  • Implemented a more consistent work with file-times. Sub-millisecond times are now supported.
  • Far window's title gets updated during both looking for differences and synchronization.
  • Changed the way compare options work in regards to persistence: In the previous versions, if an option was disabled, it would also be saved as unchecked. In this version, disabled option's value is kept for the purpose of saving it. This means that, e.g. if you normally have the "compare by content" option checked and perform a comparison with a plugin panel (this comparison doe snot support comparing by content), that one comparison would be done disregarding the content but future comparisons with non-plugin panels will still have "compare by content" checked.
  • Move the cursor to the first difference even if the editor is reopened after the synchronization had been finished (e.g. if an error occurred during synchronization or a difference had been skipped by the user).
  • Fixed incorrect display of the synchronization progress after an interruption (if e.g. a confirmation had to be displayed, the succeeding progress windows would only be displayed partially).
  • Fixed incorrect display of file times in UTC rather than the local time.
  • Fixed the incorrect version information shown in FAR's Plugin list.
Download
User avatar
HaRT
Moderator
Posts: 9524
Joined: Tue 30 Aug, 2005 17:21
Location: Санкт-Петербург
Has thanked: 109 times
Been thanked: 228 times

DirSync3 — Synchronize Directories

Post by HaRT »

Thank you for this massive update!
pepak wrote: Fri 06 Mar, 2020 19:48 (this comparison doe snot support comparing by content)
One small documentation glitch: I doubt you meant “doe snot”. :)
Фар есть инструмент, а не нянька. © 2009 DrKnS
Post Reply

Return to “General Plug-In Discussions”