Путь к корневому каталогу

Столкнулись с проблемой в использовании макросов? Здесь можно получить помощь.
Post Reply
buniak_a_h
Posts: 897
Joined: Sat 20 Apr, 2013 00:17
Location: Питер
Has thanked: 77 times
Been thanked: 28 times
Contact:

Путь к корневому каталогу

Post by buniak_a_h » Sun 06 Oct, 2019 18:00

Господа, разъясните, пожалуйста!
Встаю на корневой каталог (C:\), набираю lua:=APanel.Path - получаю C: (в соответствии с энциклопедией - «содержит путь панели (без заключительного '\')», хотя для корня это, мне кажется, неправильно).
набираю lua:=APanel.Path0 - получаю C:\. Хотя в той же энциклопедии по Path0 написано тоже самое «содержит путь на реальной файловой системе, до вызова плагинов, создающих свою панель (без заключительного '\')» При этом в заголовке панели слэш присутствует (что, на мой взгляд, правильно).
Более того! Во всех остальных (не для корня) папках Path0 совпадает с Path.
Это баг или фича? Если фича, то как бы формализовать, чоб знать, чего ждем... А то я пару дней потратил на поиск причины, почему скрипт работает везде, кроме корневой папки...

Shmuel
Posts: 5860
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 22 times
Been thanked: 215 times

Путь к корневому каталогу

Post by Shmuel » Sun 06 Oct, 2019 18:32

buniak_a_h wrote:
Sun 06 Oct, 2019 18:00
Это баг или фича? Если фича, то как бы формализовать, чоб знать, чего ждем...
Скорее фича, поскольку это поведение было всегда: для Path - c Far1, для Path0 - с Far2. Возможно имеет смысл дополнить документацию.
Last edited by Shmuel on Sun 06 Oct, 2019 18:32, edited 1 time in total.

buniak_a_h
Posts: 897
Joined: Sat 20 Apr, 2013 00:17
Location: Питер
Has thanked: 77 times
Been thanked: 28 times
Contact:

Путь к корневому каталогу

Post by buniak_a_h » Sun 06 Oct, 2019 19:37

Shmuel wrote:
Sun 06 Oct, 2019 18:32
Скорее фича,
Жаль... Я надеялся, что если путь влезает, то APanel.Path - это как раз то, что мы видим в заголовке панели. Ну хотя бы при not APanel.Plugin ...
Придётся явно ограничить область применимости скрипта не-плагиновыми панелями и использовать Path0 :-(

Shmuel
Posts: 5860
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 22 times
Been thanked: 215 times

Путь к корневому каталогу

Post by Shmuel » Sun 06 Oct, 2019 19:45

buniak_a_h wrote:
Sun 06 Oct, 2019 19:37
Придётся явно ограничить область применимости скрипта не-плагиновыми панелями и использовать Path0 :-(
У скриптов в распоряжении есть API плагинов (LuaFAR).
Плагины вообще как-то обходятся без макро-API, всяких Path и Path0.
Поэтому нет объективных причин для ограничения функциональности.

User avatar
Wave
Posts: 1770
Joined: Thu 04 Aug, 2005 18:47
Has thanked: 4 times
Been thanked: 16 times

Путь к корневому каталогу

Post by Wave » Mon 07 Oct, 2019 16:29

Иэххъъ, сколько я встречал софта, который при сохранении пути сохраняет его без финального слэша, из-за чего при корневом каталоге начинает глючить.
Пользуюсь ФАРом больше 20 лет © собирательный.

buniak_a_h
Posts: 897
Joined: Sat 20 Apr, 2013 00:17
Location: Питер
Has thanked: 77 times
Been thanked: 28 times
Contact:

Путь к корневому каталогу

Post by buniak_a_h » Tue 08 Oct, 2019 06:35

Shmuel wrote:
Sun 06 Oct, 2019 18:32
Скорее фича
На самом деле ошибкой кажется не просто наличие или не наличие слэша (это как договоримся), а то, что в заголовке панели везде, кроме корневых папок, APanel.Path, а в корневых папках - нет. Вот это выглядит явной ошибкой... Просто если они (заголовок панели и Path) никак не связаны, то нужно вводить APanel.Title
Last edited by buniak_a_h on Tue 08 Oct, 2019 06:38, edited 1 time in total.

Post Reply

Return to “Нужна помощь”