far-plugins
far-plugins copied to clipboard
PathSync учитывает не все случаи, в которых надо синронизировать текущий путь
При перемещении курсора с реальной
файловой панели на плагиновую (Tab'ом)
PathSync ничего не делает.
Однако если посмотреть на поведение фара
(до последних изменений), то мы
увидим что в таких случаях путь всё-же
менялся: текущей директорией
становилась та директория, которая была
открыта на панели до плагиновой.
(И именно в нёё мы попадём если закроем
плагиновую панель)
Поскольку PathSync в таких случаях не
синхронизирут директорию, приходится
страдать от глюков фара...
Original issue reported on code.google.com by [email protected]
on 7 Oct 2009 at 3:30
Не думаю, что с этим можно (и нужно) что то
сделать. Приведи пример, когда такое
поведение приводит к глюкам - я подумаю.
Original comment by [email protected]
on 8 Oct 2009 at 6:34
http://forum.farmanager.com/viewtopic.php?p=52233#p52233
анси-плагины (нередакторные) начинают
тормозить редактор в том случае, когда путь
отображаемый на активной панели не
является текущей директорией фара
PathSync позволяет обойти этот баг, но только
на реальных панелях.
На ftp, в архивах и т. п. проблема остаётся.
Original comment by [email protected]
on 8 Oct 2009 at 8:37
>Приведи пример, когда такое поведение
приводит к глюкам - я подумаю.
Простейший пример: архиваторный плагин. В
диалоге распаковки ставим . (для
распаковки в текущую директорию), или
относительный путь.
Если не установливать текущую директорию,
то будет распаковываться чёрте-куда.
Original comment by [email protected]
on 15 Oct 2009 at 10:11
MultiArc, вроде, распаковывает куда надо.
Возможно, потому что он Ansi'шный... Я
просто не знаю откуда взять каталог "под"
плагинной панелью. Far API это не позволяет.
Original comment by [email protected]
on 15 Oct 2009 at 8:31
>Возможно, потому что он Ansi'шный
Так и есть - сказано в ченджлоге
>Far API это не позволяет
Вероятно об этом не подумали. Стоит
намекнуть
Original comment by [email protected]
on 15 Oct 2009 at 9:15
...А в макросах значение пути доступно
macro:post msgbox(apanel.path)
Original comment by [email protected]
on 16 Oct 2009 at 4:19
Пытается ли плагин установить CurDir по
короткому имени, как это делает DeepBrowser2?
>Плагин позволяет входить в папки, длина
полного пути которых составляет
>более 260 (MAX_PATH) символов, или имеют
"некорректное" имя (например,
>содержат точку на конце).
>При входе в такую папку плагин вызывает
SetCurrentDirectory с коротким
>путем, и отобржает список содержимого.
Таким образом, в большинстве
>случаев, пользователь сможет полноценно
работать с файлами в таких папках
>(будут работать и ANSI плагины, и внешние
программы).
Original comment by [email protected]
on 9 Nov 2009 at 2:44
Короткий путь не кажется вам хорошей идеей
для внедрения в ваш плагин?
Original comment by [email protected]
on 9 Nov 2009 at 4:04
Мне лично это не нужно. Всю эту бодягу с
поддержкой длинных путей и кривых
каталогов
я считаю надуманной проблемой, которая к
тому же еще создала проблемы всем
остальным,
где их в принципе нет. Собственно для этого
эта затычка и была. У меня нет планов ее
развивать, так как большинство плагинов
уже худо бедно поддерживают новый API...
Original comment by [email protected]
on 9 Nov 2009 at 9:08
>У меня нет планов ее развивать, так как
большинство плагинов уже худо бедно
поддерживают новый API...
Пару примеров.
1) Фар не поддерживает запуск программ из
директорий с "некорректными именами"
И новое API тут не спасает.
Плагин DeepBrowser решает проблему, но для этого
надо открывать специальную панель,
что не есть удобно...
2) Анси-плагины всё равно тупят. Например
невозможно распаковать архив в папку с
"некорректным" именем. DeepBrowser и тут
помогает, но рамках вашего плагина обе эти
проблемы решились бы гораздо удобнее.
Original comment by [email protected]
on 12 Nov 2009 at 4:15
Если я буду просто устанавливать "короткий"
путь в качестве текущего то это ничем не
поможет. Для запуска программ нужно делать
дополнительные действия - а это уже
совершенно другой плагин. А Ansi-плагинам
вообще ничем не поможешь, Far сам
устанавливает текущий каталог перед
вызовом их функций, и он "перебъет" мой путь.
Original comment by [email protected]
on 13 Nov 2009 at 12:13