DevelopmentMTK / far-plugins

Automatically exported from code.google.com/p/far-plugins
1 stars 1 forks source link

PathSync учитывает не все случаи, в которых надо синронизировать текущий путь #4

Open GoogleCodeExporter opened 8 years ago

GoogleCodeExporter commented 8 years ago
При перемещении курсора с реальной 
файловой панели на плагиновую (Tab'ом) 
PathSync ничего не делает.

Однако если посмотреть на поведение фара 
(до последних изменений), то мы 
увидим что в таких случаях путь всё-же 
менялся: текущей директорией 
становилась та директория, которая была 
открыта на панели до плагиновой. 
(И именно в нёё мы попадём если закроем 
плагиновую панель)

Поскольку PathSync в таких случаях не 
синхронизирут директорию, приходится 
страдать от глюков фара...

Original issue reported on code.google.com by anton.si...@gmail.com on 7 Oct 2009 at 3:30

GoogleCodeExporter commented 8 years ago
Не думаю, что с этим можно (и нужно) что то 
сделать. Приведи пример, когда такое
поведение приводит к глюкам - я подумаю.

Original comment by Max.Ru...@gmail.com on 8 Oct 2009 at 6:34

GoogleCodeExporter commented 8 years ago
http://forum.farmanager.com/viewtopic.php?p=52233#p52233
анси-плагины (нередакторные) начинают 
тормозить редактор в том случае, когда путь 
отображаемый на активной панели не 
является текущей директорией фара

PathSync позволяет обойти этот баг, но только 
на реальных панелях.
На ftp, в архивах и т. п. проблема остаётся.

Original comment by anton.si...@gmail.com on 8 Oct 2009 at 8:37

GoogleCodeExporter commented 8 years ago
>Приведи пример, когда такое поведение 
приводит к глюкам - я подумаю.

Простейший пример: архиваторный плагин. В 
диалоге распаковки ставим . (для 
распаковки в текущую директорию), или 
относительный путь.

Если не установливать текущую директорию, 
то будет распаковываться чёрте-куда.

Original comment by anton.si...@gmail.com on 15 Oct 2009 at 10:11

GoogleCodeExporter commented 8 years ago
MultiArc, вроде, распаковывает куда надо. 
Возможно, потому что он Ansi'шный... Я
просто не знаю откуда взять каталог "под" 
плагинной панелью. Far API это не позволяет. 

Original comment by Max.Ru...@gmail.com on 15 Oct 2009 at 8:31

GoogleCodeExporter commented 8 years ago
>Возможно, потому что он Ansi'шный
Так и есть - сказано в ченджлоге

>Far API это не позволяет
Вероятно об этом не подумали. Стоит 
намекнуть

Original comment by anton.si...@gmail.com on 15 Oct 2009 at 9:15

GoogleCodeExporter commented 8 years ago
...А в макросах значение пути доступно
macro:post msgbox(apanel.path)

Original comment by anton.si...@gmail.com on 16 Oct 2009 at 4:19

GoogleCodeExporter commented 8 years ago
Спасибо, новая версия работает!

Original comment by anton.si...@gmail.com on 5 Nov 2009 at 4:39

GoogleCodeExporter commented 8 years ago
Пытается ли плагин установить CurDir по 
короткому имени, как это делает DeepBrowser2?

>Плагин позволяет входить в папки, длина 
полного пути которых составляет
>более 260 (MAX_PATH) символов, или имеют 
"некорректное" имя (например,
>содержат точку на конце).
>При входе в такую папку плагин вызывает 
SetCurrentDirectory с коротким
>путем, и отобржает список содержимого. 
Таким образом, в большинстве
>случаев, пользователь сможет полноценно 
работать с файлами в таких папках
>(будут работать и ANSI плагины, и внешние 
программы).

Original comment by anton.si...@gmail.com on 9 Nov 2009 at 2:44

GoogleCodeExporter commented 8 years ago
Нет, не пытается.

Original comment by Max.Ru...@gmail.com on 9 Nov 2009 at 3:52

GoogleCodeExporter commented 8 years ago
Короткий путь не кажется вам хорошей идеей 
для внедрения в ваш плагин?

Original comment by anton.si...@gmail.com on 9 Nov 2009 at 4:04

GoogleCodeExporter commented 8 years ago
Мне лично это не нужно. Всю эту бодягу с 
поддержкой длинных путей и кривых 
каталогов
я считаю надуманной проблемой, которая к 
тому же еще создала проблемы всем 
остальным,
где их в принципе нет. Собственно для этого 
эта затычка и была. У меня нет планов ее
развивать, так как большинство плагинов 
уже худо бедно поддерживают новый API...

Original comment by Max.Ru...@gmail.com on 9 Nov 2009 at 9:08

GoogleCodeExporter commented 8 years ago
>У меня нет планов ее развивать, так как 
большинство плагинов уже худо бедно 
поддерживают новый API...
Пару примеров.

1) Фар не поддерживает запуск программ из 
директорий с "некорректными именами"
И новое API тут не спасает.
Плагин DeepBrowser решает проблему, но для этого 
надо открывать специальную панель, 
что не есть удобно...

2) Анси-плагины всё равно тупят. Например 
невозможно распаковать архив в папку с 
"некорректным" именем. DeepBrowser и тут 
помогает, но рамках вашего плагина обе эти 
проблемы решились бы гораздо удобнее.

Original comment by anton.si...@gmail.com on 12 Nov 2009 at 4:15

GoogleCodeExporter commented 8 years ago
Если я буду просто устанавливать "короткий" 
путь в качестве текущего то это ничем не
поможет. Для запуска программ нужно делать 
дополнительные действия - а это уже
совершенно другой плагин. А Ansi-плагинам 
вообще ничем не поможешь, Far сам
устанавливает текущий каталог перед 
вызовом их функций, и он "перебъет" мой путь.

Original comment by Max.Ru...@gmail.com on 13 Nov 2009 at 12:13

GoogleCodeExporter commented 8 years ago
Понятно.

Original comment by anton.si...@gmail.com on 17 Nov 2009 at 7:40