* Fix replace dialog for symlinks
If the oldPath is a symlink to the newPath or vice versa, than os.Stat()
would resolve this symlink, and both the oldStat and newStat would be
the same. Hence, the replace dialog would not appear and the newPath
file would be overwritten by the oldPath file whilst the oldPath would
be deleted.
It is the same story when the oldPath and newPath are both symlinks to
the same file.
* Fix completion in the case of broken symlinks
If the current directory contains broken symlinks then matchFile() would
return at first broken symlink.
Let's consider the following example:
$ ls -F ~/
broken@ dir/ file
The broken@ is a symlink to ~/foo - non existent file.
If one would enter the following command in lf:
:cd ~/<tab>
it would not suggest possible completion options because matchFile()
would return as soon as it meet the broken symlink.
* Don't resolve symlinks when move files/dirs (#571)
This will allow to move broken symlinks.
* Fix symlinks copying/moving (#571)
Copy symlinks, do not try to resolve it and copy the file pointed by
this symlink. Also this allows to copy symlink to directory.